Решение задач линейного программирования. 3 Краткое сведение о задаче линейного программировани




Скачать 306.68 Kb.
Дата 06.10.2016
Размер 306.68 Kb.


Часть 1. Модели оптимизационных задач. 3

1.1. Моделирование и решение задач линейного программирования. 3

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

Примеры моделирования и решения задач линейного программирования. 4

Пример 1. Оптимальное распределение финансовых средств, отпускаемых на рекламу (задача о рекламе). 4

1.2. Моделирование и решение транспортной задачи. 8

Краткое сведение о транспортной задачи 8

Пример 2. Задача об оптимальном плане перевозки муки 9

1.3. Моделирование и решение задачи о назначениях 12

Пример 3. Задача о назначениях 13

1.4. Моделирование и решение задач в конфликтных ситуациях (матричные игры). 15

Краткое сведение о матричных играх 15

Сведение матричной игры к задаче линейного программирования. 17

Пример 4. Рациональная организация товароснабжения при неопределенности покупательского спроса 17




Часть 1. Модели оптимизационных задач.

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

Краткое сведение о задаче линейного программирования.


Стандартная задача линейного программирования в матричной форме имеет следующий вид [1-2]

max(c,x)


Ax=0, (1)

где x=(x1, x2,… xn), c=(c1, c2,… cn), b=(b1, b2,… bm), A=(aij)- матрица коэффициентов. Вектор с называется вектором коэффициентов линейной формы (с,х), b-вектором ограничений.

Все другие формы задач линейного программирования простыми преобразованиями можно привести к стандартной форме задачи линейного программирования. Например, уравнение можно заменить двумя неравенствами

ai1x1+ai2x2+…+ ainxn=bi ai1x1+ai2x2+…+ ainxn

i, -ai1x1-ai2x2-…-ainxni;

задачу минимизации линейной формы легко свести к задаче максимизации линейной формы min(c,x) max(-c,x) и т.д.

Линейная форма (c,x) подлежащая максимизации (или минимизации), называется целевой функцией. Вектор х, удовлетворяющий всем ограничениям задачи линейного программирования, называется допустимым вектором, или планом. Задача линейного программирования, для которой существуют допустимые векторы, называется допустимой задачей. Допустимый вектор x*, доставляющий наибольшее значение целевой функции по сравнению с любым другим допустимым вектором х, т.е. (с, x*)>=(c,x), называется решением задачи, или оптимальным планом. Максимальное значение d=(с, x*) целевой функции называется значением задачи.

Величина прироста целевой функции на единицу увеличения элемента вектора ограничений называется теневой ценой (или двойственной оценкой) этого ограничения.

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

Задачей, двойственной к (1) (двойственной задачей), называется задача линейного программирования от m переменных y1, y2,… ym вида

min(b,y)

A'y>=c, y>=0, (2)

где y=(y1, y2,… ym), A' транспонированная матрица.

Теорема двойственности. Если прямая и двойственные задачи (1) и (2) имеют допустимые решения, то обе они имеют решения x* и y* и эти решения удовлетворяют условию (с, x*)=(b, y*) т.е. значения исходной и двойственной задачи совпадают.

Отметим, что оптимальное решение двойственной задачи (2) y* совпадает с вектором двойственных (теневых) оценок задачи (1).


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

Пример 1. Оптимальное распределение финансовых средств, отпускаемых на рекламу (задача о рекламе).


Содержание задачи. Фирма имеет возможность рекламировать свою продукцию, используя местные радио- и телевизионную сети. Затраты на рекламу в бюджете фирмы ограничены величиной 1000 долларов в месяц. Каждая минута радиорекламы обходится в 5 долларов, а каждая минута телерекламы - в 100 долларов. Фирма хотела бы использовать радиосеть, по крайней мере, в два раза чаще, чем сеть телевидения. Опыт прошлых лет показал, что объём сбыта, который обеспечивает каждая минута телерекламы, в 25 раз больше сбыта, обеспечиваемого одной минутой радиорекламы. Определите оптимальное распределение финансовых средств, ежемесячно отпускаемых на рекламу, между радио- и телерекламой.

Экономико-математическая постановка задачи. Обозначим количества используемых минут в радио - и телесети соответственно через xr и xt. Примим за единицу объём сбыта обеспечиваемого одной минутой радиорекламы. Тогда общий объём сбыта можно выразить линейной формой xr+25xt, которого необходимо максимизировать. По условию общие затраты на рекламу ограничены сверху 5xr+100xt=2xt. Кроме того очевидно, что xr>=0, xt>=0.

Экономико-математическая формулировка и модель задачи. Из существующего множества решений линейных ограничений

5xr+100xt

-xr+2xt

xr>=0, xt>=0

найти такие количества используемых минут xr и xt в радио - и телесети соответственно, которые реализуют максимальную величину общего объёма сбыта в линейной функции цели:

xr+25xt мах.



Компьютерная модель и решение задачи.

В следующей таблице пакета EXCEL [3-4] введём матрицу (массив B5:C6), вектора ограничений (массив D5:D6), вектора коэффициентов целевой функции (массив B4:B5) и линейные формы задачи о рекламе (массив E4:E6). Формулы для линейных форм заданы ниже. Стрелка означает, что в ячейке E4 набирается формула, которая указана в таблице, а потом эта формула копируется в ячейки E5:E6. Ячейки B3:C3 резервированы для переменных задачи (изменяемые ячейки).

Таблица 1.

Формулы таблицы:



Ячейка

Формула или содержание




E4:E6

=СУММПРОИЗВ(B$3:C$3;B4:C4)

B3:C3

Изменяемые ячейки (переменные задачи)

E4

Целевая (результирующая) ячейка

Далее в меню Сервис выполняем команду Поиск решения. В окне "Поиск решения" моделируем оптимизационную задачу, которого должен решать компьютер:

Р
ис.1. Диалоговое окно "Поиск решения".

Отметим, что для формирования блока ограничений поставленной задачи необходимо нажать кнопку "Добавить". Открывается диалоговое окно "Добавление ограничение", где сформируются соответствующие ограничения задачи. На рисунке 2 формированы ограничения на линейные формы.



Р
ис.2. Диалоговое окно "Добавление ограничения".

Нажмите на кнопку "Добавить", чтобы, не возвращаясь в окно диалога "Поиск решения", наложить новое условие на поиск решения задачи. А именно B3:C3>=0. Если формируются последние ограничения задачи, необходимо нажать кнопку "ОК".

Чтобы изменить, или удалить ограничение необходимо выделить её, а потом нажать на соответствующую кнопку "Изменить" или "Удалить" в окне "Поиск решения".

Далее компьютеру необходимо указать, что решается задача линейного программирования. Для этого нажмите кнопку "Параметры" диалогового окна "Поиск решения". В диалоговом окне "Параметры поиска решения" установите флажок "Линейная модель" и нажмите кнопку "ОК".

Для получения более подробную информацию о диалоговых окнах нажмите кнопку "Справка".

Наконец компьютерная модель задачи готова. С помощью кнопки "Выполнить" диалогового окна "Поиск решения" запустите процесс поиска решения. После завершение этого процесса появится диалоговое окно "Результаты поиска решения":



Р
ис.3. Диалоговое окно "Результаты поиска решения".

Для выдачи ещё и отчетов, выделяем соответствующие отчеты и нажимаем кнопку "ОК".



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

На листе Excel, где формировали задачу, получаем решение задачи:

Таблица 2.

На отдельных листах Excel получаем каждого из этих трёх отчетов.



Таблица 3.

Отчет по результатам













Целевая ячейка (Максимум)










Ячейка

Имя

Исходно

Результат







$E$4

объём сбыта лин.формы

0

245,454545







Изменяемые ячейки













Ячейка

Имя

Исходно

Результат







$B$3

колич. минут радио

0

18,1818182







$C$3

колич. минут теле

0

9,09090909







Ограничения













Ячейка

Имя

Значение

формула

Статус

Разница

$E$5

xradio>=2xtele лин.формы

0

$E$5

связанное

0

$E$6

затраты лин.формы

1000

$E$6

связанное

0

$B$3

колич. минут радио

18,182

$B$3>=0

не связан.

18,18

$C$3

колич. минут теле

9,0909

$C$3>=0

не связан.

9,091

Статус связанное для ограничений означает, что соответствующий ресурс дефицитный (например, затраты) и в оптимальном решении линейная форма (затраты ресурса) принимает граничное значение ограничения на ресурс, а для переменных означает, что соответствующая переменная в оптимальном решении принимает граничное значение ограничения на переменную. Не связанность имеет обратный смысл. Отметим, что не связанные переменные являются базисными.

Из таблиц 2 и 3 получаем, что оптимальное распределение финансовых средств достигается тогда, когда ежемесячно используется 18,2 минут радиорекламы, 9,1 минут телерекламы. При этом достигается максимальный объём - 245,45 единиц сбыта. Все деньги отпускаемые фирмой на рекламу использованы (ограничение E6

Таблица 4.


Отчет по устойчивости
















Изменяемые ячейки






















Результ.

Нормир.

Целевой

Допуст.

Допуст.

ячейка

имя

значение

стоим.

Коэфф.

Увелич.

Уменьш.

$B$3

колич. минут радио

18,18

0

1

0,25

13,5

$C$3

колич. минут теле

9,091

0

25

1E+30

5

Ограничения






















Результ.

Теневая

Огранич.

Допуст.

Допуст.

ячейка

имя

значение

Цена

Прав.часть

Увелич.

Уменьш.

$E$5

xradio>=2xtele лин.формы

0

0,227

0

20

200

$E$6

затраты лин.формы

1000

0,245

1000

1E+30

1000

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

В нашем примере, например коэффициента 25 переменного xt, в целевой функции, можно изменить в интервале [5,). При этом будет выгодно останавливаться на прежнем решении, т.е. использовать теле- и радиорекламы одновременно (хотя и другими оптимальными значениями). Далее, если затраты на рекламу в бюджете фирмы были на 1 доллар больше, т.е. были 1001 долларов, то это дало бы 0,245 единиц дополнительного сбыта в оптимальном решении. Правый часть ограничения на строке затраты можно изменить в интервале [1000, ). При этом будет выгодно останавливаться на прежнем решении, т.е. использовать теле- и радиорекламы одновременно (хотя и другими оптимальными значениями).

Таблица 5.


Отчет по пределам



















Целевое
















Ячейка

Имя

значение










$E$4

объём сбыта лин.формы

245,45
















Изменяемое




Нижний

Целевой

Верхний

Целевой

Ячейка

Имя

значение

предел

результ.

предел

результат

$B$3

колич. минут радио

18,182

18,18

245,45

18,18

245,45

$C$3

колич. минут теле

9,0909

0

18,182

9,091

245,45

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

В нашем примере, например число 0 является наименьшим значением ячейки С3 (переменного xt), которое совместно со значением ячейки В3 (переменного xr) равное 18,1818 удовлетворяют все ограничения. При этом значение целевой функции (целевой результат) равно 18,18182.


1.2. Моделирование и решение транспортной задачи.

Краткое сведение о транспортной задачи


Имеется m пунктов P1, P2…,Pm производства однородного продукта, причем объём производства в пункте Pi равен ai единиц, i=1, 2, …, m. Произведенный продукт потребляется в пунктах G1, G2…, Gn и потребность в нем в пункте Gj равен bj единиц, j=1, 2, .., n. Требуется составить план перевозок из пунктов Pi, i=1, 2, …, m, в пункты Gj, j=1, 2, .., n, чтобы удовлетворить потребности в продукте bj и минимизировать транспортные расходы. Обозначим через xij количество продукта, поставляемого производителем Pi потребителю Gj, а через cij стоимость перевозок одной единицы продукта из пункта Pi в пункт Gj (i=1, 2, …, m, j=1, 2, .., n). Тогда математический модель транспортной задачи линейного программирования имеет следующий вид:

(3)

(4)

(5)

(6)

В этой задаче (3) имеет смысл требования минимизации суммарной стоимости перевозок, а условия (4) и (5)-соответственно ограничений на количество продукта, которое может быть вывезено от каждого производителя и ограничений на потребление этого продукта каждым потребителем.

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

(7)

Если имеет место равенство



(8)

то модель называется сбалансированной моделью и имеет следующий вид



(9)

(10)

(11)

(12)

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

Многопродуктовая модель изменяется следующим образом. Вместо того, чтобы каждый завод рассматривать как один исходный пункт, разбивается он на несколько исходных пунктов в соответствии с числом выпускаемом им продуктом. Считается, что каждый пункт назначения состоит из пунктов назначения равной количеству всех продуктов.

Запрещенным маршрутам соответствует очень высокая стоимость перевозки.


Пример 2. Задача об оптимальном плане перевозки муки


Содержание задачи. На трёх хлебокомбинатах ежедневно производится 110, 190 и 90т муки. Эта мука потребляется четырьмя хлебозаводами, ежедневные потребности которых равны соответственно 80, 60, 170, 80т. Тарифы перевозок 1т муки с хлебокомбинатов к каждому из хлебозаводов задаются матрицей

С=.

Составить такой план доставки муки, при котором общая стоимость перевозок является минимальной.

Экономико-математическая постановка задачи. Обозначим через xij количество муки, поставляемой хлебокомбинатом Pi хлебозаводу Gj (i=1, 2, 3, j=1, 2, 3, 4). Вектор объёма производства муки в хлебокомбинатах равен (a1, a2, a3)=(110, 190, 90), а вектор объёма спроса хлебокомбинатов на муку равен (b1, b2, b3, b4)=(80, 60, 170, 80). Общий объём муки, поставляемой хлебокомбинатом P1 хлебозаводам Gj, j=1, 2, 3, 4 удовлетворяет неравенство x11 + x12 + x13 + x14 2, P3 верны неравенства x21 + x22 + x23 + x24 31 + x32 + x33 + x34 11 + x21 + x3112 + x22 + x32>=60, x13 + x23 + x33>=170, x14 + x24 + x34>=80. Суммарная стоимость перевозок вычисляется линейной формой 8x11 + x12 + 9x13 + 7x14 + 4x21 + 6x22 + 2x23 + 12x24 + 3x31 + 5x32 + 8x33 + 9x34 .

Экономико-математическая формулировка и модель задачи. =390, т.е. спрос равен предложению и задача является сбалансированной транспортной задачей. Поэтому экономико-математическую модель задачи можно формулировать следующим образом

min (8x11+x12+9x13+7x14+4x21+6x22+2x23+12x24+3x31+5x32+8x33+9x34)

x11 + x12 + x13 + x14=110,

x21 + x22 + x23 + x24=190,

x31 + x32 + x33 + x34=90,

x11 + x21 + x31=80,

x12 + x22 + x32=60,

x13 + x23 + x33=170,

x14 + x24 + x34=80,

xij>=0, i=1, 2, 3, j=1, 2, 3, 4.



Компьютерная модель и решение задачи.

В следующей таблице введём матрицу затрат перевозок муки (ячейки С9:F11), предложения муки в хлебокомбинатах (ячейки B9:B11), спрос на муку в хлебозаводах (ячейки C7:F7):

Таблица 6.

Формулы таблицы:



Ячейка

Формула или содержание

B3:B5

=СУММ(C3:F3)-суммарный вывоз муки из хлебокомбината1 во все хлебозаводы 

C6:F6

=СУММ(C3:C5)-суммарное поступление муки в хлебозавод1 из всех хлебок-тов 

C12:F12

=СУММПРОИЗВ(C3:C5;C9:C11)-суммарные транспортные расходы для Хлебоз.1 

B12

=СУММ(C12:F12)-целевая (результирующая) ячейка

C13,F13

СУММ(B9:B11), СУММ(C7:F7) - суммарное предложение и запрос, соответственно

C3:F5

Изменяемые ячейки (переменные задачи)

C7:F7

Запросы хлебозаводов на муки

B9:B11

Предложения муки хлебокомбинатами

C9:F11

Затраты на перевозку муки от хлебокомбинатов в хлебозаводы

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

В меню Сервис выполняем команду Поиск решения. Так как значения ячеек C13 и F13 совпадают, то спрос равен предложению. Тогда в окне "Поиск решения" мы должны моделировать сбалансированную транспортную задачу, которого должен решать компьютер:



Р
ис.5. Диалоговое окно "Поиск решения".


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

После запуска процесса поиска решения на листе Excel, где сформировали задачу, получаем решение задачи:

Таблица 7.

Из этой таблицы видно, что для того чтобы с минимальными транспортными затратами 1280 руб. удовлетворить запросы хлебозаводов, необходимо из имеющейся в хлебокомбинат1 муки 110т, 60т завести в хлебозавод2, а 50т в хлебозавод4. Далее, из имеющейся в хлебокомбинат2 муки 190т, 20т завести в хлебозавод1, а 170т в хлебозавод3, из имеющейся в хлебокомбинат3 муки 90т, 60т завести в хлебозавод1, а 30т в хлебозавод4. При этом суммарные транспортные затраты на перевозку муки в хлебозаводы соответственно равны 260, 60, 340, 620 рублей.


1.3. Моделирование и решение задачи о назначениях


Словесная постановка задачи. Пусть требуется выполнить n различных работ и имеется n механизмов (или работников) для их выполнения, причем каждый механизм может использоваться на любой работе. Производительность каждого механизма на различных работах, вообще говоря, различна. Обозначим через cij производительность i-го механизма на j-й работе. Задача заключается в таком распределении механизмов по работам, при котором суммарная производительность максимальна.

Экономико-математическая формулировка и модель задачи. Сопоставим каждому из возможных вариантов распределения машин (работников) по работам набор значений неизвестных xij, относительно которых условимся, что xij=1, если в данном варианте i-й механизм назначается на j-ю работу, и xij=0, если i-й механизм назначается не на j-ю работу. Для любого варианта среди чисел xij должно быть точно n единиц, причем должны выполняться условия:

(каждый механизм назначается на одну работу) и



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



.

Таким образом, математическая модель нашей задачи будет такой:

max; (13)

, (14)

; (15)

(16)

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



(17)

то задача (13)-(16) превращается целочисленной транспортной задачи (13)-(15), (17) и они эквивалентны.


Пример 3. Задача о назначениях


Найти оптимальный вариант назначений, если матрица эффективностей такова:



Компьютерная модель и решение задачи.

В следующей таблице введём матрицу эффективностей в ячейки С11:G15, целевую функцию в ячейке B16, линейных форм задачи в ячейки B3:B7 и С8:G8:

Таблица 8.

Формулы таблицы:



Ячейка

Формула или содержание

B3:B7

СУММ(C3:G3)-сумма назначений механизма 1 во все работы 

C8:G8

СУММ(C3:C7)-сумма назначений всех механизмов на работу 1 

B16

СУММПРОИЗВ(C11:G15;C3:G7)-целевая (результирующая) ячейка

C3:G7

Изменяемые ячейки (переменные задачи)

B11:B15

Правые части уравнений (14)

C9:G9

Правые части уравнений (15)

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

Рис.7. Диалоговое окно "Поиск решения".

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

После запуска процесса поиска решения на листе Excel, где формировали задачу, получаем решение задачи:

Таблица 9.

Получаем, что оптимальный план назначений: x14= x23= x31= x45= x52=1, остальные xij=0, т.е. первый механизм назначается на четвёртую работу, второй - на третью, третий - на первую, четвёртый - на пятую, пятый - на вторую. При этом максимальная суммарная производительность равна 17 единиц.


1.4. Моделирование и решение задач в конфликтных ситуациях (матричные игры).

Краткое сведение о матричных играх


Тройка Г= (где Х и Y - множества, f - функция от двух переменных xX и yY) называется антагонистической игрой. Если множества Х и Y конечны, то эта тройка называется конечной антагонистической игрой. Множества Х и Y называются множествами стратегий. Элементы xX называются стратегиями (точнее чистыми стратегиями) игрока 1, элементы yY - (чистыми) стратегиями игрока 2, функция f - функцией выигрыша игрока 1 или просто функцией выигрыша, а (x,y) - ситуацией в чистых стратегиях.

Процесс разыгрывания конечной антагонистической игры состоит в том, что игроки 1 и 2, независима друг от друга, выбирают соответственно некоторые чистые стратегии x и y , в результате чего складывается ситуация (х,у). После этого игрок 1 получает выигрыш f(х,у). Игрок 2 столько же проигрывает. Функцию -f называют функцией выигрыша игрока 2.

Можно полагать, что Х={1,2,…,m} и Y={1,2,…,n} (здесь m и n - соответственно число чистых стратегий игроков 1 и 2). Тогда значения функции f представим в виде матрицы A=(a ij), a ij=f(i,j), 1

Матрица А называется матрицей выигрышей, игра называется матричной, выбор игроком 1 (2) стратегии i (j) означает выбор строки i (столбца j). Выигрыш игрока 1 будет при этом равен a ij.

Принципы оптимальности. Если игрок 1 выбирает стратегию x0X, то игрок 2 может выбирать такую стратегию yY, при которой выигрыш игрока 1 будет равен

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

==v1(Г).

Величину v1(Г) будем называть нижним значением игры Г, а x0 - максиминной чистой стратегией игрока 1.

Аналогично стратегия ==v2(Г), называется минимаксной стратегией игрока 2, а v2(Г) - верхним значением игры Г.

Придерживаясь стратегию x0, игрок 1 поступает очень осторожно: он желает получить v1(Г) независимо от действий игрока 2. Принцип это называется принципом максимина.

Элемент называется седловым элементом матрицы выигрыша А, если он удовлетворяет условий , т.е. он является самым маленьким в своей строке и самым большим в своем столбце.

Если v1(Г)=v2(Г)=v, то v называется значением матричной игры.



Теорема 1. Для того чтобы игра имела решение в чистых стратегиях, необходимо и достаточно, чтобы у матрицы А существовал седловой элемент. Если - седловой элемент, то решением игры является совокупность {}.

Не все матричные игры имеют седловую точку. Каков наилучший выбор игрока в таких случаях? Ответ состоит в том, что стратегия должна выбираться случайно.

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

В случае, когда игрок имеет только конечное число m чистых стратегий, смешанная стратегия представляет собой вектор x=(x1, x2,…, xm), удовлетворяющий условиям: Обозначим множество всех смешанных стратегий игрока 1 через , а множество всех смешанных стратегий игрока 2 через Если игрок 1 выбирает хХ, а игрок 2 уУ, то ожидаемый выигрыш будет равен A(x,y)= =, где y' вектор столбец. Обозначим v1=, v2=, где А.j - j-й столбец, Аi.- i-ая строка матрицы А. Стратегия х: v1=, - называется максиминной стратегией игрока 1, а стратегия y: v2=, минимаксной стратегией игрока 2. v1, v2 - называются значениями игры для игроков 1 и 2 соответственно.



Теорема 2 (о минимаксе). v1 = v2.

Эта теорема показывает, что каждая матричная игра имеет решение в смешанных стратегиях. v=v1 = v2 - называется значением игры.



Сведение матричной игры к задаче линейного программирования.


Теорема 3. Значением матричной игры Г= является оптимальные значения целевых функций двух двойственных задач линейного программирования, т.е. задачи

max z (18)

при условиях (19)

(20)

(21)

и двойственной ей задачи

min w (22)

при условиях (23)



(24)

, (25)

а решения этих задач линейного программирования x*, y* являются соответственно оптимальными стратегиями игроков 1 и 2.



Теорема 4. Тройка (x*, y*, v) является решением игры Г= тогда и только тогда, когда (x*, y*, kv+a) является решением игры Г'=, где a - любое вещественное число, k>0.

Пример 4. Рациональная организация товароснабжения при неопределенности покупательского спроса


Словесная модель задачи. Предположим, что на оптовой базе имеется 5 типов одного из товаров ассортиментного минимума. В магазин должен быть завезен 1000 ед. всего ассортиментного набора данного товара. Требуется определить объем товаров каждого вида, которые целесообразно завезти в магазин, и гарантированный уровень дохода. При этом известно, что если товар j (1j. Если же этот товар не будет пользоваться спросом, то убытки от его хранения, порчи и т.д., принесут магазину убыток uj (см. табл.10). Будем считать, что спрос неизвестен. Полезностью магазина является его доход.

Таблица 10.



Показатели

Вид товара

1

2

3

4

5

Доход от реализации pj ,усл. ед.

30

35

28

38

33

Издержки, uj ,усл. ед.

12

10

4

5

3

Экономико-математическая постановка и модель задачи. Моделью рассматриваемого конфликта будет игра, в которой в качестве одной из конфликтующих сторон выступает магазин (игрок 1), а в качестве другой - природа - покупательский спрос (игрок 2). Каждая из сторон имеет по 5 стратегий: i-я стратегия игрока 1 - завоз i-го товара, j-я стратегия игрока 2 - спрос на j-й товар. В этом случае конечная антагонистическая игра, задаваемая матрицей выигрышей

A==,

и будет теоретико-игровой моделью рассматриваемого конфликта.

Компьютерная модель и решение задачи. На компьютере будем решать эквивалентные этой игры задач (18) - (21) и (22) - (25). Как отмечали в пункте 1.1, оптимальное решение двойственной задачи (22) - (25) y* совпадает с вектором двойственных (теневых) оценок задачи (18) - (21), а оптимальные значения целевых функций совпадают. Поэтому будем решать задачу (18) - (21), а вместо того, чтобы решить задачу (22) - (25) будем выводить лишь "Отчет по устойчивости" для задачи (18) - (21), где выдаются теневые оценки задачи (18) - (21).

Матрицу задачи (18) - (21) для примера 6 будем вводить в ячейках E2:J7 следующей таблицы:

Таблица 11

Формулы и комментарии для таблицы 11 даны в таблице 12.

Таблица 12.


Ячейка

Формула или содержание

D9

СУММПРОИЗВ($B2:$B7;D2:D7)-целевая (результирующая) ячейка

E9:J9

СУММПРОИЗВ($B2:$B7;E2:E7)-линейные формы для ограничений задачи

C2:C6

1000*B2-переход от доли товара на её количество

B2:B7

Изменяемые ячейки (переменные задачи)

B2:B6

Вектор смешанных стратегий игрока 1

E2:I6

Матрица, элементы которой равны элементам матрицы игры с обратным знаком

D2:D7

Коэффициенты переменных в линейной формы функционала

E7:J7

Коэффициенты переменного z в линейной формы ограничений

J2:J6

Коэффициенты стратегий ограничения, линейная форма которого равна единице

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

Рис.8. Диалоговое окно "Поиск решения".

С помощью кнопки "Выполнить" диалогового окна "Поиск решения" запустим процесс поиска решения. После завершение этого процесса появится диалоговое окно "Результаты поиска решения", где в поле тип отчета отмечаем "Устойчивость" и нажимаем кнопку "ОК".



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

На листе Excel, где формировали задачу, получаем решение задачи:

Таблица 13

На отдельном листе получаем "Отчет по устойчивости", часть которого здесь приводим:



Таблица 14.

Ограничения
















Ячейка

Имя

Результ. знач.

Тенев Цена

Огранич. Прав.часть

Допуст. Увелич.

Допуст. Уменьш.

$J$9

Линейные формы Единица

1

1,305

1

1E+30

1

$E$9

Линейные формы Спрос1

0

0,317

0

9,569

42

$F$9

Линейные формы Спрос2

0

0,251

0

9,426

45

$G$9

Линейные формы Спрос3

0

0,166

0

10,302

32

$H$9

Линейные формы Спрос4

0

0,147

0

9,518

43

$I$9

Линейные формы Спрос5

0

0,120

0

9,947

36

Из таблиц 13 и 14 делаем вывод, что оптимальная стратегия для первого игрока равна x*=(0,18555; 0,17318; 0,24354; 0,18124; 0,21648), а значение игры, т.е. максимальный гарантированный результат игрока 1 равен v*=1,305. Компоненты стратегии x* можно трактовать как доли каждого типа товара, завозимого в магазин. Тогда согласно ячейкам C2:C6 таблицы 13 следует завести 185,55 ед. товара 1-го типа, 173,18 ед. товара 2-го типа, 243,54 ед. товара 3-го типа, 181,24 ед. товара 4-го типа и 216,48 ед. товара 5-го типа. В этом случае доход магазина будет равен значению игры, т.е. 1,305 усл. ед.

Из таблицы 14 делаем вывод, что оптимальная стратегия для второго игрока равна у*=(0,317; 0,251; 0,166; 0,147; 0,12), т.е. равна вектору теневых цен ограничений для ячеек E9:I9. Отметим, что y* является и решением двойственной задачи (22) - (25).







База данных защищена авторским правом ©infoeto.ru 2022
обратиться к администрации
Как написать курсовую работу | Как написать хороший реферат
    Главная страница