Научная статья на тему 'Применение метода ветвей и границ для оптимального выбора аппаратурного оформления химико-технологических систем'

Применение метода ветвей и границ для оптимального выбора аппаратурного оформления химико-технологических систем Текст научной статьи по специальности «Математика»

CC BY
207
38
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ОПТИМАЛЬНЫЙ РАСЧЕТ / ОСНОВНОЕ ТЕХНОЛОГИЧЕСКОЕ ОБОРУДОВАНИЕ / МНОГОАССОРТИМЕНТНЫЕ ХИМИКО-ТЕХНОЛОГИЧЕСКИЕ СИСТЕМЫ / МЕТОД ВЕТВЕЙ И ГРАНИЦ / OPTIMAL DESIGN / PROCESS EQUIPMENT DESIGN / MULTI-PRODUCT BATCH PLANTS / CHEMICAL-ENGINEERING SYSTEM / BRANCH-AND-BOUND METHOD

Аннотация научной статьи по математике, автор научной работы — Борисенко Андрей Борисович, Карпушкин Сергей Викторович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Борисенко Андрей Борисович, Карпушкин Сергей Викторович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Application of Branch-and-Bound Method for Optimal Selection of Process Equipment of Chemical-Engineering Systems

In this paper we address an algorithm based on the branch-and-bound method for optimal selection of process equipment in chemical-engineering systems. The performance of separated fragments of this algorithm has studied, whereby optimization of it has carried out. Analysis of both original and modified versions of the algorithm is presented.

Текст научной работы на тему «Применение метода ветвей и границ для оптимального выбора аппаратурного оформления химико-технологических систем»

Вычислительные технологии

Том 17, № 1, 2012

Применение метода ветвей и границ для оптимального выбора аппаратурного оформления химико-технологических систем*

А. Б. Борисенко, С. В. Карпушкин

Тамбовский государственный технический университет, Россия e-mail: borisenko@mail. gaps . tstu. ru, karp@mail. gaps . tstu. ru

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

Ключевые слова: оптимальный расчет, основное технологическое оборудование, многоассортиментные химико-технологические системы, метод ветвей и границ.

Введение

Выбор аппаратурного оформления (АО) химико-технологических систем (ХТС) — одна из основных задач, возникающих при проектировании многоассортиментных химических производств (МХП), К особенностям таких производств относятся сравнительно невысокие объемы производства, высокие цены на производимые продукты, широкий ассортимент выпускаемой продукции, возможность быстрого перехода выпуска с одного продукта на другой (высокая гибкость), большое число технологических стадий производства, функционирование оборудования в периодическом или полунепрерывном режиме и т. п. Примеры ХТС — производства химических реактивов, фармацевтических препаратов, красителей и полупродуктов, пищевые производства [1] и др.

Решением этой задачи является работоспособный вариант аппаратурного оформления ХТС — число основных аппаратов каждой стадии системы и определяющий размер (рабочий объем или площадь рабочей поверхности) каждого аппарата, а также параметры режима функционирования (размеры партий продуктов и периоды их выпуска), обеспечивающие заданную производительность системы по продуктам. Определяющий размер обычно выбирается из ряда его стандартных значений. Из множества возможных вариантов требуется найти оптимальную комбинацию числа и определяющих размеров аппаратов стадий ХТС и параметров режима функционирования системы. Критерием оптимальности могут быть, например, суммарные капитальные затраты на оборудование [2,3]. Результаты решения данной задачи во многом определяют качество проектных решений по компоновке оборудования и календарному планированию выпуска продукции. В литературе предложены различные подходы, например, методы

*Работа выполнена в рамках государственного контракта № 02.740.11.0624 Федеральной целевой программы "Научные и научно-педагогические кадры инновационной России на 2009^2013 годы".

Монте-Карло, генетические алгоритмы, эвристические методы, сведение исходной задачи к задаче нелинейного либо линейного программирования, позволяющие, однако, получить лишь субоптимальные решения [4-8],

Рассматриваемая задача относится к классу задач частично-целочисленного нелинейного программирования (Mixed Integer Nonlinear Programming — MINLP) [4,5], Для каждого работоспособного варианта АО ХТС параметры режима функционирования системы определяются однозначно, т, е, поиск оптимального варианта можно рассматривать как задачу дискретной оптимизации.

Применение полного перебора вариантов для получения глобального оптимального решения затруднительно из-за большой размерности задачи. Например, в работе [7] представлена ХТС, состоящая из 16 аппаратурных стадий. На каждой стадии могут быть установлены 5-12 типоразмеров стандартного оборудования. Если допустить, что на каждой стадии будет установлен только один аппарат, то полное количество вариантов перебора составит 516-1216 (т. е. примерно 1011-1017),

В настоящей работе предлагается алгоритм решения задачи выбора аппаратурного оформления ХТС МХП, основанный на методе ветвей границ [9], рассматриваются подходы к его оптимизации и исследуются возможности применения для поиска оптимального решения.

Ветви и границы — один из популярных методов, используемых для решения оптимизационных задач в различных областях, например, таких как комбинаторная оптимизация, искусственный интеллект и т, д, В основе метода лежит идея последовательного разбиения множества допустимых решений на подмножества [10], Затем определяется нижняя оценка для целевой функции на данном подмножестве. Если последняя окажется не меньше наилучшего из найденных решений, то подмножество отбрасывается до тех пор, пока не будет получено одно конкретное решение.

Подобный подход для решения задачи выбора аппаратурного оформления ХТС предлагался в работе [11], в которой авторы использовали упрощенную математическую модель функционирования ХТС, эвристический подход для вычисления оценочной функции и рассматривали в качестве тестовых задачи небольшой размерности, поскольку вычислительные возможности на момент написания этой работы (1975 г.) были весьма ограничены. Вместе с тем несмотря на существенные успехи вычислительной техники, до настоящего времени другие алгоритмы, основанные на методе ветвей и границ, для решения представленной задачи в литературе не рассматривались,

1. Постановка задачи

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

ХТС представляет собой последовательность I аппаратурных стадий. Каждая i-я стадия может быть оборудована основным аппаратом, выбранным из некоторого конечного множества X¿, количество элементов которого равно J¿, Множество Xi включает все возможные варианты определяющих размеров аппаратов стадии i: Xi = {xi,j},

i = 1, I, j = 1, Ji, где Xíj — определяющий размер (рабочий объем, площадь рабочей

поверхности) j-ro аппарата, которым может быть оборудована i-я стадия ХТС,

_ /

Каждый вариант АО ХТС I,. < 1. /•.'. где Е = \ ] ./. упорядоченная совокупность

i=1

определяющих размеров аппаратов, выбранных из соответствующих множеств. Например, существует ХТС, состоящая из трех стадий (/ = 3), Первая стадия может быть оборудована аппаратом, определяющий размер которого выбирается из двух вариантов, т.е. J1 = 2, X1 = {xi,i,xi,2}, вторая стадия — соответственно из трех вариантов, т.е. J2 = 3, X2 = {x2,1,x2,2,x2,3}, и третья — го двух вариантов, т.е. J3 = 2, X3 = {х3д,х3,2}. Общее количество всех возможных вариантов АО ХТС E = J1 ■ J2 ■ J3 = 2 ■ 3 ■ 2=12,

Порядок переработки партий продуктов основными аппаратами стадий ХТС фиксирован (заранее определен при разработке структуры ее материальных потоков). Так, например, варианты {x1,1,x2,1,x3,2} {x1,2,x2,1,x3,1} могут быть допустимыми, а варианты {x3,1,x2,1,x1,2} {x2,2,x3,1,x1,1} — явно недопустимы.

Для каждого работоспособного варианта АО ХТС должны выполняться условия совместного функционирования оборудования различных стадий системы S (Пе) = 0 (■ограничение на работоспособность ХТС). Кроме того, работоспособный вариант АО ХТС должен обеспечивать выпуск продукции заданных ассортимента и объема за фиксированный промежуток времени, т. е, T(Qe) < Tmax (ограничение на, длительность функционирования ХТС), где Tmax — заданное максимальное время выпуска продукции. Таким образом, задачу выбора аппаратурного оформления химико-технологической системы можно сформулировать следующим образом: необходимо найти такой вариант . - = 1. /•.'. АО ХТС, при котором критерий оптимальности — капитальные затраты Cost(П*) — достигает минимума и выполняются ограничения на работоспособность и длительность функционирования ХТС:

П* = arg min Cost (Пе), е = (1)

flee{x1Jl,x2j2,...,xIJl\ji = l,Ji,i=l,I}, e = l,E, (2)

XíjEXí, i =1,1, j = l,Jí, (3)

S{Sle) = 0, e = Т7Ё, (4)

m)<7max, (5)

Подробно математическая модель функционирования ХТС, включающая выражения для проверки ограничений, вычисления критерия оптимизации и т, д., представлена в [12].

2. Алгоритм решения задачи

Все множество вариантов АО ХТС, состоящей из I стадий, можно представить в виде дерева, состоящего из I ярусов (рис, 1), каждый ярус которого соответствует одной стадии ХТС, каждое ребро — одному выбранному элементу множества Xi = {xi,j}, г = 1,1, j = 1, Ji. Например, ребра, исходящие из корневой вершины (нулевой ярус),

X1

_ _ i

Каждый узел щ к яруса iV¿ = {щ i, щ 2,..., щ к}, г = 1,1, к = 1, Ki, Кг = П Ji-, соот-

1=1

вететвует варианту фрагмента ХТС, состоящего из 1, 2,..., i стадий (т. е, из i начальных стадий). Каждый полный путь от корня дерева к одному из его листьев (конечному

Рис. 1. Обход дерева вариантов в глубину

1 2

3

4

узлу) представляет собой вариант АО ХТС, Перебор вариантов аппаратурного оформления проводится с использованием обхода дерева в глубину |13,14|, На каждом ярусе дерева осуществляется перебор определяющих размеров аппаратов, доступных дня оборудования данной стадии. Выбранный размер добавляется к начальному фрагменту АО ХТС, найденному па предыдущих ярусах дерева. Процесс продолжается рекурсивно дня всех работоспособных начальных фрагментов АО системы. Таким образом, па последнем ярусе получается полный работоспособный вариант АО ХТС, рекурсивный процесс останавливается, данный вариант сравнивается с текущим оптимальным и, если оказывается лучшим, то заменяет его.

На полный обход дерева вариантов с фиксацией па каждой стадии ХТС размера аппарата, выбранного из ряда его стандартных размеров, соответствующего этой стадии, и дальнейшую проверку ограничений (4) и (5) требуются значительные вычислительные затраты. Дня сокращения числа перебираемых вариантов применяется алгоритм, основанный па методе ветвей и границ, псевдокод которого представлен ниже (имена большинства переменных соответствуют именам, используемым в постановке задачи):

FindSolution () { EnumerateVariants (0); > /* рекурсивный обход дерева */ EnumerateVariants(i) { if (i < I) {

for (j = 1; j <= J[i]; j++) {

/* создание начального фрагмента ХТС (стадии 1 - l,2,...,i) */

7 иш = Х[1, Л ;

8 /* проверка работоспособности начального фрагмента ХТС */

9 И (РагаБСЫ) == 0) {

10 /* рекурсивный поиск */

11 Епитега1е¥аг1ап1з (Ч + 1); } } }

12 е1Бе { /* достигнут конечный узел дерева */

13 /* проверка ограничения (5) на длительность функц-ния ХТС */

14 И (Т(Н) <= Ттах) {

15 /* проверка критерия оптимизации */

16 if (СозиСУ) < пипСозО {

17 /* сохранение нового оптимального решения */

18 = V;

19 тз.пСоз1 = СоБ1(Уор1); > > >

20 }

Обход дерева вариантов начинается с вызова процедуры EnumerateVariants па нулевом ярусе (строка 1), Эта процедура вызывается рекурсивно вплоть до яруса I1 (строка 4), Текущий оптимальный вариант ХТС сохраняется в векторе Wopt с числом элементов I, каждый из которых храпит выбранный определяющий размер аппарата дня каждой стадии. Рабочий вариант ХТС хранится в аналогичном векторе W,

Дня сокращения числа перебираемых вариантов в оригинальном варианте алгоритма применялась следующая схема. На каждом ярусе i дерева проверяется ограничение (4) (процедура Parts О, строка 9) условия совместного функционирования оборудования ХТС, по не дня всей системы, а только ее начального фрагмента, состоящего из уже пройденных вышележащих ярусов и текущего фрагмента, содержащего 1, 2,... ,i стадий. Если часть схемы уже неработоспособна, то пет смысла перебирать аппараты па нижележащих ярусах. Переход па следующий уровень рекурсии (вызов процедуры EnumerateVariants() на уровне i + 1, строка 11) осуществляется лишь в том случае,

1, 2, . . . , i

происходит возврат па предыдущий ярус дерева.

При достижении конечного узла дерева (i == I, строка 12) (т. е. рассматриваемый вариант АО ХТС работоспособен) проверяется ограничение (5) на длительность функционирования ХТС (процедура Т(), строка 14), Если ограничение (5) выполняется, то найден новый допустимый вариант ХТС и далее его стоимость (результат выполнения процедуры Cost О) сравнивается со стоимостью текущего наилучшего варианта ХТС minCost (строка 16), При получении лучшего решения последнее заменяет текущее оптимальное решение Wopt (строка 18), а его стоимость сохраняется в переменной minCost (строка 19), Инициализация переменной minCost осуществляется как сумма максимальных стоимостей аппаратов каждой стадии,

3. Результаты экспериментов и оптимизация алгоритма

Дня проведения численных экспериментов разработана программа па языке программирования С--, реализующая представленный выше алгоритм. В качестве тестового

примера использовался расчет аппаратурного оформления дня ХТС, состоящей из 16 аппаратурных стадий (рис, 2), дня каждой из которых доступны пять стандартных типоразмеров оборудования. Система в течение 7400 ч должна обеспечить объем производства трех видов красителей, составляющий соответственно 2250, 100 и 50 т.

106 Приготовление 108 Очистное 125 Приготовление

г „ , 127 Растворение „

азососгавляющеи фильтрование азосоставляющеи

Рис. 2. Тестовый пример химике-технологи ческой системы

Эксперименты проводились па компьютере следующей конфигурации: процессор Intel Pentium 4 с тактовой частотой 3000 МГц, объем оперативной памяти 2048 Мб, операционная система Scientific Linux 5.3. Для компиляции программы использовался GCC 4.1.2. Результат решения задачи выбора АО дня тестовой ХТС представлен в табл. 1.

Дня выявления наиболее "узких" мест алгоритма были проведены оценки времен выполнения отдельных его элементов, приведенные в табл. 2. Видно, что наиболее дорогой является процедура проверки ограничения на длительность функционирования ХТС T(W). Для сокращения общего времени работы алгоритма количество вызовов этой процедуры необходимо свести к минимуму, дня чего проведена оптимизация алгоритма.

Процедура вычисления критерия оптимизации Cost (W) — сравнительно дешевая операция (см. табл. 2). Выполнив эти вычисления сразу после получения работоспособного варианта ХТС, дня заведомо неонтиманьных решений можно не проверять ограничение на длительность функционирования ХТС T(W). Таким образом, несмотря на то что число вызовов процедуры Cost(W) увеличится, число вызовов процедуры T(W)

Таблица 1. Решение задачи выбора АО для тестовой ХТС

Номер Основной

стадии Наименование стадии размер

но схеме оборудования, м3

101 Растворение 6.3

103 Диазотирование 10

106 Приготовление азоеоетавляющей 5

108 О чистное фильтрование 5 м2

110 Азоеочетание 16

115 Диазотирование 20

127 Растворение 0.4

125 Приготовление азоеоетавляющей 3.2

111 Фильтрование 25 м2

112 Растворение 10

118 Азоеочетание 32

122 Выделение красителей 32

123 Растворение 3.2

134 Фильтрование красителей 50 м2

138 Суеиеширование 10

145 Сушка 20

Таблица 2. Оценки времени выполнения элементов а;п'оритма

Элемент а;п'оритма Время выполнения, мке

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Рекурсивный вызов процедуры

EnumerateVariants(i + 1) 0.58

PartS(W) 22.07

T(W) 1329.86

Cost(W) 2.41

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

11 ...

12 else { /* достигнут конечный узел дерева */

13 /* проверка критерия оптимизации */

14 if (Cost (W) < minCost) {

15 /* проверка ограничения (5) на длительность функц-ния ХТС */

16 if (T(W) <= Tmax ) {

17 /* сохранение нового оптимального решения */

18 Wopt = W;

19 minCost = Cost ( Wopt ); > > >

20 ...

Во второй модификации алгоритма была изменена строка 9 оригинального варианта следующим образом:

8 ...

9 if (PartS(W) == 0 kk PartCost (W, i ) < minCost ) {

10 ...

Таблица 3. Время выполнения двух модификаций алгоритма, ч/мин/с

Количество Оригинальный Первая Вторая

вариантов AO алгоритм модификация модификация

каждой стадии

2 00/00/22 00/00/14 00/00/13

3 01/12/58 0/14/45 00/12/46

4 14/42/24 6/57/09 6/38/10

5 89/33/50 48/27/52 45/55/57

При переходе на нижележащие уровни дерева дополнительно сравнивается стоимость начального фрагмента ХТС (процедура PartCostO, строка 9) со стоимостью текущего наилучшего варианта minCost, Таким образом, переход на следующий уровень рекурсии (вызов процедуры Enumerate Vari ant s () на уровне i + 1, строка 11) осуществляется лишь в том случае, если начальный фрагмент АО ХТС, состоящий из стадий 1, 2,..., i, во-первых, работоспособен и, во-вторых, имеет стоимость, не превышающую стоимость наилучшего на текущий момент варианта АО ХТС, иначе происходит возврат на предыдущий ярус.

Вычислительные эксперименты были проведены для разного числа возможных вариантов оборудования для каждой стадии системы (от двух до пяти). Замерено время выполнения как оригинального, так и оптимизированных вариантов алгоритма. Результаты представлены в табл. 3, Видно, что при оптимизации алгоритма время его выполнения в среднем уменьшается в 1,8-2 раза. Большее сокращение времени в случае трех вариантов АО стадии системы можно объяснить тем, что для данного набора доступного оборудования по сравнению с прочими исследованными существует большее количество работоспособных вариантов АО ХТС, при этом для каждого из последних в оригинальной версии алгоритма проверяется ограничение (5) на длительность функционирования ХТС (функция Т(¥)), В модифицированных вариантах этого не происходит,

В целом, несмотря на оптимизацию алгоритма, время его выполнения остается значительным и для сокращения затрат времени представляется целесообразной разработка параллельной версии представленного алгоритма.

Список литературы

[1] Кафаров В.В., Макаров В.В. Гибкие автоматизированные производственные системы в химической промышленности. М.: Химия, 1990. 320 с.

[2] Малыгин E.H., Карпушкин C.B., Борисенко A.B. Проектирование многоассортиментных химических производств: Определение аппаратурного оформления химико-технологических схем // Вестник Тамбовского гос. техн. ун-та. 2002. Т. 8, № 2. С. 272-282.

[3] Малыгин E.H., Карпушкин C.B., Борисенко А.Б. Методика определения аппаратурного оформления многопродуктовых химико-технологических систем // Химическая промышленность сегодня. 2003. № 5. С. 43-50.

[4] Hamzaoui Y.Е., Hernandez J.A., Cruz-Chavez M.A., Bassam A. Search for Optimal Design of Multiproduct Batch Plants under Uncertain Demand using Gaussian Process Modeling Solved by Heuristics Methods. Berkeley Electronic Press, 2010.

[5] Ponsich A., Azzaro-Pantel С., Domenech S., Pibouleau L. Mixed-integer nonlinear programming optimization strategies for batch plant design problems // Industrial k. Eng. Chem. Res. 2007. Vol. 46, No. 3. P. 854-863.

[6] Lin X., Floudas C.A. Design, synthesis and scheduling of multipurpose batch plants via an effective continuous-time formulation // Ibid. 2001. Vol. 25. P. 665-674.

[7] Борисенко А.Б. Синтез аппаратурного оформления многоассортиментных химико-технологических систем: Дис. ... канд. техн. наук. Тамбовский гос. техн. ун-т, 2000. 157 с.

[8] Voudouris V.T., Grossmann I.E. MILP model for scheduling and design of a special class of multipurpose batch plants // Сотр. к. Chem. Eng. 1996. Vol. 20, No. 11. P. 1335-1360.

[9] Leyffer S., Linderoth J., Luedtke J. et al. Applications and algorithms for mixed integer nonlinear programming //J. Phvs. Conf. Ser. 2009. Vol. 180, No. 1. P. 12-14.

[10] Brassard G., Bratley P. Fundamentals of Algorithmics. Prentice Hall, 1996. 524 p.

[11] Sparrow R.E., Forder G.J., Rippin D.W.T. The choice of equipment sizes for multiproduct batch plants. Heuristics vs. branch and bound // Ind. Eng. Chem. Process Des. Dev. 1975. Vol. 14, No. 3. P. 197-203.

[12] Малыгин E.H., Карпушкин С.В., Борисенко А.Б. Математическая модель функционирования многопродуктовых химико-технологических систем // Теор. основы хим. технологии. 2005. Т. 39, № 4. С. 455-465.

[13] Кормен Т.Х., ЛейзерсОН Ч.И., Ривест Р.Л., Штайн К. Алгоритмы: Построение и анализ. 2-е изд. М.: Вильяме, 2011. 1296 с.

[14] Кнут Д.Э. Искусство программирования. Т. 1. Основные алгоритмы. 3-е изд. М.: Вильяме, 2009. 720 с.

Поступила в редакцию 5 мая 2011 г., с доработки — 12 сентября 2011 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.