Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
печать ир / Ира_Пичугин_END.DOC
Скачиваний:
25
Добавлен:
10.02.2016
Размер:
626.18 Кб
Скачать
  1. Квадратичное программирование

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

Модель задачи квадратичного программирования имеет следующую структуру:

найти максимальное (минимальное) значение функции

при ограничениях

Второе слагаемое в выражении (*) называется квадратичной формой переменных х1, х2, …, хn и представляются в виде:

Матрицакоэффициентов квадратичной формы предполагается симметричной(dkj = djk). Диагональные элементы dkk этой матрицы являются коэффициентами при , а недиагональные элементы(dkj = djk) равны половине коэффициента при xkxj

Можно использовать следующий порядок нахождения решения решения задачи квадратичного программирования:

  1. Составляется функция Логранжа.

  2. Записываются условия для ограничений.

  3. Используется метод искусственного базиса с применением математической модели.

  4. Находится оптимальное решение при выполнении условий п. (2).

Расчетная часть

ЗАДАЧА 1

Целевая функция F(x)=2x1 + 4x2  max;

при ограничениях :

Для приведения к положительным правым частям умножаем необходимые ограничения на (-1) и записываем в виде:

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

Неравенства ограничений приведем к равенствам, используя дополнительные переменные x 3 , x 4 и x 5 :

х1, х2 – свободные переменные.

х3, х4, х5 – базисные переменные.

Выразим систему ограничений относительно базисных переменных и приравняем полученные уравнения к нулю:

где x 1, x 2, x 3, x 4, x 5 >0

переменные x 3 , x 4 и x 5 примем в качестве базисных и выразим через свободные x 1 и x 2

Прямые, соответствующие граничным значениям переменных x3 = x4 = x5= 0 представлены на рис. 2. Заштрихованная область будет областью допустимых решений.

Рис.2

Максимального значения целевая функция достигает в крайней точке A области допустимых решений. Координаты точки A будут оптимальным решением задачи:

ЗАДАЧА 2

Решить задачу методом симплекс - таблиц.

Целевая функция F(x)= – 2x1+2x2  min;

Уравнения ограничения

Так как целевую функцию необходимо исследовать на минимум, то для удобства умножим ее на –1, и она будет выглядеть следующим образом:

F(x)= 2x1–2x2  max

Запишем уравнения ограничения в расширенной форме:

4x1 + 7x2 + x3 = 28 ,

x1 + x2 +x4 = 6 ,

–3x1 + 2x2  x5 +x6 = 3 ,

x1 , x2  0 .

Целевая функция примет вид: F(x)= 2x1–2x2 +0x3 +0x4 +0x5 Mx6 max , где M.

Обозначим векторы условий задачи через A1  A6 . Векторы A3 , A4 , A6 образуют единичную матрицу, которую примем за базис. В результате начальное базисное допустимое решение будет иметь вид X(0,0,28,6,0,3).

Составим исходную симплекс-таблицу (табл.6), в которой рассчитаем элементы строки S.

Таблица 6

C

c1

2

c2

–2

c3

0

c4

0

c5

0

c6

M

ХP

B

A1

A2

A3

A4

A5

A6

c3

0

x3

28

4

7

1

0

0

0

c4

0

x5

6

1

1

0

1

0

0

c6

M

x6

3

–3

2

0

0

1

1

S

3M

23M

–2+M

0

0

–M

0

В индексной строке табл.6 имеются Sj > 0, что позволяет улучшить решение задачи.

Вводим в новый базис вектор A2, которому соответствует наибольшее значение S2 = 2 + M, а в новое базисное решение переменную x2. Столбец, содержащий вектор A2 будет направляющим.

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

Таким образом направляющая строка вторая, направляющий элемент a22 (в таблице заключен в прямоугольник). Из базиса выводится вектор A6 , а из базисного решения переменная x6 .

Рассчитаем и заполним новую таблицу соответствующую новому базисному решению.

Таблица 7

C

c1

2

c2

–2

c3

0

c4

0

c5

0

c6

M

ХP

B

A1

A2

A3

A4

A5

A6

c3

0

x3

35/2

29/2

0

1

0

7/2

-7/2

c4

0

x5

9/2

5/2

0

0

1

1/2

-1/2

с2

2

х2

3/2

–3/2

1

0

0

1/2

1/2

S

3

23M

0

0

0

–1

1– M

В таблице все Sj  0. Поэтому полученное решение является оптимальным:

ЗАДАЧА 3

Решить транспортную задачу .

3 5

Целевая функция F = c ij xij;

i=1 j=1

Условия транспортной задачи представлены в табл. 8

Табл.8

ПП

ПО

В1

В2

В3

В4

В5

Запасы

А1

5

2

10

10

6

80

А2

6

4

3

9

2

80

А3

8

9

7

8

4

40

Заявки

40

30

30

40

60

Определим опорный план, используя правило “северо-западного угла”.

Результаты сведены в табл. 9.

Таблица 9

5

40

2

30

10

10

10

6

80

6

4

3

20

9

40

2

20

80

8

9

7

8

4

40

40

40

30

30

40

60

Таким образом опорный план имеет вид:

Полученное решение являетсяопорным (начальным базисным допустимым решением), в котором переменные имеют значения: х11=40; х12=30; х13=10; х23=20; х24=40; х25=20; х35= 40.

Стоимость полученного плана найдем, умножив каждую перевозку на соответствующую стоимость: F = 40*5 + 30*2 + 10*10 + 20*3 + 40*9 + 20*2 + 40*4 = = 980.

Находим значения потенциалов ui и vj , соответствующие базисным клеткам, принимая для удобства u1=0.

u1 + v1 =5; u1 = 0, v1 = 5;

u1 + v2 =2; v2 = 2;

u1 +v3 = 10; v3 = 10;

u2 + v3 = 3; u2 =7;

u2 + v4 = 9; v4 = 16;

u2 + v5 = 2; v5 = 9;

u3 +v5 = 4; u3 = -5.

Находим для небазисных клеток оценки с учетом значений потенциалов ui и vj:

Так как среди оценок имеются положительные, то план можно улучшить, осуществляя перевозки по замкнутому циклу. Начальная вершина цикла соответствует небазисной клетке с наибольшей положительной оценкой(). Таким образом перевозки осуществляем по следующему циклу x14 x24 x23 x13.

Полученные результаты представим в табл. 10.

Таблица10

ui\vj

5

2

10

16

9

0

5

40

2

30

10

10

6 10

3 6

80

-7

-8 6

-9 4

3

20

9

40

2

20

80

-5

-8 8

-12 9

-2 7

3 8

4

40

40

40

30

30

40

60

bj\ai

Новый опорный план:

Проверим на вырожденность опорный план m+n-1=6. Опорный план не вырожден.

Стоимость полученного плана найдем умножив каждую перевозку на соответствующую стоимость:

F = 40*5 + 30*2 + 10*10 + 30*3 + 30*9 + 20*2 + 40*4 = 920.

Находим значения потенциалов ui и vj , соответствующие базисным клеткам, принимая для удобства u1=0.

u1 + v1 =5; u1 = 0, v1 = 5;

u1 + v2 =2; v2 = 2;

u1 +v4 = 10; v4 = 10;

u2 + v3 = 3; v3 = 4;

u2 + v4 = 9; u2 = -1;

u2 + v5 = 2; v5 = 3;

u3 +v5 = 4; u3 = 1.

Находим для небазисных клеток оценки с учетом значений потенциалов ui и vj:

Так как среди оценок имеются положительные, то план можно улучшить осуществляя перевозки по замкнутому циклу. Начальная вершина цикла соответствует небазисной клетке с наибольшей положительной оценкой (). Таким образом перевозки осуществляем по следующему циклу x34  x35  x25  x24.

Полученные результаты представим в табл. 11.

Таблица 11

ui\vj

5

2

4

10

3

0

5

40

2

30

-6 10

10

10

-3 6

80

-1

-2 6

-3 4

3

20

9

40 -

2

20 +

80

-1

-2 8

-7 9

-2 7

3 8

+

4

40 -

40

40

30

30

40

60

bj\ai

Новый опорный план:

Стоимость полученного плана найдем, умножив каждую перевозку на соответствующую стоимость:

F = 40*5 + 30*2 + 10*10 + 30*3 + 50*2 + 30*8 + 10*4 = 830.

Находим значения потенциалов ui и vj, соответствующие базисным клеткам, принимая для удобства u1=0.

u1 + v1 =5; u1 = 0, v1 = 5;

u1 + v2 =2; v2 = 2;

u1 +v4 = 10; v4 = 10;

u2 + v3 = 3; v3 = 7;

u2 + v5 = 2; u2 = -4;

u3 + v4 = 8; u3 = -2;

u3 +v5 = 4; v5 = 6.

Находим для небазисных клеток оценки с учетом значений потенциалов ui и vj:

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

F* = 40*5 + 30*2 + 10*10 + 30*3 + 50*2 + 30*8 + 10*4 = 830.

ЗАДАЧА 4

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

при ограничениях:

1 + х2 4;

- х1 + х2 2;

х1, х2 0.

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

Составим матрицу D и рассмотрим ее определители:

D =; ∆1= -1 < 0

Составим функцию Лагранжа.

Запишем условие Куна - Таккера:

Систему линейных неравенств перепишем в виде:

2х1 – 2х2 + 21 - 2 2

2 – 2х1 + 1 + 2 2

1 + х2 4

- х1 + х1 2

Получим систему линейных неравенств, т.е. задача приведена к задаче линейного программирования. Используя дополнительные переменныеv1, v2, w1, w2 приведем неравенства к равенствам.

1 – 2х2 + 21 - 2 - v1 = 2;

2 – 2х1 + 1 + 2v2 = 2; (*)

1 + х2 + w1 = 4;

- х1 + х1 + w2 = 2;

Дополним равенства условиями, которые представим в виде:

v1x1 = 0; v2x2 = 0; w11 = 0; w22 = 0. (**)

Найдем базисное дополнительное решение системы (*) с учетом (**). Для этого воспользуемся методом искусственного базиса, вводя искусственные переменные z1 и z2.

Получим:

F(x) = -Mz1 -M z2

1 – 2х2 + 21 - 2 - v1 + z1 = 2;

2 – 2х1 + 1 + 2v2 + z2 = 2;

1 + х2 + w1 = 4;

- х1 + х1 + w2 = 2;

Решим задачу методом симплекс-таблиц. Результаты показаны в табл. 12 - 15

Таблица 12

С

0

0

0

0

0

0

0

0

-M

-M

XP

A0

Ax1

Ax2

A1

A2

Av1

Av2

Aw1

Aw2

Az1

Az2

-M

z1

2

2

-2

2

-1

-1

0

0

0

1

0

-M

z2

2

-2

4

1

1

0

-1

0

0

0

1

0

w1

4

2

1

0

0

0

0

1

0

0

0

0

w2

2

-1

1

0

0

0

0

0

1

0

0

S

-4M

0

2M

3M

0

-M

-M

0

0

0

0

Таблица 13

С

0

0

0

0

0

0

0

0

-M

-M

XP

A0

Ax1

Ax2

A1

A2

Av1

Av2

Aw1

Aw2

Az1

Az2

0

1

1

1

-1

1

-1/2

-1/2

0

0

0

1/2

0

-M

z2

1

-3

5

0

3/2

1/2

-1

0

0

-1/2

1

0

w1

4

2

1

0

0

0

0

1

0

0

0

0

w2

2

-1

1

0

0

0

0

0

1

0

0

S

-M

-3M

5M

0

3/2M

1/2M

-M

0

0

-3/2M

0

Таблица 14

С

0

0

0

0

0

0

0

0

-M

-M

XP

A0

Ax1

Ax2

A1

A2

Av1

Av2

Aw1

Aw2

Az1

Az2

0

1

6/5

2/5

0

1

-1/5

-2/5

-1/5

0

0

9/10

1/5

0

X2

1/5

-3/5

1

0

3/10

1/10

-1/5

0

0

-1/10

1/10

0

W1

19/5

13/5

0

0

-3/10

-1/10

1/5

1

0

1/10

-1/5

0

W2

6/5

-2/5

0

0

-3/10

-1/10

1/5

0

1

1/10

-1/5

S

0

0

0

0

0

0

0

0

0

-M

-M

В таблице 14 получено, предположительно оптимальное решение, но оно не отвечает условиям (**), следовательно, проделаем еще одну итерацию:

Табл. 15

С

0

0

0

0

0

0

0

0

-M

-M

XP

A0

Ax1

Ax2

A1

A2

Av1

Av2

Aw1

Aw2

Az1

Az2

0

1

8/13

0

0

1

0

0

0

x2

14/13

0

1

0

3/13

0

0

x1

19/13

1

0

0

5/13

0

0

w2

64/65

0

0

0

2/13

1

S

0

0

0

0

0

0

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

Для нахождения решения графическим методом, построим линии уровня исходной функцииF(x1,x2) и линии ограничения (ОДР) (рис.3).

Рис.3

На рис.3 видно, что значения

ЗАКЛЮЧЕНИЕ

В ходе выполнения расчётно-графической работы было проведено оптимизационное исследование задач линейного программирования, транспортной задачи по критерию стоимости, а также задачи квадратичного программирования. Для нахождения оптимальных решений в задачах линейного программирования был использован метод симплекс-таблиц, а также графическая интерпретация задачи линейного программирования. Для нахождения оптимального решения транспортной задачи по критерию стоимости был использован метод потенциалов, а начальное базисное допустимое решение (опорный план) было найдено с помощью правила минимального элемента. Поиск оптимального решения задачи квадратичного программирования происходил с применением множителей Лагранжа.

Полученные результаты:

ЗАДАЧА 1:

ЗАДАЧА 2:

ЗАДАЧА 3:

, F* = 830.

ЗАДАЧА 4:

Соседние файлы в папке печать ир