Onder de motorkap — voor technische beoordelaars
GRIP — de beslisengine
De eigen probabilistische engine van Synlogica. Combineert harde SOP/GxP-regels met Monte-Carlo-simulatie en Bayesiaanse inferentie. Geeft verdelingen van uitkomsten met betrouwbaarheidsintervallen — geen enkelvoudige puntschattingen. Drijft de modules Transport en Onderhandeling aan. De module Kwaliteit heeft een aparte, toegewijde probabilistische Arrhenius-engine (zie de white paper over Arrhenius-houdbaarheidsmodellering voor de wiskunde, in het Engels).
Waarom probabilistisch, niet deterministisch
Operationele beslissingen in de farma zijn niet exact: een tenderuitkomst is geen „ja" of „nee" maar een kans, afhankelijk van vraag, vervoerderscapaciteit, lane-historie en concurrentieprijzen. De reactie van een leverancier op een tegenbod is niet zeker maar een verdeling over Accepteren / Tegenbod / Weglopen. De resterende houdbaarheid van een batch na een temperatuurexcursie is geen enkel getal maar een betrouwbaarheidsinterval, gedreven door Arrhenius-kinetiek en historische stabiliteitsdata.
GRIP geeft de volledige verdeling terug — en beveelt daartegen een actie aan met de risicotolerantie van de operator toegepast. Dat betekent:
- U kunt budgetteren op het slechtste geval op het 80e percentiel, niet op het gemiddelde.
- U kunt auditors uitleggen waarom een grensgeval werd vrijgegeven of vastgehouden — met de wiskunde, niet met „het model zei het".
- U kunt twee onderhandelingsstrategieën A/B-vergelijken met gekwantificeerde uitkomstvariantie.
De drie pijlers
1. Laag van harde regels
Uw SOP's, GxP-drempels, GDP-eisen, tenant-specifieke bedrijfslogica. Deterministische poorten die gepasseerd moeten worden voordat enige probabilistische redenering plaatsvindt. Auditeerbaar als code — geversioneerd, ondertekend.
2. Probabilistische modellen
Monte Carlo voor tenderuitkomsten en lane-risico. Bayesiaanse inferentie voor updates van de prijselasticiteit van leveranciers na elke onderhandelingsronde. Let op: de houdbaarheidsimpact (module Kwaliteit) draait op een aparte, toegewijde Arrhenius-engine — dezelfde algemene primitieve, onafhankelijke codebasis + validatiepakket.
3. Laag van beslisbeleid
Vertaalt verdeling → aanbevolen actie onder uw risicotolerantie. Configureerbaar (conservatief / gebalanceerd / opportunistisch). Elke aanbeveling wordt gelogd met de beleidsversie die haar heeft voortgebracht.
Zusje: de Arrhenius-engine van de module Kwaliteit
De module Kwaliteit wordt geleverd met een aparte, toegewijde probabilistische engine — niet GRIP — gebouwd rond Arrhenius-kinetiek voor de beoordeling van houdbaarheidsimpact na temperatuurexcursies. De wiskunde is dezelfde algemene primitieve (k(T) = A · exp(−Ea / RT) geïntegreerd over het werkelijke sensorprofiel, met Monte-Carlo-onzekerheidspropagatie), maar de engine, de parameterbibliotheek en het validatiepakket zijn onafhankelijk. We hebben ze bewust gescheiden: Kwaliteit draait op het bureau van de QP en is GAMP 5 Cat 4 gevalideerd tegen IQ/OQ-scripts gericht op excursiebeoordeling, terwijl GRIP op de operationele datahub draait voor Transport- en Onderhandelingsbeslissingen met andere acceptatiecriteria.
De volledige wiskundige doorloop staat in de white paper over Arrhenius-houdbaarheidsmodellering (Engels) — herkomst van activeringsenergie, propagatie van sensorkalibratiefouten, correcties voor ruimtelijke inhomogeniteit, wanneer piektemperatuur domineert versus cumulatieve blootstelling, en een uitgewerkte excursie van 6 uur bij 14 °C met volledige verdelingsuitvoer.
Voorbeeld 1 — Bayesiaanse prijselasticiteit in de module Onderhandeling
Elke leverancier heeft een latente prijselasticiteitsverdeling die GRIP schat en na elke interactie bijwerkt. De prior komt uit categoriebenchmarks (Fastmarkets, ICIS, LME, Argus); de posterior wordt via de regel van Bayes bijgewerkt na elke ronde van prijsuitwisseling:
Prior: log-normaal(μ = categoriebenchmark, σ = marktvolatiliteit)
Likelihood: functie van de tegenreactie van de leverancier op uw laatste bod
Posterior: bijgewerkte verdeling gebruikt om de volgende BATNA / doel / plafond aan te bevelen
Daarom komt het „aanbevolen tegenbod" van de module Onderhandeling met een gekalibreerde verwachte acceptatiekans — geen onderbuikgevoel. Na 3–5 rondes met een leverancier convergeert de posterior en worden de aanbevelingen scherper.
Voorbeeld 2 — Monte Carlo voor tenderdekking in de module Transport
Gegeven het productieplan en de actieve tender-lanes: wat is de kans dat u het komende kwartaal 95% van uw transportvraag dekt zonder blootstelling aan spotvracht?
GRIP draait 10.000 Monte-Carlo-simulaties, bemonsterd uit interne verdelingen:
- Stochastiek van het productieplan (kans op verschuiving per SKU)
- Acceptatie van gunningen per lane door elke vervoerder (historisch, ML-getraind op uw tenderuitkomsten)
- Vraagvolatiliteit per temperatuurklasse (koudeketen vs omgevingstemperatuur)
- Verdeling van spottariefinflatie (vervoerder × maand)
Laag van externe signalen
De Monte-Carlo-sampler haalt ook live externe feeds in de invoerverdelingen, zodat elke aanbeveling de werkelijke huidige operationele omgeving weerspiegelt, geen verouderde basislijn:
- Brandstofprijsindices — Brent / ULSD / diesel per lane-regio, timing van hedgingvensters voor blootstelling aan brandstoftoeslagen.
- Grondstofbenchmarks — ICIS, Fastmarkets, LME, Argus voor basislijnen van bijkomende kosten en toeslagen.
- Geopolitieke verstoringen — havencongestie (Rotterdam, Antwerpen, Hamburg), transittijden Rode Zee / Suez, impact van sancties op specifieke handelsroutes, duur van douanestakingen.
- Capaciteitskrapte-signalen — spread spot-vs-contract, on-time-pickup-percentages van vervoerders, seizoensvolumecurves.
- Weer / modaliteitsverschuiving — effecten van het Noord-Atlantische stormseizoen, overloop naar luchtvracht wanneer zeeroutes verstopt raken.
Uitvoer: verdeling van uitkomsten „dekkingsgraad × kosten van spotblootstelling × landed cost", geconditioneerd op de huidige externe toestand. Transport toont vervolgens de lanes die het meest bijdragen aan het staartrisico (slechtste 5%) en beveelt daarvoor een minitender aan voordat facturen worden afgestemd. Elke aanbeveling draagt de lineage-hash van de invoerdata, zodat de auditor de exacte beslissing kan naspelen met de exacte externe momentopname die haar heeft gevoed.
Auditeerbaarheid — modelversies in elke beslissing
Elk beslispakket dat Terminus uitgeeft, bevat:
- GRIP-engineversie (semver)
- Versie van de modelparameterset (per tenant)
- Versie van de regelset (uw SOP's)
- Versie van de beleidslaag (uw risicotolerantieconfiguratie)
- Lineage-hash van de invoerdata
- SHA-256-hash van de volledige PDF + JSON-uitvoer
Wanneer een auditor vraagt „waarom beval het model twee jaar geleden X aan?" — spelen we de exacte GRIP-versie na met exact dezelfde invoer en krijgen exact dezelfde uitvoer. Bit-voor-bit reproduceerbaarheid is de operationele eis, geen extraatje.
Wat GRIP NIET is
- Geen large language model. Er zit geen LLM in de beslislus. LLM's worden elders gebruikt (bijv. het parseren van vrije-tekstnotities over excursies naar gestructureerde velden), maar hun uitvoer voedt nooit de beslisaanbeveling.
- Geen black box. Elke kansverdeling is te inspecteren, elke regel is leesbare code, elke aanbeveling is herleidbaar tot haar invoer.
- Geen vervanging van het oordeel van QA / QP / inkoop. GRIP beveelt aan; mensen keuren goed. De goedkeuring maakt deel uit van het beslispakket.
- Geen magie. De kwaliteit van de aanbevelingen wordt begrensd door de kwaliteit van de invoer. Rommel erin → gekalibreerde rommel eruit. We helpen u de invoer te verbeteren.
De diepgaande technische briefing?
Gesprek van 30 minuten met Adam Karpiński — engineeringdetails, modelparameters, validatieaanpak voor uw categorie.
Plan een gesprek →