5 различных задач по программированию

Рефераты по информатике » 5 различных задач по программированию

ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ УПРАВЛЕНИЯ


КАФЕДРА ПРИКЛАДНОЙ МАТЕМАТИКИ


КУРСОВАЯ РАБОТА

по дисциплине "Прикладная математика"


Москва 2001


ОГЛАВЛЕНИЕ


ЛИНЕЙНАЯ ПРОИЗВОДСТВЕННАЯ ЗАДАЧА 4

9

ДВОЙСТВЕННАЯ ЗАДАЧА 9

ЗАДАЧА О "РАСШИВКЕ УЗКИХ МЕСТ ПРОИЗВОДСТВА" 10

ТРАНСПОРТНАЯ ЗАДАЧА ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ 12

ЛИНЕЙНАЯ ПРОИЗВОДСТВЕННАЯ ЗАДАЧА

Предприятие может выпускать четыре вида продукции используя для этого три вида ресурсов. Известна технологическая матрица А затрат любого ресурса на единицу каждой продукции вектор В объемов ресурсов и вектор С удельной прибыли

(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.


C

~

И




36 32 10 13 0 0 0

Базис

Н

x1 x2 x3 x4 x5 x6 x7 Пояснения

0 Х5 103 2 3 4 1 1 0 0

z0 = H


0 Х6 148 4 2 0 2 0 1 0


0 Х7 158 2 8 7 0 0 0 1



z0 -z 0 - z -36 -32 -10 -13 0 0 0


0 Х5 29 0 2 4 0 1 -1/2 0

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
0 Х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 все j 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) отвечает наименьший отрицательный коэффициент 1= -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 ставшую базисной.

Очевидно если имеется хотя бы один отрицательный коэффициент j при какой-нибудь переменной xj в последнем уравнении системы (16) то производственная программа не является наилучшей и можно далее продолжать процесс ее улучшения. Мы нашли в последнем уравнении системы (16) наименьший отрицательный коэффициент min(j<0) = min(-14 -10) = -14 = 2. Поэтому принимаем х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)

Итак организовав направленный перебор базисных неотрицательных решений системы условий задачи мы пришли к оптимальной производственной программе и указали остатки ресурсов а также максимальную прибыль.

Следует обратить внимание на экономический смысл элементов последней строки последней симплексной таблицы. Например коэффициент 3=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-1T 0.

Задача состоит в том чтобы найти вектор T (0 t2 t3) максимизирующий суммарный прирост прибыли W = 8t2 + 2t3 (1) при условии сохранения двойственных оценок ресурсов (и следовательно структуры производственной программы)

(2)

предполагая что можно надеяться получить дополнительно не более 1/3 первоначального объема ресурса каждого вида (3)

причем по смыслу задачи t2 0 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 0 0
aij 4 2 0 2 148 0 8 14

2 8 7 0 158 0 2 0
xj 31 12 0 0 1500

112









j 0 0 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. Остальные потенциалы находим из условия что для базисных клеток . В данном случае получаем

11 = 0 p1 + q1 - c11 = 0 0+q1 -2 = 0 q1 = 2

12 = 0 p1 + q2 - c12 = 0 0+q2 -3 = 0 q2 = 3

22 = 0 p2 + q2 - c22 = 0 р2 +3-2 = 0 р2 = -1

и т.д. получим: q3=2 p3=5 q4= -4 q5= -5.

Затем по формуле (6) вычисляем оценки всех свободных клеток:

21 = p2 + q5 - c21 = -1+2-4 = -3

31 = p3 + q1 - c31 = 5+2-2 = 5

32 = 1; 13 = -2; 14 = -5; 24 = 0; 15 = -5; 25 = -6.

Находим наибольшую положительную оценку max () = 5 =

Для найденной свободной клетки 31 строим цикл пересчета - замкнутую ломаную линию соседние звенья которой взаимно перпендикулярны сами звенья параллельны строкам и столбцам таблицы одна из вершин находится в данной свободной клетке а все остальные - в занятых клетках. Это будет 31-11-12-22-23-33. Производим перераспределение поставок вдоль цикла пересчета

36 4

36- 4+

28 12


28 32

28- 32+

20 40


8

8-
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

Находим новые потенциалы новые оценки.

13 = -2; 14 = 0; 15 = 0; 21 = -3; 24 = -2; 25 = -1; 32 = -4; 33 = -5

т.е. все ij  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 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 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 + 20 + 2 + 40 = 2* y2 = 1 x1 = 1 1 (1;1) = 12 + 22 + 2 + 41 = 11 y2 = 2 x1 = 2 1 (2;2) = 22 + 22 + 2 + 42 = 18 y2 = 3 x1 = 3 1 (3;3) = 32 + 23 + 2 + 43 = 29 y2 = 4 x1 = 4 1 (4;4) = 42 + 24 + 2 + 44 = 42 y2 = 5 x1 = 5 1 (5;5) = 52 + 25 + 2 + 45 = 57 Значения функции состояния F1( ) представлены в табл. 1 Таблица 1  = y2 0 1 2 3 4 5 F1 ( = y2) 2 11 18 29 42 57 x1(=y2) 0 1 2 3 4 5 Переходим ко второму этапу. Полагаем 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 + 20 + 2 + F1(2) = 2 + 18 = 20 x2 = 1 y2 = 2 - 1 = 1 2 (1 2) = 12 + 51 + 2 + F1(1) = 8 + 11 = 19 x2 = 2 y2 = 2 - 2 =0 2 (2 2) = 22 + 52 + 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 + 20 + 2 + 31 + F1(3) = 5 + 29 = 34 x2 = 1 y2 = 3-1 = 2 2 (1 2) = 12 + 21 + 2 + 31 + F1(2) = 8 + 18 = 26 x2 = 2 y2 = 3-2 = 1 2 (2 1) = 22 + 22 + 2 + 31 + F1(1) = 13 +11 = 24 x2 = 3 y2 = 3-3 = 0 2 (3 1) = 32 + 23 + 2 + 31 + 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 + 20 + 2 + 32 + F1(4) = 8 + 42 = 50 x2 = 1 y2 = 4-1 = 3 2 (1 2) = 12 + 21 + 2 + 32 + F1(3) = 11 + 29 = 40 x2 = 2 y2 = 4-2 =2 2 (2 2) = 22 + 22 + 2 + 32 + F1(2) = 16 + 18 = 34 x2 = 3 y2 = 4-3 = 1 2 (3 2) = 32 + 23 + 2 + 32 + F1(1) = 23 + 11 = 34* x2 = 4 y2 = 4-4 = 0 2 (4 2) = 42 + 24 + 2 + 32 + 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 + 20 + 2 + 33 + F1(5) = 11 + 57 = 68 x2 = 1 y2 = 5-1 = 4 2 (1 3) = 12 + 21 + 2 + 33 + F1(4) = 14 + 42 = 56 x2 = 2 y2 = 5-2 = 3 2 (2 3) = 22 + 22 + 2 + 33 + F1(3) = 19 + 29 = 48 x2 = 3 y2 = 5-3 = 2 2 (3 3) = 32 + 23 + 2 + 33 + F1(2) = 26 + 18 = 44* x2 = 4 y2 = 5-4 = 1 2 (4 3) = 42 + 24 + 2 + 33 + F1(1) = 35 + 11 = 46.
Страницы: 1 2