УДК 303.732 + 519.85 ББК З 817 + У9(2)305.652
РАЗРАБОТКА ПРЕДМЕТНО-ОРИЕНТИРОВАННЫХ СИСТЕМ ОПТИМИЗАЦИИ (НА ПРИМЕРЕ НЕФТЕПЕРЕРАБАТЫВАЮЩЕГО ПРОИЗВОДСТВА)
Сизиков А. П.1
(Самарский государственный экономический университет, Самара)
Описана унифицированная модель нефтеперерабатывающего производства, построенная на основе типовых моделей смесительно-разделительных операций, которые при необходимости могут быть замены автономными моделями, интегрируемыми в базовую модель определенным способом. Рассмотрен вопрос несовместности и многокритериальности, предложен инвариант обобщенного иерархического критерия.
Ключевые слова: нефтеперерабатывающее производство, системы оптимизации, унифицированная модель, многокри-териальность.
1. Введение
Нефтеперерабатывающая промышленность является одной из важнейших, динамично развивающихся отраслей российской экономики. Наряду с увеличением объемов производства наблюдаются значительные изменения в технологии, расширяется ассортимент, улучшается качество продукции. Повышение технологичности и конкурентоспособности производства требует все более высокого уровня управления на базе информационных технологий. Одной из составляющих этой задачи является соз-
1 Александр Павлович Сизиков, кандидат экономических наук, доцент (apsizikov@mail. тч).
дание и совершенствование средств моделирования и оптимизации производственных процессов.
В настоящее время проектирование систем моделирования (в основном имитационного, но и оптимизационного тоже) складывается в самостоятельное научное направление. Существует два типа систем. К первому относятся системы, предназначенные для решения классов математических задач; ко второму -ориентированные на получение определенных результатов для конкретных видов производственных процессов.
Предметно-ориентированные системы рассчитаны на поль-зователя-практика, поэтому должны иметь простой, интуитивно понятный интерфейс. Описание объекта и постановка задач должны осуществляться на понятном пользователю языке предметной области. Но это ограничивает возможности программы. Иногда стремление учесть малозначительный нюанс приводит к существенному усложнению формализованного представления объекта и, как следствие, перегружает программу деталями и настройками. Выход в разработке некоторого базового варианта, который, будучи самодостаточным, способным решать типовые задачи для типовых объектов, допускал бы возможность расширения, т.е. представлял собой платформу для создания более сложных модификаций.
Одна из важнейших функций управления в нефтепереработке состоит в расчете оптимального распределения потоков и соответствующего материального баланса предприятия. Это довольно трудоемкая задача, осложняемая тем, что решение зависит от постоянно меняющихся производственно-технологических факторов: качества нефти, состояния оборудования, структуры товарного выпуска и других.
Для настройки программного продукта на решение конкретной задачи требуется описание параметров объекта и задание некоторых желаемых показателей. Вся исходная информация группируется следующим образом:
- список нефтепродуктов. В этот список входят сырье, полуфабрикаты, товарная продукция. По сырью указываются цены и могут быть указаны объемы поставок. По товарным продуктам -предполагаемые цены реализации и, возможно, ограничения на объемы производства. Кроме того, должны учитываться требо-
вания по качеству товарных продуктов, получаемых смешением, и качество компонентов смеси;
- список установок и описание каждой установки в отдельности (номинальная мощность, входные и выходные нефтепродукты, коэффициенты отбора, нормы расхода производственных ресурсов). По описанию установок автоматически формируется схема материальных потоков;
- сведения, необходимые для расчета и анализа основных технико-экономических показателей.
В качестве результатов программа должна выдать оптимальный материальный баланс и соответствующие ему техникоэкономические показатели, а также рекомендации о том, как нужно изменить эти условия, чтобы улучшить эти показатели. Если условия, заданные пользователем, окажутся противоречивыми, программа должна предложить компромиссный вариант, предусматривающий ослабление невыполнимых требований.
Выходная информация:
- оптимальный план производства товарной продукции в натуральном и стоимостном выражениях;
- загрузка и баланс каждой установки, а также оценка каждой установки с точки зрения ее роли в достижении максимального экономического результата;
- материальный баланс по каждому нефтепродукту и всему производству в целом, а также сведения, позволяющие судить о том, насколько выгодно или невыгодно производить каждый нефтепродукт;
- схемы компаундирования, соответствующие общему материальному балансу и требованиям по качеству продуктов смешения;
- топливный баланс;
- потребность в производственных ресурсах и ингредиентах (общая и с разбивкой по установкам);
- обобщенные технико-экономические показатели (объем переработки нефти, глубина переработки, покрытие и некоторые другие).
В статье представлен опыт разработки этой системы. Предложен вариант на основе типовых моделей процессов. Разрабо-
тан механизм его (этого вазового варианта) расширения за счет автономных моделей.
2. Математическая модель
Нефтеперерабатывающее производство в целом можно представить в виде сетевого направленного графа. Множество вершин (узлов) этого графа К = и и ^, где и - множество установок; S - множество смесевых пулов. Множество дуг отражает потоки нефтепродуктов. Пусть I - множество нефтепродуктов. Каждый продукт может быть представлен одним или несколькими потоками. Если J/ - множество потоков, представляющих продукт / е I, тогда множество всех потоков J = и J/.
/е/
Введем неотрицательные переменные: х^ - интенсивность у-го потока в х-м периоде; Zit - текущий запас /-го продукта. Тогда уравнения материального баланса запишутся так:
(1) 2и - *г(X-1) - Е ХП + Е ХП = 0 , / е 1 , Х = 1,2 ..., Т ,
Уе-//
где J/+(Jгr) - множество потоков пополняющих (расходующих) г-й продукт; 2/0 - начальный запас продукта.
Ограничения по текущим запасам:
(2) Z-ы < Е < Z+ы, И е Н , X = 1,2,..., Т ,
/е1И
где Н - множество резервуарных групп; 1И - множество продуктов, для хранения которых используется И-я резервуарная группа; ZИ^_, ZИ^+ - пределы заполнения И-й резервуарной группы в х-м периоде.
Ограничения по поставкам сырья и полуфабрикатов со стороны:
(3) Р-<Е Е х]Т < р;, / е I+ , X = 1,2,..., Т ,
т=1
где I+ - множество продуктов, поступающих со стороны; Р/х (Ри+) - пределы поставки за время с начала моделирования. Требования по отгрузке товарной продукции:
(4) V;<Е Ех;т <V;, /еI-, х=1,2,...,т,
г=1
где I - множество товарных продуктов; Уи(Уи) - пределы отгрузки товарного продукта за время с начала моделирования. Материальные балансы узлов:
(5) Е хр - Е х]( = 0, k е К , X = 1,2,..., Т ,
1еЗ]
где Зу+(ЗГ) - входящие (исходящие) потоки ]-го узла. Ограничения по загрузке узлов:
(6) Гк1 <Е х, < L+, У е К , Г = 1,2,...,Т,
/еЗ+
где Lki, Lkt+ - пределы загрузки ]-го узла Х-м периоде.
К этим общим для сетевой модели ограничениям добавляются связи, специфические для нефтеперерабатывающего производства. Таковыми, например, являются уравнения топливного баланса:
(7) Е в + х]( -Е^ Е х, = 0, X = 1,2,...,Т,
/еЗ+ ]еК /еЗк
где Зч - множество потоков, поступающих на вход топливного блока; в/ - теплотворность продукта /-го потока; в]- - удельный расход тепла в ]-м узле.
Кроме того, в модель должны быть включены соотношения для контроля общеэкономических показателей (прибыль, рентабельность) и показателей, специфических для нефтепереработки (выход светлых, глубина переработки нефти). Все эти показатели можно представить линейными функциями интенсивностей потоков и ввести в систему ограничений в виде уравнений или неравенств, а один из них, например, прибыль - как целевую функцию.
Прибыль через переменные задачи выражается следующим образом:
т ( Л
П = 0-5-с = е Ес Ех, -
t=1 у г'е1 /еЗ^ J
(
Е Ес- Ех и + Еяу Е х,х + Е°
- с
у-е1 /ез- ]ек зезк -е1
где © - стоимость товарной продукции; 5 - переменные затраты; С - условно-постоянные затраты; с/ - цена /-го продукта;
/
Ос - удельные затраты, связанные с загрузкой С-го узла (стоимость топлива, электроэнергии, расходных ингредиентов); и1 - прямые и косвенные затраты, связанные с единицей запаса /-го продукта. Отбрасывая постоянную величину С (переходя тем самым от прибыли к покрытию) и осуществляя простейшие преобразования, получаем:
Т
(8) ЕЕРпхп ^та^
X=1 /еЗ
где Ра - удельное покрытие/-го потока в Х-м периоде.
В описанной выше сетевой потоковой модели установки и смесевые пулы представлены «пустыми» узлами, для которых определены лишь балансы и потенциалы (ограничения по загрузке). Рассмотрим теперь возможные подходы к моделированию представляемых ими технологических процессов.
3. Типовые модели процессов
Установки и смесевые пулы могут быть введены в модель двумя способами: либо прямо, в виде соответствующих блоков переменных и ограничений; либо в виде агрегатов автономных моделей. В последнем случае узлы сети представляются коэффициентами затрат и выпуска и являются переменными параметрами.
Во многих случаях установки и смесевые пулы целесообразно рассматривать упрощенно, как типовые разделительные и смесительные элементы. Если исходить из такого подхода, то в качестве моделей можно предложить унифицированные блоки, непосредственно интегрируемые в сетевую потоковую модель.
Установка С е и может быть описана как элемент преобразования некоторого множества входных потоков в выходные. Она представляется конечным множеством Rk технологических режимов с коэффициентами затрат/выпуска, задаваемых в общем случае интервально: аг е [аг— аг+], г е Rk. Вводятся дополнительные переменные {х/гЬ г е Rk}, где Х]П - интенсивность /-го потока для режима г на временном отрезке X. Для связи этих переменных с переменными основной группы вводятся балансовые уравнения
технологическими процессами
(9) хл - Е х^ =0, і є ^ 1-,
>є_й-
и для каждого г е Rk вводится блок
Е а-гхг ^0, *є ,
іЄІ/+
Е «і-і ^0, г'є 1-+, (10) і -
Е а-гхп + Е еУ-х^ ^0, г'є 1-,
іЄІ/+ іЄІ-
іЄІ-
Е «і-хі>* + Е еіхін ^0, г'є 1-,
_і&1і іЄІ-
іЄІ-
В этом случае режим работы установки определяется как выпуклая линейная комбинация ее базовых технологических режимов.
Аналогично можно описать смесительную операцию. Смешением получают бензины, дизельные топлива, мазуты. Смесе-вой пул С е S можно рассматривать как узел с несколькими входящими потоками (компонентами смешения) и одним исходящим - продуктом смешения.
На пропорции компонентов смешения могут быть наложены прямые интервальные ограничения. Тогда пулу соответствует столбец ас = (а/ / е Зу+ и Зу-), где ащ е [а^, ау+], / е Зу+ и ау/ = 1 для выходного продукта.
На пропорции компонентов в смеси влияют также требования по качеству продукта. Контролируемыми параметрами при получении, например, товарных бензинов являются: плотность смеси, содержание серы, фракционный состав, октановое число, упругость паров и другие. Несмотря на разнообразие условий спецификации, большинство из них могут быть представлены следующим образом:
где Qk - множество параметров качества для С-го смесевого пула (продукта смешения); р/ - значение /-го параметра/-го компонента; рч, рд+ - нижняя и верхняя границы параметра для продукта; Др) - индекс параметра; р0]- - базовый параметр.
Индексные преобразования необходимы не для всех, а лишь для некоторых параметров, и осуществляются с целью обеспечения аддитивности модели смешения по этим параметрам. Расчет происходит по индексам, а результат реиндексиру-ется. Примеры некоторых индексных преобразований (прямых и обратных) представлены в таблице 1.
Таблица 1. Индексные преобразования параметров
Показатели Индексные функции
Вязкость, V I: -(41,11 - 49,08 ^(^(У + 0,8))) I-1: 10Л(10Л((41,11 + IV) / 49,08)) - 0,8
Температура вспышки, Тв I: -10Л(42,1 + lg((TB + 460)Л-14,3)) I-1: 10Л((42,1 - lg(IвT)) / 14,3) - 460
Температура помутнения, Тп I: (0,0026415 (Тп + 460))Л20 I-1: (!П:г)Л0,05 / 0,0026415 - 460
Температура застывания, Тз I: ЕЛ-73,09 (Тз + 460)Л12,89 I-1: ЕЛ((73,09 + ln(IЗг)) / 12,89) - 460
Приводя ограничения к стандартному виду, при котором все переменные находятся в левой части, для каждого С е S и X = 1, 2, ..., Т получим:
(12)
іхі - °, ‘ с 1-
іі
Е аіхи -0,1 є ,
і
Е Рщхи -0 чєQ-,
І^і
Е Р+х* -0, ч є Q-,
ІЄІ+
где ={'-"*•'=а; ={-1■'=р„ =I^1 ^,
[ - ^, 1 * Л [ -а/, 1 * 3, РоЯ
я+ = I(РЯ] )- (р; )
* РоЧ '
Обычно качественные параметры компонентов смешения представляют собой некоторые усредненные константы. Однако в некоторых случаях необходимо, чтобы наряду с вариантами получения товарных смесей была выдана рекомендация относительно некоторых параметров компонентов смешения. Это можно сделать методом, описанным в работе [4].
Предложенные унифицированные блоки применимы для моделирования широкого спектра комплексов, включающих операции преобразования, разделения и смешения потоков нефтепродуктов. Построенную на основе этих блоков модель будем рассматривать как базовую.
4. Автономные модели процессов
В описанной выше базовой модели технологические процессы так таковые не отражены. Каждый узел представлен унифицированным блоком, который определяет режим «затраты-выпуск» как выпуклую линейную комбинацию базовых технологий. Возможен другой подход [2]. Узлы представляются коэффициентами затрат/выпуска а^ = (а/ / е Jk+ и Jk-) и соответственно этому в систему для узла С е К и X = 1, 2, ..., Т вводится блок
(13)
Е ал = 0 1 е '1С,
зеJ;
Е атхп; Е ецхп = 0 1 е ^
З^к JеJk
I1 - аш, 1 = /, [I 1 = 3-
где ат = { . . =
аш
* ' - аш, 1 * /, У I0, 1 */.
Коэффициенты расширенного, т.е. включающего коэффициенты целевой функции, столбца аы = (^, аы) в этом случае
являются переменными величинами. Каждый раз при получении условно-оптимального решения основной задачи фиксируются характеризующие его (это решение) симплексные мультипликаторы п-( = (п-й, і є 3-+ и 3-), которые используются для расчета обновленных значений аИ путем решения автономной задачи, которую в общем виде можно сформулировать следующим образом.
Пусть режим работы установки определяется вектором управления и- є Л- и известны 0- = Л- (и-), а- = F-(u-), где Л- - скалярная функция, определяющая собственный целевой результат; F- - векторная функция, определяющая затраты/выпуск продуктов. Тогда новые значения параметров, представляющих установку, есть д-{ = Л- (иы), аы = її- (и*), где
(14) % = а^тт{^- (% \л-()-Л- (и-( | и-( єЛ - }.
%
Выбор установкой собственной технологии по модели (14) есть не что иное, как процедура генерирования наилучшего столбца для текущего базиса основной задачи. Это обстоятельство как раз и гарантирует монотонную сходимость алгоритма.
В качестве примера рассмотрим первичную переработку нефти в атмосферно-вакуумной трубчатой установке (АВТ). В этой установке происходит разделение нефти на ряд целевых продуктов - бензин, керосин, дизельное топливо, мазут. На показатели качества каждого продукта наложены ограничения. В пределах этих ограничений распределение фракций (иначе говоря, температурных границ) между целевыми продуктами неоднозначно. Среди возможных решений можно выбрать такое, которое максимизирует некоторый технико-экономический критерий.
Задача интересна как сама по себе, так и в контексте оптимизации системы в целом. Предпринимались попытки со многими натяжками и допущениями решить ее как задачу линейного программирования [1]. И таким образом вынужденно осуществлялся методологически неверный принцип - подгонка задачи под метод. Здесь же сформулирована задача «о точках на прямой», решаемая методом динамического программирования. Это дает возможность учесть все особенности задачи: состав
нефти, нелинейность и так называемый эффект нечеткого разделения (наложения) фракций [3].
Состав нефти предполагается известным в виде суммарной характеристики, называемой кривой истинных температур кипения (ИТК), показывающий зависимость между температурой и процентом отгоняемой массы. Эта кривая представлена в виде нарезки узких фракций с температурами выкипания [4 ^ + Д^], 1 = 1, 2, ., L, где L - число узких фракций.
При разделении смеси необходимо учитывать материальный баланс, спецификацию целевых продуктов, эффект наложения фракций. Проблема, как уже говорилось выше, сводится к задаче «о точках на прямой». Точками здесь являются температурные границы целевых продуктов или, точнее говоря, номера узких фракций, по которым осуществляется разделение. Математическая постановка задачи:
(15) тах[ ЕЛ (хп , хп;1 ) 0 = Х0 ^ х1 ^ ... ^ ХЫ =^
х [п=0
где N - число целевых продуктов; хп - начальная фракция п-го целевого продукта; /п (хп, хп+\) - свертка векторного критерия, характеризующего целевой продукт с точки зрения ценности и соответствия спецификации.
Свертка векторного критерия состоит из двух составляющих. Первая учитывает ценность соответствующего целевого продукта; вторая - степень его соответствия спецификации:
(16) Л (хп , Хп;1 ) = ”пёп (хп , Хп;1 ) - Рп¥п (хп , Хп;1 ) ,
где пп - реальная цена или оценка продукта (в последнем случае информация поступает из модели верхнего уровня); §п - масса продукта в процентах к массе нефти; у/п - штрафная составляющая; (5п - коэффициент свертки, с помощью которого задается соотношение между составляющими критерия.
Пусть gi - массовая доля 1-й узкой фракции в нефти, тогда
. . хп;1
(17) gn (хп , хп;1 )= Е g, .
1=хп
Штрафная составляющая вводится для обеспечения показателей качества продуктов. Она представляет собой взвешенную сумму квадратов относительных отклонений (в нижнюю или
верхнюю сторону) расчетных значений показателей от заданных:
к
(18) ¥п (хп, х„+1 )=Е$а5а (хп, х«+1), к=1
где К - число показателей качества; Е,пк - экспертная оценка приоритета показателя; 5пк - относительное отклонение расчетного значения показателя от допустимых пределов.
-Рпк )/РПк , еСЛиРпк > Р+А ,
..... ■Рпк у Ра , еслиРпк < Ра ,
0, если Рпк е [Рпк, Ра ],
(19) ^пк (хп , хп+1 ) =
где Р„к, Рпк - нижний и верхний допустимые переделы показателя; Рпк = Рпк(хп, хп+1) - расчетное значение показателя. В общем случае значения показателей, соответствующих тем или иным вариантам разделения, можно рассчитать по формуле
(20) Рпк (хп , Хп+1 ) = Л1 (Р1пк (хп , Хп+1 )),
где Рпк(хп, хп+1) - индекс показателя, определяемый через индексы соответствующего показателя объединяемых продуктом узких фракций по формуле
I / \ хп+1 I 1
(21) Рпк (хп , хп+1 )= ЕРгкёгёп ,
г=х„
где ргк = 1к(ргк) - индекс показателя ргк узкой фракции;
I, I-1 - прямая и обратная индексные функции.
Формулы (17) и (21), однако, не учитывают, что разделение нефти на целевые продукты происходит нечетко, т.е. в каждый продукт попадают фракции из смежных разделов. Для учета этого эффекта будем исходить из предположения, что каждый продукт формируется из всего спектра узких фракций, взятых с некоторыми весовыми коэффициентами:
хп+/ L ^
(22) ёп = Е Е ^ё]
'Л]=1
( L
хп+1
(23) Рпк = Е Е р]кё]
г=х„\]=1
к = 1,2,... К,
где [М] - весовой коэффициент, зависящий от расстояния |г - ]| между фракциями.
В качестве рабочей гипотезы примем, что весовой коэффициент убывает в геометрической прогрессии от |г - ]|. Тогда из условия, что сумма членов прогрессии равна единице, получается:
(24) =
0, если | г — ] | > т,
1 — Я I I
—г---------\ . .., если | г — ] | < т,
2(1 — ят )я|г—]|
где я - знаменатель прогрессии; т - число членов прогрессии, равное предельному расстоянию d для всех фракций, кроме крайних (начальных и конечных), для которых
...ч Г г, если г < d, ]<г,
(25) т =
— г, если г > L — d, ] > г.
Значения параметров d и я определялись в экспериментальных расчетах методом Нелдера-Мида по критерию
N К ( Р ____ Р ^
(26) Q = ЕЕ р пк ^ тп,
п=1 к=1 у Рпк у
где Q - сумма квадратов относительных отклонений экспериментальных Р значений показателей качества целевых продуктов от прогнозных Р.
Для решения задачи (15) использован метод динамического программирования. Задача представлена как ^шаговый процесс принятия решений. Под состоянием процесса перед п-м шагом понимается начальная фракция текущего целевого продукта: ^п-1 = хп-1; под управлением - число включаемых в текущий продукт узких фракций: ип = хп - хп-1. Оператор перехода в новое состояние есть Sn = р^^, ип) = хп-1 + ип = хп. Функция шагового результата /п ^п-1, ип) = /п (хп-1, хп). Рекуррентное уравнение Беллмана в данном случае выглядит так:
(27) Рп—1 (хп—1 ) = тах!/п (хп_1 , хп )а Рп (хп )} п = 1,2, ... N,
где Р - функция состояния, Рп(хп) = 0.
Алгоритм:
1. В области допустимых вариаций температурных границ строится сетевой направленный граф. Строится так, что мно-
жество его путей соответствует множеству допустимых решений задачи. Узлы группируются по уровням, соответствующим шагам процесса, и образуют множества Х0,Х1, ...,Х^ причем множества Х0 и XN содержат по одному узлу.
2. Рассчитываются функции шаговых результатов (длины дуг образовавшегося сетевого графа). Расчет каждой дуги осуществляется по формуле (16) с учетом эффекта наложения фракций, т.е. с использованием формул (18), (19), (20), (22), (23). Следует отметить, что длины дуг будут зависеть от текущих оценок целевых продуктов п
3. Движемся от конца к началу: п = N - 1, N - 2, ..., 0. На каждом шаге для всех хп е Хп решаем задачу (27), в результате чего находим условно-оптимальное управление ип (хп) и потенциал Рп(хп).
4. Получаем решение х = (х1,х2,...ХN ), определяя каждую следующую оптимальную точку через предыдущую, т.е. по цепочке:
(28) х1 = и,(0)^ х2 = и(х1 )^ ... ^ ХN = UN—l(х^ 1).
5. Вычисляем значения температурных точек разделения и коэффициенты отборов целевых продуктов:
,Г L ^
(29) Тп = (Х„ , ап (^)= ёп = £ £ Муё
г=Хп
ЦЬ 3
V 3=1
п = 1,2,...N .
Это как раз те коэффициенты, которые будут использованы для формирования блока (13), представляющего установку на очередном шаге расчетов.
Рассмотренный пример показывает возможность создавать автономные модели отдельных процессов, используя в каждом случае наиболее подходящий математический аппарат. Эти модели, какова бы ни была их формально-математическая сущность, легко интегрируются в базовую модель через описанный механизм.
Следует заметить к тому же, что включение автономных моделей в базовую довольно просто реализуется технически. Они представляются модулями классов и оформляются в виде подключаемых ^/-компонентов, которые, как известно, можно
создавать и модифицировать без перекомпиляции вызывающего приложения.
5. Несовместность и многокритериальность
Практика показывает, что задачи оптимизации почти всегда многокритериальны. Во-первых, потому что результат функционирования системы оценивается, как правило, не одним, а совокупностью технико-экономических показателей; а во-вторых и в основном, потому что условия (ограничения, требования), задаваемые пользователем, чаще всего по разным причинам противоречивы. Поэтому задача должна быть изначально сформулирована как задача поиска компромисса между различными показателями.
Если задачу (1)-(12) представить в обобщенной канонической форме и вектор b рассматривать не как правую часть ограничений, а как набор целевых показателей, заранее имея в виду, что все вместе они могут быть недостижимы, то описанную выше задачу следуют модифицировать следующим образом:
(с, x) - цф(б) ^ max,
(30) U = W-1 (Ax - b),
t x > 0,
где S - вектор взвешенных относительных отклонений расчетных значений показателей от заданных; Ф(^ - штраф за отклонение; /и - число, достаточно большое для того, чтобы обеспечить приоритет достижения целевых уровней показателей над максимизацией изначальной целевой функции;
W = (E b) G_1, G - диагональная матрица, элементами который являются веса, суть экспертные оценки важности соответствующих показателей.
Если целевые уровни показателей достижимы, т.е. если {x | S(x) = 0, x > 0} Ф 0, то решение задачи определяется изначальным критерием. В противном случае доминирует штрафная составляющая, в качестве которой берется некоторая норма вектора S Например, это может быть гёльдерова норма второго порядка, Ф(^ = || S ||2. В этом случае мы в итоге получим квад-
ратичную задачу. Однако с технической точки зрения от квадратичной задачи лучше перейти к линейной. Это возможно, если норму второго порядка заменить линейной комбинацией норм порядков р = 1 и р = да;
(31) ф(8,а) = «||£||1 +(1 - а)||8||ш ,
где а є [0, 1] - параметр; || 8||1 - сумма абсолютных значений координат вектора; || 8 ||да - максимальное из абсолютных значений координат вектора, так называемая sup-норма. Критерий
(31) легко вводится в линейную задачу;
(с,х)- и а (і, (8~ + 8+))+ (1 -а )8*]^ тах,
'Ах + W8“ - Ж8+ = Ь,
Е8~ -18* < 0,
Е8+ -18* < 0,
х, 8- 8+, 8* > 0,
где 8 (8+) - вектор взвешенных относительных отклонений вниз (вверх) расчетных значений показателей от заданных; I - вектор единиц; 8* = || 8 ||ш.
Описанный способ задания ограничений касается в общем случае не только технико-экономических показателей, но также технологических и «естественных» ограничений. Например, ограничения (6) по загрузке узлов в модифицированном варианте модели выглядят так;
(32)
+
(33) < Е хп + Ц^8_ — %8+ < , к е К, X = 1,2,...,Г ,
JеJuk ёк ёк
где ёк (ёк) - веса для отклонений ниже (выше) нижнего (верхнего) пределов загрузки узла; 8к1 (8к+) - взвешенное относи-
тельное отклонение ниже (выше) нижнего (верхнего) предела, связанное с 8 соотношением 8к- - 8 < 0 (8кХ+ - 8 < 0).
Всю совокупность условий, ограничений, показателей можно разделить на группы, подгруппы и т.д. Получается иерархическая структура, представляемая древовидным графом, листья которого есть координаты вектора 8, а узлы А - свертки критериев нижних уровней. Например, условия (12) модифицируем следующим образом:
Е а-х}і > ° г'є Л+,
jєJ+
Е аІіхл <0,1 є^,
jєJ^
I (р.-)
Е Ал + 8- >0, я є 6*,
■/є<^"к 6 -
Е АЯ-х;ї - <0, - є е*,
■/є<^к
8^-( - 8* < 0, 8-+ -8** < 0, я є 6*,
и формируем критерий качества соответствующего продукта как степень соответствия спецификации, т.е. как функцию взвешенных относительных отклонений показателей качества от заданных уровней:
а/(і) Е 8 + 8я+ )+ (1 - а<к]> 8
яє(2к
Далее эти оценки используем для формирования критерия следующего уровня, т.е. для всего блока смешения на всем периоде моделирования:
(2)
/2)
lS
а' ЕЕЛ<
(1)
Д2) л*0)
(36) л(52) = и!
кєИ=1
при условии, что Л*/1-1 - Л!*(1) < 0, к є !, ґ = 1, 2, ..., Т.
Свертку (31) можно рассматривать как инвариант обобщенного иерархического критерия, узел которого есть
(37) Л = и ф(а^ , Л'-,1, Л^2, ...), Л0 = 8 ,
V / v,n г*у, п \ V, п п,1 ’ п,2’ /’ ’
где Л^ п есть п-й критерий I -го уровня, участвующий в образовании V -го критерия (I +1) -го уровня; и'п, а1уп - регулируемые параметры.
Описанный подход позволяет свести формирование свертки векторного критерия к настройке регулируемых параметров каким-либо более или менее формализованным методом.
6. Заключение
Разработана унифицированная многокритериальная динамическая модель нефтеперерабатывающего производства, построенная на основе типовых блоков смесительно-разделительных операций, которые при необходимости могут быть заменены автономными, оригинальными моделями, интегрируемыми в базовую модель с помощью специального интерфейса.
Модель положена в основу развиваемого автором проекта СМОННП (система моделирования и оптимизации нефтеперерабатывающих и нефтехимических производств) [6]. Этот проект представляет собой набор классов, которые следует рассматривать как своего рода шаблоны для построения программных моделей означенных типов бизнес-процессов.
Программа сконструирована так, что может быть использована как сама по себе (под собственной оболочкой), так и в составе систем более высокого уровня. Основным, наиболее востребованным приложением является текущее и оперативное планирование. Номинальная задача - расчет оптимального производственного плана и соответствующего ему общего материального баланса предприятия.
В статье [5] описано использование программных компонентов системы в контуре алгоритма расчета производственносбытового цикла нефтяной компании. Исследуется влияние сезонного колебания спроса на объемы производства и уровень запасов нефтепродуктов.
Еще одно востребованное направление использования программы - анализ технологических вариантов и инвестиционное проектирование. Автором совместно с институтом ОАО «Сама-ранефтехимпроект» разработана методика применения программы на стадии обоснования проектов модернизации существующих и проектирования новых предприятий [7].
Литература
1. ДУДНИКОВ ЕЕ., ЦОДИКОВ Ю.М. Типовые задачи оперативного управления непрерывным производством. - М.: Энергия, 1979. - 272 с.
2. ЛЭСДОН Л.С. Оптимизация больших систем. - М.: Наука, 1975. - 429 с.
3. СИЗИКОВ А.П. Методика расчета температур разделения нефти на целевые продукты на основе свойств узких фракций // Вестник Самарского государственного технического университета. - 2011. - №2(30) - С. 230-235.
4. СИЗИКОВ А.П. Об одном методе решения задач линейного программирования с переменными коэффициентами матрицы условий // Экономика и математические методы. -2002. - Т. 38., №3 - С. 126-128.
5. СИЗИКОВ А.П. Оптимизация производственно-сбытовой программы нефтяной компании // Вестник Самарского государственного экономического университета. - 2011. -№7(81) - С. 80-83.
6. СИЗИКОВ А.П. Программный продукт СМОННП (система оптимизации нефтеперерабатывающих и нефтехимических производств) // Управление большими системами -2009. - №24. - С. 298-326.
7. СИЗИКОВ А.П. Программный продукт СМОННП как инструмент проектирования и модернизации нефтеперерабатывающих предприятий // Труды седьмой Всероссийской межвузовской научно-практической конференции «Компьютерные технологии в науке, практике и образовании». -Самара, 2008 - С. 312-315.
DEVELOPMENT OF OBJECT-ORIENTED OPTIMIZATION SYSTEMS (ON THE EXAMPLE OF OIL REFINERY)
Alexander Sizikov, Samara State University of Economics, assistant professor ([email protected])
Abstract: We present a unified model of oil-refining process built on the basis of standard models of mixing and separating operations. If necessary, one can replace these standard models with custom models, which can be embedded into the basic model by a certain way. The problems of inconsistency and multi-criteriality are discussed, an invariant is proposed for the generalized hierarchical criteria.
Keywords: refinery production, optimization system, unified model, multi-criteriality.
Статья представлена к публикации членом редакционной коллегии М. В. Губко