Решение задач с помощью линейного программирования

Автор работы: Пользователь скрыл имя, 29 Апреля 2013 в 21:45, курсовая работа

Описание работы

Целью данной курсовой работы является изучение методов решения задач математического моделирования на примере задач планирования производства и транспортной задачи.
Задачи работы:
изучить литературу по данной теме
для заданного варианта получить решение задачи линейного программирования:
- графическим методом;

Содержание работы

ВВЕДЕНИЕ 4
1 ТЕОРЕТИЧЕСКИЕ ВОПРОСЫ К РЕШЕНИЮ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ 5
1.1 Определение и характеристика линейного программирования 5
1.2 Характеристика геометрического метода решения задач 7
1.3 Характеристика симплекс-метода как основного аппарата решения задач линейного программирования 10
1.4 Характеристика метода решения задач с помощью теории двойственности 14
1.5 Основные этапы, особенности и методы решения транспортной задачи 16
2 РЕШЕНИЕ ЗАДАЧ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ 20
2.1 Решение задачи планирования производства геометрическим способом 20
2.2 Решение задачи планирования производства симплекс-методом 25
2.3. Решение задачи планирования производства с помощью теории двойственности 30
2.4 Составление математической модели транспортной задачи 31
2.5 Нахождение опорного плана транспортной задачи методом наименьшего элемента 32
2.6 Решение транспортной задачи методом потенциалов 36
ЗАКЛЮЧЕНИЕ 38
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 39

Файлы: 1 файл

Dokument_Microsoft_Office_Word.doc

— 728.00 Кб (Скачать файл)

Найдем область  допустимых решений.

Решение:

Предположим, что будет изготовлено х1 единиц изделий вида А1 и х2 единиц - вида А2. Поскольку производство продукции ограничено имеющимися в распоряжении предприятия сырьем каждого вида и количество изготовляемых изделий не может быть отрицательным, должны выполняться неравенства:

Общая прибыль от реализации Х1 изделий А1 и Х2 изделий вида А2 составит

F = 42х1 +26х2 .

Таким образом, мы приходим к следующей  математической задаче: среди всех неотрицательных решений данной системы линейных неравенств требуется найти такое, при котором функция F принимает максимальное значение.

Найдем решение сформулированной задачи, используя ее геометрическую интерпретацию. Сначала определим многоугольник решений. Для этого в неравенствах системы ограничений и условиях неотрицательности переменных знаки неравенств заменим на знаки точных равенств и найдем соответствующие прямые:

Эти прямые изображены на рисунке 4. Каждая из построенных прямых делит плоскость на две полуплоскости. Координаты точек одной полуплоскости удовлетворяют исходному неравенству, а другой — нет.

 

Чтобы определить искомую полуплоскость, нужно взять какую-нибудь точку, принадлежащую одной из полуплоскостей, и проверить, удовлетворяют ли ее координаты данному неравенству. Если координаты взятой точки удовлетворяют данному неравенству, то искомой является та полуплоскость, которой принадлежит эта точка, в противном случае — другая полуплоскость.

Найдем, например, полуплоскость, определяемую неравенствами.

Рисунок 4

 

 

 

 

 

 

 

 

Построим область допустимых решений:

Для прямой 3х1 + 4х2 = 600

х1

0

200

х2

150

0




 

 

 

С(0;0) => 3·0+4·0=0, а 0≤600, значит прямая стремится к нулю (см. рисунок 4)

 

Для прямой 3х1 + 1х2 = 357

х1

0

119

х2

357

0




 

 

 

В(0;0) => 3·0+1·0=0, а 0≤357, значит прямая стремится к нулю (см. рисунок 4)

 

Для прямой 1х1 +5х2

х1

0

600

х2

120

0




 

 

 

А(0;0) => 1·0+5·0=0, а 0≤600, значит прямая стремится к нулю (см. рисунок 4).

Это и показано стрелками.

Пересечение полученных полуплоскостей и определяет многоугольник решений  данной задачи.

Как видно из рисунка 4, многоугольником решений является пятиугольник OABCD. Координаты любой точки, принадлежащей этому пятиугольнику, удовлетворяют данной системе неравенств и условию неотрицательности переменных. Поэтому сформулированная задача будет решена, если мы сможем найти точку, принадлежащую пятиугольнику OABCD, в которой функция F принимает максимальное значение.

 

 

Чтобы найти указанную точку, построим вектор ñ =(42; 26) и прямую 42х1+26х2 = h, где h — некоторая постоянная такая, что прямая 42х1+26х2 = h имеет общие точки с многоугольником решений. Положим, например, h=510 и построим прямую 42х1 + 26х2 = 510 (см. рисунок 4).

Если теперь взять какую-нибудь точку, принадлежащую построенной  прямой и многоугольнику решений, то ее координаты определяют такой план производства изделий А1 и А2, при котором прибыль от их реализации равна 510 руб. Далее, полагая h равным некоторому числу, большему чем 510, мы будем получать различные параллельные прямые. Если они имеют общие точки с многоугольником решений, то эти точки определяют планы производства изделий А1 и А2, при которых прибыль от их реализации превзойдет 510 руб.

Перемещая построенную прямую 30х1 + 49х2 = 510 в направлении вектора ñ, видим, что последней общей точкой ее с многоугольником решений задачи служит точка С. Координаты этой точки и определяют план выпуска изделий А1 и А2, при котором прибыль от их реализации является максимальной.

Найдем координаты точки С как точки пересечения прямых 3х1+4х2=600 и 3х1 + 1х2 = 357. Следовательно, ее координаты удовлетворяют уравнениям этих прямых

Решим эту систему уравнений:

х2 = 357 – 3х1, подставим полученное в первое уравнение

1+ 4∙(357 – 3х1) = 600 => 3х1 + 1428 – 12х1 = 600 => -9х1 = -828 =>

х1 = 92, из этого решения следует, что Х2 = 357 – 3·92 = 81 => х2 = 81

Найдем максимальную прибыль:

F(max) = 42 92+26 81=5970

Следовательно, для достижения максимальной прибыли 5970 ден.ед. следует производить 92 ед. продукции вида А1 и 81. продукции вида А2.

2.2 Решение задачи планирования  производства симплекс-методом

 

Решим прямую задачу линейного программирования   симплексным методом, с использованием симплексной таблицы.

Определим максимальное значение целевой функции F(X) = 42x1+26x2 при следующих условиях-ограничений.

3x1+4x2≤600

3x1+x2≤357

x1+5x2≤600

Для построения первого опорного плана систему  неравенств приведем к системе уравнений путем введения дополнительных переменных (переход к канонической форме).

В 1-м неравенстве  смысла (≤) вводим базисную переменную x3. В 2-м неравенстве смысла (≤) вводим базисную переменную x4. В 3-м неравенстве смысла (≤) вводим базисную переменную x5.

3x1 + 4x2 + 1x3 + 0x4 + 0x5 = 600

3x1 + x2 + 0x3 + 1x4 + 0x5 = 357

x1 + 5x2 + 0x3 + 0x4 + 1x5 = 600

Матрица коэффициентов A = a(ij) этой системы уравнений имеет  вид:

Решим систему  уравнений относительно базисных переменных:

x3, x4, x5,

Полагая, что свободные переменные равны 0, получим первый опорный план:

х1 = (0,0,600,357,600)

Базисное решение называется допустимым, если оно неотрицательно.

 

 

Таблица 2.2.1

Базис

В

x1

x2

x3

x4

x5

x3

600

3

4

1

0

0

x4

357

3

1

0

1

0

x5

600

1

5

0

0

1

F(X0)

0

-42

-26

0

0

0


 

Переходим к  основному алгоритму симплекс-метода.

Итерация №0.

1) Проверка критерия оптимальности

Текущий опорный  план неоптимален, так как в индексной  строке находятся отрицательные  коэффициенты.

2) Определение новой базисной переменной

В индексной  строке F(x) выбираем максимальный по модулю элемент. В качестве ведущего выберем  столбец, соответствующий переменной x1, так как это наибольший коэффициент по модулю.

3) Определение новой свободной переменной

Вычислим значения Di по строкам как частное от деления: bi / ai1

и из них выберем  наименьшее:

Следовательно, 2-ая строка является ведущей.

Разрешающий элемент  равен (3) и находится на пересечении ведущего столбца и ведущей строки.

Таблица 2.2.2

Базис

В

x1

x2

x3

x4

x5

min

x3

600

3

4

1

0

0

600

x4

357

3

1

0

1

0

119

x5

600

1

5

0

0

1

600

F(X1)

0

-42

-26

0

0

0

0


 

 

 

4) Пересчет симплекс-таблицы.

Формируем следующую  часть симплексной таблицы.

Вместо переменной x4 в план 1 войдет переменная x1. Строка, соответствующая переменной x1 в плане 1, получена в результате деления всех элементов строки x4 плана 0 на разрешающий элемент РЭ=3. На месте разрешающего элемента в плане 1 получаем 1. В остальных клетках столбца x1 плана 1 записываем нули. Таким образом, в новом плане 1 заполнены строка x1 и столбец x1 . Все остальные элементы нового плана 2, включая элементы индексной строки, определяются по правилу прямоугольника.

Представим  расчет каждого элемента в виде таблицы:

Таблица 2.2.3

B

x1

x2

x3

x4

x5

 


 

После преобразований получаем новую таблицу:

Таблица 2.2.4

Базис

В

x1

x2

x3

x4

x5

x3

243

0

3

1

-1

0

X1

119

1

0,333

0

0,333

0

X5

481

0

4,33

0

-0,333

1

F(X1)

4998

0

-12

0

14

0


 

Итерация №1.

1) Проверка критерия оптимальности

Текущий опорный  план не оптимален, так как в индексной строке находятся отрицательные коэффициенты.

 

2) Определение новой базисной переменной.

В индексной  строке F(x) выбираем максимальный по модулю элемент. В качестве ведущего выберем столбец, соответствующий переменной x2, так как это наибольший коэффициент по модулю.

3) Определение новой свободной переменной.

Вычислим значения Di по строкам как частное от деления: bi / ai2

и из них выберем  наименьшее:

Следовательно, 1-ая строка является ведущей.

Разрешающий элемент  равен (3) и находится на пересечении ведущего столбца и ведущей строки.

Таблица 2.2.5

Базис

В

x1

x2

x3

x4

x5

min

x3

243

0

3

1

-1

0

81

X1

119

1

0,333

0

0,333

0

357

X5

481

0

4,33

0

-0,333

1

103

F(X2)

4998

0

-12

0

14

0

0

Информация о работе Решение задач с помощью линейного программирования