Bepalen vloeistof temperatuur met neuraal netwerk

Bepaling gewicht uit NMR signaal

 

Auteur: Ad van den Elshout

 

Algemeen

Voor toepassing binnen de farmaceutische industrie worden door xxxxxx afvullijnen voor medicijnen ontwikkeld. De flesjes moeten wettelijk een bepaalde vulling hebben, omdat er vaak met zeer dure producten wordt gewerkt is het daarbij voor de fabrikant zeer gewenst om niet meer dan de noodzakelijke hoeveelheid af te vullen, de vullijnen moeten dus zeer nauwkeurig afvullen..
Er worden 2 typen afvullijnen gemaakt: Een type vullijn waarbij elk flesje wordt gewogen (het leeggewicht voor het vullen, het gewicht gedurende het vullen en een weging na het vullen).  En een type vullijn waarbij er een bepaald percentage van de flesjes wordt gewogen, dit zijn continue bewegende vullijnen, de flesjes bewegen onder eveneens bewegende vulstations door, tijdens productie worden er middels robotarmen flesjes uitgehaald, gewogen, teruggeplaatst in de continue bewegende lijn, gevuld, na het vullen er weer uitgehaald, gewogen en weer teruggeplaatst. De vultijden worden bijgeregeld aan de hand van de daadwerkelijke vulling.

Het eerste type vullijn heeft als voordeel dat alle flesjes gegarandeerd gewogen zijn en voldoende product bevatten. Nadeel is dat de capaciteit van een dergelijke lijn beperkt blijft tot zo’n 6000 flesjes per uur.

De capaciteit van het tweede type lijn is veel hoger (tot ongeveer 40.000 flesjes/uur), hierbij worden echter niet alle flesjes gewogen en er is dus niet gegarandeerd dat elk flesje voldoende product bevat, tevens zijn de robotarmen welke de flesjes uit de snel bewegende rij flesjes halen en terugplaatsen erg gecompliceerd. Omdat er slechts relatief weinig flesjes gewogen worden en er meerdere bewegende vulstations zijn, duurt het lang voor een vultijd van een bepaald vulstation gecorrigeerd wordt.

Voor het tweede type vullijn, de continue lijn, is daarom gezocht naar een nieuwe methode van wegen. Hiervoor wordt momenteel een weger ontwikkeld welke na het vullen de inhoud van de flesjes bepaald dmv Nuclear Magnetic Resonance (NMR) technieken. De flesjes worden door een statisch magneetveld gevoerd en gemagnetiseerd, waardoor de atomen in het product gericht worden naar een evenwichtstoestand. Vervolgens wordt er halverwege het magneetveld een elektromagnetische puls opgewekt waardoor de atomen even uit positie worden gebracht, bij terugkeer naar de evenwichtstand wordt er elektromagnetische straling uitgezonden. De sterkte van deze straling is een maat voor de hoeveelheid atomen en dus een maat voor de hoeveelheid product in het flesje. De spectra van de conveyor, het glas, de rubber stoppers welke op de flesjes worden geplaatst liggen elders waardoor alleen het product wordt gemeten. Met deze NMR techniek kan ook met de continue vullijn alles worden gemeten. Dus een vullijn met hoge capaciteit en een gegarandeerd eindproduct. Het NMR gedeelte wordt door een gespecialiseerde toeleverancier ontwikkeld. Het door deze leverancier ontwikkeld apparaat levert een ruw NMR signaal af, hieruit moet een netto gewicht worden bepaald.


Probleembeschrijving:

De amplitude van het NMR signaal is (naast producteigenschappen) onder meer afhankelijk van de snelheid waarmee het flesje door  het magneetveld wordt bewogen, de temperatuur van het product en of het flesje ‘buren’ heeft.
Deze waarden worden gebruikt om uit een ruw NMR signaal het gewicht te bereken, het gewicht is dus een functie f(ruw NMR signaal, product temperatuur, snelheid, ‘buren’).

1.      De snelheid is van invloed, hoe lager de snelheid des te beter is het product gemagnetiseerd en des te hoger is het NMR signaal niveau.

2.      Voor de invloed van de temperatuur op het NMR signaal was theoretisch bepaald dat deze omgekeerd evenredig was met de temperatuur (bij omgevingstemperatuur dus ongeveer 0,3%), tijdens metingen blijkt deze aanmerkelijk hoger te liggen. De nauwkeurigheid van de weger is dus afhankelijk van de nauwkeurigheid waarmee de temperatuur van het product bepaald kan worden, en het is dus noodzakelijk om de temperatuur van het product zeer nauwkeurig te kunnen bepalen. De temperatuur kan niet rechtstreeks op het moment van meten worden bepaald en moet worden berekend.

3.      Het ruwe NMR signaal zoals het gemeten wordt is sterker als er buren zijn, het ruwe signaal is een optelsom van het flesje midden in de magneet en (met een kleine factor) zijn buren.

 

De temperatuur is op zich weer afhankelijk van een vrij groot aantal factoren, o.a.:

·        De temperatuur van het glas, dit komt uit een sterilisatietunnel.hierbij wordt het glas gedurende enkele uren tot hoge temperatuur verhit, vervolgens wordt het glas weer afgekoeld, maar het glas zal niet gelijk zijn aan de omgevingstemperatuur. De glas temperatuur kan gemeten worden (niet van een enkel flesje, er kan wel met een infrarood sensor de gemiddelde temperatuur van een aantal passerende flesjes worden gemeten).

·        De temperatuur van het product. Dit wordt gemeten met een temperatuursensor in een van de vulnaalden.

·        De warmtecapaciteit van het glas.

·        De warmtegeleiding van het glas.

·        Het type product.

·        De hoeveelheid product.

·        De mate van turbulentie van de vloeistof in het flesje beďnvloedt het temperatuurverloop.

·        Het vullen zelf vindt plaats in een isolator, hier heerst een andere temperatuur en zijn er geforceerde luchtstromingen. Dit heeft invloed op de mate van afkoeling/opwarming

·        Vlak na het vullen en voordat er stopjes op de flesjes gezet worden, gaan de flesjes door een stikstof begassing (om te voorkomen dat er zuurstof bij komt). In dit gebied is de mate van afkoeling/opwarming ook weer specifiek.

·        De snelheid waarmee de flesjes worden voortbewogen.

·        De (metalen en kunststof) onderdelen van de vulmachine waarmee de flesjes in aanraking komen.

·        Na de isolator  komen de flesjes in de omgevingstemperatuur, hier worden ze uiteindelijk gemeten. De omgevingstemperatuur wordt gemeten, maar is niet constant. De omgevingstemperatuur beďnvloed ook de mate van afkoeling van een flesje.

De lijn stopt tijdens productie regelmatig. De tijden dat de lijn stilstaat kunnen variëren van enkele seconden tot minuten en zelfs uren. Tijdens normaal bedrijf (waarbij de snelheid ook kan variëren, het is tevoren dus nooit bekend hoeveel tijd er zal verstrijken tussen vullen en gewichtmeting) en na een tijdelijke stop moet de temperatuur van het product exact bekend zijn, omdat er zoveel variabelen zijn lijkt het momenteel niet goed mogelijk om hier een analytisch model voor op te stellen.

 

Er zijn voor een vullijn maximaal zo’n 200 verschillende combinaties van flestype, producttype en afvulhoeveelheid (een recept). Vanwege deze grootte hoeveelheid recepten is het is niet mogelijk om voor elk recept experimenteel het temperatuurverloop vast te stellen  Dit kan slechts voor een beperkt aantal combinaties en zelfs hierbij is het niet zeker of alle mogelijke omgevingsvariabelen kunnen worden meegenomen in de experimenten.

 

Er wordt door xxxxxx tevens een weger op NMR basis ontwikkeld welke standalone gebruikt kan worden (dus niet direct achter een vullijn), naar verwachting gebeurt hierbij alles bij een constante omgevingstemperatuur, of kan in ieder geval door infrarood temperatuur meting van de flesjes de product temperatuur worden bepaald. Bij dit type weger kan het netto gewicht waarschijnlijk wel met een eenvoudig model worden berekent.

 

Mogelijke oplossing

Hoewel het hierboven beschreven geen patroonherkenning probleem is, zou het probleem wellicht wel met een neuraal netwerk aangevat kunnen worden. Er zijn een vrij groot aantal ingangsvariabelen, het opstellen van een voldoende nauwkeurig model lijkt momenteel niet goed mogelijk, er kan worden gewerkt met voorbeeld sets (de resultaten van experimenten) waarmee het netwerk getraind kan worden. Voor het genereren van de trainingsets hoeft als invoer alleen het netto gewicht per flesje in te worden gegeven, alle overige parameters zijn of materiaal en product constanten of kunnen automatisch door het besturingssysteem van de vullijn worden gemeten of worden berekend. Het genereren van data waarmee het neuraal netwerk getraind wordt kan dus vrijwel geheel automatisch plaatsvinden.

Het netwerk kan dan voor de in de praktijk gebruikte recepten een nauwkeurige schatting maken van het gewicht. Er zal tijdens normaal bedrijf behoorlijk wat ruis in de verschillende variabelen zitten, een neuraal netwerk kan hier goed mee omgaan.

Deze aanpak met een neuraal netwerk, wordt hier verder uitgewerkt, het is een systeem met een relatief hoog aantal ingangsvariabelen welke getraind kan worden, specifieke kennis van bijv. het temperatuurgedrag en de exacte relatie tussen temperatuur en NMR signaal, tussen snelheid en NMR signaal en tussen NMR signaal en gewicht hoeven niet bekend te zijn, de resultaten van de experimenten zijn voldoende om een werkend systeem te genereren.

 

Multi-layer perception network met back-propagation

Momenteel bekende ingangsgrootheden zijn:

·        Het ruw NMR signaal

·        De temperatuur van het glas voor het vullen

·        De temperatuur van het product tijdens het vullen

·        De temperatuur binnen de isolator

·        De temperatuur binnen de isolator, onder de stikstof begassing

·        De temperatuur buiten de isolator

·        De temperatuur van het glas voor het gewogen wordt

·        De warmtecapaciteit van het glas.

·        De warmtegeleiding van het glas.

·        Het type product (de warmtecapaciteit ervan).

·        De hoeveelheid product.

·        De (gemiddelde) snelheid waarmee de flesjes worden voortbewogen.

·        De tijd gedurende welke geen stopje hebben en de flesjes onder de stikstofbegassing verblijven

·        De tijd gedurende welke de flesjes niet onder de stikstofbegassing staan, maar wel binnen de isolator verblijven

·        De tijd gedurende welke de flesjes buiten de isolator verblijven

·        De gemiddelde snelheid (de verblijfstijd) binnen het statische magneetveld

·        Wel/geen flesje op weegpositie – 2

·        Wel/geen flesje op weegpositie - 1

·        Wel/geen flesje op weegpositie  0

·        Wel/geen flesje op weegpositie + 1

·        Wel/geen flesje op weegpositie + 2

 

De uitgangsgrootheid is het netto gewicht van het product, of nul als er geen flesje staat op de weegpositie.

 

In totaal zijn er momenteel dus zo’n 21 ingangsvariabelen bekend (aangenomen wordt dat flesjes verder dan 2 posities van het flesje dat gemeten wordt geen invloed meer hebben op het NMR signaal).

Als neuraal netwerk wordt een Multi-layer perception network met back-propagation gebruikt. De netto vulgewichten zijn bekend en met een back-propagation algoritme kunnen de coëfficiënten van het neuraal netwerk worden gevonden.

De ingangen zijn, op de 5 binaire ingangen na, analoog. De hidden laag bestaat uit eenzelfde aantal neuronen, de uitgangslaag bestaat uit 1 uitgangsneuron.

Het netwerk wordt getraind met de resultaten uit experimenten. De coëfficiënten worden met een back-propagation algoritme berekent.

 


Uitwerking

Gezien de korte tijd waarin de eerste oplevering van de NMR weger moet plaatsvinden is bij xxxxxx besloten om de temperatuur bepaling zo eenvoudig mogelijk te houden. Er wordt in de eerste oplevering geen temperatuur berekening gedaan, alleen de vloeistoftemperatuur tijdens het vullen wordt gemeten, en er wordt aangenomen dat deze als er met constante snelheid wordt gevuld, deze altijd met gelijke mate afkoelt. Alle flesjes welke gevuld worden met een andere snelheid als deze ‘meet’ snelheid of flesjes welke gevuld worden na een tijdelijke stop van de vulmachine worden ofwel niet gewogen of afgekeurd. De relatie tussen NMR signaal en gewicht wordt berekent waarbij de temperatuur bekend wordt veronderstelt.

 

Er zijn momenteel dan ook weinig meetgegevens beschikbaar. De enige  parameters welke bekend zijn tijdens de metingen zijn: de vloeistoftemperatuur voor vullen, de glastemperatuur voor vullen, de glastemperatuur vlak voor de fles gewogen wordt, de verstreken tijd, de vloeistofinhoud van de fles, het flestype en het eindresultaat: de vloeistoftemperatuur tijdens wegen. Alles bepaald tijdens statische metingen. De relatie tussen NMR signaal en gewicht is bepaald in afzonderlijke metingen en deze gegevens kunnen hier verder niet worden meegenomen. Er is een serie metingen gedaan met een temperatuursensor op het glas is bevestigd en een temperatuursensor in de vloeistof. Hiermee is het verloop van de vloeistoftemperatuur in de tijd uitgezet. Dit is herhaald met verschillende temperaturen van glas en vloeistof, met verschillende hoeveelheden vloeistof en met verschillende flestypes.

Er wordt hier nu alleen een eenvoudig neuraal netwerk model opgezet wat de temperatuur bepaald op basis van de beschikbare parameters, dit om aan te tonen dat een neuraal netwerk in staat is om nauwkeurig de vloeistoftemperatuur te bepalen 

Meer metingen, uitgevoerd op een vulmachine, zijn nodig om het dynamisch gedrag binnen de verschillende vulmachine secties vast te leggen, de NMR waarden moet meegenomen worden, de verblijfstijd binnen het magnetisch veld etc. en het resultaat van het neurale netwerk is dan niet de temperatuur maar het gewicht van de vloeistof. Deze gegevens zijn nu echter nog niet beschikbaar, en waarschijnlijk ook niet op korte termijn.

Voor de berekening van de netwerk gewichten is gebruik gemaakt van een tool om het backpropagation door te rekenen: NNDT (Neural Network Development Tool), ontwikkeld door de afdeling Chemical Engineering van de Abo universiteit in Finland. Er was een evaluatie versie beschikbaar van dit tool.


De invoerparameters voor het netwerk worden:

1.      Glas temperatuur voor vullen: Dit is de temperatuur van het glas vlak voor er vloeistof ingebracht wordt.

2.      Vloeistoftemperatuur vullen: Dit is de temperatuur van de vloeistof op het moment dat deze in de fles wordt gespoten.

3.      Glas temperatuur voor weging: Dit is de temperatuur van de fles vlak voordat het NMR signaal wordt bepaald.

4.      Omgevingstemperatuur

5.      Flestype: Dit is de flesgrootte, bijv. 2 ml, 6 ml, 10ml etc.

6.      Vulling: Dit is de nominale hoeveelheid vloeistof waarmee het flesje moet worden afgevuld.

7.      Temperatuur tank: Dit is de vloeistoftemperatuur in de voorraadtank.

8.      Tijd: Dit is de verstreken tijd tussen vullen en wegen.

 

Het model heeft 1 uitgang: de berekende vloeistof temperatuur.

Grafisch wordt dit eenvoudig model als volgt weergegeven:

Uit de meetgegevens wordt een  bestand gecreëerd wat bestaat uit regels met het volgende formaat:

  1. Telapsed [sec]
  2. Tglas voor vullen
  3. Tglas voor weging
  4. Tvloeistof tijdens vullen
  5. Tvoorraadtank
  6. Tomgeving
  7. Flestype
  8. Nominale vulling
  9. Tliquid

Tliquid is de actuele vloeistof temperatuur en de uitgangsvariable van het netwerk.

Er zijn meetgegevens voor de volgende testsituaties:

2 ml fles, 2 ml vulling (3 sets),

2 ml fles, 1 ml vulling (2 sets),

2 ml fles, 0 ml vulling (1 set),

5 ml fles, 5 ml vulling (2 sets)

Alle metingen zijn bij verschillende omgeving-, vloeistof en glas temperaturen gedaan.

Van de meetgegevens worden een aantal sets uitgezonderd, deze worden gebruikt om de resultaten zoals deze berekent worden te verifieren. De volgende willekeurige sets worden hiervoor gebruikt :

2 ml fles, 2 ml vulling (1 set),

5 ml fles, 5 ml vulling (1 set)

 

De overige meetgegevens worden in 1 bestand verzameld. Het invoerbestand heeft 6000 regels, de testset 1300 regels. Door beperkingen aan het gebruikte tool kunnen slechts bestanden tot ongeveer 1500 regels gebruikt worden. Uit het invoerbestand worden daarom willekeurig regels verwijderd, minder als T klein is (hier treden de grootste verschillen op in temperatuurgedrag), meer als T groot is

 

De temperatuur wordt genormaliseerd, de range 0..40 C wordt naar een interval 0..1 omgezet.

De tijd wordt ook genormaliseerd naar een 1..0 interval, Tnew = 1/T, hierdoor krijgen de begintijden het hoogste ‘gewicht’. We zijn niet geďnteresseerd in de beginwaarden, na het vullen duurt het altijd nog minimaal 15 seconden voordat een flesje gewogen wordt, deze beginwaarden worden daarom verwijderd.

 

De netwerkconfiguratie is als volgt: 8 inputneuronen met als ingangsfunctie een lineaire overdracht. Een hidden layer met 8 neuronen, ingangsfunctie hiervoor is de sigmoid functie en een output layer met 1 uitgangsneuron, ook hiervoor wordt de sigmoid ingangsfunctie gebruikt De hidden layer neuronen en uitgangsneuron hebben allen een connectie (met een bijbehorend gewicht) naar een constante waarde.

Er is wat experimenteerwerk nodig om tot een stabiel resultaat te komen, de maximale en minimale gewichtwaarden en snelheid van conversie moeten begrensd worden om te voorkomen dat enkele gewichten astronomisch hoge of kleine waarden krijgen. Hoewel de rms waarden wel klein zijn in deze situaties en NNDT een gewichtsmatrix produceert, is er met deze gewichtwaarden niet te werken. Het geconstrueerde neurale netwerk produceert dan (door afrondingsfouten?) onzinnige uitvoerwaarden. In de huidige configuratie zijn de gewichtwaarden begrensd tot +/- 100 en wordt een gewichtswaarde per iteratie maximaal 25% verhoogd/verlaagd. Hiermee convergeert het netwerk vrij snel naar een stabiele waarde zoals onderstaande grafiek laat zien.

Training van het netwerk levert het volgende resultaat (afgebroken op het moment dat de RMS waarde nauwelijks nog verbeterde)

 

 

SSQ is de Sum of Squares of residuals (het verschil tussen target en actual)

RMS is de Root Mean Square: , met M het aantal residuals

RMS test is de RMS waarde welke uit de testset berekend wordt.

Lambda is de Marquardt parameter (de Levenberg- Marquardt methode wordt gebruikt om de SSQ te minimaliseren)

 

De volgende figur toont het verloop van de RMS waarde tov het aantal iteraties, duidelijk is te zien dat het netwerk na ongeveer 400 iteraties over-trained raakt, de gewichten worden geoptimaliseerd naar de training-set maar het gebruik van het netwerk voor meer algemeen gebruik wordt minder, de RMS waarde van de test set neemt zelfs behoorlijk toe. De testset wordt niet gebruikt om het netwerk te trainen maar is alleen ter referentie en kan hier worden gebruikt om te bepalen wanneer het netwerk over-trained raakt.

 

Door het NNDT tool wordt een matrix met gewichten berekent. De volgende gewichtmatrix wordt geproduceerd:

 

-1,10681884

-80.2348168

23.09012724

-18.0794258

21.2718593

-6.48912228

-1.5622864

-1.8746495

1.94472942

5.568831861

-5.23372639

-33.3720218

-9.20807904

12.6015368

2.353834924

12.6189935

-1.9682423

8.43497E-02

8.311253517

100

.1767361626

-29.2440319

-4.1084060

20.02860721

3.91347269

-4.6934619

4.089162248

-2.065990024

93.791743279

41.232999529

-37.0781329

-20.1967758

16.42727124

4.63460189

2.44083705

-1.04140884

-2.174043847

24.998543822

8.6091515969

2.034148997

1.698190288

-4.14227802

-.17180090

-.58605255

.7646483991

-.8293271126

-5.211013001

15.625548064

-6.23988742

1.787132787

-2.23307754

.913077433

-.33517018

-2.25140937

13.203940169

100

-5.035344558

-29.5990351

1.672343771

-4.76456379

12.5133720

-.99858930

.5386443385

-.6305326210

100

-29.53912875

18.80955898

.5852272192

-9.23357836

-10.878988

-.17598823

.6164398921

.11381470861

-5.33295E-02

.26228169566

-.394290769

-.112504645

.8460061893

-2.0670603

-.57720422

-6.8173E-02

 

Elke kolom komt overeen met een ingangswaarde (de eerste kolom met de constante waarde ‘1’), elke rij komt overeen met een neuron (rij 1 t/m 8 zijn de 8 hidden neuronen, rij 9 is de uitgangsneuron). Er zijn geen kolommen bij welke uitsluitend uit kleine waarden bestaan, alle ingangsvariabelen worden dus daadwerkelijk gebruikt.

 

Er is tevens geëxperimenteerd met een hidden –layer welke uit 16 neuronen bestond en met een netwerk met 2 hidden layers van elk 8 neuronen. Deze blijken geen betere RMS waarden op te leveren dan het eenvoudige model met 1 hidden layer met 8 neuronen.

 

Er is een eenvoudig C-programma geschreven wat deze gewichten importeert en hieruit een neuraal netwerk bouwt. De gegevens uit de testset worden ingelezen en de resultaten worden verzameld.

De uitvoer van het neuraal netwerk worden in onderstaande grafieken vergeleken met de actuele data zoals deze gemeten zijn.

 

Figuur 1: 2ml fles met 2ml vulling (tijdsduur 0-900 sec)

 

Figuur 2: 5 ml fles met 5 ml vulling (tijdsduur 0-900 sec)

 

Worden de waarden ingelezen welke gebruikt zijn om het netwerk te trainen dan blijken de werkelijke en berekende waarden nog een stuk beter overeen te komen. Dit mag ook worden verwacht, gelet op de RMS waarden welke voor de test-set bijna twee maal zo hoog is.

 

Het netwerk wordt gebruikt in een real-time systeem. Binnen 100 msec moeten alle berekeningen voor een flesje gedaan zijn. Dit betekent dat het neurale netwerk ruim binnen deze 100 msec een uitvoerwaarde moet kunnen produceren.

Totaal aantal berekeningen: voor elke hidden neuron: 8 connecties naar de ingangsneuronen en 1 connectie naar de constante. Met 8 hidden neuronen betekent dit 64 vermenigvuldigingen en 8 maal een sigmoid functie uitrekenen (1 exponentiele functie en een deling), het uitgangsneuron heeft ook weer 8 connecties naar de hidden neuronen en 1 naar de constante. In totaal betekent dit 72 vermenigvuldigingen en 9 sigmoid functies doorrekenen. (Het optellen wordt hier verwaarloosd).
Dit lijkt hier verder geen probleem voor de gebruikte processor. Ook niet als er nog meer ingangswaarden gebruikt moeten worden en er nog wat rekenwerk nodig is om waarden te normaliseren.

 

Opmerkingen

Nadere analyse van de gegevens is nodig en meer metingen zijn nodig om een goed onderbouwde uitspraak te kunnen doen over het gebruik van neurale netwerken binnen vullijnen voor de farmaceutische industrie.

De oorspronkelijke doelstelling om ook de NMR  signalen te betrekken in het netwerk en als uitgang van het neuraal netwerk het gewicht te berekenen is door het ontbreken van meetgegevens niet mogelijk gebleken.
Het gebruikte NNDT tool is beperkt in het aantal neuronen wat het netwerk mag hebben en het aantal regels dat ingelezen kan worden. Het tool bleek echter voldoende voor de eenvoudige uitwerking zoals hierboven beschreven.

Zoals uit de uitvoer van het neurale netwerk blijkt, is het temperatuur gedrag van de vloeistof goed met een neuraal netwerk te beschrijven. De gebruikte gewichten waren afkomstig van een enigszins over-trained netwerk, de uitvoer van het neurale netwerk blijkt echter verbazend goed met de werkelijkheid overeen te komen. Het 2 ml flesjes nog wat beter dan het 5 ml flesje, dit omdat er slecht 1 set meetgegevens gebruikt is om het netwerk te trainen voor het 5 ml flesje tegenover 5 sets meetgegevens voor het 2 ml flesje.

Het temperatuurgedrag in de vulmachine is complexer dan is in de eenvoudige meetopstelling waarmee hiermee gewerkt is, er zijn meer invoerparameters en een analytisch model zal nog moeilijker op te stellen zijn (wellicht zal dit zelfs onmogelijk blijken te zijn), een neuraal netwerk zou hier zeker op zijn plaats kunnen zijn. Nader onderzoek is nodig om te bepalen of het netwerk in alle situaties een redelijke schatting van de temperatuur geeft. Ook moet bekeken worden of en hoe het NMR signaal opgenomen kan worden om direct het gewicht te bepalen.

Een van de invoerparameters is het flestype, hiervoor had beter de warmtecapaciteit, het glasoppervlak o.i.d. van het flesje gebruikt kunnen worden, hiermee kan het netwerk ook overweg met flesjes met andere volume als waarmee het getraind is. Was er ipv het flestype de warmtecapaciteit gebruikt dan had de uitvoer van het netwerk voor het 5 ml flesje waarschijnlijk nog beter gepresteerd.