Superstručný úvod do návrhu experimentů
Společně s touhou připravit nejlepší ořechovku jsem hledal projekt, v němž použiji statistickou metodu zvanou návrh experimentu, resp. Design of Experiments (DoE). Tuto metodu nyní vysvětlím na jednoduchém příkladu. Jako motivaci ke čtení nejprve shrnu, co si v tomto postu vysvětlíme:
DoE navrhuje kombinace vstupů, které máme experimentálně ověřit, abychom získali co nejpřesnější popis vztahů mezi vstupními proměnnými a výstupem procesu. Návrh vychází z expertních znalostí o důležitých vstupních proměnných, jejich vztahu k výstupní proměnné a rozsahu vstupních proměnných. Optimální DoE navíc zásadním způsobem snižuje počet nutných experimentů. Výstupem DoE je popis vztahů, který nám umožňuje proces nastavit tak, jak chceme.
Takto vypadají šarže pro ořechovku:
Příklad: Jak nastavit podmínky chemické reakce?
Představme si, že se v nějakém provozu vyrábí produkt P chemickou reakcí dvou surovin: A gramů první suroviny se smíchá s B gramy druhé suroviny a při teplotě S se nechají reagovat po dobu T. Výrobce hledá takovou kombinaci vstupů A, B, S, a T, aby získal co nejvíce produktu P (jak typické - nebo znáte někoho, kdo by chtěl vyrobit co nejméně svého produktu?). Rád by znal závislost P na hodnotách a kombinacích všech vstupů (surovin, teploty, času).
Takový úkol je ideální pro použití Design of Experiments. Tahle metoda nám totiž navrhne (odsud pojem Design) kombinace vstupů (od nyní jim budeme říkat experimenty, tj. zkušební kombinace), jimiž se dozvíme o zákonitostech procesu maximum informací. To nám umožní co nejpřesněji určit sílu mezi proměnnými a množstvím výsledného produktu.
Od nyní budeme P nazývat výstupní proměnnou, zatímco A, B, S a T jsou vstupní proměnné procesu. Naším cílem je nalézt nejlepší design procesu, tedy takovou kombinaci vstupů, která vyprodukuje co nejvíce výstupního produktu P. Úkol budeme řešit tím, že výrobu spustíme s různými designy (tj. kombinacemi proměnných); každému jednomu běhu budeme říkat experiment.
Co potřebujeme pro použití DoE?
Abychom mohli tuto metodu použít, musí vědět:
- které vstupy ovlivňují množství produktu P: v tomto případě jsou to hmotnosti A a B, teplota S a reakční doba T
- jaké jsou minimální a maximální hodnoty vstupů, při nichž má smysl proces testovat: hledáme zkušenosti typu
- “vzhledem k velikosti reakční nádoby můžeme dát 1000 - 5000 g A a k tomu 200 - 1000 g B”
- “máme dobrou zkušenost s teplotami mezi 75 - 95 °C”
- “při časech pod 30 s zůstává mnoho nezreagovaného A, zato při časech nad 100 s se sice všechny suroviny přemění, jenže produkt P se už začne rozkládat”
- jakým způsobem každý vstup ovlivňuje množství produktu P: čím konkrétnější, tím lepší:
- “abych získal více P, musím zvyšovat množství A i B - zjevně je mezi nimi nějaká rovnováha”,
- “při vyšší teplotě S dostáváme trochu vyšší P, ale ne o moc”,
- “necháváme to reagovat co nejkratší dobu, jinak se začne P rozkládat”.
Všechna tato fakta v následujícím kroku použijeme při zamyšlení nad tím, jaké designy vyzkoušet.
Jaké designy máme vyzkoušet?
Intuitivně asi cítíte, že pro splnění úkolu nebude stačit vyzkoušet jeden design. Budeme jich muset vyzkoušet několik, možná dokonce několik desítek! To se může docela prodražit. Designy pro experimentální běhy lze vytvářet dvěma způsoby:
- způsob naivní: Můžeme vyzkoušet úplně všechny možné kombinace všech vstupů a vybrat z nich tu, která povede k nejvyššímu množství P. Takových kombinací bude spousta! Můžeme třeba kombinovat dvě úrovně hmotnosti A (1000 a 5000 g) se dvěma hmotnostmi B (procesu prospívá rovnováha, tak tipneme 200 a 250 g suroviny B pro použití s minimálním množství A a potom 900 a 1000 g pro maximální množství A), čímž získáme čtyři různé kombinace. Každou z nich necháme reagovat při dvou nebo třech teplotách (třeba 75, 85 a 95 °C) a při několika časech mezi 30 a 100 s (tak třeba 35, 65 a 95 s). Původní čtyři kombinace se rozrostou na , tj. 36 zkušebních kombinací, z nichž jedna bude vykazovat maximální P a zbylých 35 bude k ničemu - výrobce je vytěží jen zčásti, anebo vůbec. To nezní jako ekonomický přístup k věci. Navíc nemáme zaručeno, že z tohoto přístupu vykoukáme, jakými zákonitostmi se proces řídí.
- způsob založený na statistickém návrhu experimentů (DoE): Za použití stejných vstupních informací může zdatný analytik (v dalším textu vyplyne, že tím myslím sebe, resp. toho, kdo se tímto blogem nechá inspirovat) učinit pár jednoduchých kroků, jimiž nejprve určí zákonitosti procesu a z nich následně najde optimální design. Těch pár kroků zní:
- sestavit rovnici, do níž zachytí informace od výrobce (konkrétně které vstupy a jakým způsobem ovlivňují výstup),
- sepíše si myslitelné rozmezí vstupů pro experimenty (tj. informace o minimálních a maximálních hodnotách vstupů)
- určí vhodný algoritmus a vygeneruje zkušební designy, tj. navrhne, jaké kombinace vstupních hodnot se mají vyzkoušet,
- po experimentech s těmito designy se u každé kombinace dozví výslednou hodnotu P a analýzou naměřených dat získá rovnici, která popisuje proces,
- a největší bomba na závěr: Pokud si navíc zvolí některý z postupů zvaných Optimální návrh experimentů (Optimal Design of Experiments), bude mu ke splnění těchto úkolů stačit podstatně méně pokusů než při naivním přístupu. Místo 36 pokusů jich bude stačit třeba jen 12 – to znamená třetinové náklady na suroviny, energie i lidskou práci. Za tuto redukci “zaplatíme” tím, že musíme relativně přesně specifikovat (tj. předpokládat) typy závislostí, ovšem je-li proces aspoň trochu známý, tyto zkušenosti bývají k dispozici.
A přesně tento přístup zvolíme pro hledání nejlepšího receptu na ořechovku.
Další zdroje
To je vše, co musíme na tomto místě o Design of Experiments znát. Nebudu nyní představovat, jak rovnici sestavit a jak vybrat algoritmus, neboť to si ukážeme v části věnované ořechovce. Pro zájemce o rigorózní popis metod DoE uvádím odkaz na webovou příručku NIST/SEMATECH e-Handbook of Statistical Methods a dále odkaz na skvělou knihu, která popisuje Optimal Design of Experiments: Optimal Design of Experiments: A Case Study Approach.
V dalším postu si přečtěte, jak se DoE snoubí s hledáním nejlepšího receptu na ořechovku.