Článek pojednává o unikátní realizaci expertního systému vytvořeného v prostředí Matlab s určením k podpoře řízení výroby antibiotika nystatin jako představitele širší škály biotechnologických výrobních procesů.
Výroba antibiotik je jednou z aplikačních oblastí bioprocesů, které vzhledem k jejich biologické povaze nebývá snadné zcela automatizovat. Části procesu výroby jsou obvykle automatizovány, nicméně hlavní rozhodnutí o vedení biotechnologických kultivací se často odvíjejí od empirických zkušeností obsluhy s daným procesem. Dosáhnout toho, aby tato hlavní rozhodnutí prováděl řídicí systém, lze zejména následujícími dvěma způsoby:
- regulací na bázi matematického modelu s použitím tzv. MPC regulátoru (Model Predictive Control),
- znalostním regulátorem (fuzzy regulace, expertní systém).
Pro mnoho biotechnologických výrob lze kinetiku procesu popsat matematickým modelem (viz např. [1], [2]), avšak v dále popisovaném případě je kinetika procesu natolik složitá a identifikace všech potřebných parametrů natolik obtížná (i vzhledem k potřebě měřit další, dosud běžně neměřené veličiny), že se nepodařilo vytvořit model dostatečně přesný pro potřeby regulace metodou MPC. Po několika pokusech byla posléze cesta použití MPC opuštěna a byla dána přednost druhé z variant – znalostní regulaci –, která je v tomto článku dále popsána.
Řízený fermentační proces
Předmětem zájmu tedy je použití metody řízení na základě znalostí (tzv. znalostní řízení) při průmyslové výrobě antibiotika nystatin, vznikajícího jako sekundární produkt při kultivaci buněk Streptomyces nursei. Nejde přitom o realizaci systému plně automatického řízení, ale o systém pro podporu rozhodování, jehož úlohou je v současné fázi prací uzavřít regulační smyčku prostřednictvím člověka, což by v ideálním případě jinak realizoval MPC regulátor.
Nystatin se vyrábí v Roztokách v závodě společnosti VUAB Pharma a. s. Nyní se používá také v léčbě nemocných s AIDS, kteří mají současně mnoho tzv. oportunních onemocnění, včetně mykóz.
Samotný proces výroby antibiotika nystatin probíhá ve fermentoru, který je osazen potřebnými snímači pro on-line měření hlavních veličin charakterizujících proces (pH, obsah rozpuštěného kyslíku, teplota, tlak atd.). Přesto je nutné vykonávat i další laboratorní měření (např. k určení množství nystatinu, množství živin), která však, vzhledem k jejich povaze, nelze provádět v reálném čase. Do celého procesu tak vstupuje mnoho zpoždění. Fermentační tank, ve kterém proces probíhá, proto sledují operátoři, tzv. mistři, kteří na základě provozních předpisů určují či přímo provádějí potřebné zásahy do fermentačního procesu.
Fermentační proces lze z hlediska řídicí strategie rozdělit na dvě fáze – vsádkovou a přítokovanou. Ve vsádkové fázi roste kultura. V přítokované fázi je vzrostlá kultura přikrmována a dynamika měřených veličin je zde jiná než ve vsádkové fázi.
V rámci projektu zaštítěného Technologickou agenturou České republiky (TAČR) byla navázána spolupráce mezi firmou VUAB Pharma, vyrábějící antibiotikum nystatin, Univerzitním centrem energeticky efektivních budov (UCEEB) ČVUT v Praze a VŠCHT Praha. Cílem projektu bylo zmenšit rozptyl charakteristických jednotlivých vsádek (šarží). Protože výroba nystatinu není zcela automatizována, bylo třeba vytvořit systém pro podrobnější dohled nad právě zpracovávanými šaržemi, který by zejména prováděl pokročilejší výpočty, jež jsou výsledkem probíhajícího výzkumu. Pro tento účel byl vyvinut unikátní expertní systém, který spojuje vývojové prostředí Matlab a vlastní provozní zařízení a umožňuje tak ověřovat platnost různých teoretických vztahů přímo v reálném čase. Jde o prototyp podpůrného systému pro obsluhu, která se stará o řízení a průběh kultivace (dále dohledový systém).
Při návrhu dohledového systému byly využívány znalosti, zkušenosti a provozní údaje z hlavní výroby (tzv. provoz), ale pro ověření funkce navržených opatření byla v průběhu řešení uvedena do provozu laboratoř s fermentorem menších rozměrů oproti velkým výrobním tankům (tzv. poloprovoz). V poloprovozu jsou ověřovány jak nejrůznější biochemické experimenty, tak i použití dohledového systému jako celku. Velké provozní tanky mají objem 30 000 l, zatímco objem poloprovozního je pouze 300 l. Na výrobu dohlíží obsluha fermentoru spolu s mistry, kteří rozhodují o důležitých zásazích do procesu.
Z důvodu uchování výrobního tajemství a know-how technologického procesu nelze v dalším textu úplně podrobně diskutovat sledované veličiny a některé další detaily výroby a uvedené grafy jsou anonymizovány.
Znalostní řízení
Při návrhu znalostního řízení byl nejprve byl vytvořen soubor rozhodovacích pravidel, podle kterých expertní systém, jako složka celkového dohledového systému, doporučuje určité zásahy v daném čase. Za účelem realizace expertního systému byla nejprve posouzena vhodnost různých již dostupných nástrojů. Bylo posuzováno, zda využít programy jako např. NEST (
New Expert SysTem,
http://vladalas.info/nest/), FEL-Expert (
www.certicon.cz/content/fel-ex-expert), CLIPS (
C Language Integrated Production System, http://clipsrules.sourceforge.net/), které jsou vhodné k vytvoření a udržování
báze znalostí, nebo dohledový systém realizovat od základu v softwaru Matlab (
www.mathworks.com/).
Systém CLIPS byl pro potřeby projektu až přespříliš robustním a komplexním nástrojem, u nástroje NEST byly problémy s jeho grafickým uživatelským rozhraním a nástroj FEL-Expert není již po mnoho let dále rozvíjen. Navíc mnoho výpočtových algoritmů potřebných pro pravidla expertního systému již bylo realizováno během dosavadního několikaletého výzkumu v prostředí Matlab a také byl již hotový modul komunikace s databází Merbon s klientem pro nástroj Matlab, stejně tak i modul pro stahování historických údajů. Proto bylo rozhodnuto, že jádro expertního systému bude realizováno v prostředí Matlab. Tímbylo zároveň zajištěno, že vyvíjený expertní systém bude možné jednoduše ověřovat na historických údajích bez nutnosti složitých úprav.
Pro podporu rozhodování mistrů se poté přistoupilo k vývoji expertního systému, který v reálném čase provádí rozhodující
výpočty a na základě jejich výsledků zobrazuje textové zprávy s doporučenými zásahy do procesu.
Znalostní model a báze znalostí
Znalostní model popisující řídicí strategie vychází z vytěžených znalostí, které byly získány nejen metodou strukturovaného rozhovoru a dlouhodobou statistickou analýzou záznamů z výroby jednotlivých šarží, ale i při diskusích s mistry v rámci pravidelných měsíčních schůzek řešitelského týmu projektu. Aby je bylo možné použít jako znalosti pro expertní řízení technologického procesu, byly informace získané z uvedených různých zdrojů s různou mírou věrohodnosti v dalším nejprve pečlivě prověřeny (relevance byla ověřována statisticky na historických údajích) a poté konsolidovány a konfrontovány s předpisy SOP (Standard Operating Procedure; v oboru farmaceutické výroby jde o dokument, který předepisuje schválený postup výroby). Uvedeným postupem byla vyselektována sada právoplatných tvrzení. Ta byla souhrnně zapsána ve strojově zpracovatelné formě, aby je bylo možné zpracovat expertním systémem. Postřehy mistrů, kteří mají vhled do chování procesu na základě dlouholeté zkušenosti v principu ve spojitém tvaru, bylo nutné nejprve kvantifikovat. Následně byly zapsány do řeči expertního systému k vyhodnocování při použití logických operátorů. Postup při odvozování pravidel ze znalostí, které má obslužný personál procesu, je v principu ukázán na obr. 1. Protože dialog s obsluhou vede k zápisu pravidel ve formě nesrozumitelné pro počítač, je nutné tato vyjádření nejdříve formalizovat. Na závěr se pak ze zápisu ve formálním jazyce vytvoří pravidlo v podobě výrokové logiky. Samotný soubor pravidel je realizován v podobě tabulky v sešitu tabulkového procesoru MS Excel (obr. 2). Tento formát se osvědčil pro svou snadnou čitelnost (jak strojově, tak pro člověka), ale zejména proto, že je v něm soubor pravidel možné snadno rozšiřovat (resp. měnit) bez nutnosti speciálních technik programování.
Jednotlivá pravidla vždy obsahují antecedent – podmínku (IF) a consequent – následek (THEN). Následkem je provedení určitého akčního zásahu či zobrazení stavu nebo upozornění na obrazovce operátorského rozhraní.
V pravidlech se vedle logických operátorů mohou vyskytovat přímo názvy technologických proměnných anebo názvy funkcí, které na základě jiných proměnných obvykle provádějí složitější výpočty. Dále je možné specifikovat lokální konstanty, určené např. k vymezení rozsahu platnosti daného signálu. Lokální konstanty lze nastavovat nezávisle pro provoz i poloprovoz. Zároveň je možné jednotlivá pravidla aktivovat i deaktivovat. Každému pravidlu, které vede k zobrazení zprávy, lze nastavit prodlevu mezi jednotlivými vyhodnoceními a prioritu. Rovněž je možné přehledně udržovat i informaci o tom, z jakého zdroje dané pravidlo pochází.
Realizace expertního systému
Činnost expertního systému je schematicky znázorněna na obr. 3. Pravidlo je vyčteno ze znalostní báze a zároveň jsou provedeny výpočty potřebné k vyhodnocení výrokové logiky. Po vyhodnocení pravidla je buď uskutečněn přímý zásah to chodu technologického procesu prostřednictvím řídicího programovatelného automatu (PLC), nebo zobrazena zpráva operátorovi výroby.
Realizace v prostředí Matlab
Co se týče realizace, jde v prostředí Matlab o dvě hlavní třídy úloh. Jedna zastřešuje veškeré výpočty, samotné pravidlové řízení (tedy načtení pravidel, signálů a údajů potřebných k jejich vyhodnocení) a vydávání výstupních povelů nebo textových hlášení (zpráv). Druhá třída úloh se stará o komunikaci s PLC. Paralelně k tomu běží skript, který zajišťuje stažení údajů (laboratorních i měřených on-line) a jejich uchování.
Proměnné potřebné k vyhodnocení výrokové logiky jsou počítány výpočetní částí expertního systému. Jde o funkce, které nad aktuálními daty provádějí potřebné výpočty a jejichž výstupem jsou buď přímo logické hodnoty proměnných, nebo hodnoty numerické, které jsou v pravidlech porovnávány s danými globálně nastavenými konstantami. Tyto globálně dané konstanty se ale liší pro provoz a poloprovoz. Některé bylo možné odvodit přímo z vyjádření obsluhy nebo vnitřních předpisů (např. hodnota pH optimální pro růst a produkci kultury), jiné bylo nutné vyvodit empiricky na základě analýzy historických údajů a zásahů.
Napojení expertního systému na výrobní proces
Způsob napojení expertního systému na výrobní proces je ukázán na obr. 4. Operátoři sledují fermentační proces prostřednictvím jeho technologického zobrazení na monitoru systému SCADA s přímou kontrolou fermentačního tanku. Mohou dělat potřebné zásahy ve fermentačním tanku i z něj odečítat provozní údaje, které jsou rovněž automaticky on-line synchronizovány s obsahem spřaženého úložiště.
Prostřednictvím systému SCADA mohou operátoři taktéž nastavovat akční zásahy, které provádí řídicí PLC. Řídicí automat pak v pravidelných intervalech odečítá aktuální údaje ze snímačů instalovaných na fermentačním tanku a ukládá je do databáze. Expertní systém čte pro své rozhodování údaje z databáze (on-line údaje) a z on-line úložiště (v případě údajů z laboratoře), výpočetní část provede potřebné výpočty a ty jsou pak využity k rozhodování v konkrétních pravidlech.
Celý expertní systém je navržena tak, že je možné jej provozovat buď on-line nad údaji právě zpracovávané šarže, nebo off-line nad libovolnými historickými údaji. Tím je dosaženo toho, že při změnách či rozšiřování pravidel lze před samotným ostrým použitím nový soubor pravidel snadno ověřit.
Informační zprávy jsou dvou základních kategorií:
- INFO: informační zpráva, která obsluhu spravuje o důležitých událostech v procesu, popř. obsahuje predikci vývoje fermentace,
- ALERT/SET: informační zpráva obsahující varování o aktuálním stavu procesu, který bude v blízké době patrně požadovat akční zásah operátora; na operátorském monitoru je zobrazena přes celou obrazovku a její potvrzení expertní systém zpětně zaznamenává.
Ukázka činnosti expertního systému
Názorný příklad ukazuje, jak expertní systém v praxi funguje. Na obr. 5 je ukázáno, jak jsou během zpracování dané šarže hlášeny důležité stavy procesu (jde o simulaci s krokem jedna hodina a pouze několika vybranými typy zpráv).
Po započetí kultivace prudce klesá hodnota veličiny (parametru) 2 a zároveň roste hodnota parametru 3 – zde expertní systém hlídá dosažení minima parametru 2. Následuje fáze, ve které hodnota parametru 2 roste a hodnota parametru 3 naopak klesá. Za povšimnutí také stojí, že v této době klesá i hodnota parametru 1. Při určité hodnotě parametru 1 dojde k akčnímu zásahu obsluhy (parametr 5). Od této chvíle expertní systém zobrazuje dobu, která uplynula od poslední akce obsluhy, a zároveň hlídá optimální meze hodnot parametru 1.
Při dosažení určité hodnoty parametru 1 je vybavena zpráva (id 12), která doporučuje další akci obsluhy, a proti ní vystupuje zpráva (id 11), která hlídá, zda od poslední akce obsluhy uběhl dostatek času.
Aby operátoři nebyli příliš zahlceni nadměrným množstvím informace (četností zpráv), lze u jednotlivých typů zpráv nastavit minimální dobu k vybavení (např. aby se zpráva nezobrazovala častěji než jednou za hodinu a po ostatní dobu byla např. zobrazena jako stavové hlášení ve SCADA systému Mervis, což je cloudová služba pro celkový dohled nad všemi technologickými zařízeními provozovaná ve firmě VUAB Pharma (
www.mervis.info;
obr. 6)). Cloudová služba Mervis zajišťuje jednotné, centralizované zpracování údajů a jejich snadnou dostupnost jak pro účely lokální obsluhy či centrálního dohledu, tak popř. pro účely i manažerského přístupu.
V současné době je v expertním systému aktivních 24 zpráv, z čehož čtyři vedou na doporučení okamžitého zásahu obsluhy, šest jich varuje před určitým stavem kultivace a zbytek jsou textová hlášení o stavu. Zároveň expertní systém přenáší do operátorského zobrazení výsledky laboratorních měření a také sadu experimentálních proměnných, které popisují průběh hlavních sledovaných veličin (parametrů) jevících se jako vhodní kandidáti ke zdokonalení funkce monitoringu hlavních dějů procesu. Během jedné kultivace jsou vybaveny (podle nastavení a aktivace jednotlivých typů zpráv) průměrně desítky zpráv typu ALERT/SET a stovky zpráv typu INFO (tj. textových zpráv o stavu).
Závěr
V článku je představena unikátní realizace expertního systému v prostředí Matlab určená k podpoře řízení výroby antibiotika nystatin formou celkového dohledového systému. Unikátnost této realizace spočívá především ve způsobu kombinování dostupných údajů a v rychlosti, s jakou umožňuje přinášet nové informace vzešlé z probíhajícího výzkumu daného fermentačního procesu přímo do výroby či zkušební laboratoře, a to při mnohem menších investičních nákladech, než by tomu bylo při použití regulace typu MPC.
Jde o první krok v modernizaci řízení daného výrobního procesu, který z principu nemůže podávat horší výsledky než současný stav, protože v regulační smyčce je i nadále přítomen operátor.
V současné době probíhá ověřování expertního systému ve zmenšeném měřítku v poloprovozní laboratoři. Jsou vnášeny drobné úpravy jak samotné struktury pravidel, tak i nastavení konstant uvnitř pravidel. Všechny úpravy jsou nyní podrobně rozebírány s mistry výrobních procesů, což vede nejen ke zkvalitnění báze znalostí expertního systému, ale také k unifikaci a utřídění znalostí, kterými sami mistři disponují.
Dohledový systém založený na novém expertním (pod)systému rovněž usnadňuje dozor a zaznamenávání stavů, které mohou být zpětně vyhodnocovány pro další zkvalitňování řízení. Oba faktory přinášejí a budou přinášet zlepšení výroby antibiotika v provozu a zmenšení rozptylu parametrů výroby, protože ve vyvíjeném dohledovém systému jsou lepším způsobem sdíleny stávající informace, takže lze dříve podchytiti krizové nebo pro výrobu nepříznivé stavy.
Poděkování
Projekt byl finančně podpořen Technologickou agenturou České republiky prostřednictvím grantu č. TA03010165.
Literatura:
[1] BAJPAI, R. K. – REUSS, M.: A mechanistic model for penicillin production. Journal of Chemical Technology and Biotechnology, 1980, 30, 1, pp. 332–344.
[2] BIROL, G. – ÜNDEY, C. – CINAR, A.: A modular simulation package for fed-batch fermentation: penicillin production. Computers & Chemical Engineering, 2002, 26, 11, pp. 1553–1565.
Ing. Jan Kohout, Ing. Jiří Cigler, Ph.D., UCEEB ČVUT v Praze,
Ing. Jan Široký, Ph.D., Energocentrum Plus, s. r. o.
Ing. Jan Mengler, CSc., VUAB Pharma a. s.,
prof. Ing. Jan Náhlík, CSc., Ing. Pavel Hrnčiřík, Ph.D., VŠCHT Praha
Lektoroval: Ing. Vlastimil Braun
Obr. 1. Postup formalizace znalostí obsluhy za účelem jejich použití v expertním systému
Obr. 2. Ukázka báze znalostí vedené v prostředí MS Excel
Obr. 3. Princip činnosti a využití expertního systému
Obr. 4. Napojení expertního systému na proces; šipkami je znázorněn směr komunikace mezi jednotlivými komponentami systému
Obr. 5. Ukázka činnosti expertního systému nad probíhající kultivací
Obr. 6. Ukázka rozhraní SCADA služby Mervis s přehledem stavových veličin