Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Падалко Л.П. Математические методы оптимального планирования развития и эксплуатации энергосистем учеб. пособие

.pdf
Скачиваний:
3
Добавлен:
23.10.2023
Размер:
6.49 Mб
Скачать

 

 

 

 

 

 

 

Таблица 3.1

X

X,

Л'2

 

 

 

7

><

 

 

 

 

 

 

7

 

 

 

 

 

 

 

•«Г

0

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

А'

 

 

 

 

 

 

 

щее значение

функции hn-\{A—

х„). Слава, из соседнего

столбца той ж е строки, извлекаем

'Оптимальное значение

переменной

хп—\.

Следовательно,

на п2 процессах бу­

дет

израсходовано

А—хп—хп—\

ресурсов. И щ е м значе­

ние

функции

h„—2{A — ,v„ — л ' „ _ 0 и

 

соответствующее

значение переменной л'„_о . Такой

 

«ход

назад» осуществ­

ляется вплоть до определения Х\. Нетрудно заметить, что этим «ходом назад» мы д в и ж е м с я по той траектории, ко­ торая доставляет оптимум многошаговому /процессу ре­ шения.

Итак, оптимальные значения функции и переметных

найдены. Следовательно, з а д а ч а

решена.

 

 

 

§ 3.4. Случай непрерывности переменных

 

 

 

Рассмотрим обобщение метода для с л у ч а я

непрерыв­

ности

переменных

Xj. Если

мы

н е будем

использовать

дискретизацию

переменных,

то,

очевидно,

 

необходима

иная

процедура

формирования

значений ht(X),

чем это

было

раньше .

 

 

 

 

 

 

 

 

Если в и д к а ж д о й функции

 

задан -

аналитиче­

ски, то первый ш а г решения

не будет

с в я з а н

с

какими-

либо

вычислениями

д л я hi (X).

Второй

шаг

д о л ж е н сво­

диться к определению

функции

 

 

h2(X) = min [Ъ(Х х2) +

f2(x2)}.

 

Н е вдаваясь в

детали

методики определения

этой функ­

ции, отметим,

что она

д о л ж н а

быть з а д а н а в

интервале

150

Третий шаг сводится к определению функции

h3(X)

=

min {Л2 (Х -

 

х 3 ) + /з(л-3 )},

 

 

 

 

 

 

т а к ж е

заданной на указанном интервале .

 

 

 

 

 

Функция

hn{X),

 

'полученная в

конце

 

многошагового

процесса, сразу дает оптимальную величину

з а т р а т

п р и

Х—А.

Теперь

следует

определить

структуру

з а т р а т

по

процессам и соответствующие значения переменных

х

П р и аналитическом в и д е .функций процедура

р е ш е н и я

выглядит

несколько иначе, чем п р и табличном

задании .

В н а ч а л е определяется переменная

хп. С

этой

целью

об­

р а щ а е м с я

к рекуррентному соотношению

 

 

 

 

 

hn(A)

=

min [hn-i(A

-

*„) +

/,,(х„)].

 

 

 

 

 

Т а к

как аналитический в и д функций

п,г _і(Х) и

fn(xn)

нам известен,

то,

п о д с т а в л я я

найденное

численное

зна­

чение

hn(A),

мы

получаем уравнение с

одним

неизвест­

ным хп. Р е ш и в это уравнение, находим

хп.

 

 

 

Д а л е е

о б р а щ а е м с я к следующему рекуррентному

со­

отношению

 

 

 

 

 

 

 

 

 

 

 

/г„_і(А — х„) =

min {/г„_2(Л — хп — x„_i) +

fn-\(xn-i)}

З д е с ь в и д

функций

/г,,_2 и

/„ _ i

известен. Значение хп

мы определили раньше . Известно

т а к ж е

численное

зна­

чение

функции

hn— \{А — х„), р а в н о е

hn(A)

f„(xn).

В

результате вновь получаем уравнение с

одним

неизвест­

ным, решив которое, находим

x„_i.

 

 

 

 

 

Аналогично поступаем дальше, вплоть до определе­ ния Х\. З а м е т и м , что х1 можно найти иначе, путем д и ф ­ ференцирования рекуррентного соотношения и п р и р а в ­ нивания производной нулю. В частности, д л я определе­ ния хп необходимо решить уравнение

dhn_\{A — x^

dxn

<КА-х„)

П р а в д а , такой

подход, т а к ж е к а к и предыдущий,

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

Д(х(-). В противном

случае

необходимо

осуществлять

дискретизацию переменных и

функции h и

f з а д а в а т ь в

табличной форме.

151

§ 3.5. Эффективность динамического

п р о г р а м м и р о в а н и я

Эффективность

динамического

п р о г р а м м и р о в а н и я

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

Из

принципа оптимальности вытекает,

что

решение

на последующем

шаге р а с с м а т р и в а е т с я только относи­

тельно

результата

решения, достигнутого

на

предыду ­

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

шагов не имеют

значения.

Оценим эффективность метода д л я случая, рассмот­

ренного ранее,

когда п = 20 и / п = 1 0 . М о ж н о подсчитать,

что число всех операций, связанных с вычислением всех

hp<),

составит

приблизительно 1250.

Если

предполо ­

жить, что одна

'операция

выполняется

со

скоростью

сек,

то в р е м я ,

необходимое для решения

задачи ме-

103

 

 

 

 

 

 

 

 

тодом

динамического

п р о г р а м м и р о в а н и я ,

 

составит

1,25 сек.

Отметим,

что время,

затрачиваемое

н а

решение

задачи,

находится

в прямой

пропорциональной

зависи­

мости

от числа шагов

многошагового процесса. В част­

ности,

для / г = 4 0

и т =

1 0 оно

составит всего 2,5 сек. От­

сюда

ясно,' что

динамическое

п р о г р а м м и р о в а н и е пред­

ставляет собой весьма эффективный метод решения эк­ стремальных з а д а ч .

К а к о в ы

ж е достоинства и границы

применимости ди­

намического

п р о г р а м м и р о в а н и я ?

Р а н е е

были

перечисле­

ны особенности реальных задач,

которые

делают

невоз­

м о ж н ы м использование классического

математического

анализа для их решения . Рассмотренный

нами

метод

преодолевает ївсе препятствия, о

которых

мы

говорили.

Динамическое программирование позволяет решать зада ­

чи с функциями

любого

вида. В и д

функции

(вы­

пуклость, вогнутость,

наличие

нескольких

экстремумов)

не вызывает затруднений.

 

 

 

Дополнительные условия в форме ограничений на пе­

ременные не усложняют, а, напротив, у п р о щ а ю т

реше­

ние задачи, т а к как

с о к р а щ а е т с я число

анализируемых

вариантов.

 

 

 

 

152

А п п а р а т динамического

программирования применим

к решению з а д а ч

аз случае

'непрерывного

изменения пе­

ременных. П р а в д а ,

решение

оказывается

п р и б л и ж е н н ы м

вследствие дискретизации переменных и необходимости интерполяции функции м е ж д у двумя соседними дискрет ­ ными значениями переменных. Однако в принципе мо­

жет быть

достигнута л ю б а я

требуемая

точность

путем

дискретизации переменных со

все 'более

мелким

шагом..

К а к и м

требованиям д о л ж н а удовлетворять

задача,,

чтобы д л я ее решения можно было использовать метод,

динамического

п р о г р а м м и р о в а н и я ?

И з

вида

целевой

функции можно

сделать вывод, что

она

д о л ж н а

у д о в л е ­

творять требованию аддитивности, т. е. представимости

ее їв виде

суммы

функций, к а ж д а я из

которых в ы р а

ж а ­

ется через

одну

переменную . О д н а к о

это требование

не­

является главным . Динамическое п р о г р а м м и р о в а н и е мо­ жет быть применимо т а к ж е и к функциям мультиплика ­ тивного вида:

п

mini"! Д-(л',-).

І =І

Рекуррентное

соотношение д л я

заданной

задачи з а п и ­

сывается так:

 

 

 

 

hn(X) = min

( / ! n - i ( ^ - a » W l .

 

 

где

 

 

 

 

 

 

 

л— 1

 

 

 

/і„_і(Х — Хп) =

ГЛІП П / / Л - ; ) .

 

 

 

 

 

1=1

 

 

 

Н и ж е будет

показан пример задачи

мультипликативного-

вида.

 

 

 

 

 

Главное

требование к з а д а ч е

условие

выполнимо ­

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

ного состояния, от результата решения

н а п р е д ы д у щ е м

шаге, относительно которого ищется

решение з а д а ч и

дальше, а не от структуры решения на всех п р е д ы д у щ и х

шагах, начиная от начального . Иначе говоря,

пусть на

первые

/г процессов отпущено В ресурсов, тогда

опти­

мальное

распределение

оставшихся

ресурсов

А—В

на

п—k

процессах не д о л ж н о

зависеть

от того, к а к

В ресур ­

сов

распределены м е ж д у

k

процессами, а будет

зависеть

153:

только от наличия оставшихся ресурсов. Это условие оп­

ределяет т а к ж е и высокую эффективность

метода.

Следует заметить, что д л я выполнимости

этого требо ­

в а н и я весьма часто приходится многошаговый

процесс

решения осуществлять не с начального момента

протека ­

ния реального процесса, а с конца его. Н а п р и м е р , при рассмотрении з а д а ч и оптимального вывода ракеты на

орбиту

в

качестве отправной

точки,

с которой

развора ­

чивается

многошаговый

процесс, принимается

конечная

точка в ы в о д а ракеты на

орбиту.

 

 

Если з а д а ч а удовлетворяет

указанным выше

требова­

ниям,

то

динамическое

программирование гарантирует

достижение абсолютного

минимума

( м а к с и м у м а ) .

В заключение следует

обратить внимание н а

достоин­

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

су. В с а м о м деле, как

видно из табл . 3.1, в результате

по­

следнего шага получается

серия оптимальных

решений

Л„. Вполне возможно,

что

некоторые из

этих

решений

равны и л и ж е весьма

близки п о величине затрат, хотя

их

структура, т. е. распределение ресурсов м е ж д у процесса­

ми, разная . Н а л и ч и е равноценных оптимальных

решений

позволяет в ы б р а т ь среди них то, .которое

в большей сте­

пени удовлетворяет некоторым другим требованиям

за­

дачи, не нашедшим по тем

или иным причинам

отраже ­

ния в ее математической формулировке . Например, если оптимизация осуществлялась п о критерию экономично­

сти, то в выбранном решении можно

учесть т а к и е требо­

вания, к а к надежность,

удобство

эксплуатации .

 

§ 3.6. Многомерные задачи динамического

 

 

программирования

 

 

 

 

 

 

Р а с с м о т р е н н а я

нами

з а д а ч а относилась

к классу

од­

номерных

задач,

т а к к а к требовалось

найти

распределе­

ние одного вида

ресурсов. З а д а ч и , в

которых требуется

распределить несколько

видов

ресурсов,

относятся

к

классу

многомерных.

П р и использовании

изложенного

стандартного решения

применительно к

многомерным

з а д а ч а м возникают

значительные

вычислительные труд ­

ности вследствие резкого возрастания объема рассмат ­ риваемых вариантов .

154

П р и в е д ем математическую формулировку для случая двумерной задачи:

min УіУ,

» = 1

 

 

 

 

 

 

 

 

 

 

 

 

і = і

 

 

 

 

 

 

 

 

 

 

 

 

З д е с ь

xt

и

yt

'количество ресурсов двух

видов, вы­

 

 

 

 

 

деляемых д л я

і-го

процесса.

 

 

Отметим, что

рекуррентные

соотношения

Б е л л м а н а

д л я случая

одномерных з а д а ч полностью переносятся на

многомерные задачи . Д л я

нашей

з а д а ч и

они

будут

иметь

в и д

 

 

 

 

 

 

 

 

 

 

hn(X,

У) min

 

min [hn^(X-xn,

 

Y-yn)

+

fn{xn,yn)}.

Д а н н а я

з а д а ч а

снова

может

р а с с м а т р и в а т ь с я

к а к

я - шаговый процесс принятия решений, но теперь на

к а ж ­

дом ш а г е

необходимо в ы б и р а т ь значения

и xh

и yt.

Од ­

нако

при

применении изложенного

р а н е е стандартного

метода к решению многомерной з а д а ч и в о з н и к а ю т

зна­

чительные вычислительные

трудности.

 

 

 

П р е д п о л о ж и м , что переменные

xt

и у1

могут прини­

мать

по

100 дискретных

значений.

Т а к

к а к

функцию

hk(X,

У)

необходимо запоминать

на

k-м

шаге д л я

всех

в о з м о ж н ы х 'комбинаций X и У, то возникает

необходи­

мость в вычислении и 'запоминании

10 ООО значений функ­

ции. Таким

о б р а з о м , объем вычислений возрастает

в 100

раз . Фактически увеличение объема вычислений будет

еще в ы ш е , т а к

к а к д л я определения к а ж д о г о из 10 000

значений hk(X,

У) с целью выбора оптимального необхо­

димо п е р е б р а т ь в лучшем случае 100, а в худшем случае

10 000 комбинаций значений xk

и

ук.

 

 

 

Помимо увеличения о б ъ е м а

вычислений, есть

еще и

д р у г а я трудность, вызванная необходимостью

запомина ­

ния

громадного числа

значений

функции hk{X,

У)

в

па­

мяти

вычислительной

машины .

Если учесть;

что

объем

оперативной п а м я т и существующих

вычислительных

ма-

155

шин не превосходит нескольких тысяч

ячеек, то д а ж е д л я

запоминания

одной таблицы

значений

hk(X,

Y)

может

потребоваться

обращение

к

внешней

 

п а м я т и машины .

Это существенно сокращает скорость вычислений.

 

 

 

Е щ е в большей степени

возрастает

объем

вычислений

для трехмерных задач . Число функций

 

hk(X,

Y,

Z),

необ­

ходимых

для

запоминания

на к а ж д о м

шаге,

составит

у ж е

1003

= 106 . Объем вычислений увеличивается

не

ме­

нее

чем в

10 000 іраз. Если

двумерные

задачи

могут

быть

решены на больших вычислительных машинах, трехмер ­

ные т а к ж е иногда

могут быть решены за счет

укрупне­

ния шага дискретизации, то четырехмерные

и в ы ш е за ­

дачи превосходят

возможности

современных

вычисли­

тельных

машин . Д л я решения

таких з а д а ч

необходимо

искать возможность применения

других

математических

методов

или ж е

специальных

приемов,

позволяющих

каким-либо путем существенно сократить объем анали ­

зируемых

(вариантов.

 

 

 

 

§ 3.7.

Использование

множителей

Л а г р а н ж а

д л я понижения размерности

 

 

Н и ж е

мы

п о к а ж е м ,

что использование

множителей

Л а г р а н ж а

позволяет

понизить размерность

задачи .

Предположим,

что

переменные

Х[ непрерывны и что

функции

/,-(-V()

выпуклы . Тогда рассмотрим

следующую

задачу:

 

 

 

 

 

 

 

 

minify

 

 

fa,

 

yi)-xfy\;

 

 

 

U = l

 

 

 

(=1

J

 

 

x i

+ x 2

+

••• +xn

=

A;

 

 

 

Уі>0.

 

 

 

 

 

 

 

 

К а к видно,

на

y-t

ограничения сверху не н а к л а д ы в а ю т с я .

Ц е л е в а я

функция

может быть

представлена т а к ж е ©

следующем

виде:

 

 

 

 

 

 

п

 

 

 

 

 

 

 

 

Г Ш " 2

[/;(*/>

Уй

Ьу,].

 

 

 

 

/=1

 

 

 

 

 

 

 

 

Несмотря на то что в условиях задачи имеются ог­ раничения только на один вид ресурсов, з а д а ч а все ж е остается двумерной, т а к к а к в целевой функции имеются

156

две переменных

X; и t/j.

Д л я

того чтобы

'избавиться

от двумерности, в в о д а м новую функцию:

 

У;>0.

 

 

 

 

 

Тогда з а д а ч а

при

фиксированном

К будет

сводиться к

следующей:

 

 

 

 

 

п

 

 

 

 

 

У,х(=А,

х , > 0 .

 

 

 

 

/=1

 

 

 

 

 

Д а н н а я з а д а ч а

является

одномерной, и

ее решение

можно осуществить изложенным ранее методом. Рекур ­ рентное соотношение будет иметь вид:

hk(X)

=

min

 

-

хк)

+

gk(xk)}.

 

 

 

 

 

Таким образом, д л я

решения

необходимо

знание

функций g;(x() и

hi(X

— х(-). Функции

gs

определяются

следующим

образом .

З а д а е м с я

допустимым

значением

х(. из интервала

0, 1, 2,

 

X. Д л я

данного

х1

определя ­

ем минимальное

значение функции

 

f^xl%

у,)

%yt

при

всех допустимых

значениях

yt

из

интервала

0,

1,

2,

У. Если

число значений

хг

и yt

по

100, то потребуется

104 вычислений. Окончательно будут запоминаться толь­

ко

100 значений функции g/x.)

(для

всего

и н т е р в а л а

переменных) .

 

 

 

 

 

 

Таким образом,

при

заданном фиксированном значе­

нии

% определяются

п

функций

gi(Xi),

после

чего опти­

мизация осуществляется обычным

методом динамическо­

го программирования д л я случая

одномерной

задачи .

Однако полученное решение еще не

будет

оконча­

тельным, т а к к а к значения переменных

х-р yt будут оп­

ределяться величиной выбранного коэффициента Я,. П о ­

этому

по окончании расчета необходимо проверить

ус-

ловие

п

Если это условие д л я рассчитанных

yt

У1УІ=В-

 

i = i

 

 

не выполняется, то следует выбрать новое значение А и

вновь повторить

решение. Корректировка коэффициента

Я, п р о д о л ж а е т с я

до тех пор, п о к а не будет выполнено

157

 

п

 

 

 

условие

V / / . =

73. Полученное решение является опти­

мальны-м.

ц і

 

 

 

 

 

 

 

Количество вычислений, производимых таким спосо­

бом, зависит от

числа

итераций с коэффициентом

X. Д л я

снижения

числа

таких

итераций используются

методы

интерполяции и экстраполяции с целью скорейшего опре­ деления оптимального X. П р а к т и к а показывает, что не­ однократное решение одномерной задачи гораздо эффек ­ тивнее, чем непосредственное решение методом одномер ­

ного динамического

программирования

двумерной

з а ­

дачи.

 

 

 

 

 

 

 

§ 3.8. Задачи динамического программирования

 

 

Оптимальное распределение

электрической

нагрузки

между

агрегатами электростанции.

И з л о ж е н н ы й н и ж е

алгоритм может быть использован

д л я

оптимизации

ре­

ж и м а

гидроэлектростанция или

тепловой электростан ­

ции. Будем рассматривать решение з а д а ч и при

з а д а н н о м

составе включенного

оборудования. Предполагаются

из ­

вестными расходные характеристики агрегатов Qj(P,-). Требуется найти такое распределение нагрузки м е ж д у агрегатами, которое минимизировало бы расход первич­

ной

энергии.

 

 

Математически

з а д а ч а формулируется

так:

minVQ.(P( .);

 

(3.1)

І

РІ = Р 0 ;

 

(3-2)

V рт\п < р . <

Ртах,

(3.3)

Условие (3.2) отвечает требованию баланса мощно­ стей, а неравенства (3.3) о т р а ж а ю т ограничения по ус­ ловиям работы силового оборудования .

Рекуррентное соотношение имеет в а д

hk(P) = min {ft*_,(P - P„) + Qk{Pk)).

Первый шаг решения сводится к нахождению функ­ ции Ііі(Р), при этом hi(P) = Q i f P ) , т. е. для первого ша-

158

га

не требуется

каких-либо

вычислений,

а

необходимо

только запомнить

значения

функции hi (Р)

д л я всех

дис­

кретных значений

Р.

 

 

h2(P)

 

 

 

Н а втором шаге определяется функция

из

ре­

куррентного соотношения

 

 

 

 

 

 

lu_(P) =

min [h^P — P,) +

Q2(P)\-

 

 

 

 

 

Иначе

говоря,

на втором

шаге находится

эквивалент ­

н а я

расходная характеристика первого и

второго

агре ­

гатов.

 

 

 

 

 

 

 

 

Н а последнем

шаге из рекуррентного

соотношения

ha{P) = min {Л„_,(Я -Р„) + Qn(Pn)}

определяется эквивалентная расходная характеристика п агрегатов. Оптимальный расход первичной энергии на­

ходится путем подстановки в

функцию hn(P)

значения

Р0. З а т е м «обратным

ходом»

находятся оптимальные

нагрузки всех агрегатов.

 

 

Д л я и л л ю с т р а ц и и

вычислительной схемы

одномерно ­

го динамического программирования рассмотрим сле­ дующий пример. Требуется найти экономичное р а с п р е д е ­

ление

электрической

нагрузки,

равной

ПО

Мет,

м е ж д у

турбоагрегатами

трех

типов,

расходные

характеристики

которых з а д а н ы

в табличном

виде (табл. 3.2).

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.2

Тип

 

 

 

 

 

Нагрузка,

Mem

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

агрегата

5

10

.5

20

 

25

30

35

40

45

50

 

 

 

 

 

 

 

 

 

 

 

 

К-50

 

32,6

43,4

54,2

65

75,8

86,6

97,4

109

120,6

Т-50

 

 

32

43

54

 

65

76

87

98

109

120

Т-25

 

16,25

27,5

38,75

50

 

61,25

 

 

 

 

 

Предполагается, что теплофикационные агрегаты ра­ ботают в чисто конденсационном режиме . С целью упро­ щения расчетов расходные характеристики з а д а н ы в уг-

рубланной сетке электрических нагрузок.

В

постановке

задачи п о л а г а е м , что к а ж д ы й из агре ­

гатов

не может

работать с нагрузкой м е н ь ш е минималь ­

но допустимой и более максимально

допустимой, равной

ее минимальной мощности. Пусть

аналитическое

в ы р а ­

жение расходной характеристики

агрегата имеет

вид

159-

Соседние файлы в папке книги из ГПНТБ