Въведение
В училище, за да затвърдим знанията си, ни задаваха да решаваме много еднотипни примери. Постоянно се дразнехме: какво е ценно в това? Да заместиш две-три стойности във формула и да получиш отговор. Къде е полетът на мисълта? Реалността се оказа по-сурова от училището.
Сега работя като аналитик в ИТ. Преди да вляза в ИТ сферата, работих като инженер по топлотехника, програмист на ЧПУ и участвах в изследователски проекти.
От собствения си опит се уверих, че 95% от работното време инженерите и учените влагат в такива "еднотипни" действия. Изчисления на уравнения, проверки, регистрация на резултати, копиране на спецификации. Проект след проект, експеримент след експеримент, ден след ден.
Ето няколко примера от предишната ми работа.
До 2019 година правех модели за термовакуумно формоване. Ако такъв модел бъде покрит с нагрят пластик, получаваме изделие, което точно повтаря геометрията на този модел. Описание на технологията .
В цикъла на производство на модела е необходим цял набор от тясно специализирани приложения:
- Autodesk Inventor за 3D моделиране;
- Excel за извеждане на размерите на заготовката;
- Excel за изчисляване на стойността на модела;
- модул HSM за съставяне на управляваща програма за ЧПУ;
- Файловата система на компютъра за управление на файловете на програмите;
- Среда Mach3 за управление на ЧПУ машини.
От среда в среда данните трябваше да се прехвърлят ръчно, а това са цели таблици и масиви от стойности. Процесът е бавен, често се случват грешки.
Преди това участвах в разработването и производството на световоди (). Там имаше много изследвания, проектиране и изчисления: специализирани среди за топлотехнически и светлотехнически изчисления (Ansys, Dialux), плюс изчисления за икономическа ефективност, плюс Autocad и Inventor за модели и чертежи. И тук същите трудности: резултатът от изчислението от едно приложение трябва да бъде пренесен в друго приложение за следващото изчисление. И така многократно в търсене на оптимално решение.
Времето на инженера и времето на учените е много ценно. И тук не става въпрос за заплата. Зад изчисленията на инженера стои голям проект с екип. Зад изследванията на ученика стои перспектива за цяла индустрия. Но често висококвалифицираният специалист просто прехвърля стойности от една програма в друга, вместо да разработва концепции, моделира, интерпретира резултати, провежда диспути и мозъчни атаки с колегите.
Характерна черта на съвременната бизнес среда е бързината. Пазарът постоянно притиска. През 2014 година за създаването на макет взимахме 2-3 седмици. През 2018 – три дни, и това вече изглеждаше твърде дълго. В момента проектантът трябва да предостави няколко варианта на решение за същото време, което по-рано се отделяше само за един вариант.
И още един момент – инвестиции и рискове. За да получи проекта, предприятието преди подписването на договора с клиента трябва да вложи около 6% от стойността на проекта в концептуалната разработка. Тези средства отиват за:
- изследвания;
- концептуално проектиране;
- оценка на трудозатратата;
- подготовка на скици и т.н.
Компанията ги взема от собствения си джоб, това е собствен риск. Вниманието към концепцията изисква време от специалистите, а те са заети с рутинната работа.
След като се запознах с инструментите за работа в ИТ компания, се заинтересувах какви практики от автоматизацията на бизнес-процеси биха могли да бъдат полезни за инженерите. Тъй като бизнесът отдавна вече прилага роботизация на процесите (RPA) за борба с рутината.
Производителите на RPA заявяват следните предимства на този инструмент за автоматизация:
- универсалност (роботът може да работи с всяко приложение, с всеки източник на данни);
- леснота на усвояване (не са нужни дълбоки компетенции в програмиране и администриране);
- бързина на разработка (за готов алгоритъм отива по-малко време, отколкото при традиционното програмиране);
- реално облекчаване на служителя от рутинни операции.
По тези критерии ще проверим какъв е ефектът от използването на RPA в инженерно/научни изчисления.
Описание на примера
Ще разгледаме прост пример. Има конзолно закрепена греда с товар.

Нека погледнем на тази задача от позицията на инженера и от позицията на ученика.
Кейс „инженер“: има консольно закрепена греда с дължина 2 м. Тя трябва да задържи товар с маса 500 кг с троен запас на якост. Гредата е изработена от правоъгълна тръба. Необходимо е да се подбере сечение на гредата по каталога на ГОСТ.
Кейс „учен“: да се определи как влияят масата на товара, сечението и дължината на гредата върху носещата способност на тази греда. Да се изведе регресионно уравнение.
В двата случая се взема предвид силата на гравитацията, която действа на гредата пропорционално на масата на гредата.
В детайли ще разгледаме именно първия кейс — „инженер“. Кейс „учен“ ще се реализира по подобен начин.
Технически нашият пример е много прост. И специалистът по предмета ще може да го изчисли само с калкулатор. Преследваме друга цел: да покажем как RPA-решението ще помогне, когато задачата стане мащабна.
При опростявания ще отбележим също: сечението на тръбата — идеален правоъгълник, без заобляне на ъглите, без да се взема предвид заваръчният шев.
Задача на инженера
Общата схема на кейса „инженер“ е следната:
- На листа Excel имаме таблица с асортимента на тръби по ГОСТ.
- За всяка запись от тази таблица ние трябва да изградим 3D модел в Autodesk Inventor.
- След това в средата Inventor Stress Analyses извършваме анализ на якостта и експортираме резултатите в html.
- Намираме в получения файл стойността на „Максимално напрежение по Мизес“.
- Спираме изчисленията, ако запасът на якост (отношението на границата на текучество на материала към максималното напрежение по Мизес) е по-малко от 3.
Считаме, че гредата с подходящо сечение ще осигури троен запас на якост и ще бъде минимална по маса сред другите варианти.

В нашата задача специалистът работи с 3 приложения (вж. схемата по-горе). В реални условия броят на приложенията може да бъде и по-голям.
ГОСТ 8645-68 „Стилни правоъгълни тръби“ съдържа 300 записи. В нашата демонстрационна задача ще съкратим списъка: ще вземем по една позиция от всяко семейство размери. Общо 19 записи, от които трябва да изберем една.

Среда за моделиране Inventor, в която ще изградим модела и ще направим изчисления на якостта, съдържа библиотека от готови материали. Материалът на гредата ще приемем от тази библиотека:
Материал — Стомана
Плътност 7,85 г/куб. см;
Граница на текучество 207 MPa;
Граница на счупване 345 MPa;
Модул на Юнг 210 GPa;
Модул на срез 80,7692 GPa.
Така изглежда тримерният модел на натоварената греда:

А тук е резултатът от изчислението на якостта. Системата оцветява в червено уязвимите области на гредата. В тези места напрежението е най-високо. Скала отляво показва стойността на максималното напрежение в материала на гредата.

Сега ще предадем част от работата на робота.
Схемата на работа се променя по следния начин:

Робота ще съберем в средата Automation Anywhere Community Edition (по-нататък АА). Нека да разгледаме критериите за оценка и да опишем субективните впечатления.
Универсалност
Решенията RPA (особено комерсиалните) настоятелно се позиционират като средство за автоматизация на бизнес процесите и работата на служителите в офиса. В примери и учебни курсове се анализира взаимодействието с ERP, ECM, Web. Всичко е много "офисно".
Поначало имахме съмнения, дали АА ще може да улови интерфейса и данните от нашия Autodesk Inventor. Но всичко наистина сработи: всеки елемент, всеки контрол беше разпознат и записан. Дори в служебните форми с таблици с параметри, роботът получи достъп до необходимата клетка само с указание на мишката.
Следващото предизвикателство беше стартиране на студията за изчисление на якостта. И отново без проблеми. На този етап трябваше внимателно да работим с паузите между действията, когато системата очаква завършването на изчисленията.
Получаването на крайни данни от Web и вмъкването им в Excel протече гладко.
В рамките на тази задача универсалността се потвърди. Съдя по описанията на други доставчици на RPA, универсалността наистина е общо свойство на тази категория софтуер.
Лесно усвояване
За усвояване отнехме няколко вечери: курсове, учебни примери – всичко това е налично. При много доставчици на RPA обучението е безплатно. Единственият бариер: интерфейсът на средата и курсовете на АА са само на английски.
Бързина на разработката
Алгоритъмът за "задачата на инженера" разработихме и отстранихме за един вечер. Последователността на действията се събра в само 44 инструкции. По-долу на рисунката е фрагмент от интерфейса на Automation Anywhere с готовия робот. Концепцията Low code/No code – не се наложи да програмираме: използвахме рекодери на операции или drag’n’drop от библиотеката с команди. След това настройка на параметрите в прозореца с свойства.

Разтоварване от рутината
Роботът отнема 1 мин 20 сек. за обработка на една запис. Приблизително толкова време ние харчехме за обработка на една запис без робот.
Ако става въпрос за десетки и стотици записи, човек неизбежно ще се умори и ще започне да се разсейва. Специалистът може внезапно да бъде ангажиран с някаква друга задача. Формулата «Ако задачата отнема A минути, то N такива задачи могат да се изпълнят за A * N минути» не работи с човек – времето винаги е повече.
В нашия пример роботът ще обхожда записите последователно, започвайки от най-големите сечения. На големи масиви това не е бърз метод. За ускоряване може да се реализират последователни приближения, например, методът на Нютон или половинното деление.
Резултат от изчисленията:
Таблица 1. Резултат от подбора на сечение на гредата

Задача на учените
Задачата на учените е да проведат няколко числени експеримента, за да определят закона, по който се променя носимоспособността на гредата в зависимост от нейното сечение, дължина и маса на товара. Откритият закон се формулира под формата на регресионно уравнение.
За да бъде регресионното уравнение точно, учените трябва да обработят голям масив от данни.
За нашия пример се отделят масив от входни променливи:
- височината на профила на тръбата;
- ширина;
- дебелината на стената;
- дължина на гредата;
- масата на товара.
Ако трябва да направим изчисление поне за 3 стойности на всяка променлива, общо това прави 243 повторения. При продължителност от две минути на една итерация общото време ще бъде вече 8 часа – цял работен ден! За по-подробно проучване трябва да вземем не по 3 стойности, а по 10 или повече.
В процеса на изследването задължително ще се установи, че в модела трябва да се включат допълнителни фактори. Например, да се „изпробват“ различни видове стомана. Обемът на изчисленията нараства десетки и стотици пъти.
В реалната задача роботът може да освободи на учените няколко дни, които специалистът използва за подготовка на публикация, а това е основният показател за дейността на учените.
Резюме
«Продуктът» на инженера – реално работещо устройство, конструкция. Роботизацията на изчисленията ще намали рисковете чрез по-дълбочинна разработка на проекта (повече изчисления, повече режими, повече варианти).
«Продуктът» на учените – уравнение, закономерност или друго компактно описание. И колкото по-точно е, толкова повече данни са включени в анализа. RPA-решение ще помогне за генериране на информационна „храна“ за моделите.
Да обобщим нашия пример.
В ролята на изчислителен модел може да бъде всякакъв модел: модел на мост, модел на двигател, модел на отоплителна система. От специалиста се изисква всички компоненти на модела да бъдат в правилно взаимодействие помежду си и моделът да предоставя навън набор от ключови параметри-променливи.
Ролята на изчислителна среда играе всяко приложение, което специалистът използва в работата. Ansys, Autocad, Solidworks, FlowVision, Dialux, PowerMill, Archicad. Или нещо собствено, например програма за подбиране на вентилатори в производствения завод (вж. Програми за подбор на оборудване Systemair).
Като източник на данни разглеждаме и уебсайт, и база данни, и лист Excel, и текстов файл.
Крайният резултат от работата – отчет – е документ Word с автоматично генериран текст, диаграма Excel, набор от екранни снимки или разпращане на електронни писма.
RPA е приложим навсякъде, където се прилага инженерният анализ. Ето някои области:
- изчисления за здравина и деформация;
- хидро- и газодинамика;
- топлообмен;
- електромагнетизъм;
- междудисциплинарен анализ;
- проектно генериране;
- управляващи програми за CNC (например, нэстинг);
- медицински и биологични изследвания;
- в изчисления на системи с обратна връзка или нестационарни системи (когато крайният резултат трябва да бъде върнат в входните данни и изчисленията да се повторят).
Днес решенията на RPA активно се използват в бизнеса за автоматизация на процеси, работа с данни. В рутината на офис служителя, инженера и учените има много общо. Показахме, че роботите са подходящи за инженерна и научна дейност.
Нека обобщим нашите впечатления.
- Универсалност — да, RPA е универсален инструмент.
- Лесно усвояване — да, просто и достъпно, но е нужен език.
- Бързина на разработка — да, алгоритъмът се събира бързо, особено когато „изградите ръка“ в работата с рекодери.
- Облекчаване от рутинната работа — да, наистина е способен да донесе полза в задачи с голям мащаб.
Източник: habr.com
