De naam is planner: OptaPlanner

Robin Pauwels, 25 juli 2018

Planningsproblematieken. Je hebt ze in alle maten en vormen. Hoe ga je efficiënt te werk met het inplannen van een gelimiteerde set resources (werknemers, voertuigen, lokalen, ...) die gekluisterd zijn aan een boel regels die, in een optimale wereld, niet gebroken mogen worden?

Problematiek

Neem nu een transportfirma die 500 televisies moet gaan leveren op 10 verschillende locaties met maar 3 vrachtwagens ter beschikkinig en binnen een bepaalde tijd. Lijkt me niet zo simpel om hier manueel een zo optimaal mogelijke route voor uit te stippelen, toch?

Een ander voorbeeld. Een 200 verpleegsters die ingedeeld moeten worden in hun shiften, waarbij contractuele verplichtingen en de wensen van de verpleegsters zelf in acht genomen moeten worden. Gecombineerd met de wet van de natuur die zegt dat een verpleegster uiteraard geen 2 shiften tegelijkertijd kan uitoefenen, Lijkt me dit wederom geen eenvoudige planning die opgemaakt moet worden.

Kortom, zulke problemen manueel te lijf gaan vraagt om zeer tijdrovende en intensieve inspanningen die verre van een zo optimaal mogelijk niveau behalen. Het optimale niveau behalen, kan dit dan wel? Een oplossing is bijna nooit optimaal, maar we kunnen er wel voor zorgen dat we binnen een bepaalde tijd de best mogelijke oplossing genereren. Hoe vraagt u? Wel, hiervoor is de Optaplanner software de meest geschikte kandidaat.

Oplossing

Wat begon als een hobby groeide al snel uit naar s’ werelds beste business resource optimizer. Geoffrey De Smet is de vader van Optaplanner en besefte al snel, na het deelnemen van enkele wedstrijden met deze implementatie, dat hij over een ruwe diamant beschikte die het indelen van business resources wel eens een nieuw tijdperk in kon sturen. Gesponsord door Red Hat, werken Geoffrey en zijn team dagelijks aan het slijpen van deze ruwe diamant en brengen steeds nieuwe features naar boven die het modelleren en oplossen van elk soort probleem de baas kunnen.

Klinkt allemaal veelbelovend, maar hoe gaat Optaplanner dan juist te werk? De technoglogie maakt gebruik van metaheuristieke algoritmes en een doeltreffend score systeem die het inplannen van allerhande business resources naar een zo optimaal mogelijk niveau tilt. De constraints of business rules vormen mee de basis van OptaPlanner en zorgen ervoor dat een planning niet zal afwijken van bepaalde criteria. Constraints worden gedefinieerd als hard –en soft constraints waarbij de soft constraints zowel negatief als positief kunnen zijn en de hard constraints enkel negatief. 


 

Hard constraints gaan uit van het principe dat ze niet gebroken mogen worden en soft constraints mogen enkel en alleen gebroken worden als het echt niet anders kan. Elk type constraint krijgt een bepaalde waarde toegekend die het score systeem zal voeden bij het zoeken naar een oplossing. Constraints en hun bijbehorende parameters worden geformuleerd en omgevormd met behulp van de Droolsbusiness rules engine.

Optaplanner zal achterliggend meerdere oplossingen genereren waarbij elke oplossing voorzien wordt van een score, toegewezen door het al dan niet breken van de constraints. Negatieve constraints zullen penalties of strafpunten toegewezen krijgen en positieve constraints zullen een beloning toegewezen krijgen. De engine zal telkens de oplossing naar voren brengen met de hoogst mogelijke score.

De wijze waarop de planner op zoek gaat naar de meest optimale oplossing wordt geconfigureerd aan de hand van complexe metaheuristieke algoritmes die zodanig getweaked en gebenchmarked kunnen worden zodat er op een flexibele manier naar een zo goed mogelijke oplossing gezocht kan worden.

Alright, doe mij maar zo’n Optaplanner! 

Jammer, maar Optaplanner is geen afgewerkt product dat klaar staat om geïntegreerd te worden binnen uw huidige systemen. Bij Infofarm gebruiken we de Optaplanner engine om een op maat gemaakte, klantgerichte oplossing te bouwen die volledig zal voldoen aan de noden van onze klanten. De technologie is 100% Java compatibel en kan door elke developer opgepikt worden door het downloaden van de comunity versie of door het aankopen van de enterprise versie, waarbij Red Hat support en onderhoud volledig op zich neemt. 

Benieuwd naar meer? 

Neem een kijkje op de Optaplanner website en de reeds uitgewerkte use cases. Als u in de toekomst geconfronteerd wordt met soortgelijke planningsproblemen, dan zal u ongetwijfeld terugdenken aan deze technologie. 

Thank god there’s Optaplanner!

Over Infofarm

Data is goud en bij infofarm willen ze dit goud tastbaar maken. Infofarm wil zijn klanten ondersteunen bij het verwerken van hun data door gerichte analyses, voorspellingen en aanbevelingen te doen. Het gedreven en getalenteerd team van data scientists, data developers en project managers, zorgen samen met de allernieuwste technologieën, dagelijks voor een significante meerwaarde aan hun projecten, elkaar en hun klanten. 

www.infofarm.be