V minulých článcích jsme si ukázali, jak zpracovat a pak analyzovat data z procesu, nalézt závislosti mezi veličinami, které tento proces ovlivňují a vytvořit si tak určitý model procesu, který pak můžeme dále využívat pro jeho optimalizaci. V tomto článku si předvedeme tři způsoby optimalizace, které můžeme provést s pomocí systému ElTav.
Optimalizace procesů
Analýzou dat získáme naučenou neuronovou síť. Probrali jsme si tři typy neuronových sítí:
- Kohonenova síť soutěžní strategie má význam při rozpoznávání vzorů, pro model výrobního procesu není určena
- Lineární síť nám dává přímo vzorec závislosti proměnných, bohužel vztahy v průmyslových procesech jsou zpravidla nelineární. Uplatnění má v jiných oblastech, například v ekonomii, jak ukazují dřívější články na Programujte a příklady demo verze systému TNeuron na mé stránce.
- Sigmodidální síť postihuje poměrně přesněji závislosti veličin ve výrobním procesu, nedává nám však žádný vzorec, vše je skryto ve struktuře synaptických vah sítě.
To, že sigmoidální síť nedokáže popsat proces exaktními vzorci neznamená, že nám nemůže dát doporučení k jeho zkvalitnění, zlepšení jakosti a podobně. Jak si ukážeme dále, naučenou síť je možné s výhodou k optimalizaci procesu použít.
Možnosti optimalizace
Jako příklad si uveďme konkrétní příklad řešení jakosti taveb. Předpokládejme, že metalurg získal data za uplynulé období, odstranil odlehlá data a z těchto dat naučil sigmoidální neronovou síť. Nyní chce ovlivnit proces tak, aby dosáhl co nejvyšší kvality.
Neuronová síť představuje po naučení ve zjednodušené podobě model části výrobního procesu s jeho vnitřními vztahy. Pokud je možné některé parametry ovlivnit, dokáže systém s určitou pravděpodobností doporučit nejvhodnější hodnoty nebo kombinace tak, aby výsledek byl co nejlepší. Výsledky učení se dají použít několika způsoby:
- Technolog si vybere tavbu, která například vykazuje nízkou kvalitu, a některý parametr a sleduje, jak různé hodnoty tohoto parametru ovlivní pravděpodobný výsledek tavby při zachování hodnot všech ostatních parametrů.
- Technolog si vybere tavbu a několik parametrů, které může ovlivnit a systém mu doporučí takovou kombinaci, aby výsledek byl co nejlepší, a pravděpodobný výsledek zároveň odhadne.
- Pro nastavení podmínek výrobního procesu je nutné, aby systém nalezl kombinaci zadaných parametrů platnou pro všechny tavby celého vzorku tak že úhrnný výsledek je co nejlepší. Předpokládané výsledky pro jednotlivé tavby opět vypíše. .
Nové verze programů
Systém ELTAV, o kterém se dále zmiňuje tento článek, již není od roku 2015 dodáván. Aktuální informace obsahují mé další články na tomto serveru. 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 na www.programujte.com v sekci Ostatní, Umělá inteligence a robotika a stáhnout si jej můžete stejně jako další programy naší firmy na adrese http://optiintelligent.cz.
Popis systému ELTAV je zachován pro čtenáře, kteří si jej stáhli již dříve.
Optimalizace v systému ELTAV
V systému ELTAV provádíme optimalizaci procesu ve funkci hlavního menu Optimalizace. Jednotlivé podřízené funkce odpovídají výše uvedeným úlohám, pouze poslední funkce Pravidla má jiný význam a ovlivňuje výsledky optimalizačního procesu. Ve všech případech předpokládáme, že je již naučena sigmoidální síť.
Pro optimalizaci použijeme připravený soubor v adresáři Optim1.
- Parametry, Otevři, Optim1, ctrl.txt
- Data, Soubor, data.txt
- Zpracování, Učení, OK, OK
Optimalizace proměnné
Odpovídá první úloze. Zvolte funkci Optimalizace, Proměnné. Ve vzorech označte myší jeden řádek a v seznamu proměnných jednu proměnnou, např. x. Stiskněte dole tlačítko Meze, zobrazí se rozsah hodnot proměnné x. Stiskněte nyní tlačítko Závislosti, v tabulce se zobrazí seznam hodnot proměnné x v zadaném intervalu a k nim hodnot které nabývá funkce, jestliže ostatní hodnoty zůstávají nezměněny. Závislost můžete také zobrazit tlačítkem Graf.
V tomto případě máme konkrétní situaci definovanou naměřenými hodnotami a ptáme se, jak by se měnil výsledek, kdyby hodnota jedné proměnné se pohybovala od zadaného minima k zadanému maximu po zadaném kroku.
Funkci ukončíte tlačítkem Návrat.
Optimalizace vzoru
Odpovídá druhé úloze. Zvolte funkci Optimalizace, Vzory. Zvolte vzor a jednu nebo několik proměnných. Stiskněte Zapiš. Meze se objeví v seznamu proměnných pro optimalizaci. Postup můžete opakovat pro další proměnnou. Zvolte zda chcete hledat maximum nebo minimum a stiskněte tlačítko Optimalizuj. V horní tabulce se objeví doporučená hodnota nebo hodnoty tak, aby bylo dosaženo cíle.
Komplexní optimalizace
Je obdobná předchozí úloze, avšak nalezne optimální řešení pro všechny vzory. Zvolte Optimalizace, Komplexní, definujte a zapište meze, Zadejte Hledej minimum. Zobrazí se doporučené řešení a výsledky skutečné a vypočtené ve všech vzorech pro toto řešení.
Cvičení
Vytvořte si v Excelu náhodnou proměnnou x a funkci y = a(x - b)2 + c, uložte do textového souboru odděleného tabulátory a pomocí ElTav vyhledejte maximum pro a < 0 a minimum pro a > 0. Náhodnou proměnnou volte v oboustranném intervalu kolem hodnoty b. Před učením změňte počet testovacích řádků na 0 (omezení demo verze max. 20 vzorů). Výsledek vám má vyjít přibližně b. V případě méně přesných výsledků učení zvyšte v parametrech počet iterací.
Závěr
Ukázali jsme si, že ačkoliv po naučení sigmoidální sítě nenalezneme vzorec závislosti, můžeme přesto proces optimalizovat úpravou těch parametrů, které lze ovlivnit.