Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Математические модели оптимизации при проектировании. Учебное пособие.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
954 Кб
Скачать

4. ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ

4.1.ПОСТАНОВКА ЗАДАЧИ И ОБОЗНАЧЕНИЯДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ

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

Рассмотрим, как происходит разбиение процесса принятия решений (который мы будем представлять как процесс функционирования некоторой системы) на n шагов. Обозначим через ξ0 начальное состояние всего процесса, в то же время ξ0 будет начальным состоянием первого шага. Тогда ξ1 – состояние системы после первого шага (и одновременно начальное состояние второго шага), ξ2 – состояние системы после второго шага (и начальное состояние третьего шага) и т. д.

Переход от начального состояния k-го шага ξk 1 к конечному состо-

янию k-го шага ξk происходит так.

Имеется набор из l допустимых управлений (l способов действия на шаге k) u1k ,...,ukl , каждое из которых позволяет перейти из состояния ξk 1 к одному из возможных конечных состояний k-го шага ξk1,...,ξkl . Выбранное на k-м шаге управление обозначим через uk {u1k ,...,ukl }, а состояние, в которое перейдет процесс из состояния ξk 1 под воздействием управления uk , обозначим через ξk {ξk1,...,ξkl }. При этом предполагается, что состояние ξk зависит от ξk 1 и uk , а не зависит от того, каким образом

70

ξk 1,

процесс перешел в состояние ξk 1 (принцип отсутствия последействия).

Это предположение записывается в виде уравнений состояний

ξk =Tk (ξk 1,uk ) , k =1,...,n .

Сучетом введенных понятий состояний и управлений запишем показатель эффективности для всего многошагового процесса в зависимости от начального состояния всего процесса ξ0 и показатель эффективности

для каждого k-го шага процесса в зависимости от начального состояния k-го шага процесса ξk 1.

Естественно предположить, что показатель эффективности k-го шага зависит не только от начального состояния на этом шаге но и от управления на этом шаге uk , в результате получаем целевую функцию (показатель эффективности) на k-м шаге в виде fk (ξk 1,uk ) и целевую функцию всего многошагового процесса в виде

F = n fk (ξk1,uk )= F(ξ0,u1,...,un ).

k=1

Сформулируем теперь задачу ДП. Определить совокупность допустимых управлений u1,...,un , обеспечивающих при начальном состоянии ξ0 максимальное (или минимальное) значение показателя эффективности

F = F(ξ0 ,u1,...,un ) .

Управление, при котором достигается максимум (или минимум) целевой функции F, называется оптимальным управлением и обозначается

u* = (u*,...,u* ).

 

 

1

n

 

 

На шагах k =1,...,n вводятся обозначения:

условный максимум (минимум) показателя эффективности на шагах

от k-го шага до конца процесса F*(ξ

k1

) – максимум (минимум) показателя

 

k

 

71

эффективности на шагах от k-го шага до конца процесса при условии, что начальное состояние k-го шага ξk 1;

условные оптимальные управления на k шаге u* (ξ 1) – управле-

k k

ния, на которых реализуются эти максимумы (минимумы) Fk*(ξk1). Основное правило ДП, сформулированное американским математи-

ком Р. Беллманом, называется принципом оптимальности: оптимальное управление обладает таким свойством, что каково бы ни было начальное состояние на любом шаге и управление, выбранное на этом шаге, последующие управления должны быть оптимальными относительно состояния, к которому придет процесс в конце данного шага.

4.2.ПОСТРОЕНИЕМОДЕЛИ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ

Общими рекомендациями при построении модели ДП являются следующие.

Шаг 1. Выбираем способ деления процесса на шаги.

Шаг 2. Вводим параметры состояния ξk 1, ξk и переменные управ-

ления uk на каждом шаге k, k =1,...,n .

Шаг 3. Записываем уравнения состояний (зависимость конечного состояния k-го шага ξk от начального состояния k-го шага ξk 1 и от управления на k-м шаге uk ).

ξk =Tk (ξk 1,uk ),k =1,...,n.

Шаг 4. Из ограничений исходной задачи определяем для каждого k-го шага множества допустимых управлений Dk .

72

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

fk (ξk 1,uk ).

Шаг 6. Записываем уравнения Беллмана для шагов k =1,...,n 1 и для последнего шага n:

;

.

4.3.ПОСТРОЕНИЕВЫЧИСЛИТЕЛЬНОЙ СХЕМЫ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ

Уравнения Беллмана лежат в основе алгоритма решения задачи ДП. Алгоритм состоит из двух этапов.

Этап I. Условная оптимизация (движение от конца к началу).

Последовательно вычисляем по уравнениям Беллмана следующие значения:

Fn*(ξn1),un* (ξn1); Fn*1(ξn2 ),un*2 (ξn2 ) ;…; F`1*(ξ0 ),u1*(ξ0 )

для всех допустимых на соответствующих шагах состояний ξk 1. Причем для определения условных оптимальных значений Fk*(ξk1) учитываются найденные из предыдущего шага условные оптимальные значения

Этап II. Безусловная оптимизация (движение от начала к концу).

73

Используя уравнения состояний ξk =Tk (ξk 1,uk ) и то, что начальное состояние ξ0 задано и фиксировано, находим последовательно безуслов-

ные оптимальные управления на каждом шаге:

ξ0 u1* = u1*(ξ0 ) ξ1* =T1(ξ0,u1*)

u2* = u2* (ξ1*) ξ2* =T2 (ξ1*,u2* ) ... un* = un* (ξn*1).

4.4ЕСКОЛЬКО ЗАМЕЧАНИЙ КМЕТОДУ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ

Большим достоинством метода ДП является возможность анализа чувствительности к изменению исходных данных ξ0 и размерности задачи n. При изменении этих данных задача не решается заново, а делаются лишь некоторые добавления.

Так, если количество шагов n увеличивается на единицу, то достраиваем схему, снабдив новый шаг индексом 0, а начальное состояние этого шага будет ξ1. Суммарный максимум шагов 0,1,...,n тогда будет обозначаться F0*(ξ1) .

Иногда вычислительный процесс условной оптимизации удобно строить не от последнего n-го шага, а от 1-го шага к n-му. Это прямой ход вычислений, в отличие от рассмотренного выше обратного хода.

Уравнения состояний и уравнения Беллмана для прямого хода име-

ют вид

ξk 1 =T (ξk ,uk ),

Fk (ξk ) = max { fk (ξk ,uk ) + Fk*1(ξk1)}, k =1,...,n , F0* 0.

uk Dk

74

Безусловное оптимальное управление при прямом ходе определяется, начиная с управления un* .

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

Так, добавление новых шагов удобнее проводить при прямом ходе. Для исследования чувствительности задачи к начальному состоянию ξ0 удобнее обратный ход, а для исследования чувствительности к конечному состоянию ξn удобнее прямой ход.

4.5АДАЧАО РАСПРЕДЕЛЕНИИ РЕСУРСОВ

4.5.1. Постановка задачи ораспределении ресурсов

В общем виде задача о распределении ресурсов имеет следующую содержательную формулировку.

Имеется некоторое количество ресурсов (денежные средства, сырье, трудовые ресурсы, различные виды оборудования и т. п.). Эти ресурсы необходимо распределить между различными объектами их использования и по отдельным промежуткам планового периода так, чтобы получить максимальную суммарную эффективность от выбранного способа распределения. Показателем эффективности может служить прибыль, товарная продукция, фондоотдача для задач максимизации или суммарные затраты, себестоимость, время выполнения для задач минимизации.

Рассмотрим следующую задачу о распределении ресурсов. Планируется распределение начального количества средств ξ0 между

n предприятиями П1,..., Пn . Выделение k-му предприятию количества средств в размере uk приносит доход fk (uk ), k =1,...,n . Определить, какое количество средств необходимо выделить каждому предприятию, чтобы обеспечить максимальный суммарный доход.

75

Построение математической модели 1. Определение размерности:

n – количество предприятий, k =1,...,n – индекс (номер)предприятия.

2.Выбор постоянных параметров:

ξ0 – начальное количество средств.

3.Выбор переменных параметров:

uk – количество средств, выделенных k-му предприятию. 4. Запись условий (ограничений):

u1 +... +un =ξ0

суммарное количество выделенных каждому предприятию средств uk , k =1,...,n , совпадает с начальным количеством средств ξ0 ;

uk 0, k =1,...,n

отрицательное количество k-го средства uk , не имеет содержательного смысла.

5. Запись критерия моделирования (целевой функции):

n

F(u1,...,un ) = ∑ fk (uk ) max –

k =1

максимизация суммарного дохода от использованных средств. Построим теперь модель ДП.

Распределение средств между n предприятиями можно рассматривать как n-шаговый процесс. Поэтому за номер k-го шага процесса примем номер предприятия, которому выделяются средства uk . Очевидно, что переменные uk , k =1, ,n , можно рассматривать как управляющие перемен-

76

ные. Начальное состояние системы характеризуется начальной величиной средств ξ0 . В конце первого шага состояние системы ξ1 =ξ0 u1 характеризуется остатком средств, оставшихся после выделения 1-му предприятию количества средств в размере u1. Поэтому величины ξ1,...,ξn , характеризующие остаток средств после распределения на соответствующих шагах, рассматриваем как состояния системы. Уравнения состояний в данном случае имеют вид

ξk =ξk 1 uk , k =1,...,n .

Очевидно, конечное состояние ξn = 0 , т. е. все средства ξn1, оставшиеся к n-му шагу, выделяются n-му предприятию: un =ξn1.

Найдем допустимые управления на k-м шаге. Предприятию k можно выделить любое количество из имеющихся к началу шага средств ξk 1.

Поэтому допустимое управление uk удовлетворяет неравенствам

0 uk ξk 1.

Показателем эффективности каждого шага является доход fk (uk ),

n

суммарным показателем – суммарный доход F = fk (uk ). Тогда услов-

k=1

ное оптимальное значение (условный максимум) Fk*(ξk 1) есть максимальный суммарный доход на шагах k,k +1,...,n при условии, что начальное состояние k-го шага равно ξk 1. Условное оптимальное управ-

ление u* (ξ 1) будет определять оптимальное количество средств, выде-

k k

ляемых k-му предприятию, если остаток средств, подлежащих распределению среди предприятий k,k +1,...,n, равен ξk 1.

77

Запишем теперь уравнения Беллмана:

F*(ξ

k1

) = max

{ f

k

(u

k

) + F*

(ξ

k

)}, k =1,...,n 1,

 

k

0uk ξk 1

 

 

 

 

 

 

k+1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F*(ξ

n1

) =

max { f

n

(u

n

)} =

f

n

(ξ

n1

), (так как u

n

=ξ

n1

).

n

 

0uk ξn1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.5.2. Примеры решения задачи ораспределении ресурсов

Задача 1. Решить задачу распределения ресурсов по следующим данным:

1)ξ0 = 200 млн руб.;

2)n = 4;

3)средства выделяются только в размерах, кратных 40 млн руб.;

4)функции дохода заданы в таблице:

x

f1(x)

f2 (x)

f3(x)

f4 (x)

40

8

6

3

4

 

 

 

 

 

80

10

9

4

6

 

 

 

 

 

120

11

11

7

8

 

 

 

 

 

160

12

13

11

13

 

 

 

 

 

200

18

15

18

16

 

 

 

 

 

Решение

Этап I. Условная оптимизация.

Последовательно вычисляем:

F4*(ξ3),u4* ; F3*(ξ2 ),u3*; F2*(ξ1),u2* ; F1*(ξ0 ),u1* .

78

Вычислять начинаем с последнего шага k = n = 4 . Уравнение Беллмана для этого шага имеет вид

F4*(ξ3) = f4 (ξ3) ,

где ξ3 – возможное допустимое количество средств, остающихся после выделения средств предприятиям П1, П2 , П3 . Вычисления оформляем в таблице:

ξ3

F4*(ξ3)

u4* (ξ3)

0

0

0

40

4

40

80

6

80

120

8

120

160

13

160

200

16

200

Вычисления на последующих шагах осложняются тем, что необходимо учитывать найденные из предыдущего (k+1)-го шага значения

Fk*+1(ξk ).

Рассмотрим подробно вычисления для шага k = 3. Уравнение Беллмана для этого шага имеет вид

F3*(ξ2 ) = max { f3(u3) + F4*(ξ2 u3)}.

0u3ξ2

Запишем вычисление F3*(ξ2 ) для всех возможных допустимых значений ξ2 :

F3*(0) = f3(0) + F4*(0) = 0, u3*(0) = 0;

79

 

 

 

 

 

 

(0)

+ F

*

(40)

 

F3*(40) = max

{ f3(u3) + F4*(40

f

 

 

 

u3)} = max

3

 

4

 

=

 

0u3 40

f3

(40) + F4 (0)

 

 

 

 

 

 

 

*

 

0

+4

= 4

, u3*(40) = 0 .

 

 

 

 

 

 

 

= max

+0

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

f3(0) + F4*(80)

F3*(80) = max [ f3(u3) + F4*(80 u3)] = max f3(40) + F4*(40) =

0u3 80 *

f3(80) + F4 (0)

0 +6

= max 3 +4 = 7 , u3*(80) = 40.

4 +0

 

f

3

(0) + F*

(120)

0 +8

 

 

 

 

 

4

 

 

 

 

 

 

(40)

+ F

*

(80)

 

+6

 

 

F3*(120)

f

 

 

3

= 9, u3*(120)

= 40.

= max

3

(80)

4

(40)

= max

+4

 

f

3

+ F

*

4

 

 

 

 

 

4

 

 

 

 

 

 

 

(120) + F4*(0)

 

 

 

 

f3

7 +0

 

 

 

f

3

(0) + F*(160)

0 +13

 

 

4

 

f3

*

 

 

(40) + F4 (120)

3 +6

F3*(160)

 

 

(80) + F4*(80)

 

= max f3

= max 4 +6 =13, u3*(160) = 0.

 

 

 

(120) + F4*(40)

 

 

f3

7 +4

 

 

 

*

 

 

 

11+0

 

f3

(160) + F4 (0)

 

 

 

 

 

 

80

 

f

3

(0) + F*(200)

0 +16

 

 

 

 

4

 

 

f

3

(40) + F*(160)

 

 

 

 

 

 

4

3 +13

 

F3*(200)

f

3

(80) + F*(120)

4

+8

=18, u3*(200) = 200.

= max

(120)

4

= max

+6

 

f

3

+ F*(80)

7

 

 

f

 

4

11+ 4

 

 

3

(160)

+ F*(40)

 

 

 

 

4

 

 

 

 

f

3

(200)

+ F*(0)

18 +0

 

 

 

 

4

 

 

 

Эти вычисления оформляем в таблицу для шага k = 3:

ξ2

F*(ξ

2

)

u*(ξ

2

)

 

3

 

3

 

0

0

 

 

0

 

 

 

 

 

 

 

 

 

40

4

 

 

0

 

 

 

 

 

 

 

 

 

80

7

 

 

40

 

 

 

 

 

 

 

 

 

120

9

 

 

40

 

 

 

 

 

 

 

 

 

160

13

 

 

0

 

 

 

 

 

 

 

 

200

18

 

 

200

 

 

 

 

 

 

 

 

Вычисления для шага k = 2 проводятся аналогично. В результате получается таблица:

ξ1

F*(ξ )

u* (ξ

)

 

2

1

2

1

 

0

0

 

0

 

 

 

 

 

 

 

 

40

6

 

40

 

 

 

 

 

 

 

 

80

10

 

40

 

 

 

 

 

 

 

 

120

13

 

80

 

 

 

 

 

 

 

 

160

16

 

80

 

 

 

 

 

 

 

 

200

13

 

40

 

 

 

 

 

 

 

 

81

Поскольку начальное состояние ξ0 фиксировано (общее количество выделяемых средств), то для шага k = 1 вычисления проводятся только для значения ξ0 = 200.

F*(200) =

max { f

(u ) + F*(200

u )} = 24

, u*(200) = 40.

1

0u

200

1

1

2

1

1

 

1

 

 

 

 

 

 

Этап II. Безусловная оптимизация.

Находим безусловные оптимальные управления, используя уравнения состояний

ξk =ξk 1 uk ,

для шагов k =1,...,n 1:

ξ0 = 200 u1* = u1*(200) = 40 ξ1* =ξ0 u1* = 200 40 =160

u2* = u2* (160) =80 ξ2* =160 u2* =80 u3* = 40 ξ3* = 40

u4* = 40 ξ4* = 0.

Ответ. Оптимальные вложения в предприятия:

П1 = 40, П2 =80, П3 = 40, П4 = 40.

Максимальный суммарный доход Fmax = F1*(200) = 24 .

Следует отметить, что таблицу 1-го шага не было необходимости заполнять, поскольку достаточно было заполнить для начального состояния ξ0 = 200 млн руб. Но полная таблица шага 1 может дать решение не одной задачи, а множества задач с любыми значениями ξ0 от 40 до 200.

82

При увеличении начальных средств до 240 было бы необходимо в каждой k-й таблице добавить еще одну строку, соответствующую начальному состоянию, ξk 1 = 240.

Задача 2. Решим задачу распределения ресурсов по следующим данным:

1)ξ0 = 40 млн руб.;

2)n = 3;

3)средства выделяются только в размерах, кратных 10 млн руб.;

4)функции дохода заданы в таблице:

х

f1(x)

f2 (x)

f3(x)

10

4

3

4

20

5

3

4

30

7

4

5

40

8

6

6

Решение

Этап I. Условная оптимизация.

Расчеты начнем с последнего шагаk = 3. Таблица этого шага имеетследующий вид:

ξ

2

u

3

ξ

3

=ξ

2

u

3

f

3

(u

3

)

F*(ξ

2

)

u*(ξ

2

)

 

 

 

 

 

 

 

 

3

 

3

 

10

0

 

 

10

 

 

 

 

0

 

 

 

 

 

 

 

 

10

 

 

0

 

 

 

 

4

 

 

4

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

20

 

 

 

 

0

 

 

 

 

 

 

 

 

20

10

 

 

10

 

 

 

 

4

 

 

4

 

 

10

 

 

 

 

20

 

 

0

 

 

 

 

4

 

 

4

 

 

20

 

 

 

 

0

 

 

30

 

 

 

 

0

 

 

 

 

 

 

 

 

30

10

 

 

20

 

 

 

 

4

 

 

 

 

 

 

 

 

20

 

 

10

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

30

 

 

0

 

 

 

 

5

 

 

5

 

 

30

 

 

 

 

0

 

 

40

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

10

 

 

30

 

 

 

 

4

 

 

 

 

 

 

 

 

40

20

 

 

20

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

30

 

 

10

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

40

 

 

0

 

 

 

 

6

 

 

6

 

 

40

 

 

83

Таблица второго шага:

 

ξ

 

 

u

2

 

 

 

 

 

f

2

(u

2

)

 

 

*

ξ

 

F

(u

2

,ξ

)

 

 

*

(ξ1)

 

*

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F3 (

2 )

 

2

1

 

 

 

F2

u2 (ξ1)

10

 

 

0

 

 

10

 

 

 

 

0

 

 

 

 

4

 

 

 

0 + 4 = 4

 

 

 

4

 

 

 

0

 

 

 

10

 

0

 

 

 

 

 

3

 

 

 

 

0

 

 

 

3 + 0 = 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

20

 

 

 

 

0

 

 

 

 

4

 

 

 

0 + 4 = 4

 

 

 

 

 

 

 

 

 

 

20

 

 

10

 

10

 

 

 

 

3

 

 

 

 

4

 

 

 

3 + 4 = 7

 

 

 

7

 

 

 

10

 

 

 

 

 

20

 

0

 

 

 

 

 

3

 

 

 

 

0

 

 

 

3 + 0 = 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

30

 

 

 

 

0

 

 

 

 

5

 

 

 

0 + 5 = 5

 

 

 

 

 

 

 

 

 

 

30

 

 

10

 

20

 

 

 

 

3

 

 

 

 

4

 

 

 

3 + 4 = 7

 

 

 

7

 

 

 

10

 

 

 

20

 

10

 

 

 

 

3

 

 

 

 

4

 

 

 

3 + 4 = 7

 

 

 

7

 

 

 

20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

30

 

0

 

 

 

 

 

4

 

 

 

 

0

 

 

 

4 + 0 = 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

40

 

 

 

 

0

 

 

 

 

6

 

 

 

0 + 6 = 6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

30

 

 

 

 

3

 

 

 

 

5

 

 

 

3 + 5 = 8

 

 

 

8

 

 

 

10

 

40

 

 

20

 

20

 

 

 

 

3

 

 

 

 

4

 

 

 

3 + 4 = 7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

30

 

10

 

 

 

 

4

 

 

 

 

4

 

 

 

4 + 4 = 8

 

 

 

8

 

 

 

30

 

 

 

 

 

40

 

0

 

 

 

 

 

6

 

 

 

 

0

 

 

 

6 + 0 = 6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица первого шага:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ξ

0

 

 

u

 

ξ

=ξ

0

u

 

 

f

(u )

 

*

(ξ1)

F

(u ,

ξ

0

)

*

ξ

 

* ξ

 

 

 

 

 

1

 

1

 

 

1

 

1 1

 

F2

1 1

 

 

F1

(

0 )

 

u1

( 0 )

 

 

10

 

 

0

 

 

 

10

 

 

 

 

 

0

 

 

4

0 + 4 = 4

 

4

 

 

 

0

 

 

 

 

10

 

 

 

0

 

 

 

 

 

4

 

 

0

4 + 0 = 4

 

4

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

20

 

 

 

 

 

0

 

 

7

0 + 7 = 7

 

 

 

 

 

 

 

 

20

 

 

10

 

 

 

10

 

 

 

 

 

4

 

 

4

4 + 4 = 8

 

8

 

 

 

10

 

 

 

 

 

 

 

20

 

 

 

0

 

 

 

 

 

5

 

 

0

5 + 0 = 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

30

 

 

 

 

 

0

 

 

7

0 + 7 = 7

 

 

 

 

 

 

 

 

30

 

 

10

 

 

 

20

 

 

 

 

 

4

 

 

7

4 + 7 = 11

11

 

 

 

10

 

 

 

 

20

 

 

 

10

 

 

 

 

 

5

 

 

4

5 + 4 = 9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

30

 

 

 

0

 

 

 

 

 

7

 

 

0

7 + 0 = 7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

84

ξ

0

u

ξ

=ξ

0

u

f

(u

)

*

(ξ1)

F (u ,ξ

0

)

* ξ

* ξ

 

1

1

 

1

1 1

 

F2

1 1

 

F1

(

0 )

u1

( 0 )

 

 

0

 

40

 

 

0

 

 

8

0 + 8 = 8

 

 

 

 

 

 

 

10

 

30

 

 

4

 

 

7

4 + 7 = 11

 

 

 

 

 

40

20

 

20

 

 

5

 

 

7

5 + 7 = 12

 

12

 

 

20

 

 

30

 

10

 

 

7

 

 

4

7 + 4 = 11

 

 

 

 

 

 

 

40

 

0

 

 

8

 

 

0

8 + 0 = 8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поясним построение таблиц и последовательность проведения расчетов. Столбцы (1), (2) и (3) для всех таблиц одинаковы, поэтому их можно было бы сделать общими. Столбец (4) заполняется на основе исходных данных задачи о функциях дохода, значения в столбце (5) берутся из столбца (7) предыдущей таблицы, столбец (6) заполняется суммой значений столбцов (4) и (5) (в таблице третьего шага столбцы (5) и (6) отсутствуют). В столбце (7) записывается максимальное значение предыдущего столбца для фиксированного начального состояния, в столбце (8) записывается управление из столбца (2), на котором достигается максимум (7).

Этап II. Безусловная оптимизация.

Из таблицы первого шага имеем F1*(40) =12, т. е. максимальный доход всей системы при начальном количестве средств ξ0* = 40 равен 12 единицам. Из этой же таблицы получаем, что первому предприятию следует выделить u1*(40) = 20 млн руб. и остаток средств ξ1* =ξ0* u1* составит 20 млн руб. Далее из таблицы второго шага для начального состояния ξ1* = 40 находим u2* (20) =10 (средства, выделяемые второму предприятию) и оста-

ток средств ξ* =ξ* u* = 20 10 =10. В таблице третьего шага для

2

1

2

начального состояния ξ2* =10 получаем u3*(10) =10.

Итак, максимальный доход в количестве 12 единиц будет получен, если первому предприятию выделить 20 млн руб., второму предприятию выделить 10 млн руб., третьему предприятию выделить 10 млн руб.

85

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]