Surrogaatmodellen voor model-in-the-loop control

Introductie

Numerieke simulaties spelen een cruciale rol bij het ontwerpen, analyseren en aansturen van mechanische systemen. Finite element (FE)-modellen worden daarbij veelvuldig ingezet, omdat die complexe fysische verschijnselen nauwkeurig kunnen beschrijven. Dit gaat echter vaak gepaard met hoge rekenkosten, waardoor het uitvoeren van uitgebreide parameterstudies, interactief gebruik of het gebruik van het model in een online sturing (model-in-the-loop) niet haalbaar is.

Om deze beperkingen te overwinnen worden steeds vaker surrogaatmodellen (surrogate models) toegepast. Dit zijn vereenvoudigde, datagedreven machine learning modellen, die de resultaten van een ingewikkeld model kunnen benaderen, maar met aanzienlijk lagere rekentijden.

In dit artikel nemen wij u mee in het maken van zo’n surrogaatmodel kunt maken voor een FE-model dat de krachten op een lopende band berekent.

Het bandloopmodel

In veel apparaten en industriële toepassingen wordt gebruik gemaakt van transportbanden. Bandsystemen hebben over het algemeen een aandrijfroller, een of meerdere stuurrollers, soms een of meerdere spanrollers en een aantal rollers om het gewenste pad te vormen voor de band.

In het FE-model dat wij gaan benaderen worden de krachten en verplaatsingen op de band berekend op een grid. Het model heeft een typisch aantal roostercellen voor zo’n bandsysteem-berekening. Vooral de relatieve positionering van de band over het gehele pad is van belang voor onze toepassing.

Het systeem bestaat uit drie rollers: een aandrijfroller, een stuurroller die in twee richtingen kan kantelen en een derde roller om het bandpad te vormen. De invoervariabelen van het bandloopmodel zijn de hoeken van de stuurroller in x- en y-richting, en de rotatiesnelheid van de aandrijfroller. De uitvoer is een grid met waardes voor de laterale (z-richting, in Figuur 1) afwijking in de positie. Deze afwijking geeft ons de informatie over de vervorming van de band die we nodig hebben om het systeem goed te kunnen afstellen.

Figuur 1 – Het bandloopmodel met 3 rollers.

Omdat het voor het datagedreven surrogaatmodel niet belangrijk is om het model te begrijpen, maar alleen om de uitvoerdata te benaderen, hoeven we verder geen details te weten over de vergelijkingen die door het FE-model worden opgelost.

Datagedreven model

Data genereren & modelreductie

Een eerste stap voor het maken van een datagedreven surrogaatmodel is het genereren van heel veel data. We hebben honderden berekeningen gedraaid voor verschillende combinaties van invoerparameters, waarbij steeds een steady state is bereikt – de geconvergeerde staat die niet meer verandert over de tijd, die zich voordoet als de simulatie lang genoeg wordt gedraaid.

Om de grootte van het surrogaatmodel te reduceren maken we gebruik van een reduced order model gebaseerd op singular value decomposition; het model voorspelt dan enkel de waarde voor de belangrijkste modes. We berekenen de belangrijkste modes die voorkomen in de resulterende laterale afwijkingen van de steady states. De eerste modes zijn weergegeven in Figuur 2, waarbij de band is doorgesneden en plat is neergelegd om de plotjes te maken. De eerste mode is hard-coded op de offset mode: een enkele constante waarde voor iedere grid-cell op de band. Elk patroon representeert een dominante vervormingsmodus van de band.

Figuur 2 – Basisvectoren van het reduced order model

Figuur 3 toont de scree plot van de singular values. De scherpe afname laat zien dat de eerste acht modes al het overgrote deel van de variatie verklaren. Dit rechtvaardigt onze keuze om enkel deze coëfficiënten te voorspellen met het surrogaatmodel.

Figuur 3 – Scree plot van de singular values.

Samen vormen deze acht modes een compacte maar expressieve representatie van de fysica. Het surrogaatmodel hoeft dus niet het volledige bandgedrag te reconstrueren, maar slechts deze acht coëfficiënten te schatten — een enorme winst in rekentijd.

Figuur 4 – Het neurale netwerk.

Het surrogaatmodel neemt de 3 simulatieparameters (de hoeken van de stuurroller in x- en y-richting, en de rotatiesnelheid van de aandrijfroller) als input, en voorspelt 8 coëfficiënten voor de oplossing in termen van de acht modes.

We gebruiken een simpel neuraal netwerk met 3 fully connected verborgen lagen, en een dropout-laag om overfitting tegen te gaan – in totaal zijn er 1.289 vrije parameters om te trainen. Als loss-functie nemen we de mean squared error over de reduced basis coëfficienten.

Het neurale netwerk is gemaakt met de tensorflow library voor Python. De resultaten worden gelogd met MLflow – hiermee hebben we gemakkelijk kunnen experimenteren met verschillende netwerk-architecturen. Na het aggregeren en vergelijken van de verschillende netwerk-architecturen is de beste architectuur gekozen.

Resultaten

Na het trainen van het neurale netwerk wordt de nauwkeurigheid van het model getoetst op een test-dataset. In Figuur 5 zijn een aantal voorspellingen van het neurale netwerk te zien.

Figuur 5 – Voorspellingen van het neurale netwerk.

Een goede, praktisch bruikbare maat van de fout is de Root Mean Squared Error (RMSE) – de wortel van de som van de kwadraten van de fout op iedere coördinaat. We nemen dan de RMSE over de zeven laatste coëfficiënten van de reduced order basis, en dus niet over de offset. De offset is in onze toepassing minder van belang – de focus ligt op de relatieve vervorming van de band. De mediaan van deze RMSE over alle test-data samples is een halve millimeter, op een band van 320 millimeter breed.

Zoals te zien aan het verschil in kleurpatroon in de laatste staat in Figuur 5 heeft het neurale netwerk moeite met het voorspellen van extreme gevallen. In dit voorbeeld valt de band van een roller af. Hier zijn maar twee gevallen van te vinden in de gehele dataset, dus daar kan het surrogaatmodel niet goed mee omgaan.

Conclusies & discussie

Het surrogaatmodel is in de meeste gevallen een goede benadering van het volledige model. Het doet een voorspelling in een fractie van een seconde, waar het originele FE-model tien minuten nodig had. In situaties waarbij veel cases snel moeten worden doorgerekend, bijvoorbeeld bij het ontwerpen van een systeem of bij real-time aansturing, zou zo’n surrogaatmodel dus erg nuttig kunnen zijn.

Deze case study was slechts een proof of concept, er zijn nog heel veel verbeteringen mogelijk aan dit model. Allereerst kunnen er meer extreme gevallen worden toegevoegd aan de dataset, zodat het surrogaatmodel ook deze gevallen goed kan voorspellen. We zouden ook meer fysica-kennis kunnen introduceren in de loss-functie. Daarnaast kunnen we een model maken dat een enkele tijdstap van het FE-model voorspelt, in plaats van de steady state. Hiermee kan dan het tijdsafhankelijke gedrag ook worden gemodelleerd.

Een ML-surrogaat voor uw rekenmodel

Werkt u ook met zware rekenmodellen, en zou een snel datagedreven surrogaatmodel een nuttige toevoeging voor uw werkprocessen kunnen zijn? Neem dan contact op met VORtech! Onze data scientists zijn goed in het begrijpen van de wetenschappelijke context van rekenmodellen, en kunnen de wens van de klant vertalen in solide softwareoplossingen die gebruik maken van moderne machine learning.

Meer informatie over onze benadering van machine learning kunt u hier vinden. Als u wilt volgen wat wij op dit gebied doen, is onze nieuwsbrief een goede optie, evenals onze LinkedIn-pagina.