Главная              Рефераты - Математика

Математическое програмирование - реферат

Математическое программирование

Задача 1

Для производства двух видов изделий А и В используется три типа технологического оборудования. Для производства единицы изделия А оборудование первого типа используется 2 часа, оборудование второго типа – 1 час, оборудование третьего типа – 3 часа. Для производства единицы изделия В оборудование первого типа используется 2 часа, оборудование второго типа – 2 часа, оборудование третьего типа – 1 час.

На изготовление всех изделий предприятие может использовать оборудование первого типа не более чем 48 часа, оборудование второго типа – 38 часов, оборудование третьего типа – 54 часов.

Прибыль от реализации единицы готового изделия А составляет 2 денежные единицы, а изделия В – 3 денежные единицы.

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

Решение.

Данная задача является задачей линейного программирования. Под планом производства понимается: сколько изделий А и сколько изделий В надо выпустить, чтобы прибыль была максимальна.

Прибыль рассчитывается по формуле:

Запишем математическую модель задачи:

Решим данную задачу графически.

Для этого построим на плоскости области, описываемые ограничениями-неравенствами, и прямую , которая называется целевой функцией.

Три записанных выше неравенства ограничивают на плоскости многоугольник, ограниченный слева и снизу координатными осями (т.к. искомое количество изделий положительно).

График целевой функции передвигается в направлении, обозначенном стрелкой (в направлении своего градиента), до тех пор, пока не достигнет граничной точки многоугольника – в нашем случае это точка – (10 ; 14). В этой точке целевая функция будет достигать максимума.

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

Составляем симплекс-таблицу:

Базис Cб В 2 3 0 0 0
А1 А2 А3 А4 А5
А3 0 48 2 2 1 0 0
А4 0 38 1 2 0 1 0
А5 0 54 3 1 0 0 1
Fi - Ci 0 -2 -3 0 0 0

В графе Базис записываются вектора переменных, принимаемые за базисные. На первом этапе это – А3 , А4 , А5 . Базисными будут переменные, каждая из которых входит только в одно уравнение системы, и нет такого уравнения, в которое не входила бы хотя бы одна из базисных переменных.

В следующий столбец записываются коэффициенты целевой функции, соответствующие каждой переменной. Столбец В – столбец свободных членов. Далее идут столбцы коэффициентов Аi при i –й переменной.

Под столбцом свободных членов записывается начальная оценка

Остальные оценки записываются под столбцами соответствующих векторов .

Преобразуем симплекс-таблицу следующим образом:

Шаг 1: Проверяется критерий оптимальности, суть которого состоит в том, что все оценки должны быть неотрицательны. В нашем случае этот критерий не выполнен, поэтому переходим ко второму шагу.

Шаг 2: Для отрицательных оценок вычисляются величины:

Из этих элементов выбирается тот, для которого вычисленное произведение минимально, в нашем случае -57 минимально, поэтому в качестве разрешающего элемента выбирается второй элемент второго столбца – 2 (выделен в таблице).

Шаг 3: Вторая строка таблицы делится на 2

От элементов строки 1 отнимает соответствующие элементы строки 2, умноженные на 2.

От элементов строки 3 отнимает соответствующие элементы строки 2.

От элементов строки 4 отнимает соответствующие элементы строки 2, умноженные на -3.

Базис Cб В 2 3 0 0 0
А1 А2 А3 А4 А5
А3 0 10 1 0 1 - 0
А5 0 19 0,5 1 0 0,5 0
А2 3 35 2,5 0 0 -0,5 1
Fi - Ci 57 -0,5 0 0 1,5 0

Таким образом, новыми базисными переменными становятся А3 , А5 , А2 .

Возвращаемся к шагу 1 и повторяем весь процесс.

Проверяется критерий оптимальности. Отрицательная оценка только одна – в столбце А1 .

Вычисляем:

Разрешающим элементом будет первый элемент первого столбца – 1.

Новыми базисными переменными становятся A5 , A2 , A1

От элементов строки 2 отнимает соответствующие элементы строки 1, умноженные на 0,5.

От элементов строки 3 отнимает соответствующие элементы строки 1, умноженные на 2,5.

От элементов строки 4 отнимает соответствующие элементы строки 1, умноженные на -0,5.

Базис Cб В 2 3 0 0 0
А1 А2 А3 А4 А5
А5 0 10 1 0 1 -1 0
А2 3 14 0 1 -0,5 1 0
А1 2 10 0 0 -2,5 2 1
Fi - Ci 62 0 0 1,5 1 0,5

Отрицательных оценок нет, то есть критерий оптимальности выполнен.

Таким образом, получается искомое значение целевой функции

F(10; 14; 0; 0; 10) = 62, т.е. возвращаясь к системе неравенств, получаем:

Ответы, полученные различными методами, совпадают.

Ответ: хопт = ( 10 , 14) Значение функции : F = 62

Задача 2

Имеются три пункта отправления А123 однородного груза и пять пунктов В1 , В2 , В3 , В4 , В5 его назначения. На пунктах А123 находится груз в количествах 50, 30, 70 тонн. В пункты В1 , В2 , В3 , В4 , В5 требуется доставить соответственно 20, 30, 50, 30, 20 тонн груза. Расстояния в сотнях километрах между пунктами отправления и назначения приведены в матрице D:

Пункты

отправления

Пункты назначения
В1 В2 В3 В4 В5
А1 9 5 1 1 9
А2 7 1 4 9 4
А3 5 3 4 9 9

Найти такой план перевозок, при котором общие затраты на перевозку грузов будут минимальными.

Указания: 1) считать стоимость перевозок пропорциональной количеству груза и расстоянию, на которое этот груз перевозится, т.е. для решения задачи достаточно минимизировать общий объем плана, выраженный в тонно-километрах;

2) для решения задачи использовать методы северо-западного угла и потенциалов.

Решение.

Составим математическую модель задачи:

Обозначим - количество груза, перевезенного из пункта отправления i в пункт назначения j.

Получим следующие ограничения (т.к. весь груз должен быть вывезен, и все потребности удовлетворены полностью):

При этом должна быть минимизирована целевая функция

Построим опорный план методом северо-западного угла:

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
А1

9

20

5

30

1 1 9 50
А2 7 1

4

30

9 4 30
А3 5 3

4

20

9

30

9

20

70
Потребности 20 30 50 30 20 150

Принцип заполнения таблицы состоит в том, что, начиная с крайней левой верхней ячейки (принцип северо-западного угла), количество грузов вписывается в таблицу так, чтобы потребности полностью удовлетворялись или груз полностью вывозился.

Построим систему потенциалов. Ui - потенциалы, соответствующие поставщикам, Vi - потенциалы, соответствующие потребителям.

Полагаем U1 =0, а далее Ui + Vi = dij для занятых клеток таблицы.

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
V1 =9 V2 =5 V3 =4 V4 =9 V5 =9
А1 U1 =0

9

20

5

30

1 1 9 50
А2 U2 =0 7 1

4

30

9 4 30
А3 U3 =0 5 3

4

20

9

30

9

20

70
Потребности 20 30 50 30 20 150

Проверим критерий оптимальности : для свободных клеток.

Из тех условий, где критерий не выполняется, выбираем то условие, где разница максимальна. Это – ячейка (1 , 4). Перебросим в ячейку (1 , 4) 20 единиц груза из ячейки (1 , 1).

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
V1 =9 V2 =5 V3 =4 V4 =9 V5 =9
А1 U1 =0

9

5

30

1

1

20

9 50
А2 U2 =0 7 1

4

30

9 4 30
А3 U3 =0

5

20

3

4

20

9

10

9

20

70
Потребности 20 30 50 30 20 150

Чтобы компенсировать недостаток в третьей строке, перебросим те же 20 единиц груза из ячейки (3 , 4) в ячейку (3 , 1).

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

Полагаем U1 =0, а далее Ui + Vi = dij для занятых клеток таблицы.

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
V1 =5 V2 =5 V3 =4 V4 =1 V5 =9
А1 U1 =0

9

5

30

1

1

20

9 50
А2 U2 =0 7 1

4

30

9 4 30
А3 U3 =0

5

20

3

4

20

9

10

9

20

70
Потребности 20 30 50 30 20 150

Проверим критерий оптимальности : для свободных клеток.

Из тех условий, где критерий не выполняется, выбираем то условие, где разница максимальна. Это – ячейка (2 , 5). Перебросим в ячейку (2 ,5) 20 единиц груза из ячейки (1 , 2).

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
V1 =5 V2 =5 V3 =4 V4 =1 V5 =9
А1 U1 =0

9

5

10

1

20

1

20

9 50
А2 U2 =0 7 1

4

10

9

4

20

30
А3 U3 =0

5

20

3

20

4

20

9

10

9

70
Потребности 20 30 50 30 20 150

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

Полагаем U1 =0, а далее Ui + Vi = dij для занятых клеток таблицы.

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
V1 =2 V2 =5 V3 =1 V4 =1 V5 =1
А1 U1 =0

9

5

10

1

20

1

20

9 50
А2 U2 =3 7 1

4

10

9

4

20

30
А3 U3 =3

5

20

3

20

4

20

9

10

9

70
Потребности 20 30 50 30 20 150

Проверим критерий оптимальности : для свободных клеток.

Из тех условий, где критерий не выполняется, выбираем то условие, где разница максимальна. Это – ячейка (2 , 2). Перебросим в ячейку (2 ,2) 10 единиц груза из ячейки (1 , 2).

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
V1 =2 V2 =5 V3 =1 V4 =1 V5 =1
А1 U1 =0

9

5

1

20

1

30

9 50
А2 U2 =3 7

1

10

4

9

4

20

30
А3 U3 =3

5

20

3

20

4

30

9

9

70
Потребности 20 30 50 30 20 150

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

Полагаем U1 =0, а далее Ui + Vi = dij для занятых клеток таблицы.

Пункты

отправления

Пункты назначения Запасы
В1 В2 В3 В4 В5
V1 =3 V2 =1 V3 =1 V4 =1 V5 =4
А1 U1 =0

9

5

1

20

1

30

9 50
А2 U2 =0 7

1

10

4

9

4

20

30
А3 U3 =2

5

20

3

20

4

30

9

9

70
Потребности 20 30 50 30 20 150

Проверим критерий оптимальности : для свободных клеток.

Критерий выполнен, значит, полученное решение оптимально.

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

Ответ:

Задача 3

Дана задача выпуклого программирования. Требуется:

1) найти решение графическим методом

2) написать функцию Лагранжа данной задачи и найти ее седловую точку, используя решение задачи, полученное графически.

Решение.

Графическое решение задачи следующее:

Система неравенств определяет область, ограниченную двумя прямыми и координатными осями. График целевой функции представляет собой окружность переменного радиуса с центром в точке (5, 10). Значение целевой функции графически представляет собой квадрат радиуса этой окружности. Минимальным радиусом, удовлетворяющим системе ограничений, будет такой радиус, который обеспечивает касание окружности с границей области так, как это показано на рисунке.

Искомая точка определяется как решение системы уравнений

Получили точку (3 , 8), значение целевой функции в этой точке равно

Запишем задачу в традиционном виде:

Функция называется функцией Лагранжа, а переменные - коэффициентами Лагранжа.

Точка называется седловой точкой функции Лагранжа, если для любых выполняются неравенства:

Если функции f, gдифференцируемы, то условия определяющие седловую точку (условия Куна-Таккера):

В данном случае получаем:

Подставим в эти выражения значения:

Получаем

Седловая точка функции Лагранжа:

Проверим условие cедловой точки:

Условия выполнены, седловая точка .

Ответ:

Задача 4

Для двух предприятий выделено 900 единиц денежных средств. Как распределить все средства в течение 4 лет, чтобы доход был наибольшим, если известно, что доход от х единиц, вложенных в первое предприятие равен , а доход от у единиц, вложенных во второе предприятие равен . Остаток средств к концу года составляет - для первого предприятия, - для второго предприятия. Решить задачу методом динамического программирования.

Решение.

Процесс распределения средств разобьем на 4 этапа – по соответствующим годам.

Обозначим - средства, которые распределяются на k–ом шаге как сумма средств по предприятиям.

Суммарный доход от обоих предприятий на k–ом шаге:

Остаток средств от обоих предприятий на k–ом шаге:

Обозначим - максимальный доход, полученный от распределения средств между двумя предприятиями с k-го шага до конца рассматриваемого периода.

Рекуррентные соотношения Беллмана для этих функций

Проведем оптимизацию, начиная с четвертого шага:

4-й шаг.

Оптимальный доход равен:

, т.к. линейная возрастающая функция достигает максимума в конце рассматриваемого промежутка, т.е. при .

3-й шаг.

т.к. линейная возрастающая функция достигает максимума в конце рассматриваемого промежутка, т.е. при .

2-й шаг.

т.к. линейная возрастающая функция достигает максимума в конце рассматриваемого промежутка, т.е. при .

1-й шаг.

т.к. линейная возрастающая функция достигает максимума в конце рассматриваемого промежутка, т.е. при .

Результаты оптимизации:

Определим количественное распределение средств по годам:

Так как , , получаем

Представим распределение средств в виде таблицы:

предприятие год
1 2 3 4
1 900 90 9 0,9
2 0 0 0 0

При таком распределении средств за 4 года будет получен доход, равный

Ответ: