книги / Типовые задачи оперативного управления непрерывным производством
..pdfi\£e gi> /= 0, ..., т — нелинейные функции; a*j, bi, ЙЛ, Uh— постоянные коэффициенты.
Согласно этому методу предварительно выбирается начальное значение лс°п+1, . . х йп+, для переменных, вхо
дящих в нелинейные функции. Все нелинейности линеа ризуются в окрестности этих значений. Если ввести обо значения
|
V}— gi (•£ /j+i, • • • j x л-f/-)> i — 0» • *• • |
||
(О |
|
_ àgt |
|
ik |
dXn+ 1 |
xn+i~x°n+i' "•* xn+r~x°n+r,k~1' r' |
|
|
|
то линеаризованную задачу (2-17), (2-18) можно пред ставить в следующем виде:
п
2 а( Л + ° | + 2 |
|
... т; |
|
/=1 |
|
|
|
i£k< bxn+k< u'k, £ = |
1........ nhcj> 0, |
/ = 1 , . . л; |
(2-19) |
п |
Г |
|
|
a9jXj -J- v0-|- 2 |
’-min, |
|
|
/=i |
A=I |
|
|
где w'ft= m ax(uft — x°n+k, — mk)\ u'b=min(uk—x°n+k, mky,
mk — малое число, выбираемое в [процессе [реализации программы.
Начальное значение для следующей итерации рассчи тывается по формуле:
^n-i-kj==~ n+kr\~tP*Xn >£J^F=
Если некоторая k-я переменная хп+ь в результате решения задачи на каждой итерации принимает лишь значения, соответствующие верхнему либо нижнему ограничению, то, видимо, можно увеличить соответст вующий параметр mft. Если некоторая переменная ко леблется от итерации к итерации между своими крайни ми значениями, то необходимо уменьшить значение соот ветствующего mb.
В [58] указывалось, что с помощью предложенной процедуры удавалось решать задачи с 30 нелинейными переменными и 100 нелинейными ограничениями, отно сящиеся к проблемам управления в нефтепереработке.
В [64] подобным методом решена задача оптимизации управления цехом синтеза аммиака.
Метод линейной аппроксимации не всегда является эффективным, и в [59] было предложено использовать квадратичную аппроксимацию. Сложность применения этой процедуры связана с необходимостью решения на каждом шаге аппроксимации вместо линейной задачи (2-19) задачи квадратичного программирования. В ряде приложений задача типа (2-17), (2-18) имеет определен ную характерную структуру. Она состоит из ряда ли нейных подзадач, связанных между собой небольшим числом нелинейно входящих в эти задачи переменных. Если к этой задаче непосредственно применять метод аппроксимирующего программирования, то возникают определенные сложности, связанные с большой размер ностью линеаризованной задачи (2-19).
В связи с этим в [60] был предложен метод разде ления задач на отдельные подзадачи. Этот метод сво дится к замене решения исходной задачи последова тельной процедурой решения двух новых задач. Первая из них состоит в решении (2-17), (2-18) при фиксиро ванных значениях переменных xn+i, ..., xn+r. Обозна чим совокупность выбранных значений этих переменных как
В этом случае задача (2-17), (2-18) превращается в задачу линейного программирования. В результате ре шения находятся базисные, небазисные переменные и
двойственные оценки яь |
. .., пт для ограничений |
(2-17). |
|
После этого решается вторая задача |
|
|
|
go(xn+v •••. •*«+,) + |
т |
x n+r) — min |
|
!! |
|||
|
|
|
(2-20) |
при ограничениях |
|
|
|
п |
|
|
|
2 aijXl~hëi(Xn+1» • |
• • » x „ +r) = b h 1= |
1. • • • I |
m; |
В (2-21) все небазисные переменные, найденные при решении первой задачи, приравниваются нулю. Задача (2-20), (2-21) является нелинейной, для упрощения про цедуры решения она заменяется приближенной с нели нейной функцией (2-20) и линейными ограничениями, полученными путем линейной аппроксимации нелинейных составляющих в (2-21).
Для решения приближенной задачи в [61] использу ется метод проекции градиента. Если полученное реше ние х*, х*={х*п+1, ..., х*п+г} не удовлетворяет исходной системе нелинейных ограничений (2-21), то дополнитель но решается параметрическая задача: при изменении параметра 0 на отрезке от 0 до 1 ищется такое решение
х=х°+0(х*—х°), которое обеспечивает минимум (2-20) и удовлетворяет ограничениям (2-21). Это решение ис пользуется для нахождения нового решения первой за дачи и процедура повторяется. В [61] приведены усло вия, когда локальные экстремумы первой и второй вспо могательных задач совпадут с координатами локального экстремума исходной задачи.
Метод разделения применим для задач, состоящих из ряда подзадач, связанных между собой нелинейно входящими в них переменными хп+ь • . хп+г, что су щественно расширяет возможности данного метода по сравнению с методами аппроксимирующего программи рования.! В [60, 119] методом разделения решалась задача оптимизации распределения материальных пото ков для нефтеперерабатывающего комплекса.
Применение линеаризации исходной модели по не которым переменным позволяет получить очень инте ресный класс моделей — линейные модели с переменны ми коэффициентами. Рассмотрению общих особенно стей этого класса посвящен следующий параграф. В этом же параграфе, а также в гл. 5 будут рассмотрены и методы аппроксимации нелинейных моделей на^ мно жестве граничных режимов.
2-3. Линейная модель с переменными коэффициентами
Предположим, что преобразованную модель (1-9), (1-10) можно представить как линейную модель с пере менными коэффициентами вида
R
Gf = 2 fij(u)Xj — b{= 0, |
i = 1 .........п, |
(2-22) |
|
/ - 1 |
/ = |
1 ........ R; |
|
Xf>0, |
|
||
F = 2 |
fa) •*/ -* min, |
(2-23) |
/ - Î
где |
/у, F j— заданные функции управлений и, и=={«1, . . . |
|
..., |
ws}; bi — заданные числа. |
|
|
Управления и заданы на некотором множестве U: |
|
|
и<=и. |
(2-24) |
Модель (2-22) —(2-24) нелинейна, но становится ли нейной при фиксированных значениях и. Частные моде ли такого типа рассматривались в ряде работ [20, 35—45].
Подобная преобразованная модель формируется, ког да работа каждого агрегата комплекса описывается ли нейной моделью с переменными коэффициентами вида
(2-25)
|
(2-26) |
В формулах (2-25), (2-26) |
F[.k) — заданные функ- |
ции управлений |
|
и<А>= {м<*\ |
• » N , J --- 1, . . ., |
и для каждого агрегата задано множество UM такое, что
Зависимостями (2-25), (2-26) описывается широкий класс химико-технологических процессов, допускающих
управление выходными материальными потоками и пока зателями качества или состава продуктов. В частности, функционирование отдельных стадий в многостадийных процессах разделения смесей (ректификации, разделе ния изотопов, флотации, обогащения) может быть опи сано уравнениями подобного вида [46, 47]. Например, для одной стадии флотации, исходя из предельных воз можностей разделения, количество компонентов в обога щенном продукте и отходах можно представить в виде (2-25), где и — отношение содержания компонента в го товом продукте (концентрате) к содержанию в сырье [48].
Для другого процесса (риформинга бензина) выход y=k(u)x, где х — количество сырья, и — жесткость ре жима, определяемая температурой и давлением [49]. Основной показатель качества бензина — октановое чис ло ОЧ — зависит от жесткости режима ОЧ=ОЧ(и), ре жимом определяются также удельные затраты на пере работку сырья.
Широкая применимость моделей вида (2-25), (2-26)
объясняется |
тем, |
что |
эту модель отдельного агрегата |
|
можно рассматривать |
как |
результат линеаризации |
||
нелинейной |
модели |
у{к)= |
(x(ft), u<ft>), i= \, ..., т Л по |
входным параметрам х<А).
Действительно, если разложить f\k) (xik\ u(ft)) в ряд Тейлора в окрестности некоторого значения входных па раметров х {к), то, пренебрегая значениями членов второ го порядка и выше в разложении, получаем:
*А
/;ft>(x<ft>, и<*>)=2 11$ № к))х\к)+ ъ (и*% /=1
где
|
|
X |
— х 0 |
|
|
Если |
f\k) (0, u<ft)) = |
0 и модель "должна |
быть |
примени |
|
ма в широком диапазоне изменений x (ft)^ 0 , |
то |
Mi(u<*,) ÊS |
|||
е з О и |
приходим к |
формуле (2-25). |
Нелинейная модель |
f\k) (х<*>. и<*>) может быть аппроксимирована линейной по
х№ в небольшом диапазоне изменения x<ft) с большой точностью при Цг(и(,{>)=7&0. Тогда диапазон значений x(/l), в котором эта модель будет применима, определяется неравенствами:
- f ( j f |
(fe)\__yXk) |
хо/ |
Очевидно, что модель комплекса агрегатов с харак теристиками (2-25) будет представлять собой линейную систему с переменными коэффициентами (2-22), (2-23).
Рассмотрим различные варианты преобразованной модели (2-22), (2-23), отличающиеся видом функцио нальных зависимостей fa и Fj, а также характером множества U.
Предположим, что
|
f a ( u ) = u ijf i— 1, . . . , /г, / = |
1, |
. . |
R \ |
|
||
|
F j ( u ) = U n+ltj, |
UijŒVj, i = l , |
. . . , |
л, |
|
||
где Uj — выпуклый многогранник. |
|
следующим обра |
|||||
Задача |
(2-22) — (2-24) запишется |
||||||
зом: |
|
|
|
|
|
|
|
|
RI |
jXj== 6/, |
i = l , . . |
л; |
|
\ |
|
|
g |
|
|
|
|||
|
/-> |
|
|
|
|
|
(2-27) |
х 7> 0 , |
/ = 1 , . . . , |
n/yG U /f i = |
1 |
........../г; ■ |
|||
|
|
|
min. |
|
|
J |
|
|
|
/-< |
|
|
|
I |
|
Сформулированная задача (2-27) является задачей обобщенного линейного программирования, впервые рас смотренной в [30] , а также в [20].
В [20] изложен метод решения задачи обобщенного линейного программирования, близкий по процедуре к известному методу декомпозиции Данцига — Вульфа. Этот метод достаточно экономичен с точки зрения за грузки оперативной памяти ЭВМ, однако для его реали зации необходима специальная программа решения, от личная от стандартных программ линейного программи рования. В [35] приведен пример практического использования данной процедуры для решения задачи
распределения материальных потоков нефтезаводов с учетом переменных коэффициентов отбора с установок.
Рассмотрим случай, когда каждое множество U3является выпуклым, ограниченным многогранником, за
данным |
координатами |
своих |
вершин Krj—{«u-j, lhrj, ■.. |
||
. |
un+i,rj}, r = l, |
Tj, где |
Tj — число вершин |
много |
|
гранника |
Uj. Согласно |
[20] в этом случае задача |
(2-27) |
может быть сведена к задаче линейного программиро вания.
Действительно, каждый коэффициент иц, заданный на выпуклом многогранном множестве Uj, можно пред ставить следующим образом:
Т!
U [ j ------2 u i r j ^ r j > i |
-------1 » ••♦ . |
------1» •• R i |
|
r=1 |
|
(2-28) |
|
Tt |
xrl=i, я г ; » |
||
о . |
|||
2 |
|||
r = |
1 |
|
Подставляя (2-28) в (2-27) и вводя новые перемен ные xrj—KrjXj, вместо (2-27) получим следующую экви валентную задачу линейного программирования:
|
* |
т! |
uir!xr j= bi* |
|
|
|
|
|
||
|
2 |
2 |
|
•••> |
|
|
||||
|
/=1 г-1 |
|
|
|
|
|
|
|
|
|
|
xrj^ 0 t Г = 1 .........Т |
/ = |
1, |
|
|
(2-29) |
||||
|
|
|
R |
7i |
un+t.rixn |
^ min. |
|
|
||
|
|
F = |
2 |
2 |
|
|
||||
|
|
|
/-1 r — i |
|
|
|
|
|
|
|
Решение исходной задачи (2-27) находится по формуле |
||||||||||
|
|
|
|
г / |
х' г Г |
/== 1, |
. . R, |
|
|
|
|
|
|
|
У |
|
|
||||
|
|
Л = 2 |
|
|
|
|
|
|
||
где x*Tj — решение |
задачи |
(2-29); |
значения |
иц |
могут |
|||||
быть определены |
подстановкой в |
(2-28) Vj=**rj/**j. |
||||||||
В |
(2-29) |
заданные |
значения |
коэффициентов |
Mirj, |
|||||
u n+ i ,r j |
можно |
рассматривать как |
граничные |
режимы, |
характеризующие предельно возможные условия работы технологических агрегатов.
Понятие граничного режима было использовано во многих работах, например в [9, 41], для аппроксима ции чпроизводственных возможностей агрегатов, допу скающих различные режимы работы. Наряду с гранич ными возможны любые промежуточные режимы, кото рые можно представить как линейную комбинацию граничных.
Модель, выраженная через граничные режимы агре гатов, полностью идентична исходной модели с перемен ными коэффициентами при условии, что выпуклые мно гогранники, натянутые на заданные множества векторов граничных режимов, совпадают со множествами Uj до пустимых значений управлений иц. Последнее должно обеспечиваться надлежащей методикой определения гра ничных режимов.
Рассмотрим случай, когда каждое из множеств U,- задано с помощью системы линейных ограничений, ра венств и неравенств, наложенных на значения управле ний. В качестве примера можно рассмотреть систему ограничений, типичную для химико-технологических ком плексов [39]:
А
2 % =/?у, i 4 < n + l ;
(2-30)
dii< uu < dli9 i — 1, ...» л + 1 , j = l , . • » R,
где pj, du, dij — заданные неотрицательные числа.
В этом случае можно отыскать все вершины каж дого из многогранников и перейти к описанию соответ ствующих допустимых множеств через координаты этих вершин [39]. Полученная постановка задачи, как описы валось выше, будет эквивалентна постановке, соответст вующей методу граничных вариантов. Однако при этом необходимо найти координаты всех вершин каждого из многогранников. В случае, когда многогранники имеют нетривиальную геометрическую форму, эта процедура выливается в достаточно трудоемкую самостоятельную задачу. По-видимому, более рационально для решения задачи (2-27), (2-30) применять алгоритм обобщенного линейного программирования.
‘ На основе [20] можно также предложить другой ме тод сведения задачи (2-27) с ограничениями (2-30) к стандартной задаче линейного программирования.
АЬ
Введем новые Нерсменные 2ц^*йцХ]. С учетом этих tiepêменных задача (2-27), (2-30) запишется
R |
zi i = bi* * = 1........ п; |
\ |
|
2 |
|
||
/=» |
|
|
|
|
|
А < п + 1 , |
•» Я; |
|
< zl7 < d i j X j , X j ^ 0, г; |
(2-31) |
|
X j d i j |
0, |
||
i — 1, |
• • •, fi, j ■— 1 ) • • •, |
|
|
|
|
R |
|
|
F==2 ^'+ ,y -niin . |
|
|
Задача (2-31) |
/-» |
) |
|
является задачей линейного програм |
мирования. Для эквивалентности задач (2-27) и (2-31) необходимо, чтобы всегда, если в результате решения (2-31) получается лг*,=0, то для /==1, ..., я+1 также и
Z * » j= 0 .
Это условие будет выполняться при наличии ограни чений
(2-32)
Если в исходной системе ограничений будут отсут^ ствовать неравенства (2-32), то полученная задача ли нейного программирования будет эквивалентна исходной при условии, что в ограничениях типа равенств (2-30) A=rc-J-1 для каждого /.
Действительно, в этом случае при переходе к новым
переменным гц в |
л+1 |
|
|
(2-31) получаем 2 г*7==7?/*':;- |
|
||
|
/=i |
|
|
Если x*j=0, то в силу условия Zij^O, |
i= l, |
/г+1 |
|
в решении будем |
иметь z*<j=0, i= l, . . |
я + 1, т. |
е. бу |
дут соблюдаться сформулированные условия эквива лентности. Если предположить, что качественные пока
затели определяются |
следующими |
зависимостями: |
||
/Ц-1 |
|
т, |
/ = 1 , |
R, (2-33) |
ü ' s = 2 d S n u u * |
5 = |
где dsц — заданные числа, то введение этих зависимостей в;задачу (2-27) не препятствует переходу к задаче ли нейного программирования.
Однако если в задаче (2-27) переменные коэффи циенты в разных столбцах связаны общими ограни чениями вида (2-33), то такие задачи являются сущест венно нелинейными и не сводятся к эквивалентным ли нейным. Связь коэффициентов Uij в разных столбцах практически возникает в задачах распределения мате риальных потоков с учетом изменения показателей каче ства.
Рассмотрим теперь случай, когда в задаче (2-22), (2-23) функции hi и Fэ являются произвольными функ циями от одного управления и±. Множество U задано следующим образом:
(2-34)
где Ui, Ui— заданные числа.
Фиксируя последовательно значения щ в диапазоне (2-34), для каждого из этих значений можно решить за дачу (2-22), (2-23), которая в данном случае будет за дачей линейного программирования. В результате полу чится последовательность оптимальных значений функ ционала F — та задача линейного программирования, которая дает наименьшее значение F, дает и решение нелинейной задачи.
Подобный метод «сканирования» множества U бы стро теряет свою эффективность при росте числа пере менных и, поэтому изложим другой метод решения за дачи (2-22), (2-23) [20]. Рассмотрим его на примере упрощенного варианта задачи с переменными коэффи
циентами в одном столбце
R
fii (ui |
) |
|
а1}х } = ^* г==1> • ♦•» |
|
|
|
|
/■=2 |
|
(2-35) |
|
ui X j |
^ |
O |
, |
/ = 1, .... R; |
|
|
|
R |
|
|
] |
F l («О * 1 + |
2 |
C jX j— m in. |
|||
|
|
/= 2 |
|
|
|
Предполагается, что |
функции |
Fi(uî) могут |
быть достаточно точно аппроксимированы кусочно-ли
нейной по их значениям в |
г точках иш(к=1, |
•• •> Т), |
лежащих в интервале значений и±. Тогда |
|
|
т |
т |
|
/„<“,)*.=2 aiikX,k, |
F, (и,)х, = 2 с,кх 1к, |
(2-36) |
H i