![](/user_photo/_userpic.png)
книги из ГПНТБ / Падалко Л.П. Математические методы оптимального планирования развития и эксплуатации энергосистем учеб. пособие
.pdfп —rn
|
" п |
|
"її |
|
|
II |
|
|
|
|
|
|
|
|
|
|
|
|
/ і = 2 |
|
|
|
|
|
|
H - d ^ - 2 ] r f f A z f t - |
|
|
|
|
|
|
|
|
(2.17) |
|||
|
Л = 2 |
|
|
|
|
|
|
|
|
|
|
|
С помощью в ы р а ж е н и я |
(2.17), |
исключив |
Z\ из |
систе |
||||||||
мы (2.14), получим |
новую систему: |
|
|
|
|
|
||||||
|
|
|
|
п—т |
|
|
|
|
|
|
|
|
х , |
= d% + d l Xi + |
2 |
V A |
(9 = |
2, |
3, ... . |
/І - |
яг). |
(2.18) |
|||
|
|
|
|
Л = 2 |
|
|
|
|
|
|
|
|
К а к видно, .переход |
от системы |
(2.14) |
к |
(2.18) |
анало |
|||||||
гичен |
соответствующему преобразованию |
симплексного |
||||||||||
метода. |
|
|
|
|
|
|
|
|
|
|
|
|
Д а л е е через |
новые |
свободные |
переменные |
в ы р а ж а е т |
||||||||
ся функция |
f(X): |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
п—т |
|
|
|
|
|
/ 2 ( * ! , А",, . . . |
, |
Хп) = |
(4, |
+ |
С^Хг + |
2 |
С о Д . ) |
+ |
|
|
|
|
|
|
|
|
|
|
|
1=2 |
|
|
|
|
+ (4, + ^ + 2Jcl A )^ + .. . + ( 2 с„о + с»> +
« = 2 |
/1=2 |
п— т
+2c w z,)z f t .
i = 2
Д а л е е процедура преобразований п р о д о л ж а е т с я ана
логично, если, конечно, условие К у н а — Т а к к е р а |
! > 0 |
|
дгл |
не выполнено хотя бы дл я одной переменной. |
К а к толь |
ко дл я всех свободных переменных будут выполнены ус ловия (2.15), задачу молено считать решенной.
Рассмотрим теперь случай, когда в процессе решения
окажется, что —-— ооращается в нуль раньше, чем ка- dzx
кая - либо базисная переменная . Введем новую, не ог раниченную по знаку переменную
и, = • |
1 |
д? |
|
' |
|
|
2 |
дгх |
100
которую назовем добавочной. Эта переменная связана со свободными переменными соотношением
|
|
|
|
п—т |
|
|
|
|
|
" і = |
<о + |
У| |
cVizn = |
J - |
. - | L . |
(2.19) |
|
|
Теперь в качестве свободных переменных принимаем |
|||||||
U\, |
2г, |
2„_,„. |
Переменную |
2, ПЄрЄВОДНМ В баЗИС. Но - |
||||
вая |
базисная |
переменная |
Z\ |
в ы р а ж а е т с я в виде |
функции |
|||
свободных |
переменных из равенства (2.19): |
|
||||||
|
|
с',п |
' |
|
1 |
|
_ |
|
|
|
1 0 |
|
" і •— |
C |
Z A — ^10 + |
|
|
|
|
|
|
— « 1 — |
^ j |
^lft*A - "їо |
|
|
|
|
С 1 1 |
|
6 1 1 |
|
|
|
|
|
|
|
п—т |
|
|
|
|
|
+ d \ { i h + ^ d \ h |
z h . |
|
|
(2.20) |
Л= 2
Сп о м о щ ь ю равенства (2.20) исключается из форму
лы (2.19) переменная zit в результате чего получается новая система:
|
|
п—т |
|
|
х , = d24o + d2qi " і + S |
= 1, 2 , . . . , m, m + 1). |
|||
И, |
наконец, |
функция |
f в ы р а ж а е т с я |
через новые сво |
бодные переменные. |
|
|
||
В |
результате |
такого |
преобразования |
число базисных |
неизвестных увеличилось на единицу за счет введения
переменной 2 ] . В свободные переменные |
В Х О Д Я Т «і, 22 , |
||
Z n - m , |
а в базисные — хи х% |
Х т , 2 г . |
|
От |
полученного базисного |
решения |
осуществляется |
аналогичный переход к следующему базисному решению, если условия Куна—Танжера не выполняются. Отметим,
что для переменной |
«і условие |
К у н а — Т а к к е р а имеет вид |
|
А = о . |
|
|
|
Если |
4= 0, |
то значение |
f можно уменьшать за |
счет допустимых вариаций переменной щ, т а к как щ не ограничена по знаку. Если добавочная переменная ока-
101
ж е т ся отличной |
от нуля, то ее следует |
исключить из вы |
||||||
р а ж е н и я |
для |
/ |
и из равенств для базисных |
переменных |
||||
и їв дальнейшем |
не 'принимать во (внимание. |
|
|
|
||||
Существует дополнительное правило: переход к сле |
||||||||
дующему решению нужно осуществлять п р е ж д е |
всего |
за |
||||||
счет изменения добавочных |
переменных. |
|
|
|
||||
И з л о ж и м |
теперь о б щ у ю |
схему перехода |
от |
/г-го |
к |
|||
k+l-ыу |
решению. Пусть на |
некотором |
шаге |
целевая |
||||
функция |
представлена так: |
|
|
|
|
|
Среди всех п—т переменных г\ могут находиться 5 добавочных переменных «;- и п—т—s переменных, огра ниченных по знаку . В базис входят m + s переменных, линейно в ы р а ж а ю щ и х с я через свободные переменные по ф о р м у л а м :
п—т
хя = d% + 2 Л Л (<7 = 1, 2 , . . . , m + s).
Л=1 |
|
|
|
Условия К у н а — Т а к к е р а для решения, |
полученного па |
||
й-м шаге, следующие: |
|
|
|
. > 0 — для всех |
ограниченных по |
зна- |
|
її |
|
|
(2.21) |
ку 2*; |
|
|
|
= 0 — для всех |
добавочных и-. |
|
|
dUj |
|
|
|
Если условия (2.21) |
не выполняются, |
следует |
перехо |
дить к новому решению с меньшим значением |
/. Если |
||
среди переменных, н а р у ш а ю щ и х условия |
(2.21), |
находит |
|
ся добавочная переменная, то, согласно |
дополнительно |
му правилу, переход к базисному решению следует осу ществлять за счет этой переменной.
П р и переходе к следующему базисному решению мо
гут быть два |
случая: |
|
1) в результате изменения переменной |
2 * с целью |
|
уменьшения |
функции f какая - либо базисная |
переменная |
раньше обращается в нуль, чем производная
102
2) производная |
раньше о б р а щ а е т с я |
в нуль, чем |
какая - либо из базисных переменных. |
|
|
В первом случае следует соответствующие |
базисную и |
независимую переменные поменять местами, с д е л а т ь пре образования в системе и приступить к с л е д у ю щ е м у шагу.
Во втором случае вводится новая добавочная пере менная и определяется новая система базисных перемен ных в результате добавления к п р е ж н е й системе неза висимой переменной 2*, на место которой ставится до бавочная переменная Uj.
В обоих случаях в результате каждого шага преоб разований целевая функция в ы р а ж а е т с я через новые не зависимые переменные. Оптимальное решение достигает
ся |
после конечного числа |
шагов. Критерием |
оптимально |
|
сти |
является |
соблюдение |
условий К у н а — Т а к к е р а . |
|
|
Несмотря |
на сложность и трудоемкость |
расчетов при |
ручном счете, изложенный алгоритм просто реализуется в стандартной п р о г р а м м е для Э Ц В М .
§ 2.4. Градиентные методы
Понятие о градиенте функции. Градиентные методы опираются на понятие градиента функции, поэтому, преж де чем излагать вычислительную схему градиентного ме тода, дадим истолкование градиента функции.
Пусть имеется непрерывная функция п переменных f(x-i, Х2, хп) с непрерывными первыми частными про изводными. Градиентом функции называется я-мерный вектор, элементами которого являются первые частные производные:
grad / f a , х 2 , . . . , хп) = (р-, |
|
-?L,..., |
\дхг |
дх2 |
дхп I |
Частные производные характеризуют скорость возра стания функции в направлении координатных осей. Абсо лютная величина градиента равняется геометрической сумме векторов, направленных вдоль соответствующих координатных осей и равных по величине частным про изводным:
103
Гр ади ент показывает направление наискорейшего возрастания функции в соответствующей точке. В лю бом другом направлении из этой точки скорость меньше. Чтобы пояснить это, попытаемся определить производ ную функции в ином направлении . Пусть направление задается вектором г. Предположим, что |/"| = 1. Тогда производная функции f по направлению г будет равна
|
п |
dfjXj, х 2 , . . . , х„) = ^ |
dfjxlt л - 2 , . . . , х„) г |
dr |
dxt |
Выражение , стоящее под знаком суммы, может быть представлено в виде скалярного произведения двух век торов:
df{Xi, |
хй |
х„) |
|
= grad/r (x1 , |
л - |
2 , х п |
) г . |
|
|
|
|
dr |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
Учитывая, |
что с к а л я р н о е произведение |
двух |
векторов |
|||||||
равно произведению их модулей на косинус угла |
межд у |
|||||||||
ними, перепишем в ы р а ж е н и е так: |
|
|
|
|
|
|
||||
df(xx, |
х 2 , . . . , А-„) |
grad /(хх , |
л-2 |
|
хп) |
г |
cos а. |
|||
|
dr |
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
М а к с и м а л ь н о е значение для —^- |
будет о р и |
c o s a = l , |
||||||||
|
|
|
|
дг |
|
|
|
|
/ и г. |
|
т. е. при совпадении |
|
направлений |
векторов |
grad |
||||||
А при | г\ — 1 будем |
иметь |
|
|
|
|
|
|
m a x df(Xl, |
х, |
хп) |
= g r a d / ( X i ; ^ |
_ |
|
dr |
|
|
|
что и требовалось |
показать . |
|
||
Д и ф ф е р е н ц и а л ь н ы й градиентный метод. |
||||
сматривается |
с л е д у ю щ а я |
з а д а ч а : |
|
}>
Пусть рас
min f {х\, х2,... , хп);
g,{xlt х2, ... , л г „ ) < 0 (у = 1, 2,... , т);
* / > 0 .
Решение данной задачи можно рассматривать как на хождение такой траектории движения вектора Х= {х\,
104
х2, хп) от некоторого допустимого исходного решения. Х°, чтобы мы /получили оптимальное решение. Естествен но траекторию движения 'рассматривать вдоль линии ан
тиградиента, |
т а к как |
'при |
этом скорость |
уменьшения |
|
функции |
f(xh |
х2, |
хп) |
получается |
максимальной . |
К. Эрроу |
и Л . |
Гурвиц |
[37] показали, что градиентный ме |
тод нахождения траектории движения описывается сле дующей системой дифференциальных уравнений:
— - = |
— (i = l , 2 , . . . , я). |
(it |
дХ; |
Здесь t — некоторый параметр, например время.
Г Р и с . 2.6.
Решение этого уравнения дает оптимальную т р а е к т о рию движения X(t) от некоторого начального вектора Xа к оптимальному без учета ограничений задачи . Особен
ностью искомой траектории |
ш л я е т с я то, что она |
перпен |
дикулярна в к а ж д о й точке |
Хк « поверхности |
уровня . |
Это означает, что направление траектории, исходящей из-
какой-либо точки Хк, совпадает с .направлением векто - |
|
ра-антиградиента |
в этой ж е точке. |
Это видно из |
рис. 2.6. Д л я того чтобы составить д и ф |
ференциальное уравнение с учетом ограничений, з а п и ш е м
функцию |
Л а г р а н ж а : |
|
|
|
т |
F(X, |
X) = f(X) + |
yiXigj(X). |
Н а х о ж д е н и е искомого решения при этом сводится к определению седловой точки, которая для выпуклой за-
105
д а ч и |
будет совпадать с глобальным оптимумом. И м е я |
в |
виду, |
что по X осуществляется минимизация, а \по к |
— |
максимизация, 'получим следующую систему дифферен циальных уравнений:
сіх, |
= |
n |
если |
л",- = |
„ |
и |
OF |
> |
_ |
|
|
|
— - |
0, |
0 |
|
0; |
|
|
||||||
dt |
|
|
|
1 |
|
|
|
дх: |
|
|
|
|
dt |
~ |
|
дх, |
•в |
остальных |
случаях; |
|
|||||
|
|
|
|
|
|
|
|
|
|
|||
dt |
= |
0, |
если |
- |
< |
0 |
н |
1 |
= |
0; |
|
|
|
|
|
dkj |
|
|
' |
|
|
|
|
||
dk, |
|
dF |
|
|
|
|
|
|
|
|
|
|
— ' - |
— |
в |
остальных случаях, |
|
||||||||
dt |
|
|
|
|
|
|
|
|
|
|
|
|
Если |
исходить |
из |
начального |
допустимого |
решения, |
|||||||
то X(t) |
|
— |
решение |
|
этой |
системы |
дифференциальных |
|||||
уравнений — обладает тем свойством, что |
|
|||||||||||
lim |
X |
(/) = Х о п т . |
|
|
|
|
|
|
|
|
||
/••со |
|
|
|
|
|
|
|
|
|
|
||
Д а н н ы й |
метод, основанный па решении системы диф |
|||||||||||
ференциальных уравнений, |
не |
дает |
удобного |
алгоритма |
||||||||
д л я Э Ц В М . |
Более эффективным |
является градиентный |
метод с конечным шагом, при котором п р и б л и ж е н и е к оптимуму осуществляют не по траектории, а по кусочнолинейной кривой.
Градиентный метод с конечным шагом. Поиск оптиму ма начинается с некоторого исходного допустимого реше ния Х°. Если градиент в этой точке отличен от нуля, то это означает, что исходное решение можно улучшить. Алгоритм метода сводится к нахождению последователь
ности допустимых |
решений |
Хк, таких, чтобы выполня |
л о с ь неравенство |
Д Х * + 1 ) < |
f{Xk). |
Очередное решение определяется из уравнения |
||
Х г =Х° — Xgrad/(X°), |
(2.22) |
|
в результате чего |
получаем |
|
106
П р и расчете следующего решения |
по |
уравнению |
||||
(2.22) возникает вопрос |
о том, -какую следует |
выбирать |
||||
величину |
коэффициента |
К, который определяет |
размер |
|||
ш а г а от (предыдущего к |
последующему |
решению. Р а с |
||||
смотрим два варианта вычислительной схемы |
решения |
|||||
уравнения |
(2.22). |
|
|
|
|
|
В первом случае задается -постоянная величина па |
||||||
раметра |
Я, и длина шага |
изменения переменной |
опреде |
|||
ляется |
в ы р а ж е н и е м |
|
|
|
|
Р и с . 2.7.
Такой метод расчета ш а г а обладает тем |
достоинст |
|||||
вом, что по мере приближения, к оптимуму значения |
про |
|||||
изводных уменьшаются, и, следовательно, |
автоматически |
|||||
уменьшается длина |
шага . |
|
|
|
|
|
После н а х о ж д е н и я очередного |
решения |
Хк+1 |
= Хк + |
|||
-\-АХ& |
производится |
определение |
градиента в точке |
Xk+l |
||
и аналогично осуществляется поиск следующего |
реше |
|||||
ния. |
Геометрическая |
иллюстрация х а р а к т е р а |
движения |
к оптимуму в методе градиента показана на рис. 2.7.
Критерием -окончания решения является выполни мость условия
107
п |
|
|
(2.23) |
/=і |
|
где б — малое положительное число. |
|
В а ж н ы м моментом в реализации этого метода |
являет |
ся выбор подходящей величины коэффициента |
Х- Если |
его выбрать слишком малым, то движение к оптимуму бу
дет очень долгим из-за |
необходимости расчета |
градиента |
|
во многих точках. С другой стороны, при слишком |
боль |
||
шом значении X может |
возникнуть незатухающий |
про |
|
цесс поиска в районе оптимума. П р е д л а г а е т с я |
в ряде вы |
||
числительных схем по |
мере п р и б л и ж е н и я к |
оптимуму |
|
снижать величину коэффициента X. |
|
|
|
Во втором варианте |
реализации градиентного метода |
поиск следующего решения осуществляется так: величи
на коэффициента X выбирается такой, |
которая |
миними |
|
зировала бы целевую функцию по линии градиента, |
рас |
||
считанного в исходной точке. И н ы м и |
словами, |
выбира |
|
ется значение X, минимизирующее |
функцию f[Xk |
— |
— X grad f(Xk)]. Д л я этого требуется решить уравнение
дХ
Но решение этого уравнения может оказаться очень трудоемким . С а м ы й простой способ состоит в вычисле
нии функции f[Xk— |
X grad |
f(Xk)] |
дл я коэффициента |
X, |
|||||||
приобретающего |
значения |
АХ, 2АХ, |
ЗАХ, |
.... |
Здесь |
||||||
АХ — интервал, на который разбивается X. Окончательно |
|||||||||||
выбирается |
то значение X, дл я которого |
функция |
f[Xk |
— |
|||||||
— X grad f(Xk)] |
приобретает |
минимальное |
значение. Д л я |
||||||||
данного X вычисляются |
Хк+1 |
и величина |
целевой |
функ |
|||||||
ции. Если в новой точке |
Хк+І |
решение |
неоптимально, то |
||||||||
аналогично |
продолжается расчет д а л ь ш е : |
Хк+2 |
= Xk+l |
— |
|||||||
— Xgvad |
|
|
|
|
|
|
|
|
|
|
|
В а ж н о е значение пр и реализации этого метода |
имеет |
||||||||||
выбор |
величины интервала |
АХ. И з л о ж е н н ы й |
алгоритм |
||||||||
поиска |
оптимума |
называется |
методом |
|
наискорейшего |
||||||
спуска. |
Его |
геометрическая |
интерпретация |
дана |
на |
рис. 2.8.
Проекционный градиентный метод. Процедура поиска оптимального решения градиентным методом у с л о ж н я ется, если полученное в процессе расчета допустимое ре-
108
шение л е ж и т на границе множества допустимых реше ний. В этом случае не существует % такого, чтобы сле дующее решение оказалось допустимым. Если мы будем двигаться по линии градиента, то некоторые из нера венств и условий неотрицательности переменных будут нарушаться . Выясним, в каком направлении следует дви
гаться, чтобы ограничения не нарушались, |
а |
целевая |
||||||||
функция |
уменьшалась . |
|
|
|
|
|
|
|||
Н а рис. |
2.9 |
показаны в ы п у к л а я область допустимых |
||||||||
решений |
и |
линии |
уровней нелинейной функции |
цели. |
||||||
Предположим, |
что |
градиентный |
процесс |
начинается |
с |
|||||
допустимого |
решения Х°. Геометрическая |
интерпретация |
||||||||
дается для задачи максимизации . Пусть |
в |
результате |
||||||||
движения по линии градиента мы пришли |
в точку X'. |
И з |
||||||||
этой точки двигаться д а л ь ш е |
в |
направлении |
градиента |
|||||||
нельзя, |
т а к |
как м ы выйдем за пределы допустимой |
об |
|||||||
ласти . Наиболее подходящим |
допустимым |
направлением |
109