Реферат: 5 различных задач по программированию
ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ УПРАВЛЕНИЯ
КАФЕДРА ПРИКЛАДНОЙ МАТЕМАТИКИ
КУРСОВАЯ РАБОТА
по дисциплине «Прикладная математика»
Москва 2001
ОГЛАВЛЕНИЕ
ЛИНЕЙНАЯ ПРОИЗВОДСТВЕННАЯ ЗАДАЧА
ДВОЙСТВЕННАЯ ЗАДАЧА
ЗАДАЧА О «РАСШИВКЕ УЗКИХ МЕСТ ПРОИЗВОДСТВА»
ТРАНСПОРТНАЯ ЗАДАЧА ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ
ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ. РАСПРЕДЕЛЕНИЕ КАПИТАЛЬНЫХ ВЛОЖЕНИЙ
ДИНАМИЧЕСКАЯ ЗАДАЧА УПРАВЛЕНИЯ ПРОИЗВОДСТВОМ И ЗАПАСАМИ…
МАТРИЧНАЯ МОДЕЛЬ ПРОИЗВОДСТВЕННОЙ ПРОГРАММЫ ПРЕДПРИЯТИЯ
МАТРИЧНАЯ ИГРА КАК МОДЕЛЬ КОНКУРЕНЦИИ И СОТРУДНИЧЕСТВА
АНАЛИЗ ДОХОДНОСТИ И РИСКА ФИНАНСОВЫХ ОПЕРАЦИЙ
ЗАДАЧА ФОРМИРОВАНИЯ ОПТИМАЛЬНОГО ПОРТФЕЛЯ ЦЕННЫХ БУМАГ
ЛИТЕРАТура
Предприятие может выпускать четыре вида продукции, используя для этого три вида ресурсов. Известна технологическая матрица А затрат любого ресурса на единицу каждой продукции, вектор В объемов ресурсов и вектор С удельной прибыли
(1)
Требуется составить производственную программу (x1, x2, x3, x4 ), максимизирующую прибыль
(2)
при ограничениях по ресурсам: (3)
где по смыслу задачи (4)
Получили задачу на условный экстремум. Для ее решения систему неравенств (3) при помощи дополнительных неотрицательных неизвестных х5, х6, х7 заменим системой линейных алгебраических
уравнений (5)
где дополнительные переменные имеют смысл остатков соответствующих ресурсов. Среди всех решений системы уравнений (5), удовлетворяющих условию неотрицательности х1 ³0, х2 ³0,…, х5 ³0,…, х7 ³0. (6)
надо найти то решение, при котором функция (2) примет наибольшее значение.
Воспользуемся тем, что правые части всех уравнений системы (5) неотрицательны, а сама система имеет предпочитаемый вид – дополнительные переменные являются базисными. Приравняв к нулю свободные переменные х1, х2, х3, х4, получаем базисное неотрицательное решение
x1 =0, x2 =0, x3 =0, x4 =0, x5 =103, x6 =148, x7 =158 (7)
первые четыре компоненты которого определяют производственную программу x1 =0, x2 =0, x3 =0, x4 =0(8)
по которой мы пока ничего не производим. Из выражения (2) видно, что наиболее выгодно начинать производить продукцию первого вида, так как прибыль на единицу продукции здесь наибольшая. Чем больше выпуск в этой продукции, тем больше прибыль. Выясним, до каких пор наши ресурсы позволяют увеличить выпуск этой продукции. Для этого придется записать для системы уравнений (5) общее решение
(9)
Мы пока сохраняем в общем решении х2 =х3 =х4 =0и увеличиваем только х1. При этом значения базисных переменных должны оставаться неотрицательными, что приводит к системе неравенств
или т.е. 0 £ х1 £ 37
Дадим х1 наибольшее значение х1 =37, которое она может принять при нулевых значениях других свободных неизвестных, и подставим его в (9). Получаем для системы уравнений (5) частное неотрицательное решение х1 =37, х2 =0, х3 =0, х4 =0; x5 =29; x6 =0; x7 =84 (10)
Нетрудно убедиться, что это решение является новым базисным неотрицательным решением системы линейных алгебраических уравнений (5), для получения которого достаточно было принять в системе (5) неизвестную х1 за разрешающую и перейти к новому предпочитаемому виду этой системы, сохранив правые части уравнений неотрицательными, для чего за разрешающее уравнение мы обязаны принять второе, так как
, а разрешающим элементом будет а21 =4.
Остается заметить, что процесс решения обычно записывается в виде некоторой таблицы 1.
И | 36 32 10 13 0 0 0 |
Базис | Н | x1 x2 x3 x4 x5 x6 x7 | Пояснения |
Х5 | 103 | 2 3 4 1 1 0 0 | z0= H |
Х6 | 148 | 4 2 0 2 0 1 0 | |
Х7 | 158 | 2 8 7 0 0 0 1 | |
z0-z | 0 — z | -36 -32 -10 -13 0 0 0 | |
Х5 | 29 | 0 2 4 0 1 -1/2 0 |
Х1 | 37 | 1 1/2 0 1/2 0 ј 0 |
36 | Х7 | 84 | 0 7 7 -1 0 -1/2 1 | min (29/2; 64;12)=12 |
z0-z | 1332-z | 0 -14 -10 5 0 9 0 | min (-14;-10) = -14 |
36 | Х5 | 5 | 0 0 2 2/7 1 -5/14 -2/7 |
Х1 | 31 | 1 0 -1/2 4/7 0 2/7 -1/14 |
14 | Х2 | 12 | 0 1 1 -1/7 0 -1/14 1/7 |
z0-z | 1500-z | 0 0 4 3 0 8 2 | все Dj ³0 |
Применим известные формулы исключения
a`ij =aij – (ais /ars )*arj
a`iq =aiq – (ais /ars )*arq
b`i =bi — (ais /ars )*br
b`r =br /ars
s=1, r=2
a`12 =3-2/4 *2= 2
a`13 =4
a`14 =1-2/4 *2=0
a`15 =1
a`16 =0-2/4*1= -2/4
a`17 =0
a`32 =8-2/4* 2= 7
a`33 =7
a`34 =0-2/4* 2= -1
a`35 = 0
a`36 =0-2/4 *1= -2/4
a`37 =1
a`21 =a21 /a21 =1
a`22 =a22 /a21 =1/2
a`23 =0
a`24 =1/2
a`25 =0
a`26 =1/4
a`27 =0
a`41 = 0
a`42 = -14
a`43 = -10
a`44 =5
a`45 =0
a`46 =9
a`47 =0
a`11 =a`31 =0
b`1 =103-148/4*2=29
b`2 =148/4=37
b`3 =158-148/4*2=84
Получаем для системы уравнений (5) новый предпочитаемый эквивалент
2x2 + 4x3 + x5 — 1/2x6 = 29
x1 + 1/2x2 + 1/2x4 + 1/4x6 = 37 (11)
7x2 + 7x3 — x4 -1/2x6 + x7 = 84
Приравняв к нулю свободные переменные х2, х3, х4, х6, получаем базисное неотрицательное решение, совпадающее с (10), причем первые четыре компоненты его определяют новую производственную программу х1 =37, х2 =0, х3 =0, х4 =0. (12)
Представим соотношение (2) в виде уравнения -36х1 — 14х2 — 10х3 — 13х4 = 0 – z (13)
и припишем его к системе (5). Получается вспомогательная система уравнений
(14)
Напомним, что разрешающую неизвестную в системе (5) мы выбрали х1. Этой переменной в последнем уравнении системы (14) отвечает наименьший отрицательный коэффициент D1 = -36. Затем мы нашли разрешающий элемент а21 =4 и исключили неизвестную х1 из всех уравнений системы (5), кроме второго. Далее нам пришлось х1 исключать и из функции (2). Теперь это можно сделать очень просто, если посмотреть на систему уравнений (14). Очевидно, достаточно умножить второе уравнение системы (14) на 9 и прибавить к четвертому; получим
-14х2 — 10х3 + 5х4 — 9х6 = 1332 – z (15)
Таким образом, мы преобразовывали вспомогательную систему уравнений (14) к виду
(16)
Первые три уравнения этой системы представляют некоторый предпочитаемый эквивалент (11) системы уравнений (5) и определяют базисное неотрицательное решение (10) и производственную программу (12), а из последнего уравнения системы (16) получается выражение функции цели через свободные переменные. Получим следующий предпочитаемый эквивалент системы условий, который определит для системы (5) новое базисное неотрицательное решение и уже третью производственную программу, для исследования которого нам придется выразить функцию z=1332+14x2 +10x3 -5x4 -9x6 через новые свободные переменные, удалив оттуда переменную х2, ставшую базисной.
Очевидно, если имеется хотя бы один отрицательный коэффициент Dj при какой-нибудь переменной xj в последнем уравнении системы (16), то производственная программа не является наилучшей и можно далее продолжать процесс ее улучшения. Мы нашли в последнем уравнении системы (16) наименьший отрицательный коэффициент min(Dj<0) = min(-14,-10) = -14 = D2. Поэтому принимаем х2 в системе (11) за разрешающую неизвестную, находим разрешающее уравнение по (17)
и исключаем х2 из всех уравнений системы (11), кроме третьего уравнения. Укажем разрешающий элемент а32 =7.
Теперь мы будем преобразовывать вспомогательную систему (16), по формулам исключения.
a`ij =aij – (ais /ars )*arj
a`iq =aiq – (ais /ars )*arq
b`i =bi — (ais /ars )*br
b`r =br /ars
s=1, r=2
a`11 =0
a`13 =4-2/7*7=2
a`14 =0+2/7 *1=2/7
a`15 =1
a`16 = -5/14
a`17 =0-2/7*1=-2/7
a`21 =1
a`23 = -1/2
a`24 =4/7
a`25 =0
a`26 =2/7
a`27 = -1/14
a`31 = a31 /a32 =0
a`32 =1
a`33 = a33 /a32 =1
a`34 = -1/7
a`35 = 0
a`36 =-1/14
a`37 =1/7
a`41 = 0
a`42 = -14+2*7=0
a`43 = 4
a`44 =3
a`45 =0
a`46 =8
a`47 =2
a`12 =a`22 =0
b`1 =29-84/7*2=5
b`2 =37-84/7*1/2=31
b`3 =84/7=12
Эта система преобразуется к виду
2 x3 + 2/7 x4 + x5 – 5/14 x6 – 2/7 x7 = 5
x1 — Ѕ x3 + x4 + 2/7 x6 – 1/14 x7 = 31 (18)
x2 + x3 — 1/7 x4 – 1/14 x6 + 1/7 x7 = 12
4 x3 + 3 x4 + 8 x6 + 2 x7 = 1500 — z
Первые три уравнения системы (18) представляют некоторый предпочитаемый эквивалент системы уравнений (5) и определяют базисное неотрицательное решение системы условий рассматриваемой задачи
x1 =37, x2 =0, x3 =0, x4 =0, x5 =29, x6 =0, x7 =84 (19)
т.е. определяют производственную программу x1 =37, x2 =0, x3 =0, x4 =0 (20)
и остатки ресурсов:
первого вида х5 =5
второго вида х6 =0 (21)
третьего вида х7 =0
Последнее уравнение системы (18) мы получаем, исключая х2. В последнем уравнении системы (18) среди коэффициентов при неизвестных в левой части уравнения нет ни одного отрицательного. Если из этого уравнения выразить функцию цели z через остальные неотрицательные переменные
z = 1500 — 4 x3 — 3 x4 — 8 x6 — 2x7 (22)
то становится совершенно очевидным (в силу того, что все xj³0), что прибыль будет наибольшей тогда, когда
x3 =0, x4 =0, x6 =0, x7 =0 (23)
Это означает, что производственная программа (20) является наилучшей и обеспечивает предприятию наибольшую прибыль zmax = 1500 (24)
Итак, организовав направленный перебор базисных неотрицательных решений системы условий задачи, мы пришли к оптимальной производственной программе и указали остатки ресурсов, а также максимальную прибыль.
Следует обратить внимание на экономический смысл элементов последней строки последней симплексной таблицы. Например, коэффициент D3 =4 при переменной х3 показывает, что если произвести одну единицу продукции третьего вида (она не входит в оптимальную производственную программу), то прибыль уменьшится на 4 единиц.
Воспользуемся тем, что в оптимальной производственной программе x3 =0, x4 =0. Предположим, что четвертую и третью продукции мы не намеревались выпускать с самого начала. Рассмотрим задачу с оставшимися двумя переменными, сохранив их нумерацию. Математическая модель задачи будет выглядеть следующим образом:
Следует при этом обратить внимание на то, что последовательное улучшение производственной программы (x1 =0, x2 =0) ® (x1 =37, x2 =0) ® (x1 =31, x2 =12) на графике означает движение от одной вершины многогранника допустимых решений к другой вершине по связывающей их стороне многоугольника.
Ранее мы рассмотрели конкретную линейную производственную задачу по выпуску четырех видов продукции с использованием трех видов ресурсов по заданным технологиям.
Теперь представим себе, что знакомый предприниматель П, занимающийся производством каких-то других видов продукции, но с использованием трех таких же видов ресурсов, какие имеются у нас, предлагает нам «уступить» по определенным ценам все имеющиеся у нас ресурсы и обещает платить у1 рублей за каждую единицу первого ресурса, у2 руб – второго, у3 руб – третьего. Возникает вопрос: при каких ценах у1, у2, у3 мы можем согласиться с предложением П.
Величины у1, у2, у3 принято называть расчетными, или двойственными, оценками ресурсов. Они прямо зависят от условий, в которых действует наше предприятие.
Напомним, что в нашей задаче технологическая матрица А, вектор объемов ресурсов В и вектор удельной прибыли С имели вид
Для производства единицы продукции первого вида мы должны затратить, как видно из матрицы А, 2 единицы ресурса первого вида, 4 единицы ресурса второго вида и 2 единицы третьего (элементы первого столбца матрицы). В ценах у1, у2, у3 наши затраты составят 2у1 + 4у2 + 2у3, т.е. столько заплатит предприниматель П за все ресурсы, идущие на производство единицы продукции первого вида. На рынке за единицу первой продукции мы получили бы прибыль 36 руб. Следовательно, мы можем согласиться с предложением П только в том случае, если он заплатит не меньше 2у1 + 4у2 + 2у3 ³ 36.
Аналогично, для трех оставшихся видов продукции:
3у1 + 2у2 + 8у3 ³32
4у1 + 7у3 ³10
у1 + 2у2 ³13
Учтем, что за все имеющиеся у нас ресурсы нам должны заплатить 103у1 + 148у2 + 158у3 рублей. При поставленных нами условиях предприниматель П будет искать такие значения величин у1, у2, у3, чтобы эта сумма была как можно меньше. Подчеркнем, что здесь речь идет не о ценах, по которым мы когда-то приобретали эти ресурсы, а об этих ценах, которые существенно зависят от применяемых нами технологий, объемов ресурсов и от ситуации на рынке.
Таким образом, проблема определения расчетных оценок ресурсов приводит к задаче линейного программирования: найти вектор двойственных оценок у (у1, y2, y3 ) минимизирующий общую оценку всех ресурсов f = 103у1 + 148у2 + 158у3 (1)
при условии, что по каждому виду продукции суммарная оценка всех ресурсов, затрачиваемых на производство единицы продукции, не меньше прибыли, получаемой от реализации единицы этой продукции
2у1 + 4у2 + 2у3 ³ 36
3у1 + 2у2 + 8у3 ³32 (2)
4у1 + 7у3 ³10
у1 + 2у2 ³13
причем оценки ресурсов не могут быть отрицательными y10, y20, y30. (3)
Решение полученной задачи легко найти с помощью второй основной теоремы двойственности, согласно которой для оптимальных решений (х1, х2, х3, х4 ) и (y1, y2, y3 ) пары двойственных задач необходимо и достаточно выполнение условий
x 1 (2у1 + 4у2 + 2у3 — 36) = 0 y1 (2x1 +3x2 + 4x3 + x4 — 103) = 0
x 2 (3у1 + 2у2 + 8у3 — 32) = 0 y2 (4x1 +2x2 + 2x4 — 148) = 0
x 3 (4у1 + 7у3 — 10) = 0 y3 (2x1 +8x2 + 7x3 — 158) = 0 .
x 4 (у1 + 2у2 — 13) = 0
Ранее было найдено, что в решении исходной задачи х1 >0, x2 >0. Поэтому
2y1 + 4y2 + 2y3 — 36 = 0
3y1 + 2y2 + 8y3 — 32 = 0
Если же учесть, что первый ресурс был избыточным и, согласно той же теореме двойственности, ее двойственная оценка равна нулю у1 =0,
то приходим к системе уравнений
4y2 + 2y3 — 36 = 0
2y2 + 8y3 — 32 = 0
откуда следует у2 =8, у3 =2.
Таким образом, получили двойственные оценки ресурсов у1 =0; у2 =8; у3 =2, (4)
причем общая оценка всех ресурсов равна 1500.
Заметим, что решение (4) содержалось в последней строке последней симплексной таблицы исходной задачи. Важен экономический смысл двойственных оценок. Например, двойственная оценка третьего ресурса у3 =2 показывает, что добавление одной единицы третьего ресурса обеспечит прирост прибыли в 2 единицы.
При выполнении оптимальной производственной программы второй и третий ресурсы используются полностью, т.е. образуют ² узкие места производства ² . Будем их заказывать дополнительно. Пусть T(t1 ,t2 ,t3 )- вектор дополнительных объемов ресурсов. Так как мы будем использовать найденные двойственные оценки ресурсов, то должно выполняться условие H + Q-1 T 0.
Задача состоит в том, чтобы найти вектор T (0, t2, t3 ), максимизирующий суммарный прирост прибыли W = 8t2 + 2t3 (1) при условии сохранения двойственных оценок ресурсов (и, следовательно, структуры производственной программы)
предполагая, что можно надеяться получить дополнительно не более 1/3 первоначального объема ресурса каждого вида (3)
причем по смыслу задачи t20, t3 0. (4)
Переписав неравенства (2) и (3) в виде:
(5)
из условия (3) следует t2£148/3, t3£158/3 (6)
приходим к задаче ЛП: максимизировать (1) при условиях (5), (6) и (4).
Эту задачу легко решить графически: см. рис. 2. Программа ²расшивки² имеет вид
t1 =0, t2 =14, t3 =0 и прирост прибыли составит 112.
Сводка результатов приведена в таблицe 2.
сj | 36 | 32 | 10 | 13 | b | x4+i | yi | ti |
2 | 3 | 4 | 1 | 103 | 5 |
aij | 4 | 2 | 2 | 148 | 8 | 14 |
2 | 8 | 7 | 158 | 2 |
xj | 31 | 12 | 1500 | 112 |
Dj | 4 | 3 |
Однородный продукт, сосредоточенный в 3 пунктах производства (хранения) в количествах 40; 60; 70 единиц, необходимо распределить между 4 пунктами потребления, которым необходимо соответственно 36; 32; 40; 53 единиц. Стоимость перевозки единицы продукта из пункта отправления в пункт назначения известна для всех маршрутов и равна С = . Необходимо составить план перевозок, при котором запросы всех пунктов потребления были бы удовлетворены за счет имеющихся продуктов в пунктах производства и общие транспортные расходы по доставке продуктов были минимальными.
Для решения транспортной задачи чаще всего применяется метод потенциалов.
Общий объем производства åаi =40+60+70=170 больше, чем требуется всем потребителям åbi = 36+32 +40 +53 =161, т.е. имеем открытую модель транспортной задачи. Для превращения ее в закрытую вводим фиктивный пункт потребления с объемом потребления 170-161 = 9 единиц, причем тарифы на перевозку в этот пункт условимся считать равными нулю, помня, что переменные, добавляемые к левым частям неравенств для превращения их в уравнения, входят в функцию цели с нулевыми коэффициентами.
Первое базисное допустимое решение легко построить по правилу ²северо-западного угла².
Потребление | b1 =36 | b2 =32 | b3 =40 | b4 =53 | b5 =9 |
Производство |
а1 =40 | 36 | 4 | p1 =0 |
a2 =60 | 28 | 32 | p2 = |
a3 =70 | * | 8 | 53 | 9 | p3 = |
q1 = | q2 = | q3 = | q4 = | q5 = |
Общая стоимость всех перевозок для первого базисного допустимого решения:
L = 36* 2 + 4 *3 + 28 *2 + 32 + 8* 7+ 53 =281
Один из потенциалов можно выбрать произвольно, так как в системе (3), (4) одно уравнение линейно зависит от остальных. Положим, что р1 = 0. Остальные потенциалы находим из условия, что для базисных клеток . В данном случае получаем
D11 = 0, p1 + q1 — c11 = 0, 0+q1 -2 = 0, q1 = 2
D12 = 0, p1 + q2 — c12 = 0, 0+q2 -3 = 0, q2 = 3
D22 = 0, p2 + q2 — c22 = 0, р2 +3-2 = 0, р2 = -1
и т.д., получим: q3 =2, p3 =5, q4 = -4, q5 = -5.
Затем по формуле (6) вычисляем оценки всех свободных клеток:
D21 = p2 + q5 — c21 = -1+2-4 = -3
D31 = p3 + q1 — c31 = 5+2-2 = 5
D32 = 1; D13 = -2; D14 = -5; D24 = 0; D15 = -5; D25 = -6.
Находим наибольшую положительную оценку max () = 5 =
Для найденной свободной клетки 31 строим цикл пересчета — замкнутую ломаную линию, соседние звенья которой взаимно перпендикулярны, сами звенья параллельны строкам и столбцам таблицы, одна из вершин находится в данной свободной клетке, а все остальные — в занятых клетках. Это будет 31-11-12-22-23-33. Производим перераспределение поставок вдоль цикла пересчета
36 | 4 | 36-r | 4+r | 28 | 12 |
| 28 | 32 | 28-r | 32+r | 20 | 40 |
8 | r | 8-r | 8 |
= 8
Получаем второе базисное допустимое решение:
bj | b1 =36 | b2 =32 | b3 =40 | b4 =53 | b5 =9 |
ai |
а1 =40 | 28 | 12 | * | p1 =0 |
a2 =60 | 20 | 40 | p2 = -1 |
a3 =70 | 8 | 53 | 9 | p3 =0 |
q1 =2 | q2 = 3 | q3 = 2 | q4 = 1 | q5 =0 |
Находим новые потенциалы, новые оценки.
D13 = -2; D14 = 0; D15 = 0; D21 = -3; D24 = -2; D25 = -1; D32 = -4; D33 = -5,
т.е. все Dij £ 0 i = 1,m; j = 1,n
Общая стоимость всех перевозок для второго базисного допустимого решения:
L = 28* 2 + 12 *3 + 20 *2 + 40 + 8* 2+ 53 =241 – минимальная стоимость.
ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ. РАСПРЕДЕЛЕНИЕ КАПИТАЛЬНЫХ ВЛОЖЕНИЙ
Пусть производственное объединение состоит из четырех предприятий (n=4). Общая сумма капитальных вложений равна 700 тыс. рублей (b=700), выделяемые предприятиям суммы кратны 100 тыс. рублей. Значения функций fj(xj) приведены в таблице 1, где, например, число 50 означает, что если третье предприятие получит 600 тыс. руб. капитальных вложений, то прирост прибыли на этом предприятии составит 50 тыс. руб. Таблица I
Прежде всего заполняем табл. 2. Значения f2(x2) складываем со значениями F1( — x2) = f1(- x2) и на каждой северо-восточной диагонали находим наибольшее число, которое отмечаем звездочкой и указываем соответствующее значение. Заполняем таблицу 3.
Продолжая процесс, табулируем функции F3(), () и т.д. В табл. 6 заполняем только одну диагональ для значения = 700.
Таблица 2
— x2 0 100 200 300 400 500 600 700
x2 F1( — x2)
f2(x2) 0 15 24 30 36 40 43 45
0 0 15 24 30 36 40 43 45
100 18 18* 33* 42* 48 54 58 61
200 26 26 41 50* 56 62 66
300 34 34 49 58* 64* 70*
400 39 39 54 63 69
500 42 42 57 66
600 44 44 59
700 46 46
Таблица 3
0 100 200 300 400 500 600 700
F2() 0 18 33 42 50 58 64 70
()
0 0 100 100 200 300 300 300
Таблица 4
— x3 0 100 200 300 400 500 600 700
x3 F2( — x3)
f3(x3) 0 18 33 42 50 58 64 70
0 0 18* 33 42 50 58 64 70
100 16 16 34* 49* 58 66 74 80
200 27 27 45 60* 69 77 85
300 37 37 55 70* 79* 87*
400 44 44 62 77 86
500 48 48 66 81
600 50 50 68
700 56 56
Таблица 5
0 100 200 300 400 500 600 700
F3() 0 18 34 49 60 70 79 87
()
0 0 100 100 200 300 300 300
Таблица 6
— x4 0 100 200 300 400 500 600 700
x4 F3( — x4)
f4(x4) 0 18 34 49 60 70 79 87
0 0 87
100 10 89*
200 17 87
300 23 83
400 29 78
500 34 68
600 38 56
700 41 41 .
Наибольшее число на этой диагонали: Zmax = 89 тыс. руб.,
причем четвертому предприятию должно быть выделено х*4 = 4 (700) = 100 тыс. руб.
На долю остальных трех предприятий остается 600 тыс. руб. Из табл. 5 видно, что третьему предприятию должно быть выделено x*3 = 3 (700-x*4) = 3 (600) = 300 тыс. руб.
Продолжая обратный процесс, находим x*2 = 2 (700 — x*4 — x*3) = 2 (300) = 100 тыс. руб.
На долю первого предприятия остается x*1 = 700 — x*4 — x*3 — x*2 = 200 тыс. руб.
Таким образом, наилучшим является следующее распределение капитальных вложений по предприятиям:
x*1 =200; x*2 =100; x*3 = 300; x*4 = 100.
Оно обеспечивает производственному объединению наибольший воможный прирост прибыли 89 тыс. руб.
выполнение равенства: f1(x*1) + f2(x*2) + f3(x*3) + f4(x*4) = z max
24+18+37+10=89
ДИНАМИЧЕСКАЯ ЗАДАЧА УПРАВЛЕНИЯ ПРОИЗВОДСТВОМ И ЗАПАСАМИ
Рассмотрим трехэтапную систему управления запасами с дискретной продукцией и динамическим детерминированным спросом.
Пусть спрос (заявки) потребителей на нашу продукцию составляют: на первый этап d1=3 единицы, на второй – d2=2, на третий — d3=3 единицы. К началу первого этапа на складе имеется 3 единицы продукции, т.е. начальный уровень запаса равен y1=3. Затраты на хранение единицы продукции на разных этапах различны и составляют соответственно h1=4, h2=3, h3=2. Затраты на производство xj единиц продукции на j-м этапе определяются функцией j(xj) = xj2 + 2xj + 2
т.е. а=1; b=5; с=2. Требуется указать, сколько единиц продукции на отдельных этапах следует производить, чтобы заявки потребителей были удовлетворены, а наши общие затраты на производство и хранение за все три этапа были наименьшими.
Исходные данные задачи можно кратко записать одной строкой:
d1 d2 d3 a b c h1 h2 h3 y1
3 2 3 1 2 2 4 3 2 3
Воспользовавшись рекуррентными соотношениями, последовательно вычисляем F1 ( = y2), F2 ( = y3), ..., Fk ( = yk+1),… и соответственно находим 1 (= y2), 2 ( = y3 ), ..., k ( = yk+1),…
Положим k = 1.
Параметр состояния = у2 может принимать целые значения на отрезке
0 у2 d2 + d3 0 y2 2 + 3 т.е. у2 = 0, 1, 2, 3, 4, 5.
Каждому значению параметра состояния должна отвечать определенная область изменения переменной x1, характеризуемая условием 0 х1 d1 + у2 или 0 х1 3 + у2
Из балансового уравнения х1 + у1 — d1 = у2 непосредственно следует, что объем производства связан со значением параметра состояния = у2 соотношением
x1 = y2 + d1 — y1 = y2 + 3 — 3 = y2
В этом и состоит особенность первого этапа. Если задан уровень запаса к началу первого этапа, то каждому значению у2 отвечает единственное значение х1 и потому F1( = y2) = 1 (x1, y2)
Придавая у2 различные целые значения от 0 до 6 и учитывая предыдущее соотношение, находим
y2 = 0, x1 = 0, 1 (0;0) = 02 + 20 + 2 + 40 = 2*
y2 = 1, x1 = 1, 1 (1;1) = 12 + 22 + 2 + 41 = 11
y2 = 2, x1 = 2, 1 (2;2) = 22 + 22 + 2 + 42 = 18
y2 = 3, x1 = 3, 1 (3;3) = 32 + 23 + 2 + 43 = 29
y2 = 4, x1 = 4, 1 (4;4) = 42 + 24 + 2 + 44 = 42
y2 = 5, x1 = 5, 1 (5;5) = 52 + 25 + 2 + 45 = 57
Значения функции состояния F1( ) представлены в табл. 1
Таблица 1
= y2012345
F1 ( = y2)
2 11 18 29 42 57
x1(=y2)012345
Переходим ко второму этапу. Полагаем k = 2 и табулируем функцию F2( = y3)
Здесь минимум берется по единственной переменной х2, которая может изменяться в пределах
0 x2 d2 + y3 или 0 x2 2 + y3(1)
где верхняя граница зависит от параметра состояния = у3, который принимает значения на отрезке
0 y3 d3, т.е. 0 y3 3
а аргумент у2 связан с х2 и у3 балансовым уравнением x2 + y2 — d2 = y3 откуда следует y2 = y3 + d2 — x2 = =y3 + 2 — x2 (2)
Придавая параметру состояния различные значения от 0 до 3, будем последовательно вычислять 2 (x2, ), а затем определять F2( ) и 2( ).
Положим = у3 = 0. Тогда, согласно (1), 0 x2 2, т.е. переменная х2 может принимать значения: 0, 1, 2, а каждому значению х2 отвечает определенное значение у2, вычисляемое по формуле (2): у2 = 2 — х2
Последовательно находим:
если x2 = 0, то у2 = 2, 2 (0,2) = 02 + 20 + 2 + F1(2) = 2 + 18 = 20,
x2 = 1, y2 = 2 — 1 = 1, 2 (1,2) = 12 + 51 + 2 + F1(1) = 8 + 11 = 19,
x2 = 2, y2 = 2 — 2 =0, 2 (2,2) = 22 + 52 + 2 + F1(0) = 16 + 2 = 18*,
Наименьшее из полученных значений 2 есть F2 (0), т.е.
F2 ( = y3 = 0) = 18,
причем минимум достигается при значении х2, равном 2 ( = y3 = 0) = 2
Положим = у3 = 1. Тогда, согласно (1), 0 x2 3, т.е. переменная х2 может принимать значения: 0, 1, 2, 3, а каждому значению х2 отвечает определенное значение у2, вычисляемое по формуле (2): у2 = 3 — х2
Последовательно находим:
если x2 = 0, то y2 = 3-0 = 3,2 (0,1) = 02 + 20 + 2 + 31 + F1(3) = 5 + 29 = 34,
x2 = 1, y2 = 3-1 = 2, 2 (1,2) = 12 + 21 + 2 + 31 + F1(2) = 8 + 18 = 26,
x2 = 2, y2 = 3-2 = 1, 2 (2,1) = 22 + 22 + 2 + 31 + F1(1) = 13 +11 = 24,
x2 = 3, y2 = 3-3 = 0, 2 (3,1) = 32 + 23 + 2 + 31 + F1(0) = 20 + 2 = 22*,
Наименьшее из полученных значений 2 есть F2 (1), т.е.
F2 ( = y3 = 1) = min 2 (x2,1) = 22,
причем минимум достигается при значении х2, равном 2 ( = y3 = 1) = 3
Положим = у3 = 2. Тогда, согласно (1), 0 x2 4, т.е. переменная х2 может принимать значения: 0, 1, 2, 3, 4, а каждому значению х2 отвечает определенное значение у2, вычисляемое по формуле (2): у2 = 4 — х2
если x2 = 0, то y2 = 4-0 = 4,2 (0,2) = 02 + 20 + 2 + 32 + F1(4) = 8 + 42 = 50,
x2 = 1, y2 = 4-1 = 3, 2 (1,2) = 12 + 21 + 2 + 32 + F1(3) = 11 + 29 = 40,
x2 = 2, y2 = 4-2 =2, 2 (2,2) = 22 + 22 + 2 + 32 + F1(2) = 16 + 18 = 34,
x2 = 3, y2 = 4-3 = 1, 2 (3,2) = 32 + 23 + 2 + 32 + F1(1) = 23 + 11 = 34*,
x2 = 4, y2 = 4-4 = 0, 2 (4,2) = 42 + 24 + 2 + 32 + F1(0) = 32 + 2 = 40.
Наименьшее из полученных значений 2 есть F2 (2), т.е.
F2 ( = y3 = 2) = min 2 (x2,2) = min (64, 55, 50, 49, 52) = 49,
x2
причем минимум достигается при значении х2, равном 2 ( = y3 = 2) = 3
Положим = у3 = 3. Тогда, согласно (1), 0 x2 5, т.е. переменная х2 может принимать значения: 0, 1, 2, 3, 4, 5, а каждому значению х2 отвечает определенное значение у2, вычисляемое по формуле (2): у2 = 5 — х2
если x2 = 0, то y2 = 5-0 = 5,2 (0,3) = 02 + 20 + 2 + 33 + F1(5) = 11 + 57 = 68,
x2 = 1, y2 = 5-1 = 4, 2 (1,3) = 12 + 21 + 2 + 33 + F1(4) = 14 + 42 = 56,
x2 = 2, y2 = 5-2 = 3, 2 (2,3) = 22 + 22 + 2 + 33 + F1(3) = 19 + 29 = 48,
x2 = 3, y2 = 5-3 = 2, 2 (3,3) = 32 + 23 + 2 + 33 + F1(2) = 26 + 18 = 44*,
x2 = 4, y2 = 5-4 = 1, 2 (4,3) = 42 + 24 + 2 + 33 + F1(1) = 35 + 11 = 46.
x2 = 5, y2 = 5-4 = 0, 2 (5,3) = 52 + 25 + 2 + 33 + F1(0) = 46 + 2 = 48.
Наименьшее из полученных значений 2 есть F2 (3), т.е.
F2 ( = y3 = 3) = min 2 (x2,3) = 44,
причем минимум достигается при значении х2, равном 2 ( = y3 = 3) = 3
Результаты табулирования функции F2 ( = y3)сведены в табл. 2.
Таблица 2
= у30123
F2 (= y3)18223444
(= y3)
2 3 2 или 3 3
Переходим к следующему этапу. Полагаем k=3 и табулируем функцию F3 ( = y4):
Вычисляем значение функции состояния только для одного значения аргумента = у4 = 0, так как не хотим оставлять продукцию в запас в конце исследуемого периода.
0y40; =y4; 0 x3 d3 + y4 → 0 x3 3; y3 = y4 + d3-x3= y4+3- x3;
3(x3, y4) = a + bx3 + c + h3y4 + F2(y3)= +2 x3+2 + 2 y4 + F2(y3)
x3=0 y3=3 3(0;0)=02 + 20 +2 +20 +F2(3)=2 +44=46
x3=1 y3=2 3(1;0)=12 + 21 +2+20 + F2(2)=5 +34=39
x3=2 y3=1 3(2;0)=22 + 22 +2+20 + F2(1)=10+22=32*
x3=3 y3=0 3(3;0)=32 + 23 +2+20 +F2(0)=17 +18=35
Получаем F3 ( = y4) = min 3 (x3,0) = 32, причем минимум достигается при 3 ( = y4 = 0) = 2.
Таким образом, мы получили не только минимальные общие затраты на производство и хранение продукции, но и последнюю компоненту оптимального решения. Она равна = 2.
Остальные компоненты оптимального решения найдем по обычным правилам метода динамического программирования. Чтобы найти предпоследнюю компоненту, учтем, что х3 + у3 — -d3 = y4 или 2 + у3 — 3 = 0, oткуда у3 = 1. Из таблицы (2) значений находим
Аналогично, продолжая двигаться в обратном направлении и учтя, что х2 + у2 — d2 = y3 или 3 + у2 — 2 = 1, получаем у2 = 0; из таблицы (1) значений х1() находим .
Итак, оптимальный план производства имеет вид х1 = 0, х2 = 3, х3 = 2, а минимальные общие
затраты составляют 32 единицы.
Полезна самопроверка полученного результата. Для этого по исходным данным и найденному
плану производства заполняем таблицу 5 и убеждаемся, что заявки потребителей на каждом
этапе выполняются у1 + х1 d1у2 + х2 d2у3 + х3 d3
3 + 0 30 + 3 21 + 2 3
и что суммарный объем производства и имевшегося к началу первого этапа запаса продукции равен суммарной потребности у1 + х1 + х2 + х3 = d1 + d2 + d3 3 + 0 + 3 + 2 = 3 + 2 + 3
причем это достигается при наименьших возможных затратах на производство и хранение продукции
(х1) + (х2) + (х3) + h1у2 + h2у3 = F3(y4=0)
2 + 17 + 10 + 0 + 3 = 32
Самопроверка результатов
ЭТАПЫ январь февраль март Итого за 3 месяца
Имеем продукции к началу месяца, шт. у1 = 3 у2 = 0 у3 = 1 у1 = 3
Производим в течение месяца, шт. х1 = 0 х2 = 3 х3 = 2 х1+ х2+ х3 = 5
Отпускаем заказчикам, шт. d1 = 3 d2 = 2 d3 = 3 d1+ d2+ d3 = 8
Остаток к концу месяца (храним в течение текущего месяца), шт. у2 = 0 у3 = 1 у4 = 0
Затраты на производство, руб.(х1)=2(х2)=17(х3)=10(х1) + (х2) + (х3) = 29
Затраты на хранение, руб. h1у2 = 0 h2у3 = 3 0 h1у2 + h2у3 = 3
МАТРИЧНАЯ МОДЕЛЬ ПРОИЗВОДСТВЕННОЙ ПРОГРАММЫ ПРЕДПРИЯТИЯ
— производственная программа
0*80+ 0,1*60 +0,2*70=20
0,4*80 +0*60 +0,1*70=39
0,2*80 +0,3*60 +0,2*70=48
где Y — объем товарной продукции.
где В – коэффициенты прямых затрат.
h11=4*0 +7*0,1+ 2*0,2=1,1
h21=2*0 +4*0,1+ 1*0,2=0,6
h31=20*0 +13*0,1+ 16*0,2=4,5
h41=0,2*0+0,3*0,1+ 0,2*0,2=0,07
h12=4*0,4 +7*0+ 2*0,1=1,8
h22=2*0,4+4*0+ 1*0,1=0,9
h32=20*0,4+13*0+ 16*0,1=9,6
h42=0,2*0,4 +0,3*0+ 0,2*0,1=0,1
h13=4*0,2+7*0,3+ 2*0,2=3,3
h23=2*0,2+4*0,3+ 1*0,2=1,8
h33=20*0,2+13*0,3+ 16*0,2=11,1
h43=0,2*0,2+0,3*0,3+0,2*0,2=0,17
1,1*80 +1,8*60 +3,3*70=427
0,6*80 +0,9*60 +1,8*70=228
4,5*80 +9,6*60 +11,1*70=1713
0,07*80 +0,1*60 +0,17*70=23,5
где S – полные затраты всех внешних ресурсов.
МАТРИЧНАЯ ИГРА КАК МОДЕЛЬ КОНКУРЕНЦИИ И СОТРУДНИЧЕСТВА
Седловой точки нет. Обозначим искомую оптимальную стратегию первого игрока (х, 1-х). Это вектор-столбец, который мы записываем для удобства в виде строки.
Обозначим j(x) – средний выигрыш первого в расчете на партию, когда он использует стратегию (х, 1-х), а второй – j-ю стратегию. Имеем 1(x)=х + 2(1-х); 2(x)=2х +3(1-х); 3(x)=4х – 2(1-х); 4(x)=5х – 5(1-х). Возьмем на плоскости систему координат, по горизонтальной оси вправо отложим х, по вертикальной оси – значения функции j(x). Функции 1(x), 2(x), 3(x), 4(x)- линейные, значит их графики – прямые линии 1, 2, 3, 4 соответственно.
Находим нижнюю огибающую огибающую семейства четырех прямых. Находим ее высшую точку — М. Она и дает решение игры. Ее координаты определяются решением уравнения 1(x)=4(x), откуда х*=7/11, =1(x)=4(x)=15/11.
Таким образом, оптимальная стратегия первого есть Р*=(7/11, 4/11), а цена игры =15/11.
Заметим, что при этой стратегии первого второй игрок не выбирает второй и третий столбцы. Обозначим вероятность выбора вторым игроком первого столбца через y, а четвертого столбца – через (1- y). Учтем, например, что р1*=х*>0 и воспользуемся утверждением о том, что если рк*>0, то М(1; y*)=, т.е. y* +2(1-y*)=15/11, откуда y*=7/11.
Окончательный ответ таков: оптимальная стратегия первого — Р*=(7/11, 4/11), оптимальная стратегия второго – Q=(7/11;0;0;4/11), цена игры =15/11.
АНАЛИЗ ДОХОДНОСТИ И РИСКА ФИНАНСОВЫХ ОПЕРАЦИЙ
Финансовой называется операция, начальное и конечное состояния которой имеют денежную оценку и цель проведения которой заключается в максимизации дохода — разности между конечной и начальной оценками. Почти всегда финансовые операции проводятся в условиях неопределенности и потому их результат невозможно предсказать заранее. Поэтому финансовые операции рискованны, т.е. при их проведении возможны как прибыль так и убыток (или не очень большая прибыль по сравнению с той, на что надеялись проводившие эту операцию). Существует несколько разных способов оценки операции с точки зрения ее доходности и риска. Наиболее распространенным является представление дохода операции как случайной величины и оценка риска операции как среднего квадратического отклонения этого случайного дохода.
Даны четыре операции Q1, Q2, Q3, Q4. Найдите средние ожидаемые доходы и риски ri операций. Нанесите точки (, ri) на плоскость, найдите операции, оптимальные по Парето. С помощью взвешивающей формулы найдите лучшую и худшую операции. Взвешивающая формула одна и та же:
(Q) = 2 — r.
Q1: 2 4 6 18
1/2 1/4 1/8 1/8
Q2: 0 4 6 12
1/4 1/4 1/3 1/6
Q3: 2 5 8 14
ј ј 1/3 1/6
Q4
: 0 1 2 8
1/3 1/3 1/6 1/6
Q1 = qipi = 2*1/2+4*1/4+6*1/8+18*1/8=5
Q21 = 25
M [Q21] = 4*1/2+16*1/4+36*1/8+324*1/8=51;
Q2 = 1+2+2=5
Q22 = 25
M [Q22] = 16*1/4+36*1/3+144*1/6=40;
Q
Q3 = 2+5=7
Q23 = 49
M [Q23] = 4*1/4+36*1/4+64*1/3+196*1/6=64;
Q4 = 2
Q24 = 4
M [Q24] = 1*1/3+4*1/6+64*1/6=70/6;
Нанесем средние ожидаемые доходы Q и риски r на плоскость — доход откладываем по горизонтали, а риски по вертикали (см. рис.):
Получили 4 точки. Чем правее точка (Q, r), тем более доходная операция, чем точка выше — тем более она рисковая. Значит, нужно выбирать точку правее и ниже. Точка (Q, r) доминирует точку (Q, r) если Q Q и r r.
Точка, не доминируемая никакой другой называется оптимальной по Парето, а множество всех таких точек называется множеством оптимальности по Парето. Легко видеть, что если из рассмотренных операций надо выбирать лучшую, то ее обязательно надо выбрать из операций, оптимальных по Парето.
Для нахождения лучшей операции иногда применяют подходящую взвешивающую формулу, которая для пар (Q, r) дает одно число, по которому и определяют лучшую операцию. Например, пусть взвешивающая формула есть (Q)= 2Q — r. Тогда получаем:
(Q1)= 2*5-5,1 = 4,9; (Q2)= 2*5-3,9=6,1; (Q3)= 2*7-3,9=10,1; (Q4)= 2*2-2,8=1,2
Видно, что 3-я операция — лучшая, а 4-я — худшая.
ЗАДАЧА ФОРМИРОВАНИЯ ОПТИМАЛЬНОГО ПОРТФЕЛЯ ЦЕННЫХ БУМАГ
Пусть V — матрица ковариаций рисковых видов ценных бумаг), M=(mi) — вектор-столбец ожидаемых эффективностей долей xi капитала, вкладываемых в i-й вид рисковых ценных бумаг, i=1,.., n. Пусть также I — n-мерный вектор-столбец, компоненты которого есть 1. Тогда оптимальное значение долей xi есть
.
Здесь V-1 — матрица, обратная к V. В числителе дроби стоит число, в знаменателе, если выполнить все действия (верхний индекс Т означает транспонирование вектора-столбца), тоже получится число, причем константа, определяемая рынком и не зависящая от инвестора, V-1(M-m0I) — вектор-столбец размерности n. Видно, что этот вектор не зависит от эффективности портфеля mp. Таким образом, вектор долей рисковых видов ценных бумаг пропорциональный этому вектору также не зависит от mp. Следовательно, структура рисковой части портфеля не зависит от mp. Однако сумма компонент вектора X* зависит от mp, именно, компоненты вектора X* пропорционально увеличиваются с ростом mp, поэтому доля x0 безрисковых вложений будет при этом сокращаться.
Сформировать оптимальный портфель заданной эффективности из трех видов ценных бумаг: безрисковых эффективности 3 и некоррелированных рисковых ожидаемой эффективности 5 и 9 и рисками 3 и 6. Как устроена рисковая часть оптимального портфеля? При какой ожидаемой эффективности портфеля возникает необходимость в операции «short sale» и с какими ценными бумагами? Решение. Итак, m0 =3, M=, V=. Зададимся эффективностью портфеля mp.
Теперь надо найти обратную матрицу к матрице V. Это просто: V-1 =. Вычислим знаменатель:
.
Итак, вектор долей рисковых бумаг есть X* =((mр-3)9/13)
Для безрисковых бумаг соответственно равняется x*0 =1- 4/26(mр-3) – 3/26(mр-3)=42-7mр/26.
Понятно, что необходимость в операции «short sale» возникнет, если x*0 < 0, т.е. когда mр > 6 .
ЛИТЕРАТУРА
1. Математические методы принятия решений в экономике. Учебник под ред. проф. Колемаева В.А. -М.: ЗАО «Финстатинформ», 1999.
2. Колемаев В.А., Калинина В.Н. Теория вероятностей и математическая статистика. -М.: Инфра-М, 1999.
3. Гатауллин Т.М., Карандаев И.С., Статкус А.В. Целочисленное программирование в управлении производством. МИУ, М., 1987.
4. Гмурман В.Е. Теория вероятностей и математическая статистика. -М.: Высшая школа, 1998.
5. Гмурман В.Е. Руководство к решению задач по теории вероятностей и математической статистике. -М.: Высшая школа, 1998.
6. Ермольев Ю.М., Ляшко И.И., Михалевич В.С., Тюптя В.И. Математические методы исследования операций. -Киев: Вища школа, 1979.
7. Ершов А.Т., Карандаев И.С., Шананин Н.А. Планирование производства и линейное программирование. МИУ, М., 1981.
8. Ершов А.Т., Карандаев И.С., Статкус А.В. Матричные игры и графы. МИУ, М., 1986.
9. Ершов А.Т., Карандаев И.С., Юнисов Х.Х. Исследование операций. МИУ, М., 1990.
10. Калинина В.Н., Панкин В.Ф. Математическая статистика. -М.: Высшая школа, 1998.
11. Карандаев И.С. Двойственные оценки в управлении. МИУ, М., 1980.
12. Карандаев И.С. Решение двойственных задач в оптимальном планировании. -М.: Статистика, 1976.
13. Карандаев И.С. Начала линейного, нелинейного и динамического программирования. -М.: Знание, 1968.
14. Карандаев И.С. Руководство к решению задач по математическому программированию. МИУ, М., 1973.
15. Карандаев И.С., Гатауллин Т.М. Математический аппарат линейных оптимизационных задач в управлении производством. МИУ, М., 1986.
16. Карандаев И.С. и др. Математические методы исследования операций в примерах и задачах. ГАУ, М.,1993.
17. Колемаев В.А. Математическая экономика. -М.: Инфра-М, 1998.
18. Малыхин В.И. Математика в экономике. -М: Инфра-М, 1999.
19. Малыхин В.И. Математическое моделирование экономики. -М: УРАО, 1998.
20. Малыхин В.И. Финансовая математика. -М: Юнити, 1999.
21. Малыхин В.И., Статкус А.В. Теория принятия решений. МИУ, М., 1989.
22. Нейман Д., Моргенштерн О. Теория игр и экономическое поведение. -М.: Наука, 1970.
23. Первозванский А.А., Первозванская Т.Н. Финансовый рынок: расчеты и риск. -М.: Инфра -М., 1994.
24. Сакович В.А. Исследование операций. -Минск: Высшая школа, 1985.
25. Солодовников А.С., Бабайцев В.А., Браилов А.В. Математика в экономике. –М.: Финансы и статистика, 1998.
26. Таха Х. Введение в исследование операций. –М.: Мир, 1985.