Технологический автопилот

Реально работающие приложения, программные и программно-аппаратные продукты.

Модераторы: DCV, Dimmy, daner, victorst, Администраторы

Технологический автопилот

Сообщение Scub » Сб июн 05, 2010 17:03:29

Здравствуйте. Хочу узнать ваши отзывы и критику насчет моей программы.
Вчера официально закончилась месячная программа испытаний моей прогнозирующей системы управления на реальном объекте. Но все попорядку.
Есть на одном из предприятий ГМК «Норильский Никель» один непростой технологический объект, называемый как скруббер-охладитель. Целью этого объекта является охлаждение технологического газа плавильной электропечи. Охлаждается газ при помощи водяного тумана, который создается в этом объекте. Дальше технологический газ поступает в рукавные фильтры, в которых удаляется пыль.
При постоянстве внешних возмущений, локальные контур регулирования справляется с задачей поддержания температуры отходящих газов, но как только-то появляется серьезное внешнее возмущение, то сразу резко температура подскакивает до аварийной, нежные рукавные фильтры отсекаются и весь технологический газ поступает в атмосферу без всякой очистки. (Вот такая у нас экология в Норильске! :-( ) И таких аварийных отключений бывало по 2-3 раза за день…первоначально. Но потом технологи приноровились, т.е. научились прогнозировать эти аварийные ситуации и предпринимать некоторые действия для их избегания. Но не у всех это получается. Да и трудно прогнозировать поведение объекта, так как он является многофакторным, нелинейным, очень инерционным, с присутствием временных задержек и т.п. В плане управления объект очень «интересный» (для меня он интересный, а для технологов – просто головная боль).
Короче, создал программу, которая сначала показывала график прогноза в 1000 секунд на основе нелинейной многофакторной динамической модели (ММ). Добавил в программу отдельный поток, отвечающий за постоянную адаптацию параметров ММ, так как отмечены мною, что параметры ММ меняются в широких диапазонах (нет ничего постоянного в этом мире, даже в закон Ома начинаю сомневаться, не говоря о других). Потом добавил отдельный поток в программу, занимающийся управлением на основе прогноза, т.е. постоянно следя за предполаемым «будущим» и изменяя его в нужное направление.
И что в итоге? Очень было приятно видеть эти удивленные глаза технологов, когда проходили испытания (особенно тех, кто первоначально хаили одну лишь мысль о том, что это можно создать), слышать восторженные отзывы опытным людей, которые знают, что это за объект. Хотя, в первую неделю испытаний находились и такие, которые говорили, что это совпадения и чистая случайность. Ладно, хозяин – барин, отключил на неделю. И что же? Взвыли технологи, сразу заметив разницу. (К хорошему очень быстро привыкают). Хорошо, возобновил управление. И вот уже 3 недели круглосуточно программа управляет сама, эмитируя наиболее «правильные» действия оператора, тем самым, бережет оборудование от аварийных остановок и снижает «головную боль» технологам при управлении этим объектом.
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Сообщение Dimmy » Сб июн 12, 2010 21:58:31

Класс!

У нас здесь не только программисты но и математики, потому выберите один пп из предложенных:

"нелинейной многофакторной динамической модели" =
1. нейронные сети
2. вероятностные сети и байесовский вывод, вероятностные модели
3. марковские сети и модели
4. модель динамического программирования
5. модель на генетическом алгоритме
6. аналитический алгоритм аппроксимации исходных данных и нахождения f(x+1) ~= от f(x), например на основе МНК
7. свой алгоритм \ метод
8. смесь предложенных
9. другое

Опишите если не секрет математическую основу вашей предсказывалки. Интересно же!
Vivere est cogitare!
"Во время работы в одиночестве человек в идеале находится в состоянии, которое психологи называют потоком."
Осознать необъятное, объять неосознанное (с) Dimmy, 2008
Делать возможным то, что другие считают невероятным (с) Dimmy, 2009
"Когда люди предпочитают верить, а не знать - наступает время шарлатанов." Академик Эдуард Кругляков.
Главная задача ИИ — не выиграть у игрока, а красиво ему отдаться. (с) Тимур Бухараев, Nival
«Никогда не ошибается тот, кто ничего не делает» Т. Рузвельт

...хожу сам по себе :)
ИзображениеИзображение
Dimmy
Эксперт ИИ
 
Сообщения: 555
Зарегистрирован: Пт янв 14, 2005 17:11:17
Откуда: РнД

Сообщение Scub » Вс июн 13, 2010 13:36:28

Спасибо за первый положительный отзыв.
Ой, я столько умных слов даже и не знаю. :)
Но, если серьезно, основу математической модели составляет регрессионная модель с элементами динамики: апериодические звенья и звенья задержки. Если перевести на "нейронный" язык, то получается нейронная сеть с лагом из 6 неравномерных слоев с "нейронами" как сумматорами, так и множителями, а перед выходным "нейроном"-сумматором находятся элементы динамики. Кстати выходной "нейрон" имеет сдвиг. То есть получается та же нейронная сеть, только без этих операции нормализации и денормализации.
К тому же. именно смесь "нейронов" различного типа, как сумматоров и множителей, дает мне очень хорошие результаты. Покрайней мере именно множители помогли описать нелинейность объекта, то есть когда существует серьезный фактор, который может изменять коэффициенты усиления других факторов.
Не понимаю почему все сосредоточились на одних сумматорах? По-моему, применяя множители можно описать больший класс функции при меньших количествах нейронов.
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Сообщение Dimmy » Вс июн 13, 2010 20:55:12

отличное применение интересному методу.
только тут считают что нейронные сети в любом проявлении это прошлый век.
ваша работа будет серьезной предпосылкой к опровержению устоявшегося мнения.
Vivere est cogitare!
"Во время работы в одиночестве человек в идеале находится в состоянии, которое психологи называют потоком."
Осознать необъятное, объять неосознанное (с) Dimmy, 2008
Делать возможным то, что другие считают невероятным (с) Dimmy, 2009
"Когда люди предпочитают верить, а не знать - наступает время шарлатанов." Академик Эдуард Кругляков.
Главная задача ИИ — не выиграть у игрока, а красиво ему отдаться. (с) Тимур Бухараев, Nival
«Никогда не ошибается тот, кто ничего не делает» Т. Рузвельт

...хожу сам по себе :)
ИзображениеИзображение
Dimmy
Эксперт ИИ
 
Сообщения: 555
Зарегистрирован: Пт янв 14, 2005 17:11:17
Откуда: РнД

Сообщение darkAlert » Пн июн 14, 2010 8:11:09

А у меня такой ворос: Вам была знакома эта предметная область (скруббер-охладитель) с самого начала, или пришлось входить в неё? Если второе, то как трудно и как долго это было? Кто вам помогал понять (должность)? Применяли ли Вы ваши познания в физике (скорее всего газов)?
darkAlert
Заинтересованный
 
Сообщения: 84
Зарегистрирован: Пн фев 08, 2010 18:20:13

Сообщение Scub » Пн июн 14, 2010 11:10:21

Предметная область мне была вообще не знакома с самого начала. Да и не мне только. Могу рассказать то, что лет 5 назад, когда впервые модернизировали электропечь и вместе с ней газоочистку, многие специалисты матерились на сложность этого скруббера. По слухам от старожил, дело доходило до того, что собиралась группа из трех специалистов (программист, математик и технолог) и пытались тогда настроить локальный контур регулирования температуры. Но ничего у них тогда не получилось...и они запили. ;)) Впоследствие была снижена цена за внедрение газоочистки. Они даже тогда останавливал на 3 дня печь и плавно ее запускали. Все равно это не помогло.
А что касательно меня. То я полтора года назад устроился на завод инженером по автоматизации (хотя по факту в трудовой книжке будет написано "слесарь КИПиА"...такие вот у нас порядки на заводе). А устроился только ради диссертации по этой теме (хотя были и другие вакансии на других предприятиях). И что было хорошо, то что возле моего компьютера находилась инженеринговая станция, т.е. компьютер, при помощи которого можно было управлять технологическим процессом, программировать и конфигурировать контроллер и его сеть. В общем в плане активных экспериментов, то все было под рукой. Если еще не считать того момента, что 70-80% рабочего времени можно было заниматься программой ;)
К стати модели, которые описаны в учебникаи и других источникам, не смотрел, потому что понимал что теория с практикой очень сильно разняться то из-за того, что не все факторы учитываются, то из-за того используются факторы, которые в реальной системе управления отсутствуют, то не описывают динамику процесса и т.п. А как дошел до своей математической модели? Просто! К примеру, 15 месяцев назад договорился негласно со своими знакомыми-технологами и управлял в ручном режими объектом в течении нескольких часов. Вообщем, было очень интересно. Да и нервно, помню... у меня тогда чуть ли не руки тряслись от серьезности процесса и ответственности. ;) И после этого момента начала формироваться в голове неформализованная модель поведения объекта. А потом, чем больше я управлял, тем лучше понимался объект. Тем более что программистом работаю (неофициально), так что "оцифровать" свою модель было не так сложно. Хотя на то, чтобы вообще научиться "оцифровывать" модель, кружащуюся в голове, в модель, которая используется системой управления, потребовалось 6-7 месяцев. Но когда уже научился это делать, то время сокращается на порядок. Вообщем на свою программу убил 15 месяцев, большая часть времени занимала реализация не сколько мат.моделей, адаптаций, прогнозирования и управления, а сколько - функционал связи с контроллером, считывание данных, запись данных, защиты от дурака, интерфейс, сбор данных и хранение и т.п.
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Сообщение shuklin » Чт июн 17, 2010 20:40:06

интересно, чем это иначе по сравнению с известными подходами из теории автоматического регулирования? почему обычные регуляторы несмогли?
shuklin
Разбирающийся в ИИ
 
Сообщения: 426
Зарегистрирован: Чт янв 11, 2007 21:03:53
Откуда: http://www.shuklin.com

Сообщение Scub » Ср июн 30, 2010 22:11:00

Коротко опишу разницу, но не обойдется без использования специальных терминов теории автоматического управления.
Значит, управляемая величина - температура технологических газов; управляющее воздействие - расход распылительной воды на форсунки скруббера-охладителся и положение аварийного клапана этого же скруббера; возмущения - температура в печи, расход воздуха на 1-ую и 2-ую ступень дожига оксида углерода и положение задвижки перед дымососом.
Чем лучше мой регулятор, чем старый ПИД-регулятор? Тем, что на единичное возмущение мой регулятора сразу же изменяет управляющее воздействие, а ПИД-регулятор - постепенно перебирает значение управляющего воздействия, что приводит к нежелательных колебаниям температуры. К примеру, на единичный скачок в 4 тыс. м3/час первой ступени дожига, мой сразу же изменяет управляющее воздействие на 2 м3/час, в то время как ПИД-регулятора это делает постепенно. И в итоге у меня среднеквадратическая ошибка управляения температурой составляет 3 градуса, а у ПИД-регулятора - 16 градусов. То есть улучшение 5 раз.
А почему так происходит? Да дело в том, что существует временная задержка по управляющему каналу, инерционность и неопределенность. К примеру если увеличу расход распылительной воды скруббера на 1 м3/час, то температура начнет падать, то на 20 , а может 40 градусов спустя от 60 до 150 секунд и переходной процесс закончится спустя от 10 до 15 минут. А это очень долго! Так как задание в управление - 230 градусов, а аварийная температура - 260. То есть 30 градусов это верхний порог управления, то есть 12% от аварийного значения, а это мало. К тому же возмущения постоянно имеются в наличие, так как температура в печи постоянно меняется от 800 до 1100 градусов, то есть на 300 градусов, потом технологи изменяют первую и вторую ступень дожига, так как они влияют на давление в печи, "дергают" задвижку перед дымососом, отключают и включают газоочистку и т.п. Так вот, из-за этих возмущений старый регулятор не справлялся и это приводило к тому что чуть ли не в каждую смену происходило аварийное срабатывание автоматики. И мой регулятора где-то на 90% снизил кол-во срабатываний по сравнению со старым. (Более подробный отчет могу куда-нибудь кинуть, есть даже видео как это все работает)
Я ведь сам настраивал старый регулятор год назад...стало немного лучше, но не настолько чтобы сказать, что проблема решена. К примеру, делаешь настройки регуляторы "быстрыми" - появляются автоколебания, ставишь "медленные" настройки - отсуствуют автоколевания. но появляется "медленность" в отработке возмущений. Было дело так оставлял "медленные" настройки регулятора и через некоторое время появлялисть автоколебания, что свидетельствовало об увеличении инерционности процесса. В итоге поставил самые "медленные" настройки. Старый регулятор работает замечательно...но когда нет серьезных возмущений. (Между прочим, к серьезным возмущениям я бы относ самого технолога ;) ). Но такое не часто бывает, чтобы все было стабильно в технологическом процессе, так как все постоянно меняется. Нет ничего постоянного в нашем мире, постоянного лишь непостоянство. ;)
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Сообщение Dimmy » Чт июл 01, 2010 19:36:36

интересен вот вопрос с подачей электричества на аппаратуру.
если свет отключат или замкнет - то каковы последствия могут быть и принимаемые меры?
есть резервные механизмы?
Vivere est cogitare!
"Во время работы в одиночестве человек в идеале находится в состоянии, которое психологи называют потоком."
Осознать необъятное, объять неосознанное (с) Dimmy, 2008
Делать возможным то, что другие считают невероятным (с) Dimmy, 2009
"Когда люди предпочитают верить, а не знать - наступает время шарлатанов." Академик Эдуард Кругляков.
Главная задача ИИ — не выиграть у игрока, а красиво ему отдаться. (с) Тимур Бухараев, Nival
«Никогда не ошибается тот, кто ничего не делает» Т. Рузвельт

...хожу сам по себе :)
ИзображениеИзображение
Dimmy
Эксперт ИИ
 
Сообщения: 555
Зарегистрирован: Пт янв 14, 2005 17:11:17
Откуда: РнД

Сообщение Scub » Сб июл 03, 2010 12:08:00

Если вопрос относится к подачи электричества к компьютеру, на котором установлена программа управления, то ни какого резервирования нет (пока).

А если быть подробнее, то дело обстоит так. Есть технологическая сеть (Industrial Ethernet), к которой подключены 2 компьютера технолога (через них технологи управляют технологическим процессом), 1 инженерный компьютер (управление технологическим процессом, контроллером и сетью) и сам контроллер Siemens Simatic 400 (к нему подключены сотни датчиков и исполнительных механизмов технологического процесса, заложены локальные программы мониторинга, контроля и всевозможные блокировки). Моя программа установлена на инженерном компьютере и сконфигурирована как "сервер", а на двух остальных станциях оператора установлены копии программы, но сконфигурованы как "клиенты", которые и подключаются через сеть к "серверу" по tpc/ip. В свою очередь программа-сервер подключается через OPC к контроллеру и начинает управлять технологическим процессом, имитируя действия оператора. И что произойдет если вдруг отключить питание инженерного компьютера? Да ничего особенного, за исключением того, что моя программа перестанет управлять, а на двх станциях операторов высвечивается обозначение "нет связи", что свидетельствует, что управление отсутствует и они тогда могут перейти на ручное управление или на старое автоматическое управление. Конечно могу сделать так, что как только программы-клиенты видят, что программа-сервер не на связи, то одна из программ-клиентов может взять управление на себя, тем самым можно организовать резервирование или дублирование управления. Но овчинка не стоит выделки (пока). Дело в том что по статистики таких случаев, когда напряжение пропадает с инженерного компьютера или по каким-то другим причинам программа перестает управлять процессом сейчас бывает 2 раза в месяц. Так что сами поймите, что пока это не критично. Но если вдруг замечу, что "провалы" в управлении появятся чаще раза в неделю, то начну проектировать дублированное управление. Будет тогда семейство программ, которые подключены через ОРС к контроллеру, общающиеся между собой, следящие друг за другом и договаривающиеся кто в конкретный момент будет управлять.

Если вопрос относится к подачи электричества на технологическое оборудование (20-ти МВт элетропечь, охлаждение футеровки печи, скруббер-охладитель, рукавные фильтры и т.п.), то этот вопрос является не в компетенции программы управления и является критичным. В этом случае при "посадке" напряжения электроды печи остаются на своем прежнем месте, расплав металла в печи начнет остывать, останавливаются вентиляторы охлаждения футеровки печи, идет рост температуры на поверхности печи, что не хорошо сказывается на ее долговечности и т.п. Всех процессов, которые происходят в этот момент я не знаю, так как не технолог, но знаю с их слов что процессы эти не очень хорошие. С технической точки зрения резервных механизмом подачи энергии на электропечь нет, зато есть резервные подачи энергии на мой контроллер. У нас в "кроссовой" (где находятся шкафы котроллерной техники, шкафы ввода-вывода и т.п., т.е. технологическая "серверная") есть несколько огромных УПСов, которые могут в течение получаса питать все помещение.
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Сообщение Scub » Пт авг 06, 2010 19:24:18

Чего-то затихла тема. Ладно буду писать последние новости проекта. Как говорится, вести с "поля боя" (а может просто мысли в слух).

Приехал с отпуска и оформил остальные официальные документы. Программа проходила по документам как рационализаторского предложение. И называлось оно, как "Прогнозирующая система управления процессом охлаждения технологических газов обеднительной электропечи № 1". До испытаний был составлен график испытаний, сроки, ответственные лица и критерии оценивания. В качестве критерий оценивания были выбраны сравнительные графики старого регулирования и нового. Так же проводился анкетный опрос среди людей, причастных к управлению. В анкете можно было указывать замечания или дополнительные пожелания.

После месячных испытаний графики показали, что регулирование улучшилось более чем в 5 раз (точные данные смотрите выше), а средняя оценка составила 4,6 балла из 5 возможных. Эти оценки выставили 10 опытных (и не очень) технологов. Некоторые написали коротко, чтобы было замечательно, чтобы программа управляла не только одним объектом, но всей цепочкой объектов. Потому что производительность моего объекта сказывается на производительности остальных.

Был оформлены (но уже без меня) протокол, акт испытания предложения и акт об использовании инновационного мероприятия.

Вот теперь думаю насчет расширения сфер влияния программы. Хочу действительно, чтобы программа уже управляла еще большим количеством параметром. Но это уже будет вторая "рацуха".
(Как обычно и снова встречаю не которую долю непонимания и неверия, но на этот раз уже меньше...намного меньше)
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Re: Технологический автопилот

Сообщение DCV » Пт сен 03, 2010 8:02:03

Scub писал(а): Ладно, хозяин – барин, отключил на неделю. И что же? Взвыли технологи, сразу заметив разницу. (К хорошему очень быстро привыкают). Хорошо, возобновил управление. И вот уже 3 недели круглосуточно программа управляет сама,

Интересный пример победы компьютерного интеллекта в борьбе за собственное выживание.
Аватара пользователя
DCV
Эксперт ИИ
 
Сообщения: 615
Зарегистрирован: Ср апр 21, 2010 11:43:51
Откуда: Беларусь, Гомель

Сообщение Scub » Пт сен 03, 2010 16:11:59

Да это верно. Компьютерный интеллект намного лучше прогнозирует технологические ситуации и управляет объектом оперативней, чем человек. Да и не подвержен плохому настроению. Думаю, что сначала мы "обучаем" программы тем или иным "фишкам", а затем прийдет пора (думаю нескоро), когда программам не надо будет помощь "учителей", потому что они сами могут всему обучиться. Вот тогда-то прийдется тяжко. Такая вот конкуренция будет между людьми и программами.
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Сообщение DCV » Сб сен 04, 2010 7:26:25

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

Ваша программа только облегчила кому-то работу, или были люди, которые лишились работы? Не лишится ли кто-то работы после следующего этапа автоматизации?
Аватара пользователя
DCV
Эксперт ИИ
 
Сообщения: 615
Зарегистрирован: Ср апр 21, 2010 11:43:51
Откуда: Беларусь, Гомель

Сообщение Scub » Пт сен 10, 2010 3:59:35

Да, программа многим из технологов облегчила жизнь (хотя, думаю, что остаются те, кто не переносить ее на дух). Один из технологов сказал, что "легче стало процентантов...так на 30". Никто не лишился работы и не лишится ее даже в том случае, если программа будет управлять всем. А поле деятельности для управления огромно. Можно управлять не только моим скруббером-охладителм, но ступенями дожига, рукавными фильтрами, мощностью печи и самое гланое хим.анализом материала (никель и медь), выдаваемого печью. И это возможно сделать.
P.S. Договорился о том, что на следующей неделе будут проходить неофициальные испытания по управлению ступенями дожига.
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск

Сообщение Василий » Вс сен 26, 2010 0:47:51

А мне вот как человеку прагматическому интересно - какова должность Топикстартера на этом предприятии? Также в свое время не прочь был заняться автоматизацией, - но обычных людей с улицы к ней не подпускали:(
Ищу лучшей жизни
Василий
Главный по тарелочкам
 
Сообщения: 1206
Зарегистрирован: Ср фев 07, 2007 12:22:27
Откуда: Санкт-Петербург

Сообщение Scub » Вс сен 26, 2010 6:16:17

Хех, должность у меня что не на есть самая простая - слесарь КИПиА 5 разряда. )) Это официально. А неофициально наша специализированная бригада занимается поддержной, настройкой, программированием контроллеров (Simatic, Damatic, GE Fanuc). Дело обстоит в том, я - аспирант в своем институте и тема научной работы была создание такой программы, а чтобы быть поближе к объекту, то устроился на завод, не смотря на должность. Зато всегда "под рукой" возможность проведения активных экспериментом (конечно с согласия технологов, хотя у них официальная должность плавильщиков). Если честно, это тема - самая наболевшая для нашего коллектива, где все с высшим профильным образованием, за исключением бригадира (но в свое время с его помощью и была создана наша бригада).
P.S. Программа уже управляет двумя основными факторами одновременно (расходом распылительной воды и расходом воздуха на 1-ую ступень дожига). Неофициальные испытания прошли успешно, хотя есть еще над чем работать.
Scub
Редкий гость
 
Сообщения: 9
Зарегистрирован: Сб июн 05, 2010 15:12:45
Откуда: Норильск


Вернуться в Практический подход к искусственному интеллекту

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


cron


Rambler's Top100 Каталог ресурсов ListTop.Ru Каталог сайтов Союз образовательных сайтов Parenting.ru - Родители семья дети ребенок

     Сайт "Искусственный интеллект" - программирование ИИ от разработчика: общение, статьи, ссылки.