Методы оптимизации

Вариант 1

  1. Бомбить аэродром отправляются 3 самолета, 2 из них – бомбардировщики. Противник может выстрелить по двум самолетам. При выстреле по самолету он поражает летящий первым с вероятностью 0,4, летящий вторым или третьим – с вероятностью 0,5. Аэродром разбомблен, если хотя бы один бомбардировщик уцелел. Сформулировать задачу как задачу теории игр. Найдите решение или  укажите алгоритм нахождения решения.

 

Данную задачу можно рассматривать  как игру, в которой у 1 игрока (аэродром) есть три стратегии:

I: d1={выстрелить по 1 самолету, затем по 2}

d2={выстрелить по 1 самолету, затем  по 3}

d3={выстрелить по 2 самолету, затем  по 3}

У второго игрока (самолеты) есть 3 стратегии:

II: q1={бомбардировщик, бомбардировщик, небомбардировщик}

q2={бомбардировщик, небомбардировщик, бомбардировщик}

q3={небомбардировщик, бомбардировщик, бомбардировщик}

Определим потери 1 игрока в каждом случае. Будем считать, что если аэродром разбомблен, то потери 1 игрока равны 1, в противном случае -1.

            II

I       

q1

q2

q3

d1

0,6

1

1

d2

1

0,6

1

d3

1

1

0,6


 

Получили следующую матрицу  потерь I игрока:

Для нахождения решения игры определим, имеет ли матрица потерь седловую точку:

            II

I       

q1

q2

q3

v* max

d1

0,6

1

1

1

d2

1

0,6

1

1

d3

1

1

0,6

1

v* min

0,6

0,6

0,6

 

 

v*  min=1

v* max=0,6

Т.к. a*  min ≠ a* max, то игра не имеет седловой точки и неразрешима в чистых стратегиях.

В нашем случае : 0,6     1.

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

Если P* = ( p*, p*, p*) и Q* = ( q*, q*, q*) являются оптимальным решением, то должны выполняться две следующие системы неравенств :


0,6 p*1

+ p*2

+ p*3

v

p*1

+ 0,6 p*2

+ p*3

v

p*1

+ p*2

+ 0,6 p*3

v


 

0,6 q*1

+ q*2

+ q*3

v

q*1

+ 0,6 q*2

+ q*3

v

q*1

+ q*2

+ 0,6 q*3

v


 

Рассмотрим первую систему.


Разделим почленно первую систему на v (цену игры).


Т.к. цена игры положительная, то знаки в неравенствах системы не изменятся.


Введем новые обозначения:


y= p*/ v , y= p*/ v , y= p*/ v


Рассмотрим сумму:


y+ y+ y= p*/ v + p*/ v + p*/ v = 1/v * ( p*+ p*+ p*) = 1/v


Т.к игрок A старается  увеличить свой выигрыш, т.е. цену игры v, то выражение 1/v будет стремиться к минимуму.


Мы получили задачу линейного  программирования.


Требуется найти минимум  линейной функции F = y+ y+ yпри следующей системе ограничений :


0,6 y1

+ y2

+ y3

1

y1

+ 0,6 y2

+ y3

1

y1

+ y2

+ 0,6 y3

1


 

Рассмотрим вторую систему.


Разделим почленно вторую систему на v (цену игры).


Т.к. цена игры положительная, то знаки в неравенствах системы  не изменятся.


Введем новые обозначения:


x= q*/ v , x= q*/ v , x= q*/ v


Рассмотрим сумму:


x+ x+ x= q*/ v + q*/ v + q*/ v = 1/v * ( q*+ q*+ q*) = 1/v


Т.к игрок B старается  уменьшить свой проигрыш, т.е. цену игры v, то выражение 1/v будет стремиться к максимуму.


Мы получили задачу линейного  программирования.


Требуется найти максимум линейной функции L = x+ x+ xпри следующей системе ограничений :


0,6 x1

+ x2

+ x3

1

x1

+ 0,6 x2

+ x3

1

x1

+ x2

+ 0,6 x3

1


 

Полученные задачи являются парой симметричных взаимно двойственных задач.


Решив одну из них, мы автоматически  получим решение второй.


Удобнее решить вторую задачу. Решим ее симплекс методом.


 

Система ограничений  должна быть приведена к каноническому  виду.


К левой части неравенства 1 системы ограничений прибавляем неотрицательную переменную x, тем самым мы преобразуем неравенство 1 в равенство.


К левой части неравенства 2 системы ограничений прибавляем неотрицательную переменную x, тем самым мы преобразуем неравенство 2 в равенство.


К левой части неравенства 3 системы ограничений прибавляем неотрицательную переменную x, тем самым мы преобразуем неравенство 3 в равенство.


0,6 x1

+ x2

+ x3

+ x4

   

=

1

x1

+ 0,6 x2

+ x3

 

+ x5

 

=

1

x1

+ x2

+ 0,6 x3

   

+ x6

=

1


 

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


 

Определимся с начальным  опорным решением.


Наличие единичного базиса в системе ограничений позволяет легко найти начальное опорное решение. Рассмотрим подробнее:


Переменная xвходит в уравнение 1 с коэффициентом 1, а в остальные уравнения системы с коэффициентом ноль, т.е. x- базисная переменная.


Переменная xвходит в уравнение 2 с коэффициентом 1, а в остальные уравнения системы с коэффициентом ноль, т.е. x- базисная переменная.


Переменная xвходит в уравнение 3 с коэффициентом 1, а в остальные уравнения системы с коэффициентом ноль, т.е. x- базисная переменная.


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


нач = ( 0 , 0 , 0 , 1 , 1 , 1 )

Значение функции для  начального решения: L (X нач) = 0


 

1)


За ведущий выберем  столбец 1 , так как -1 наименьший элемент  в L строке. Элемент L строки, принадлежащий  столбцу свободных членов не рассматриваем.


За ведущую выберем  строку 2, так как отношение свободного члена к соответствующему элементу выбранного столбца для 2 строки является наименьшим. Обратите внимание, что отношение мы вычисляем только для положительных элементов столбца 1.


 

базисные

переменные

x1

x2

x3

x4

x5

x6

свободные

члены

отношение

x4

0,6

1

1

1

0

0

1

 

5

 
 

3


x5

1

0,6

1

0

1

0

1

1

x6

1

1

0,6

0

0

1

1

1

L

- 1

- 1

- 1

0

0

0

0

-


 

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


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


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


 

базисные

переменные

x1

x2

x3

x4

x5

x6

свободные

члены

отношение

x4

0

 

16

 
 

25


 

2

 
 

5


1

-

3

 
 

5


0

 

2

 
 

5


-

x1

1

0,6

1

0

1

0

1

-

x6

0

 

2

 
 

5


-

2

 
 

5


0

- 1

1

0

-

L

0

-

2

 
 

5


0

0

1

0

1

-


= ( 1 , 0 , 0 , 2/5 , 0 , 0 )

Значение функции L для  данного решения: L (X 1) = 1


2)


За ведущий выберем  столбец 2 , так как -2/5 наименьший элемент  в L строке. Элемент L строки, принадлежащий столбцу свободных членов не рассматриваем.


За ведущую выберем  строку 3, так как отношение свободного члена к соответствующему элементу выбранного столбца для 3 строки является наименьшим. Обратите внимание, что  отношение мы вычисляем только для  положительных элементов столбца 2.


 

Базисные

переменные

x1

x2

x3

x4

x5

x6

Свободные

члены

отношение

x4

0

 

16

 
 

25


 

2

 
 

5


1

-

3

 
 

5


0

 

2

 
 

5


 

5

 
 

8


x1

1

0,6

1

0

1

0

1

 

5

 
 

3


x6

0

 

2

 
 

5


-

2

 
 

5


0

- 1

1

0

0

L

0

-

2

 
 

5


0

0

1

0

1

-


 

Разделим элементы строки 3 на 2/5.


 

Базисные

переменные

x1

x2

x3

x4

x5

x6

Свободные

члены

отношение

x4

0

 

16

 
 

25


 

2

 
 

5


1

-

3

 
 

5


0

 

2

 
 

5


 

5

 
 

8


x1

1

0,6

1

0

1

0

1

 

5

 
 

3


x6

0

1

- 1

0

-

5

 
 

2


 

5

 
 

2


0

0

L

0

-

2

 
 

5


0

0

1

0

1

-


 

От элементов строки 1 отнимает соответствующие элементы строки 3 умноженные на 16/25.


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


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


 

базисные

переменные

x1

x2

x3

x4

x5

x6

свободные

члены

отношение

x4

0

0

 

26

 
 

25


1

1

-

8

 
 

5


 

2

 
 

5


-

x1

1

0

 

8

 
 

5


0

 

5

 
 

2


-

3

 
 

2


1

-

x2

0

1

- 1

0

-

5

 
 

2


 

5

 
 

2


0

-

L

0

0

-

2

 
 

5


0

0

1

1

-


 

= ( 1 , 0 , 0 , 2/5 , 0 , 0 )

Значение функции L для  данного решения: L (X 2) = 1


 

 

3)


За ведущий выберем  столбец 3 , так как -2/5 наименьший элемент  в L строке. Элемент L строки, принадлежащий  столбцу свободных членов не рассматриваем.


За ведущую выберем строку 1, так как отношение свободного члена к соответствующему элементу выбранного столбца для 1 строки является наименьшим. Обратите внимание, что отношение мы вычисляем только для положительных элементов столбца 3.


 

базисные

переменные

x1

x2

x3

x4

x5

x6

свободные

члены

отношение

x4

0

0

 

26

 
 

25


1

1

-

8

 
 

5


 

2

 
 

5


 

5

 
 

13


x1

1

0

 

8

 
 

5


0

 

5

 
 

2


-

3

 
 

2


1

 

5

 
 

8


x2

0

1

- 1

0

-

5

 
 

2


 

5

 
 

2


0

-

L

0

0

-

2

 
 

5


0

0

1

1

-

Методы оптимизации