Zhruba před třemi lety jsem zde publikoval řadu článků o umělé inteligenci. Od té doby jsem dále pokračoval ve vývoji a v současné době bych rád navázal na předchozí seriál a v následujících článcích komplexně shrnul problematiku analýzy a optimalizace výrobních procesů metodami umělé inteligence tak, jak jsem se s ní setkal ve své praxi.
Význam optimalizace v současném podnikání
Optimalizace procesů se v současné době stává jedním z významných předpokladů konkurenceschopnosti výrobních společností. Úspory energie, materiálu a dalších vstupů, zvyšování kvality výrobků, to vše se odráží na ekonomice výroby, umožňuje snížit cenu proti konkurenci a zvyšuje spokojenost zákazníků. Uveďme si některé konkrétní příklady:
- Výběr z článku publikovaného o analyticko-optimalizačním systému ELTAV na semináři TEORIE A PRAXE VÝROBY A ZPRACOVÁNÍ OCELI, Rožnov 2009: „Jedním z prvních vážných jakostních problémů řešených s pomocí programu ELTAV byly hřídele větrných elektráren. V průběhu r. 2007 došlo k prudkému nárůstu zmetků z titulu UZ vad až na 19 %. Pro řešení byl sestaven soubor dat z celého průřezu výroby oceli na ocelárně, který obsahoval data z 297 taveb: vývoj chemického složení oceli, průběh teploty oceli a aktivity kyslíku, složení pánvové strusky, obsah vodíku, spotřeba hliníku, doba lití a v neposlední řadě jména operátorů. Tohle byla vstupní data pro učení neuronové sítě a výstupem byly binární hodnoty 0 – jakostní tavba (hřídele bez UZ vad), 1 – nejakostní tavba (hřídele s UZ vadou v přírubě). Nad výsledky zpracovaných dat programem ELTAV proběhla diskuse mezi technology. ELTAV jim napověděl, že u taveb s horší uhlíkovou desoxidací se nevyskytují UZ indikace na vyrobených hřídelích. Na základě interpretace výsledků byla navržena úprava desoxidace oceli. Změnou desoxidace došlo k okamžitému zlepšení výmětovosti z titulu UZ vad pod 1 % a odbourání vad v přírubě.“ Význam tak podstatného zkvalitnění výroby a odstranění ztrát z vysoké výmětovosti je zřejmý.
- Provedli jsme několik pokusů v různých aplikacích dělení tyčového a plošného materiálu. Nezávisle na sobě dělil materiál počítač a člověk. Výsledky byly úspora mezi 200 000 a 300 000 Kč za přibližně 14 dnů.
- Optimalizace může být užitečná dokonce i v běžné praxi. Uvádím část z dopisu majitele domku, který si objednal lišty a požádal mě, abych mu vytvořil optimální plán, jak z nich nařezat potřebné díly: „Jak vidím z výsledku, kdybych optimalizaci provedl před nákupem materiálu, ušetřil jsem dvě celé délky. To by se mi asi těžko povedlo normálním odhadem v průběhu řezání. Teď můžu řezat díly bez dlouhého přebírání materiálu a dvě celé délky zůstanou pro případné budoucí použití při opravách. Řemeslníci by asi nevěřícně kroutili hlavou.“
Optimalizace: člověk nebo počítač?
Optimalizovat proces mohou samozřejmě odborníci z dané profese. Jako podklad jim mohou sloužit různé informační a monitorovací systémy, které jim dodají data pro rozhodování v potřebném množství a kvalitě. Odborník však nemusí obsáhnout výrobní proces v plné šíři se všemi jeho specifickými zákonitostmi, může být ovlivněn svými subjektivními názory a s jeho odchodem se jeho znalosti pro firmu ztrácí.
Dnes však již existuje také jiná cesta, než ponechat vše na odborníkovi. Jak již bylo uvedeno v předchozím seriálu, lze vytvořit systémy, které se dokážou učit ze shromážděných dat, odvodit si samy zákonitosti procesu a podle nich pak navrhnout optimální řešení. Ačkoliv současná věda nedokáže vytvořit myslící stroje, jak je známe z vědeckofantastické literatury, určitou inteligencí již náš software dokážeme vybavit.
Rozdíl mezi rozhodováním s pomocí klasického a inteligentního systému ukazuje následující obrázek:
V levé části obrázku vidíme klasický systém. Kvalitní monitorovací systém je schopen shromáždit data, která odborník potřebuje k rozhodování, řešení je však již úplně na něm.
V pravé části obrázku je inteligentní systém. Opět je podstatné získat dostatečně rozsáhlou množinu dat, což nemusí být nutně součástí inteligentního systému a může k tomu použít vhodný firemní nebo monitorovací systém. Na rozdíl od klasického systému je účelem inteligentního systému navrhnout řešení, které pak posoudí odborník. Vždy tedy rozhoduje člověk, avšak v tomto případě mu řešení navrhne počítač.
To, že vždy rozhoduje člověk, je sice můj názor, ale je to dobrý způsob, jak se vyhnout potenciálním problémům. Nijak to nesnižuje význam těchto systémů. Například u dříve popsaného systému optimalizace válcování profilů sice mají operátoři možnost navržený plán upravit, ale podle našich informací v naprosté většině případů jen návrh potvrdí, což jim jistě výrazně zjednoduší práci, nehledě na výše zmíněné úspory materiálu.
Výukový software
Software, který budeme v seriálu používat, je spolu s dalšími informacemi, demoverzí a výukovými programy k dispozici na stránkách firmy OPTI Intelligent s.r.o. Jsou zde programy, jejichž základ tvoří inteligentní systémy integrované ve skutečných projektech a jednoduché programy pro výuku umělé inteligence. Jsou určeny pro nekomerční užití a některé z nich určitým způsobem omezeny. Některé programy souvisí s články v předchozím seriálu a jsou tam podrobně popsány. Software na této stránce bude postupně doplňován o demoverze nových systémů.
Nová verze analytického systému Opthan
Mezi výukovými systémy bylo také demo již zmíněného systému ELTAV. Od roku 2015 již není tento systém dodáván. Aktuální informace obsahují mé další články na tomto serveru www.programujte.com v sekci Ostatní, Umělá inteligence a robotika. Systém ELTAV byl nahrazen modernějším systémem Opthan, jehož popis je v článku Analýza a optimalizace - Software 2 a Analýza a optimalizace - software 3 a stáhnout si jej můžete stejně jako další programy naší firmy na adrese http://optiintelligent.cz.
Další popis systému ELTAV je zachován pro čtenáře, kteří si jej stáhli již dříve.
Původní systém ELTAV
Program ELTAV je demoverze pro nekomerční využití, některé funkce jsou proto určitým způsobem omezeny co do velikosti dat, na výukových souborech je však systém plně funkční. Pro nekomerční účely, například bakalářské nebo diplomové práce, vám mohu vygenerovat plně funkční systém pro jeden soubor. Předpokládám však, že bude v průběhu nejbližšího období nahrazen novým modernějším systémem s jednodušším ovládáním.
Úvodní příklad
Abyste si funkci programu vyzkoušeli, proveďte zatím bez vysvětlení následující jednoduchý výpočet:
- funkce Parametry Otevři
- adresář data_lin
- soubor ctrl.txt
- funkce Data Soubor
- soubor data.txt a OK
- Zpracování Učení a 2x OK
- funkce Analýza Závislosti Reálná data
- V dolním řádku výsledku se objeví nalezený funkční vztah
- Ukončíme tlačítkem Návrat vpravo dole a pak Parametry, Konec
V tomto příkladu se systém ELTAV z připravených dat data.txt v adresáři data_lin naučil lineární závislost y = 3 x1 + 2 x2 - 1.
Jednalo se pouze o jednoduchý příklad, který bychom mohli řešit také pomocí statistické regrese. V dalším výkladu se budeme zabývat mnohem složitějšími úkoly.
Postup při analýze a optimalizaci
Celkový postup při analýze a optimalizaci procesů ukazuje následující obrázek:
- Data pro analýzu si můžeme připravit v Excelu nebo použít tabulky z databáze, v demoverzi pouze v Excelu
- Z Excelu provedeme export do textového souboru, pro tabulky z databáze je nutný modul provádějící transfer
- Provedeme statistické předzpracování
- Nalezení a odstranění odlehlých dat
- Nalezení a odstranění redundantních dat
- S využitím technologických pravidel provedeme hodnocení procesů nebo hodnocení zapíšeme ručně
- Data po statistickém předzpracování rozdělíme na trénovací data a data pro vyhodnocení kvality učení
- Metodou učení získáme model procesu, posoudíme jeho kvalitu
- Model využijeme dvěma způsoby:
- Pomocí inteligentní datové analýzy provedeme úpravu trénovacího souboru s cílem zkvalitnit model dalším učením z upravených dat
- Pokud jsou data a z nich naučený model dostatečně kvalitní, můžeme provést optimalizaci. Abychom vyloučili sice optimální, ale z technologického hlediska nereálná nebo ekonomicky nevhodná řešení, používáme optimalizační pravidla
Datové soubory
Pro analýzu a optimalizaci je především nutné si připravit dostatečně rozsáhlý soubor dat. V současné době to však nebývá problém, data z procesu snímají zpravidla automaticky čidla, kvalitu definují dodavatelsko-odběratelské vztahy, další data se dají získat z podnikového informačního systému atd.
Formát souboru dat
V analytických systémech používám strukturu souborů odvozenou z představy databázových tabulek. Některé aplikace jsem pak snadno doplnil konvertorem, který čte data přímo z databáze. Příkladem takového datového souboru mohou být soubory pro systém ELTAV.
Prohlédněte si v Excelu soubor data.txt v již zmíněném adresáři data_lin.
- Každý řádek počínaje druhým obsahuje jeden vzor, tj. data jednoho procesu, např. jedné tavby.
- Každý sloupec počínaje druhým obsahuje data jedné sledované položky.
- Vybraný sloupec obsahuje výsledek
- u této lineární sítě požadovaný výsledek jako reálné číslo.
- u složitější tzv. sigmoidální sítě se později vybere jedna z možností
- požadované hodnocení 0 = tavba v pořádku, 1 = jakostní problém .
- požadovaný výstup v intervalu <0,1>
- požadovaný výstup jako reálné číslo, pak musí být definován parametr Normalizovat výstup.
- První řádek obsahuje názvy sledovaných položek.
- První sloupec obsahuje identifikátory řádků - například čísla řádků.
- Pro sledované vzory a vybrané veličiny se do výpočtu zahrnují jen ty řádky, které mají vyplněny všechny údaje .
Takto připravený soubor se pak v Excelu exportuje do textového souboru příkazem Uložit jako, Jiné formáty, Text (oddělený tabulátory).
Vedle datového souboru používá ELTAV také malý řídící soubor, ten se však vytváří interaktivně a není určen k editaci.
Závěr
V tomto díle seriálu jste se seznámili s výhodami, které poskytuje nová metoda analýzy a optimalizace procesů. Nastínil jsem postup, jak tento úkol realizovat a zatím bez podrobnějšího vysvětlení předvedl drobnou ukázku jednoduché analýzy dat. V příštím díle se budeme věnovat první fázi uvedeného postupu zpracování - statistické analýze a předzpracování dat.
Cvičení
Vytvořte si v adresáři data_lin vlastní soubor, který bude obsahovat podobná data, ale splňující jiný lineární vztah, a způsobem popsaným v úvodním příkladu se zadáním jména vašeho souboru místo data.txt si ověřte, že systém ELTAV tento nový funkční vztah nalezne. Dbejte přitom na to, aby vzory byly navzájem dostatečně odlišné.
Literatura
- Korbáš, M., Opler, A., Teda, J. Prognózování, analýza dat a optimalizace parametrů technologického procesu. Hutnické listy, 2008, č.4, s. 47-49.
- Korbáš, M., Opler, A., Machovčák, P, Teda, J.: Optimalizace technologického procesu ve společnosti VHM s využitím neuronových sítí. Teorie a praxe výroby a zpracování oceli, str 143 - 149, 2009, Rožnov, ČR.
- Machovčák, P., Opler, A., Korbáš, M., Teda, J.: Optimalizace tavení v elektrické obloukové peci s využitím umělé inteligence, Sborník přednášek Teorie a praxe výroby a zpracování oceli, str. 45-51, Rožnov 2010.