Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Системный анализ химико-технологических процессов с использованием программы ChemCad. Учебно-методическое пособие
.pdf
7.5. Решение задачи оптимизации
Запуск на выполнение задачи оптимизации проводится кнопкой
Perform Optimization (Выполнить оптимизацию) окна Process
Optimization.
По окончании процесса оптимизации ChemCad выдаст окно с
запросом (рис. 7.6). Щелчком по кнопке Да можно сохранить
полученные значения поисковых переменных и целевой функции в
параметрах технологической схемы. ChemCad откроет окно текстового
редактора с отчетом о ходе решения задачи оптимизации. В отчете, в
зависимости от уровня печати, будет отражено поведение целевой
функции, поисковых переменных и ограничений в ходе решения
задачи.
Рис. 7.6. Окно запроса Chemcad
Замечание. При решении задачи методом Generalized Reduced
Gradient (Метод проецированного градиента) в отчете размерности
использованных в задаче оптимизации переменных будут выражены во
внутренних единицах измерения ChemCad: температура в град. Renkin
(град. Ренкина), давление в psia, расход в lbmol/h (фунт-моль/час). Для
перевода полученных значений из одной системы единиц в другую
можно воспользоваться встроенным калькулятором ChemCad, который
вызывается командой Tools/UnitsCalculator
(Инструменты/Калькулятор единиц) в рабочем окне ChemCad.
При решении задачи оптимизации методами Successive Quadratic
Programming и Simultaneous Modular SQP значения переменных
выдаются в единицах измерения, выбранных пользователем.
.6. Упражнение. Оптимизация режима работы пропан-
7
пропиленовой колонны
171

1. Проведем оптимизацию режима работы пропан-пропиленовой
* *
F a D b R
= −
≤
≤
≤
≤
колонны, максимизируя прибыль при получении продукта
требуемого качества.
В качестве критерия оптимальности будем использовать функцию
прибыли, которую запишем как:
, (7.4)
где D– массовый расход дистиллята, кг/ч, R – флегмовое число, a,
b – ценовые коэффициенты.
На получаемые продукты наложим ограничения
где
D
x
C
W
x
C
D
W
,
Cx3
– содержание пропилена в дистилляте и пропана в
Cx3
95.03≥
, (7.5)
95.03≥
, (7.6)
кубовом продукте соответственно.
В качестве поисковых переменных выбраны R – флегмовое число и
W – массовый расход кубового продукта, кг/ч. На поисковые
переменные наложим ограничения
301
R , (7.7)
50002000
W . (7.8)
Решение задачи будем проводить на основе задания PPFCOLUMN
(упражнение 5.5).
2. Открыть задание PPFCOLUMN.
Сохранить задание под именем PPFOPTIM. Открыть задание
PPFOPTIM в режиме Flowsheet и привести к виду,
соответствующему рис. 7.7.
3. Открыть окно настроек модуля SCDS column, перейти на вкладку
General, выбрать режим работы конденсатора 0 Total or none
(Полный или отсутствует), в поле Feed tray for stream 1 задать
номер тарелки питания 64.
172

1
1
2
3
Рис.7.7. Технологическая схема установки разделения пропан-
пропиленовой фракции
Затем перейти на вкладку Specifications, внести данные:
Mode Specification
Condenser (Конденсатор) 1 Reflux Ratio (R/D) 13.33
Reboiler (Кипятильник) 10 Bottom mass flowrate
4067
Далее перейти на вкладку Convergence (Сходимость) и в списке
Initialization (Инициализация) выбрать режим 6 Auto estimation
(Автоматическое задание оценок).
4. Провести расчет схемы командой Run/Run/Run All.
Для ускорения расчета модуля колонны в процессе решения задачи
оптимизации сохраним полученный профиль колонны как стартовый
для последующих расчетов.
Для этого нужно открыть окно модуля, перейти на вкладку
Convergence (Сходимость) и в списке Initialization
(Инициализация) выбрать режим
1 Reload column profile (Перезагрузка профиля колонны).
Провести расчет схемы. Теперь профиль колонны сохранен для
дальнейшего использования.
5. Для решения задачи нам нужно построить сложный критерий.
Воспользуемся средствами модуля Excel.
Перейти в режим F
lowsheet и привести технологическую схему к виду,
представленному на рис. 7.8. Для этого в поток 2 вставить модуль
E
xcel. Он получил №2. Сохранить задание.
173

2
1
2
1
3
4
Рис. 7.8. Технологическая схема установки разделения пропан-
пропиленовой фракции с модулем Excel
. Перейти в режим Simulation. В качестве критерия оптимальности
6
будем использовать число, размещенное в поле параметра Presssure
(Давление) модуля Excel. Этому параметру программа, написанная
на Visual Basic for Applicatins, будет присваивать рассчитанное
значение Прибыли.
7. Загрузить при помощи кнопки Пуск из Панели задач Windows
пакет Microsoft Excel. В окне Excel открыть файл PPFOPTIM.xls,
который находится в папке задания PPFOPTIM, макросы не
отключать.
8. Выполнить в окне Excel команду Сервис/Макрос/Редактор Visual
Basic. В окне Microsoft Visual Basic перейти на строку программы с
содержимым
Sub ExcelUop(ByVal ChemCADEntry As Object).
Здесь начинается подпрограмма реализации модели пользователя.
Перейти на строку с содержимым
'PART 2, user declarations (insert Dim statements here)
и в строке ниже ввести следующие строки, которые содержат
объявление типов используемых в расчете переменных
Dim a As Single
Dim b As Single
Dim N_UOP As Integer
Dim temparam As Single
Dim ttuop(1 To 250) As Single
174

Dim f As Single
Dim tchek As Integer
Dim ttlets(1 To 26) As Integer
Dim N_STR As Integer
Dim ttemp As Single
Dim tpres As Single
Dim tenthalpy As Single
Dim mvf As Single
Dim tmoleRat As Single
Dim tmassRat As Single
Dim tstdLRat As Single
Dim tstdVRat As Single
Dim compRate(1 To SIZE_COMP_ARRAY) As Single
Dim d As Single
Dim ss As Single
Перейти на строку с содержимым
' PART 3, user calculations (author your codes here)
и в строке ниже ввести следующие строки, содержащие присвоение
переменным данные из технологической схемы
a = 1
b = 10
N_UOP = 1
temparam = uopInfo.GetUnitOpSpecByID(N_UOP, ttuop)
f = ttuop(57)
tchek = flowSht.GetOutletStreamIDsToUnitOp(1, ttlets)
N_STR = ttlets(1)
check = strInfo.GetStreamInCurUserUnitByID(N_STR,
ttemp, tpres, tenthalpy, mvf, tmoleRat, tmassRat,
tstdLRat, tstdVRat, compRate)
d = tmassRat
ss = a*d - b*f
myUnitPar(3) = ss / 0.0689476
Сохранить полученную программу при помощи стандартного
инструмента сохранения. Закрыть окно M
Сохранить книгу E
xcel.
icrosoft Visual Basic.
В качестве целевой функции выбран параметр 3 Presssure модуля
Excel 2.
175

9. Проверить, каково значение критерия оптимальности при текущем
режиме работы колонны. Для этого провести расчет схемы.
Затем открыть окно модуля Excel Unit: 2 – Excel WorkBook Unit ,
закрыть окно настроек щелчком по кнопке ОК, в открывшемся окне
Excel unit значение Прибыли помещено в поле параметра Pressure.
Это значение 10799.8.
10. Сформировать задачу оптимизации при помощи команды Run/
Optimization/New. Задать имя файлу задачи OPTIM1. Затем в окне
Process Optimization щелкнуть по кнопке Define Objective Function,
в окне Objective Function задать параметры согласно рис. 7.9. Здесь
также в качестве целевой функции выбран параметр 3 Presssure
модуля Excel 2.
11. Перейдем к заданию поисковых переменных. Для этого в окне
rocess Optimization щелкнуть по кнопке Independent Variables (1-
P
20) и настроить опции вкладки Page 1 согласно рис. 7.10:
В качестве поисковых переменных выбраны:
1 – «Спецификация конденсатора аппарата 1». Это флегмовое число
колонны. Размерность используется внутренняя.
Задан интервал изменения переменной Min/Max Bounded, со
значением 1 в поле Minimum, со значением 30 в поле Maximum. В
качестве начального приближения в поле Initial Value задано
значение 13.33. Соответствует ограничению (7).
2 – «Спецификация куба аппарата 1». Это массовый расход кубового
продукта. Используется размерность массового расхода. В поле
Variable Unit выбрано 1 Mole/Mass.
Задан интервал изменения переменной Min/Max Bounded, со
значением 2000 в поле Minimum, со значением 5000 в поле Maximum.
В качестве начального приближения в поле Initial Value задано
значение 4067. Соответствует ограничению (8).
176

Рис. 7.9. Окно формирования целевой функции
Рис. 7.10. Задание поисковых переменных
12. Перейдем к заданию ограничений. Для этого в окне P
Optimization щелкнуть по кнопке Constraints (1-20) и настроить
опции вкладки Page 1 согласно рис. 7.11.
rocess
177

Рис. 7.11. Окно формирования ограничений на зависимые переменные
В окне сформированы ограничения:
− На зависимую переменную «Массовая доля компонента в потоке
2» для компонента «Пропилен». Размерность используется
внутренняя. Для переменной задано ограничение снизу Min
Bounded со значением 0.95 в поле Minimum. Соответствует
ограничению (5).
− На зависимую переменную «Массовая доля компонента в потоке
3» для компонента «Пропан». Размерность используется внутренняя.
Для переменной задано ограничение снизу Min Bounded со
значением 0.95 в поле Minimum. Соответствует ограничению (6).
− Настроим работу метода решения задачи оптимизации. Для этого
кнопкой Settings окна Process Optimization откроем окно Control
Parameters. Задать в поле Print level уровень печати равный 4.
Максимальное количество итераций в поле Iterations задать равным
100. Ввести в поле Tolerance значение точности вычислений 1e-015.
В списке D
Forward differences (Разности вперед).
− Щелчком по кнопке P
задачи оптимизации. По окончании решения ChemCad выдаст окно с
запросом (рис. 7.6). Щелчком по кнопке ОК сохранить полученные
значения поисковых переменных и целевой функции в параметрах
erivatives выбрать способ вычисления производных
erform Optimization запустить решение
178

технологической схемы. ChemCad откроет окно текстового
редактора с отчетом о ходе решения задачи оптимизации.
− Найти в отчете значения целевой функции, поисковых
переменных и ограничений на стартовой итерации Initial Value и на
конечной итерации Final Results и сравнить их. В последних строках
отчета ChemCad приводит информацию о количестве сделанных
итераций:
Number of iterations = #
Проверить количество итераций, проделанное методом
проецированного градиента в процессе решения поставленной
задачи оптимизации.
− Закрыть полученный отчет. Способом, описанным в п. 9
настоящего упражнения, получить значение Прибыли из параметра
Pressure модуля Excel при полученном режиме.
Поскольку решалась задача максимизации, то найденное значение
должно быть больше того, что было получено в п. 9. Если это
условие выполнено, то технологическая схема настроена на работу в
оптимальном режиме.
.7. Контрольные вопросы
7
1. Какая команда используется для формирования и решения задач
оптимизации режимов работы моделируемой ХТС ?
2. Приведите формализованную постановку задачи оптимизации?
3. Для чего предназначена вкладка "Define Objective Function" окна
Process Optimization, какие параметры задаются на данной вкладке?
4. Для чего предназначена вкладка "Settings" окна Process Optimization,
какие параметры задаются на данной вкладке?
5. Для чего предназначена вкладка "Define Calcucalation Sequence" окна
Process Optimization, какие параметры задаются на данной вкладке?
6. Для чего предназначены вкладки "Independent Variables" окна Process
Optimization, какие параметры задаются на данной вкладке?
7. Для чего предназначены вкладки "Constraints" окна Process
Optimization, какие параметры задаются на данной вкладке?
. Какие параметры моделируемой схемы можно задавать в качестве
8
независимых переменных задачи оптимизации режима работы ХТС?
9
. Каким образом формируются в ChemCad сложные критерии
оптимизации?
179

Библиографический список
1. ХЕМКАД. Версия 5.6. Руководство пользователя. - М., МХТИ, 2007.
2. Гартман Т.Н. Основы компьютерного моделирования химико-
технологических процессов: Учеб. Пособие для вузов / Т.Н. Гартман,
Д.В.Клушин. – М.: ИКЦ «Академкнига», 2006. – 416 с. : ил.
3. Зиятдинов Н.Н., Лаптева Т.В., Рыжов Д.А. Математическое
моделирование химико-технологических систем с использованием
программы ChemCad. Учебно-методическое пособие. – Казань,
КГТУ, 2008. – 160 с.
4. Островский Г.М., Волин Ю.М., Зиятдинов Н.Н. Оптимизация в
химической технологии. – Казань: Изд-во «Фэн» Академии наук РТ,
2005. – 394 с.
180
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
