Назад
150
після визначення температури виробів
m
T на всіх позиціях за
формулою (4.57) проводиться розрахунок кількості продуктів горіння
(в напрямку руху газового середовища) та визначаються витрати па-
лива.
виконується перевірка обмежень: значення обєму палива
i
V
повинні задовольняти технологічні обмеження, накладені на управля-
ючі впливи. У випадку не виконання обмежень
maximan i i
VVV
< згід-
но з методом перебору вибирається наступна точка з області
min max
≤≤TGT
, і пункт 2 виконується з початку.
3. Розрахунок критерію ефективності (4.57). Якщо значення
критерію менше ніж на попередньому кроці, то вектор
i
T є оптималь-
ним і запамятовується. Якщо область
min max
TGT
не перевірена
до кінця виконується пункт 2.
Таким чином, алгоритм дозволяє отримати температурне поле
печі і необхідні параметри управління для підтримання цього поля.
5.4. Опис програмного забезпечення для моделювання системи
оптимального управління процесом випалювання
Реалізація інтелектуальної підсистеми управління тунельною
піччю випалювання виконана програмним шляхом. Розроблене про-
грамне забезпечення базується на моделях теплотехнологічного ОРП,
прогнозування якості продукції, коригування температурного поля,
класифікації марки виробів, алгоритмі визначення оптимальних пара-
метрів моделі ОРП. Програмне забезпечення призначене для моделю-
вання та оптимізації ТОРП і дозволяє розвязувати такі задачі:
прогнозувати якість продукції при відповідних значеннях
факторів підготовчих етапів;
визначати клас міцності з врахуванням ризику прийняття
рішень;
проводити розрахунок, аналіз, оптимізацію температурного
поля печі;
розраховувати управляючі впливи для підтримання заданих
температур;
здійснювати навчання ЛІ-моделі за даними технологічних
циклів;
151
представляти результати моделювання в табличному та гра-
фічному вигляді з подальшим їх збереженням.
Діаграма варіантів використання розробленого програмного за-
безпечення наведена на рис. 5.7.
«
i
n
с
l
u
d
e
»
«ext
end
s
»
«
ex
t
en
d
s
»
«
in
с
lu
d
e
»
«
i
n
сl
u
d
e
»
«
i
n
с
l
u
d
e
»
«
i
nс
l
u
d
e
»
«
i
n
с
lu
d
e
»
152
Оскільки розроблене програмне забезпечення реалізує функції
інтелектуальної підсистеми управління, що видає рекомендації люди-
ні-оператору, то однією з основних вимог до програмного забезпечен-
ня є наявність зручного графічного інтерфейсу. Для розробки такого
класу програм, зазвичай, використовуються середовища програмуван-
ня, що включають в себе значну кількість бібліотек та візуальних
компонентів.
Для реалізації програмного забезпечення обрано середовище
програмування Delphi, яке забе
зпеч
ує швидкий та ефективний процес
розробки програм та дозволяє використовувати всі переваги обєктно-
орієнтованого програмування. Вибір цього програмного продукту зу-
мовлений наявністю стандартних компонентів, за допомогою яких
формується інтерфейс користувача та можливістю запуску програми
без встановлення додаткових засобів. Крім того, структурованість мо-
ви програмування Object Pascal, що використовується в Delphi, пок-
ращує надійність програмного коду за рахунок перевірки су
місності
типів даних. Гнучкі властивості
компонентів дозволяють майже без
обмежень реалізувати інтерфейс користувача, процедури зберігання
та завантаження інформації, взаємодію з іншими програмами. При ро-
зробці програми було використано структурно-модульний принцип
програмування, що дозволило розмежувати у модулі процедури вико-
нання програми та елементи інтерфейсу. Такий підхід полегшить вне-
сення змі
н в програму та робить її більш гнучкою. Призначення моду-
лів
програми наведене в табл. 5.3.
Таблиця 5.3
Призначення модулів програми
Назва модуля Призначення
Main Містить опис елементів інтерфейсу, реалізацію мето-
дів меню, введення даних та відображення результатів
Optimization Містить реалізацію методів для оптимізації темпера-
турного поля
TemperatureControl Містить реалізацію методів для моделювання темпе-
ратури на позиції печі та визначення управляючих
впливів
LIModel Містить реалізацію методів для прогнозування класу
міцності виробів та навчання моделі
About Містить інформацію про авторів програми
153
Робота програми здійснюється на основі ієрархії класів
(рис. 5.8), базовими з яких є TLIModel, TOptimizator, TFuzzyControl.
TLIModel
-FPriznaksCount: Integer
-FPriznaks: TPriznaks
-FAdmittedRisk: Double
-FMaxPossibleClass: Integer
-FObjectStructure: array of Integer
-LoadModelParams(): Boolean
-ValueInInterval(): Boolean
-InitRiskObject()
-PredictClass(): Integer
-CalculateMinIntervals(): Boolean
TOptimizator
-FTemperatures: TTemperatureProfile
-FMinValueForMaxClass: Double
-SetInitialConditions()
-RefreshTemperatures()
-RegressModel(): Double
-RestrictionsExecute(): Boolean
-CriterionFunction(): Double
+OptimizeAllCurve()
+OptimizeZone()
TPriznak
+GradCount: Integer
+Gradations: array of TGradation
+MinConsumptionGrad: Integer
+Optimized: Boolean
TGradation
+LeftBound: Double
+RightBound: Double
+Pjr: Double
TTemperatureVariable
+Lb: Integer
+Ub: Integer
+TemperValue: Double
+FuelValue: Double
+LoadTemper: Double
TPriznaks
+FPriznaks: array of TPriznak
TTemperatureProfile
+FTemperatureProfile
+array of TTemperatureVariable
TRule
+FRule: array of integer
TRuleBase
+FRuleBase: array of TRule
TTerm
+FLowBound: Double
+FHighBound: Double
+FTermName: string
TFactor
+FFactorName: string
+FTerms: array of TTerm
TFuzzyControl
+FFactors: array of TFactor
+FFactorValues: array of Double
+FRuleBase: TRuleBase
+FResul: Double
+Fuzzyfication()
+FuzzyDecission()
+Defuzzyfication()
TKilnControlSystem
+FLIModel: TLIModel
+FOptimizator: TOptimizator
+FFuzzyControl: TFuzzyControl
+ReadParamsValues()
+PredictMaxQuality()
+CalculateTemperature()
+DoPositionControl()
Рис. 5.8.
Діаграма класів програмного забезпечення
154
Клас TLIModel реалізує структуру ЛІ-моделі і використовується
на першому етапі для прогнозування максимального класу міцності та
визначення обмежень задачі оптимізації. Клас TOptimizator реалізує
алгоритм оптимізації температурного поля і на основі значень ЛІ-
моделі та введених значень процесу випалювання розраховує оптима-
льне температурне поле та параметри управління для його підтриман-
ня. Клас TFuzzyControl реалізує нечітку ск
ладову моделі теплотех
но-
логічного ОРП.
Опис цих класів наведений в таблицях 5.4–5.6 відповідно.
Таблиця 5.4
Характеристика класу TLIModel
Назва Елемент Опис
FSettingsFile поле Імя файлу настроювань, що містить стати-
стичні дані, кількість градацій та їх інтер-
вали
FPriznaksCount поле Кількість ознак-градацій
FPriznaks поле Масив градацій
FAdmittedRisk поле Допустимий ризик, що розділяє обєкти на
класи
FMaxPossibleClass поле Максимально можливий клас міцності при
заданих початкових умовах
FObjectStructure поле Структура обєкта ризику
LoadModelParams функція Завантажує дані ЛІ-моделі з файла
ValueInInterval функція Функція, що визначає номер градації, до
якої потрапляє значення фактора
InitRiskObject процедура Ініціалізація обєкта ризику на основі зна-
чень факторів підготовчих етапів
PredictClass функція Прогнозування класу міцності виробів
CalculateMinIntervals функція Обчислення мінімальних градацій темпера-
турного поля для отримання максимально
допустимого класу
155
Таблиця 5.5
Характеристика класу TOptimizator
Назва Елемент Опис
FTemperatures поле Масив записів, елементи якого містять ін-
формацію про обмеження, оптимальні зна-
чення температури та обєм газу для даної
позиції
FMinClassValue поле Нижня межа міцності для максимально
можливого класу
SetInitialConditions процедура Встановлення початкових значень темпе-
ратурного поля
RefreshTemperatures процедура Оновлення значень температурного поля
RegressModel функція Реалізує регресійну модель міцності виро-
бів
IsRestrictionsExecute функція Перевірка виконання обмежень
OptimizeZone процедура Знаходження оптимальної температури та
кількості палива для заданої позиції
OptimizeAllCurve процедура Знаходження оптимального температурно-
го поля по всій довжині печі
Таблиця 5.6
Характеристика класу TFuzzyControl
Назва Елемент Опис
FTermsFactors1,…,
FTermsFactors7
Поле Масив, який містить назви та інтервали те-
рмів для вхідних факторів моделі
FTermsMainResul Масив, який містить назви та інтервали те-
рмів для вихідного результату моделі
FFactorValues поле Масив, елементи якого містять значення
факторів нечіткої моделі
FRule поле Масив, елементи якого містять номери те-
рмів для одного правила бази знань
FRuleBase поле Масив, який містить правила бази знань
Fuzzyfication процедура Виконує фазифікацію вхідних даних
FuzzyDecission процедура Реалізує алгоритм нечіткого логічного ви-
сновку Мамдані
Defuzzyfication процедура Виконує дефазифікацію вихідної величини
Схема функціонування програмного забезпечення показана на
рис. 5.9.
156
Перевірка стану технічної системи
Початок циклу технологічного процесу
Виведення повідомлення про неготовність
Введення даних з БД
Ініціалізація потокових даних ТП
Отримання даних з датчиків
Аналіз даних технологічного процесу
Виведення повідомлення про закінчення ТП
Розрахунок параметрів вектора управління
Аналіз причин, видача рекомендацій
Ідентіфікація стану прцесу
Отримання даних з бази знань
Прогнозування якості ( ЛІ-модель)
Рис. 5.9. Схема функціонування програмного забезпечення
157
Розглянемо, як реалізовано цей алгоритм функціонування про-
грамного забезпечення. Взаємодія користувача з програмним забезпе-
ченням здійснюється за допомогою меню або тематичних вкладок
Параметри оптимізації”, “Результат оптимізації”, “Оптимізація ЛІ-
моделі”, “Управління”, розміщених на головній формі (рис. 5.10). Ро-
бота програми здійснюється у такій послідовності:
1. Введення початкових параметрів процесу. Здійснюється за
допомогою пункту менюВх
ідні дані
Завантажитиабо безпосере-
дньо на вкладціПараметри процесу”. В першому випадку заванта-
жуються дані з файла, в другому користувач вводить дані власноруч.
Рис. 5.10. ВкладкаПараметри процесу
2. Ініціалізація програми. Здійснюється за допомогою пункту
менюВхідні дані Ініціалізаціяабо кнопкиІніціалізація парамет-
рів”. В цьому випадку створюються обєкти класів та відбувається їх
ініціалізація.
158
3. Оптимізація температурного поля. Здійснюється за допомо-
гою пункту менюОптимізація
Температурне полеабо кнопки
Оптимізаціяна вкладціПараметри процесу”. В цьому випадку від-
бувається розрахунок оптимальних параметрів температурного поля
та параметрів управління. Результати оптимізації відображаються на
вкладціРезультати оптимізації” (рис. 5.11), яка зявляється автома-
тично при встановленій опціїПоказати результат оптимізаціїабо за
допомогою пункту менюОптимізація
Результати”.
Рис. 5.11. ВкладкаПараметри процесу
Результати оптимізації представленні у вигляді таблиці, яка міс-
тить номер позиції, значення температури проектної і розрахованої
кривої, та графіка, на якому зображені проектна та реальна темпера-
турні криві, які відповідають значенням ТП.
4. Для підтримання температурного поля використовується
вкладкаУправління”, що на основі розробленої нечіткої моделі теп-
159
лотехнологічного ОРП, дозволяє розраховувати обєм газу та повітря
для управління будь-якою позицією печі.
Для здійснення навчання ЛІ-моделі використовується вкладка
Оптимізація ЛІ-Моделіабо пункт менюОптимізація
ЛІ-модель
(навчання)”. Етап навчання моделі складається з процедур заванта-
ження даних, ініціалізації параметрів моделі та ідентифікації моделі.
Особливістю розробленого програмного забезпечення є те, що
воно працює як окрема надбудова до автоматизованої системи управ-
ління в режимі експертної системи. В такому режимі оператор сам по-
винен вводити значення етапів підготовки параметрів процесу та
отримувати оптимізоване температурне поле. Проте, оскільки всі дані
процесу випалювання через інформаційно-вимірювальні пристрої на-
дходять на вхід ЕОМ, то програмне забезпеченн
я також може викори-
стовуватися для моніторин
гу стану температурної кривої та розрахун-
ку параметрів управління.
5.5. Оцінка ефективності методу та обчислювальної складності
алгоритмів
Для розвязання задачі визначення оптимальних параметрів мо-
делі теплотехнологічного ОРП (4.63), (4.64) можуть бути використані
класичні методи оптимізації за умови, що обмеженням задачі висту-
пає математична модель коригування температурного поля. В цьому
випадку як метод розвязання обрано метод квадратичного програму-
вання SQP, що використовує квазіньютонівський BFGS алгоритм, в
якому апроксимація H виконується за формулою:
1
TTT
kk k k k
kk
TT
kk k kk
qq H s H
HH
qs sHs
+
=+ , (5.2)
де
1kk k
Sx x
+
=
;
1
() ()
kk k
qfx fx
+
=∇ . (5.3)
Для використання цього методу проаналізуємо одну з основних
його характеристикзбіжність для задачі (4.63), (4.64). З [25] відомо,
що швидкість збіжності градієнтних методів суттєво залежить від то-
чності обчислення градієнта, проте, враховуючи, що цільова функція