Optimaliseren

Sanghalung’s Nutriënten rekenaar

Het optimaliseren van een samenstelling gaat door middel van het vaststellen van beperkingen en het instellen van minimale en/of maximale hoeveelheden van de producten en nutriënten.

Rekengereedschap en lineaire programmering proberen hoeveelheden met behulp van eenvoudig rekenen of het toepassen van algoritmes zodanig af te stemmen dat ze binnen die beperking van een minimaal en/of maximaal bereik vallen.

In de samenstelling die we eerder hebben gemaakt hebben we 150 gram aardappelen, 100 gram sperziebonen en 120 gram runderbiefstuk ingevoerd. Het totaalgewicht komt uit op 370 gram samengesteld gewicht.

Verhoudingsgewijs rekenen

Het verhoudingsgewijs optimaliseren van het eindgewicht is de meest eenvoudige methode. U hoeft slechts het eindgewicht in te voeren en het rekengereedschap doet de rest.

Stel u wilt 450 gram maken van de samenstelling. We moeten dus in verhouding omhoog rekenen, immers we hebben maar 370 gram in de samenstelling zitten. Het verhoudingsgewijs omhoog of omlaag rekenen kan bijvoorbeeld handig zijn om niet meer te produceren dan u bijvoorbeeld kunt maken, verpakken of kunt bewaren.

Druk op de knop “Invoer kolommen berekenen” in het paneel “Samenstelling”.

De tab “In / Uit” bepaalt de kolom in de samenstelling die als invoer wordt gebruikt voor het rekenwerk en de uitvoer kolom waarin de resultaten van het rekenwerk wordt geschreven.

Selecteer in de dialoog “Kolommen berekenen” de tab “In / Uit” en selecteer het aankruis vak “HvUsr” als invoer en het aankruis vak “HvOpt” als uitvoer. “HvOpt” staat voor “Hoeveelheid geoptimaliseerd”.

Vul in het veld “Eindgewicht” van de tab “Eindgewicht” de hoeveelheid 450 gram in en druk op de knop “Berekenen”.

De hoeveelheden 150 gr / 100 gr / 120 gr zijn verhoudingsgewijs omgerekend maar 182,4 gr / 121,6 gr / 145,9 gr met als afgerond samenstellingsgewicht; 450 gram.

U kunt ook een lager eindgewicht invoeren bijvoorbeeld wanneer u een overzicht wilt maken per 100 gram product. Voer 100 gram in als eindgewicht en druk op de knop “Berekenen” om verhoudingsgewijs omlaag te rekenen. De uitkomst wordt dan 40,5 gr / 27 gr / 32,4 gr met als afgerond eindgewicht 100 gram.

Na het maken van de berekening druk u op de knop “Toepassen” om het resultaat na bevestiging weg te schrijven in de gewenste uitvoer kolom.

Er zijn verschillende manieren van verhoudingsgewijs omrekenen zoals procentueel, stuks aantallen, optellen, aftrekken, delen en vermenigvuldigen.

Lineair Programmeren

Rond de jaren 40 – 50 van de vorige eeuw is lineair programmeren voor het eerst beschreven door de Russische wiskundige Leonid Kantorovitsj en wat later door de Amerikaanse wiskundige George Dantzig met zijn introductie van het Simplex algoritme.

Lineair programmeren gebruikt algoritmes om de uitkomst te optimaliseren op basis van een aantal beperkingen. Deze lineaire beperkingen leiden tot het het toegelaten gebied, dat het ‘convex veelvlak’ wordt genoemd. Binnen dit toegestane gebied zijn de meest optimale opties te vinden, die door wiskundige berekening tot stand zijn gekomen.

De lineaire beperkingen kunt u opgeven voor zowel de product hoeveelheden als de nutriënt hoeveelheden in de min en max kolommen. Daarnaast kunt u aangeven of een minimale, maximale of minimale en maximale beperking actief is.

De beperking “Het gewicht van de regel moet tenminste Min zijn en mag ten hoogste Max zijn” is van toepassingen wanneer zowel de Min en de Max actief zijn. De beperking “Het gewicht van de regel moet tenminste Min zijn” is van toepassing wanneer alleen Min actief is en ten slotte, de beperking “Het gewicht van de regel mag ten hoogste Max zijn” is van toepassing wanneer alleen Max actief is. Optimalisatie zonder beperkingen is onmogelijk.

In het voorbeeld bestand “Voorbeeld.slw” heb ik de beperkingen ingevoerd met als doelstelling een aantal macro nutriënten te kunnen optimaliseren binnen het bereik van de aanbevolen dagelijkse hoeveelheid (ADH) van de Nederlandse gezondheidsraad voor 50-55 jarige volwassen mannen.

U kunt naar een minimum of naar een maximum optimaliseren door op de knop “Optimaliseren naar minimum” of “Optimaliseren naar maximum” te drukken.

Ten slotte

Het optimaliseren van een complexe samenstelling is een stapsgewijs proces. Het is goed om van te voren te weten wat u wilt optimaliseren. Meestal komt dat tot stand met een analyse van de huidige samenstelling. Door gedeeltelijke beperkende berekeningen te maken komt u tot een oplossing en wanneer de oplossing niet mogelijk is, de beperkingen in bereik groter te maken of zelfs op te heffen.

In het vakgebied wordt wel meer dan eens de vraag gesteld waarom er geen oplossing (meer) mogelijk is. Dat kan vele oorzaken hebben. De belangrijkste zijn; Onbekendheid met de algemene werking van Dantzig’s Simplex algoritme, gewijzigde analyses in het voedingstoffenbestand, gewijzigde hoeveelheden in de samenstelling en de opgelegde beperkingen. Ik kan u op deze vraag dan ook geen ander antwoord geven dan het bovenstaande.