isicad.ru :: портал САПР, PLM и ERP :: версия для печати

Статьи

12 августа 2019

Проектирование. САПР. Нейронные сети. СНиПы. Можно ли все это собрать вместе?

Эмиль Фатхиев

Эмиль Фатхиев

Эмиль Фатхиев — ведущий инженер монтажного отдела ОАО ВНИПИнефть, опыт работы больше 10 лет.

Оригинал заметки: AlfaZero. СНиПы. Проектирование. САПР. Можно ли все это собрать вместе?

Сочинение. Сочинения меня в школе учила писать учительница музыки, а не литературы. Она объясняла, что пишешь сначала все, что можешь, все мысли, какие есть по теме, на черновик. Исписал страниц так шесть, а потом уже начинаешь редактировать: добавлять, переставлять, вычеркивать. В итоге должно получиться хорошее сочинение страницы эдак на две-три.

Так вот, этот пост своего рода черновик. Попытаюсь оформить свои мысли и потом выудить главное.

1. AlphaZero

Я очень впечатлился этой статьей. А потом меня еще больше поразила эта статья.

AlfaZero СНиПы

Что я знаю о шахматах? Очень немного, если честно. Меня всегда обыгрывал мой дед. А у него было всего два класса образования. Но я знаю, что у шахматистов есть некий рейтинг, которым они могут мериться. Уровень международного мастера – это около 2500 пунктов. Наикрутейший же мужик среди шахматистов – это Магнус Карлсен, у него 2800+ пунктов.

Компьютер победил человека еще 1997 году. Тогда проиграл Каспаров. И с тех пор мощность компьютеров только увеличивалась. На данный момент самая крутая программа Stockfish имеет рейтинг около 3300+ пунктов. А между наикрутейшим человеком и компьютером это космическая разница.

Теперь об AlphaZero. Если вкратце, то это программа для нейронных сетей, которую обучили играть в шахматы. В первый раз эта нейросеть обучалась 4 часа и потом села играть со специализированной программой Stockfish. Подчеркну, специализированной. Она обсчитывает 60 миллионов ходов в секунду, тогда как AlphaZero всего лишь 60 тысяч. И как итог, нейросеть разгромила эту программу в пух и прах. Из 100 партий она не проиграла ни одной, а 28 даже выиграла. Было много споров по поводу серии этих партий: библиотека дебютов и пр. И вот не так давно эту серию повторили и сыграли уже 1000 партий с предоставлением библиотеки дебютов и к тому же предоставлением форы по времени. Итог еще более впечатляющий. AlphaZero удалось выиграть 155 партий, 839 раз – сыграть вничью и проиграть всего 6 партий.

В двух словах: программу с нуля обучили играть в шахматы за несколько часов, после чего не оказалось никого и ничего, даже компьютера, способного в эти шахматы ее победить.

2. Численные методы

AlfaZero СНиПы

Я по образованию инженер-технолог. Окончил УГНТУ в 2010 году. Сейчас моя специальность называется «Газохимия», кажется. Тогда же она называлась «Основные процессы химических производств и химическая кибернетика». Именно слово кибернетика меня и подкупило тогда. (А еще я в детстве классе в пятом ходил в клуб юных техников в кружок программирования. Нравилось мне это дело.) Так вот, при поступлении в университет я и подумал, что с этим что-то связано. Как оказалось же, от кибернетики там было только слово. Но! Одной из дисциплин, которую нам преподавали, была «Численные методы».

Вычислительные (численные) методы – методы решения математических задач в численном виде. © wiki.

Что отложилось у меня в голове? Есть какой-то набор данных. Пусть будет таблица каких-то результатов. Табличная функция. Основываясь на этих данных, можно составлять системы нелинейных уравнений и с достаточной степенью точности прогнозировать новые данные. Внутри таблицы или выборки – интерполяция, вне таблицы – экстраполяция. Тогда мне это показалось очень интересным. Чуть позже уже на теплотехнике, когда нам задавали задачи на расчет цикла воды, я просто вбил несколько таблиц из учебника (Pv кривые, Vs что-то такое, не помню уже) в специальную программу (Maple, кажется) и сходу получил готовую функцию. То есть вводя данные, например температуру воды и давление, я сразу мог знать, какой объем она будет занимать, и наоборот. Как сильно уменьшится объем, если охладить на n градусов, и многое другое. Еще раз на пальцах, я не занимался вычислением, я просто ввел исходные данные. Программа сделала все сама. Расчетки я тогда клепал всему потоку.

По сути, правильно составив эту систему уравнений, т.е. математическую модель, можно прогнозировать или рассчитывать достаточно важные и интересные процессы. Например метеорология или экономика. Даже мы сами, открыв Яндекс погоду и посмотрев, что за последние десять лет на этих выходных был дождь и сильный ветер, вряд ли будем планировать выезд за город.

3. СНиПы, ГОСТы, ОСТы, ЛНД и другие стандарты

AlfaZero СНиПы

Строительные нормы и правила, государственные стандарты, отраслевые стандарты, локальные нормативные документы. Всего в промышленности их огромное количество. На данный момент точное количество я сказать не могу. Но по радио какой-то чиновник от министерства энергетики сказал, что их около полутора миллионов. На форуме норма-кс говорят о цифрах в 250 000. Так или иначе, это все равно очень много. И очень часто строители сталкиваются с противоречиями в них. На некоторые вещи же стандарта нет вообще. Например, куда девать выброс с криогенного теплообменника? В общий факельный коллектор?

4. Проектирование и САПР

AlfaZero СНиПы

Начну с того, что работаю я инженером-проектировщиком в компании, которая занимается комплексным инжинирингом нефтеперерабатывающих производств. Грубо говоря, есть, например, заказчик, дядя Вася. Хочет он построить завод по переработке нефти. Начинается работа. Сначала инженеры-технологи обсчитывают базовый проект. То есть – какой конкретно вид производства мы будем проектировать (гидрокрекинг, висбрекинг, ЭЛОУ-АВТ и пр.). Имея исходные данные в виде состава и количества сырья, технологи рассчитывают основное оборудование: емкостное оборудование (колонны, емкости, резервуары, сепараторы и пр.), теплообменное оборудование, насосы, реакторы и многое другое. Как правило, в программе хайсис. Считаются материальные балансы. Составляются схемы материальных потоков. Далее инженер-монтажник расставляет и компонует это самое оборудование и соединяет все это дело трубопроводами. В воздухе, естественно, вся эта приблуда не висит, а инженер-строитель проектирует конструкции, на которых будет стоять оборудование и на которых будут лежать трубопроводы. Параллельно электрики ведут свои кабели от силового оборудования к подстанциям, киповцы тянут свои провода от датчиков к шкафам и в операторную, механики же проектируют, какой именно конструкции будут, например, ректификационные колонны, чтобы ничего не сломалось и не взорвалось раньше времени. Есть еще водоснабжение и канализация, вентиляция, организация строительства, производство работ и пр. Это – если вкратце.

Так вот, на то, чтобы сделать компоновку установки, уйдет примерно год работы. Это еще очень хорошие сроки. Сколько считаются базовые проекты, я не знаю, но на ПД обычно год уходит. Со всеми опросными листами, заданиями и т. п. Еще год уйдет на рабочку. То есть в среднем уходит 2-3 года на проектирование одной не очень большой установки. Не целого завода, где установок может быть несколько десятков, а только одной такой установки. В Татарстане, например, модернизацию производства всей нефтянки начали еще в начале двухтысячных годов. Прошло почти 20 лет, а модернизация продолжается и продолжается. Уже следующий этап грядет, когда нужно будет модернизировать и реконструировать уже то, что было модернизировано. Процесс этот, можно сказать, непрерывный.

САПР – системы автоматизированного проектирования. Программы, помогающие инженерам выполнять свою работу проще и быстрее. Если раньше, например, чертежи чертились на кульманах, теперь же – в автокаде или компасе. Причем программы все эти узкоспециализированные для каждого из инженеров в отдельности. Так, например, технолог, считающий процесс в хайсисе и начертивший схемы в автокаде, понятия не имеет, что такое Тэкла, в которой строитель считает свои металлоконструкции. Оба они почти ничего не слышали о пвп-дизайне или пассате, в которой механик считает свои емкости. Монтажник считает в СТАРТе или цезаре трубы на циклическую прочность, например. Есть программы для подсчета изоляции, есть свои программы даже для сметчиков. Ну и всех их, конечно же, объединяет пдмс или е3д или интерграф какой-нибудь. А может быть, даже эдж у кого-то стоит .

AlfaZero СНиПы

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

Очень важным шагом я считаю попытки создания так называемой системы сквозного проектирования. Года три назад я наткнулся на одну очень хорошую статью по этой теме. А вот сама презентация.

Суть такова, что такая система уже с самого начала проектирования позволяет распараллеливать процессы. Не так последовательно, как было у меня в описании: технологи – механики – монтажники/электрики/киповцы – строители. А все вместе сразу, и при этом почти вся информация оказывается в этой самой трехмерной модели. Ткнув в любой ее элемент, можно получить полную информацию: ткнули в отвод – посмотрели схему, на которой нарисована наша труба; ткнули в насос – можно глянуть и опросник, причем самой последней ревизии. Есть еще BIM-модели. В суть я не вникал, но, как мне сказали, там можно будет даже проследить температуру воздуха в лифте здания. Наверное, это круто. Но! Но...

Теперь я подхожу ближе к цели своего повествования. Все эти трехмерные программы, разумеется, хороши, но они не включают в себя расчетные модули других программ. Можно, конечно, из Тэклы импортировать строительную часть в пдмс, можно из пдмс импортировать данные в СТАРТ. Но на текущий момент это всего лишь трехмерная картинка.

5. Математическая модель

AlfaZero СНиПы

На уроках программирования в клубе юных техников мы с преподавателем однажды решали задачку. Нужно было найти выход из лабиринта. Исходные данные: точка входа, точка выхода и сам лабиринт в виде, например, матрицы NxM, состоящей из нулей и единиц, где ноль – пустое пространство, а единица – стена. Задачу мы тогда решили. Более того, при условии, что выход из лабиринта в принципе возможен, написанная нами программа всегда выбирала наиболее короткий путь.

Сейчас для определения кратчайшего пути (или оптимального маршрута) из точки А в точку Б используется множество программ. В том же гугле или яндексе или 2гис достаточно вбить только местоположение пункта назначения, и он выдаст тебе оптимальный маршрут, причем сразу со всеми видами транспорта, пересадками и предполагаемым временем пути. Яндекс.Метро – вбиваем начальную и конечную станцию и смотрим, где и как пересесть и даже в какой вагон входить.

Я подумал, а вот что если точка А – начало моего трубопровода, а точка Б – конец. Много ли нужно ресурсов, чтобы построить оптимальный маршрут трубопровода? А двух трубопроводов? А двух трубопроводов, но так, чтобы большую часть пути они следовали вместе? Мы как-то делали стадию ПД, я занимался своим любимым – межцеховкой. И у меня оказалось, что на эстакаде в общей сложности лежит 200+ труб. Двести!!! Самое нагруженное место – семь ярусов эстакады в 12 м шириной. Нехило, да? Можно ли было тогда «оптимизировать» эстакаду? Ну, например, сделать не семь ярусов, а шесть, но шириной 14 метров? Ушло бы в этом случае металла меньше? Или больше? Это никто не считает, нет таких ресурсов, чтобы проектировать сразу несколько вариантов. А казалось бы, нет ничего проще, чем рассмотреть данную задачу как задачу оптимизации системы нескольких уравнений с несколькими переменными: количество и диаметр трубопроводов, наличие изоляции и арматуры. Есть киповские клапаны – изволь ярус заложить такой, чтобы пройти можно было, обслужить и механизировать. И таким же образом в качестве аргументов этой системы добавлять остальные исходные данные, влияющие на расположение и конфигурацию трубопроводов. Ну, например наименование продукта: кислота, нафта или просто азот. Добавим также в качестве аргументов этой системы сортамент металлоконструкций и труб. Добавим другие стандарты, согласно которым будут проложены трубы, ГОСТ 32569, например, или B31.3. То есть можно описать такую математическую модель, которую можно будет рассматривать вообще с любых сторон. И решать задачи оптимизации с любых позиций. Например, в случае эстакады – наименьший расход металла и, как следствие, материальных затрат.

Можно ли такой же подход организовать к компоновке оборудования? Описать модель, в которой уже нужно будет располагать не трубы в металле, а оборудование на участке строительства? Расположить здания, эстакады и остальные блоки так, чтобы общая площадь была наименьшей, но при этом установка была безопасной. И также внутри блоков проводить подобную оптимизацию. Обеспечить наименьшие размеры насосной, но при этом чтобы все обслуживалось и механизировалось? Мне кажется, что можно.

6. Идея

AlfaZero СНиПы

Что если отдельные части проектирования отдать на откуп машинам? Загрузить не библиотеку дебютов, как в шахматах, а все нормативные документы и госты на проектирование. Загрузить тысячи типовых проектов. Обучить их, как AlphaZero, для начала считать процессы в хайсисе. Потом эти данные применять уже для расчета оборудования в пвп-дизайн. Потом на основе этих данных скопомпоновать блоки, здания и сооружения в установку. Протянуть трубы, кабели, дороги, сети и пр. И уже в конце на основе всего этого нарисовать 3D-модель. М? Более того, все это уже будет оптимизировано таким образом, чтобы наиболее дешево и максимально безопасно построить установку. То есть мы получим ту самую пресловутую кнопку «ПРОЕКТ», о которой так мечтают заказчики. И вместо 2-3 лет на проектирование будет уходить секунда-две. Проектировщик вымрет как класс, как когда-то кучер или трубочист .

P.S. Я не один такой умный, конечно же. По ключевым словам «сквозное проектирование» уже вылезают видюшки «machine learning and AI at Engineering». И у AlphaZero на тот момент было около пяти тысяч серверов для обучения. Это понятно. Сколько времени уйдет на то, чтобы эта идея воплотилась в жизнь? Мне кажется, что не меньше чем 20 лет. А если учитывать инерционность мышления и консерватизм некоторых проектных институтов, то и все 50. Но я знаю, что систему распознавания лиц, например, делали наши российские программисты (Китай теперь вроде бы хочет выкупить эти технологии и развивать у себя). То есть у нас есть толковые парни. Ведь что СТАРТ, что пвп-дизайн начинался с маленького коллектива инженеров, у которых была идея и энтузиазм. А теперь у нас есть целые компании – российские компании – которые продают и внедряют софт для инженеров. Я также считаю, что если не заниматься этой задачей сейчас, то можно безнадежно отстать от всего остального мира, как, например, в микроэлектронике. И тогда мы, возможно, вообще потеряем промышленность и энергетику.

Засим приглашаю вас подискутировать на эту тему. С какими сложностями можно будет столкнуться на пути создания такой нейросети-проектировщика? От чего отталкиваться? Или, может быть, уже все придумано до нас?

Все права защищены. © 2004-2024 Группа компаний «ЛЕДАС»

Перепечатка материалов сайта допускается с согласия редакции, ссылка на isicad.ru обязательна.
Вы можете обратиться к нам по адресу info@isicad.ru.