Hoe vind je fouten in procesmodellen?
ir. Rob Faessen legt basis voor slimme software
Rob Faessen ontdekte dat de bestaande tools die ondersteunen bij het ontwerpen, simuleren, monitoren en besturen van chemische processen niet altijd foutloos zijn. In zijn proefschrift, in het kader van zijn promotie aan de TU/e, ontwierp en implementeerde hij een meta-model en DSL (Equate) en een modelleertool (Equator) voor de procestechniek. Hierin wordt de juistheid van vergelijkingen nauwgezet gecontroleerd.
Gebaseerd op vergelijkingen
In de procestechniek wordt veelvuldig gebruikgemaakt van uiteenlopende softwaretools. In de Process Systems Engineering (PSE) worden ze bijvoorbeeld gebruikt om chemische procesinstallaties te ontwerpen, simuleren, besturen en optimaliseren. Deze tools werken op basis van vooraf opgestelde procesmodellen en automatiseren een belangrijk deel van de werkzaamheden van de procesingenieur.
Ir. Rob Faessen is al zijn hele loopbaan werkzaam in de chemische industrie en kent deze tools goed. Met een bovenmatige interesse voor wiskunde en software is hij er de afgelopen elf jaar dieper ingedoken, in het kader van zijn promotieonderzoek aan TU/e.
"De tools werken op basis van het numeriek oplossen van procesmodellen. Deze bestaan uit grote sets algebraïsche en differentiaalvergelijkingen. De momenteel beschikbare softwaretools voor op vergelijkingen gebaseerde procesmodellering missen echter de mogelijkheid om specifieke soorten fouten in vergelijkingen te identificeren", legt Faessen uit.
Foutcontrole
Dit laatste is een belangrijke opmerking, omdat fouten in vergelijkingen de hoofdoorzaak zijn van ongeldige berekeningsresultaten. Dit leidt tot conclusies, beslissingen en acties die negatieve gevolgen kunnen hebben, bijvoorbeeld in de vorm van verloren engineeringuren, het opnieuw bestellen van verkeerd ontworpen procesapparatuur en vertragingen bij de inbedrijfstelling en opstart van de installatie. Aanvullend op de ontwerpfase kunnen modelleringsfouten in de implementatiefase van een chemische procesinstallatie leiden tot suboptimale werking en productieverlies.
"De momenteel beschikbare softwaretools missen de mogelijkheid om specifieke soorten fouten in vergelijkingen te identificeren" – ir. Rob Faessen
Juist het feit dat de gevolgen van fouten relatief ver gaan, triggerde Faessen om hier verder in te duiken. "Modelleringsfouten en de gevolgen daarvan kunnen worden voorkomen door de correctheidscontrole van vergelijkingen te verbeteren", meent hij.
"Op dit onderwerp wilde ik uiteindelijk graag promoveren. Ik heb het onderzoek eerst naast mijn betaalde werk bij ASML gedaan en heb in de laatste jaren intensiever richting het voltooien van mijn proefschrift gewerkt. Hierin presenteer ik vijf theorieën voor het controleren van de correctheid van vergelijkingen die helpen om fouten in vergelijkingen op te sporen en zo te voorkomen. Deze controle wordt uitgevoerd naast een dimensieanalyse."
Vijf aspecten van een vergelijking
Vergelijkingen zijn opgebouwd uit wiskundige operatoren en operandi die verwijzen naar fysische eigenschappen en specifieke grootheden; in het Engels quantity kinds ofwel Q-soorten. Die vertegenwoordigen verzamelingen van fysische eigenschappen met een gemeenschappelijke betekenis waarvan de numerieke waarden zinvol met elkaar kunnen worden vergeleken, van elkaar worden afgetrokken of bij elkaar worden opgeteld. Afgeleide Q-soorten worden gedefinieerd als producten van onafhankelijke Q-soorten, die per conventie als basis worden gekwalificeerd.
Om geautomatiseerde correctheidscontroles van vergelijkingen te ondersteunen, introduceert, analyseert en formaliseert Faessen de volgende aspecten van dimensies en Q-soorten in de context van op vergelijkingen gebaseerde procesmodellering in PSE:
- Chemische componenten aspect (bestaand concept)
- Differentie aspect (bestaand concept)
- Geometrisch aspect (bestaand concept)
- Tensief aspect (nieuw concept)
- Affiene aspect (bestaand concept)
Uitleg
Het chemische componenten aspect introduceert extra basisdimensies die gelabeld zijn met identificaties van de chemische component. Dit maakt een nauwkeurige correctheidscontrole mogelijk van vergelijkingen die eigenschappen bevatten die gebaseerd zijn op chemische componenten (bijvoorbeeld molfracties en massafracties).
Het differentie aspect kwalificeert de basisdimensies als absoluut of differentieel. Dit maakt een nauwkeurige dimensiecontrole mogelijk van vergelijkingen die absolute en differentiële (verschil)eigenschappen bevatten (bijvoorbeeld temperatuur).
Het geometrische aspect breidt de verzameling scalaire basis Q-soorten uit naar basis Q-soorten die multivectoren zijn. Die vormen het centrale concept in de geometrische algebra (GA) dat bewerkingen op geometrische vormen in multidimensionale ruimtes beschrijft. Deze uitbreiding maakt een nauwkeurige correctheidscontrole mogelijk van vergelijkingen die geometrische eigenschappen bevatten, zoals rotatie en koppel.
"Tensief is een nieuw ontwikkeld concept dat de extensieve en intensieve kwalificaties van Q-soorten generaliseert. Dit concept voegt een tensief aspect toe aan Q-soorten", legt Faessen uit. "Mijn voorgestelde tensiefalgebra wordt gebruikt om afgeleide Q-soort-uitdrukkingen als intensief of extensief te berekenen en maakt het mogelijk om de correctheid te controleren van vergelijkingen die optellingen bevatten. Alleen extensieve grootheden mogen worden opgeteld."
Het affiene aspect breidt tot slot Q-soorten uit met het begrip affiniteit. Dit maakt het mogelijk om de (on)gevoeligheid van de correctheid van de numerieke oplossing van een vergelijking voor een verandering in basiseenheden te controleren.
Algebra's
Elk van de bovengenoemde aspecten heeft een specifieke formele algebra om de correctheid van vergelijkingen en hun samenstellende uitdrukkingen te controleren.
Faessen: "Deze algebra's vormen een theoretisch kader dat ik implementeerde in een nieuwe, op vergelijkingen gebaseerde tool voor procesmodellering: Equator. Hierin spelen vergelijkingen, Q-soorten en dimensies de rol van basisbouwstenen. Ik gebruik methoden en tools uit het domein van Model Driven Software Engineering (MDSE) om de benodigde softwarecomponenten voor Equator te definiëren en te genereren."
Model Driven Software Engineering
Meta-modellen, domeinspecifieke talen (Domain-Specific Languages, DSL's) en softwaretools spelen een belangrijke rol in MDSE. De ontwikkelaars van MDSE worden ondersteund door softwaretools voor domeinmodellering, die een groot deel van hun taken automatiseren tijdens de ontwikkeling van domeinspecifieke modelleertalen en -tools.
Faessen: "De gekozen MDSE-aanpak vereist analyse en modellering van relevante concepten in het PSE-domein. Ik construeerde een meta-model van het Internationale Stelsel van Eenheden en grootheden (SI) dat grootheden, Q-kinds, dimensies, eenheden en hun relaties omvat."
"Ik heb ontdekt dat de beschrijving van SI in de VIM3-publicatie van het BIPM onvolledig is en inconsistenties toelaat"
"Dit meta-model is relevant voor het controleren van de correctheid van vergelijkingen. Ik heb daarbij ontdekt dat de beschrijving van SI in de VIM3-publicatie van het BIPM (Bureau International des Poids et Mesures) onvolledig is en inconsistenties toelaat vanuit het perspectief van machineverwerking. Geen onbelangrijke conclusie."
In een casestudy analyseerde Faessen de details van het proces van het construeren van een op vergelijkingen gebaseerd procesmodel van een tweetraps olieafscheidingsinstallatie. Daarbij identificeerde hij de concepten van het meta-model dat hij creëerde en Equate noemt.
"Dit meta-model bestaat uit een kleine set concepten om alle mogelijke procesmodellen te omvatten. Het maakt bovendien een groot hergebruik van structuur (fenomeentypen) en gedrag (vergelijkingen) mogelijk, ter ondersteuning van op vergelijkingen gebaseerde procesmodellering in PSE."
Fouten identificeren
Daarnaast definieerde Faessen de grammatica van de concrete procesmodelleringstaal Equate. Deze is nodig voor de specificatie van op vergelijkingen gebaseerde procesmodellen. Het meta-model en de grammatica van Equate werden met MDSE-tools omgezet in softwarecomponenten voor de modelleringstool Equator. Uiteindelijk demonstreerde hij dat Equator in staat is om een uitgebreide correctheidscontrole van vergelijkingen door vijf eenvoudige foutieve voorbeelden te verwerken, die zijn gemodelleerd in de Equate-procesmodelleringstaal.
Faessen: "De fouten in deze voorbeelden worden correct geïdentificeerd door Equator. Het vermogen van Equator om de consistentie en correctheid van vergelijkingen te controleren, wordt verder aangetoond door het verwerken van het procesmodel – waarvan bekend is dat het correct is – van de tweetraps olieafscheidingsinstallatie zoals gepresenteerd in de casestudy, uitgedrukt in de Equator-taal."
Vervolg
De conclusies van zijn promotieonderzoek vormen een uitstekende basis om software te ontwikkelen waarmee eventuele fouten in modellen en vergelijkingen in een vroeg stadium worden ontdekt.
"Voor het zover is, moet er echter nog wel het een en ander gebeuren", zegt Faessen. "Zo zijn de rekenregels nog niet compleet en moet er nog algebra voor tensoren worden ontwikkeld. De broncode is echter openbaar en ook alle referenties zijn in mijn proefschrift terug te vinden. Iedereen die met mijn resultaten verder wil, kan dit zonder problemen oppakken."