Prachtig artikel in het magazine N9. Uitgegeven in opdracht van
de Hogeschool-Universiteit Brussel (HUB) en de KAHO Sint-Lieven (KAHO).
zondag 9 oktober 2011
donderdag 19 mei 2011
KAHO Starter van het jaar 2011
Cornelis ICT was bij de vijf genomineerde voor de prijs "KAHO Starter van het jaar".
Op Dinsdag 19 mei werden we op de plechtige uitreiking op de campus Dirk Martens (Aalst) verkozen tot "KAHO Starter van het jaar". Dat was mooie bevestiging voor het harde werken van de laatste twee jaar. Bovendien mochten we ook de publieksprijs in ontvangst nemen, een unicum!
Lees het artikel na in het nieuwsblad
Op Dinsdag 19 mei werden we op de plechtige uitreiking op de campus Dirk Martens (Aalst) verkozen tot "KAHO Starter van het jaar". Dat was mooie bevestiging voor het harde werken van de laatste twee jaar. Bovendien mochten we ook de publieksprijs in ontvangst nemen, een unicum!
Lees het artikel na in het nieuwsblad
donderdag 5 mei 2011
Jurgen De Mol
Ik wil graag één van onze succesvolle klanten in de kijker zetten.
Kapper de Mol uit Lede is een van de eerste kappers die de online afspraken website in gebruik nam en werkt nu reeds meer dan 1 jaar mee. De kapper wist me te vertellen dat hij opmerkelijk minder telefoontjes moet beantwoorden en de zaken heel vlot verlopen.
"Er bellen alleen nog eens klanten om te zeggen dat ze niet meer kunnen reserveren op een dag, omdat die al vol zit, (lacht)".
Ikzelf als ontwikkelaar en ondernemer ben er al enkele keren geweest om mijn coupe te laten knippen. Het is werkelijk magisch om daar even te zitten wachten en kijken. De telefoon gaat amper en ondertussen zijn 2 kappers geconcentreerd bezig met hun klanten. Als een klant betaalt aan de kassa komt de volgende al binnengewandeld, zo gaat dat de hele dag door.
www.jurgendemol.be
Meer info omtrent het afspraken systeem: www.cornelis-ict.be
Kapper de Mol uit Lede is een van de eerste kappers die de online afspraken website in gebruik nam en werkt nu reeds meer dan 1 jaar mee. De kapper wist me te vertellen dat hij opmerkelijk minder telefoontjes moet beantwoorden en de zaken heel vlot verlopen.
"Er bellen alleen nog eens klanten om te zeggen dat ze niet meer kunnen reserveren op een dag, omdat die al vol zit, (lacht)".
Ikzelf als ontwikkelaar en ondernemer ben er al enkele keren geweest om mijn coupe te laten knippen. Het is werkelijk magisch om daar even te zitten wachten en kijken. De telefoon gaat amper en ondertussen zijn 2 kappers geconcentreerd bezig met hun klanten. Als een klant betaalt aan de kassa komt de volgende al binnengewandeld, zo gaat dat de hele dag door.
www.jurgendemol.be
Meer info omtrent het afspraken systeem: www.cornelis-ict.be
woensdag 13 april 2011
Het eerste wetenschappelijke artikel in LaTeX
LaTeX is een document-processor net als microsoft word waar wetenschappers gebruik van maken om hun artikels in te produceren. Na een namiddagje werken heb ik er ook een geproduceerd, zie afbeelding. Het definitieve artikel komt later online.
maandag 11 april 2011
De eerste testresultaten
Met een 2 verschillende constructieve heuristieken ziet het afstandsverloop voor verschillende aankomstdistributies er zo uit:
De tweede planningsmethode levert al een verbetering van ongeveer 30% t.o.v. de eerste planningsmethode.
Dit is voor een groep van 5 vertegenwoordigers en een tijdshorizon van 14 dagen. Toch al een mooi resultaat voor de eerste en nog eenvoudige planningsmethodes! Benieuwd wat de andere heuristieken die ik nog achter de hand heb opleveren.
Dit is voor een groep van 5 vertegenwoordigers en een tijdshorizon van 14 dagen. Toch al een mooi resultaat voor de eerste en nog eenvoudige planningsmethodes! Benieuwd wat de andere heuristieken die ik nog achter de hand heb opleveren.
Poster
In het kader van mijn masterproef moeten we een poster ontwerpen.
Ik hoop de afstanden die verkopers moeten afleggen met 40% te reduceren, door intelligente planningsmethodes te hanteren. Momenteel loopt een simulator die mijn oplossingsmethodes op verschillende probleeminstanties laat uitvoeren. De juiste resultaten komen later.
www.cornelis-ict.be
Ik hoop de afstanden die verkopers moeten afleggen met 40% te reduceren, door intelligente planningsmethodes te hanteren. Momenteel loopt een simulator die mijn oplossingsmethodes op verschillende probleeminstanties laat uitvoeren. De juiste resultaten komen later.
www.cornelis-ict.be
maandag 14 februari 2011
Presentatie Eindwerk
Zo die is ook klaar! Een hele presentatie rond planning en routering van sales personeel.
Ik heb geprobeerd om op een luchtige en goed begrijpbare manier een toch wel vrij wetenschappelijk stuk werk voor te stellen. Ik hoop hiermee de toeschouwers toch een kwartier lang op het puntje van hun stoel te laten zitten!
Ik heb geprobeerd om op een luchtige en goed begrijpbare manier een toch wel vrij wetenschappelijk stuk werk voor te stellen. Ik hoop hiermee de toeschouwers toch een kwartier lang op het puntje van hun stoel te laten zitten!
Presentatie
View more presentations from Cornelis Sven.
maandag 7 februari 2011
Thesis: planning & routering van sales personeel
Voor een eindwerk in men laatste jaar industrieel ingenieur ICT werk in aan planning en routering van sales personeel. Het idee is er gekomen vanuit de ontwikkeling en implementatie van het huidige afspraken-systeem. (U kan het huidige systeem raadplegen op www.cornelis-ict.be). Ik kwam tot de vaststelling dat sales personeel heel wat moeilijkheden ondervinden bij het efficiënt plannen van hun afspraken.
Een voorbeeld: Bart krijgt telefoon van een potentiële klant die een afspraak wil maken. Bart moet zijn agenda erbij nemen en zoeken naar een moment om die klant toe te voegen. Direct moet hij met een aantal factoren rekening houden. Vragen die Bart zich stelt tijdens het plannen van de nieuwe afspraak:
-Hoe lang zal ik bij die klant aanwezig zijn?
-Hoe lang zal ik rijden van de ene afspraak naar deze nieuwe afspraak?
-Als ik de afspraak hier plan, heb ik dan nog genoeg tijd om naar de volgende afspraak te rijden?
-...
U merkt het al, niet gemakkelijk! In de praktijk zal men vaak inefficiënt gebruik maken van het beschikbare personeel door minder goed te plannen. In dit domein situeert zich het eindwerk waar ik gedurende 1 jaar zal bestuderen. Uiteindelijk zullen er ook testopstellingen geïmplementeerd worden die moeten leiden tot de beste oplossing.
De samenvatting van dit eindwerk kan u hieronder nalezen:
In dit eindwerk wordt het vertegenwoordigersteam van een bedrijf gerouteerd en gepland. Het is een praktische toepassing van het Travelling Salesman Problem (TSP). Een bedrijf heeft een aantal vertegenwoordigers die op de baan gaan om klanten te bezoeken en een aantal producten voor te stellen. Ze moeten de klanten op een zo efficiënt mogelijke manier bezoeken. Efficiënt betekent dat de kosten (afstand) minimaal moet blijven en de werktijden van vertegenwoordigers nuttig ingevuld moeten worden. Het effect van het verminderen van de af te leggen afstand impliceert ook dat we CO2-uitstoot reduceren. Het eerste deelprobleem waarvoor een oplossing ontwikkeld wordt, is wanneer een vertegenwoordiger een nieuwe afspraak met een klant in zijn agenda moet inplannen. Hij/zij kan dan aan de toepassing vragen welke tijdstippen het meest geschikt zijn om die klant te bezoeken. Het tweede deelprobleem waarvoor een oplossing ontwikkeld wordt, is wanneer een klant een aantal producten wenst voorgesteld te zien door een vertegenwoordiger uit het bedrijf. De klant kan dan zelf de toepassing bevragen naar een aantal geschikte tijdstippen om af te spreken met een vertegenwoordiger. Het derde en laatste deelprobleem dat aangepakt wordt, is wanneer de afspraken voor de klanten gepland zijn. In dat geval laten we het programma analyseren of bepaalde afspraken kunnen verwisseld worden tussen vertegenwoordigers om tot een betere planning te komen. Voor de uitwerking worden eerst alle problemen gemodelleerd. Daarna voeren we een uitgebreide literatuurstudie die moet leiden tot het selecteren en ontwikkelen van de geschikte oplossingsmethodes.
In de eerste week heb ik verschillende boeken en papers doorgenomen om mezelf in de "optimalisatiewereld" te introduceren, om zo een oplossing te vinden voor mijn gestelde probleem.
Gestelde probleem Ontwikkelen van een optimale salesplannings-tool met mogelijkheid tot koppeling met een bestaande CRM tool. (bv. SugarCRM)
Waarom? Zo kunnen we de CO2 uitstoot en verbruik van brandstof reduceren in combinatie met een optimale werknemersplanning waarbij met zo weinig mogelijk personeel zo veel mogelijk kanten kunnen bezocht worden.
Boeken
- Search methodologies (Introductory Tutorials in Optimization and Decision Support Techniques) - Edmund K. Burke - Graham Kendall
- Operations Research - Winston
Eindwerk
- Callewaert Marjan - 2005-2006 - Planning voor monitors
Een van de papers die me het meest op weg gezet heeft voor het modeleren van mijn probleem:
paper modeling employee sheduling
Hier wordt duidelijk uitgelegd hoe je een werknemers-planning kan modelleren.
Deze opstelling dient in mijn masterproef uitgebreidt te worden met een extra eigenschap die rekening houd met de verplaatsingstijden & kosten die hiermee gepaard gaan.
En in een volgende fase dienen verschillende agenda's met elkaar vergeleken te worden in combinatie met de route-informatie.
Ondertussen heb ik reeds onderzocht hoe ik die verplaatsingstijden & afstand kan berekenen.
Google Maps API laat namelijk toe de richtingsaanwijzingen op te vragen voor auto/fiets of te voet.
Daarbij wordt ook de duration (tijdsduur) en distance (afstand) berekend.
Meer informatie kan hier nagelezen worden: Google maps directions api
Via een eenvoudig stukje PHP-code die deze webservice aanspreekt kan je de eigenschappen van de route opvragen.
function calcDistance($lat1, $lng1, $lat2, $lng2) {
$url = str_replace(' ', '%20', "http://maps.google.com/maps/api/directions/json?origin=" . $lat1 . "," . $lng1 . "&destination=" . $lat2 . "," . $lng2 . "&sensor=false");
$result = file_get_contents($url);
$data = json_decode(utf8_encode($result), true);
return $data['routes'][0]['legs'][0]['distance']['value'];
}
Uitleg: aan deze functie calcDistance worden 4 parameter meegegeven. De eerste 2 ($lat1, $lng1) representeren de eerste locatie, de laatste 2 ($lat2, $lng2) representeren de 2de locatie. Omdat Google Maps gebruikt maak van deze latitude en longitude coördinaten worden deze hier ook gebruik in het stukje PHP code. De webservice-oproep word gemaakt met de file_get_contents($url) functie, deze retourneert de resultaten. De resultaten (in JSON formaat) worden daarna gedecodeerd als een Array. Waaruit we de nuttige informatie kunnen opvragen met volgende indexes $data['routes'][0]['legs'][0]['distance']['value'];
Er werd gekozen om het nieuwe algoritme te implementeren binnen het bestaande systeem dat ikzelf reeds ontwikkeld had. Omdat database(MySQL), agenda, GUI en vele query's daar reeds aanwezig zijn waarvan gebruik kan gemaakt worden. Het bestaande systeem is geïmplementeerd in PHP, dit vormt een goede basis om te koppelen aan een bestaande CRM. Aangezien bv. SugarCRM, een van de bekende CRM systemen, ook geïmplementeerd is in PHP code. Webapplicaties hebben als voordeel grote flexibiliteit toe te laten, men kan immers overal waar men over internet beschikt de software gebruiken of raadplegen.
Een nadeel aan de keuze voor ontwikkeling in PHP: Is het feit dat er geen frameworks of klassen aanwezig zijn die gebruikt kunnen worden voor het ontwikkelen van het algoritme. Maar het kan natuurlijk ook als een voordeel aanzien worden, zo verhoog ik mijn inzicht in algoritmen en kan ze misschien verbeteren voor deze specifieke toepassing.
Verder werd de bestaande GUI reeds aangepast zodat adresgegevens ook kunnen ingegeven worden tijdens het plannen van een nieuwe afspraak. Zoals je ziet op volgende figuur is in de 3de stap een google map voorzien met daarboven een input veld. Als men een adres ingeeft in dit inputveld word dit automatisch vertaald naar een rode marker (aanwijzer) op de kaart. Die gaat gepaard met een latitude- en logitude coördinaten die berekend worden. (Deze codering gebeurd in javascript) Deze coördinaten kunnen dan gebruikt worden voor het aanspreken van de websevice (Google Maps API, zie hierboven)
Een voorbeeld: Bart krijgt telefoon van een potentiële klant die een afspraak wil maken. Bart moet zijn agenda erbij nemen en zoeken naar een moment om die klant toe te voegen. Direct moet hij met een aantal factoren rekening houden. Vragen die Bart zich stelt tijdens het plannen van de nieuwe afspraak:
-Hoe lang zal ik bij die klant aanwezig zijn?
-Hoe lang zal ik rijden van de ene afspraak naar deze nieuwe afspraak?
-Als ik de afspraak hier plan, heb ik dan nog genoeg tijd om naar de volgende afspraak te rijden?
-...
U merkt het al, niet gemakkelijk! In de praktijk zal men vaak inefficiënt gebruik maken van het beschikbare personeel door minder goed te plannen. In dit domein situeert zich het eindwerk waar ik gedurende 1 jaar zal bestuderen. Uiteindelijk zullen er ook testopstellingen geïmplementeerd worden die moeten leiden tot de beste oplossing.
De samenvatting van dit eindwerk kan u hieronder nalezen:
In dit eindwerk wordt het vertegenwoordigersteam van een bedrijf gerouteerd en gepland. Het is een praktische toepassing van het Travelling Salesman Problem (TSP). Een bedrijf heeft een aantal vertegenwoordigers die op de baan gaan om klanten te bezoeken en een aantal producten voor te stellen. Ze moeten de klanten op een zo efficiënt mogelijke manier bezoeken. Efficiënt betekent dat de kosten (afstand) minimaal moet blijven en de werktijden van vertegenwoordigers nuttig ingevuld moeten worden. Het effect van het verminderen van de af te leggen afstand impliceert ook dat we CO2-uitstoot reduceren. Het eerste deelprobleem waarvoor een oplossing ontwikkeld wordt, is wanneer een vertegenwoordiger een nieuwe afspraak met een klant in zijn agenda moet inplannen. Hij/zij kan dan aan de toepassing vragen welke tijdstippen het meest geschikt zijn om die klant te bezoeken. Het tweede deelprobleem waarvoor een oplossing ontwikkeld wordt, is wanneer een klant een aantal producten wenst voorgesteld te zien door een vertegenwoordiger uit het bedrijf. De klant kan dan zelf de toepassing bevragen naar een aantal geschikte tijdstippen om af te spreken met een vertegenwoordiger. Het derde en laatste deelprobleem dat aangepakt wordt, is wanneer de afspraken voor de klanten gepland zijn. In dat geval laten we het programma analyseren of bepaalde afspraken kunnen verwisseld worden tussen vertegenwoordigers om tot een betere planning te komen. Voor de uitwerking worden eerst alle problemen gemodelleerd. Daarna voeren we een uitgebreide literatuurstudie die moet leiden tot het selecteren en ontwikkelen van de geschikte oplossingsmethodes.
In de eerste week heb ik verschillende boeken en papers doorgenomen om mezelf in de "optimalisatiewereld" te introduceren, om zo een oplossing te vinden voor mijn gestelde probleem.
Gestelde probleem Ontwikkelen van een optimale salesplannings-tool met mogelijkheid tot koppeling met een bestaande CRM tool. (bv. SugarCRM)
Waarom? Zo kunnen we de CO2 uitstoot en verbruik van brandstof reduceren in combinatie met een optimale werknemersplanning waarbij met zo weinig mogelijk personeel zo veel mogelijk kanten kunnen bezocht worden.
Boeken
- Search methodologies (Introductory Tutorials in Optimization and Decision Support Techniques) - Edmund K. Burke - Graham Kendall
- Operations Research - Winston
Eindwerk
- Callewaert Marjan - 2005-2006 - Planning voor monitors
Een van de papers die me het meest op weg gezet heeft voor het modeleren van mijn probleem:
paper modeling employee sheduling
Hier wordt duidelijk uitgelegd hoe je een werknemers-planning kan modelleren.
Deze opstelling dient in mijn masterproef uitgebreidt te worden met een extra eigenschap die rekening houd met de verplaatsingstijden & kosten die hiermee gepaard gaan.
En in een volgende fase dienen verschillende agenda's met elkaar vergeleken te worden in combinatie met de route-informatie.
Ondertussen heb ik reeds onderzocht hoe ik die verplaatsingstijden & afstand kan berekenen.
Google Maps API laat namelijk toe de richtingsaanwijzingen op te vragen voor auto/fiets of te voet.
Daarbij wordt ook de duration (tijdsduur) en distance (afstand) berekend.
Meer informatie kan hier nagelezen worden: Google maps directions api
Via een eenvoudig stukje PHP-code die deze webservice aanspreekt kan je de eigenschappen van de route opvragen.
function calcDistance($lat1, $lng1, $lat2, $lng2) {
$url = str_replace(' ', '%20', "http://maps.google.com/maps/api/directions/json?origin=" . $lat1 . "," . $lng1 . "&destination=" . $lat2 . "," . $lng2 . "&sensor=false");
$result = file_get_contents($url);
$data = json_decode(utf8_encode($result), true);
return $data['routes'][0]['legs'][0]['distance']['value'];
}
Uitleg: aan deze functie calcDistance worden 4 parameter meegegeven. De eerste 2 ($lat1, $lng1) representeren de eerste locatie, de laatste 2 ($lat2, $lng2) representeren de 2de locatie. Omdat Google Maps gebruikt maak van deze latitude en longitude coördinaten worden deze hier ook gebruik in het stukje PHP code. De webservice-oproep word gemaakt met de file_get_contents($url) functie, deze retourneert de resultaten. De resultaten (in JSON formaat) worden daarna gedecodeerd als een Array. Waaruit we de nuttige informatie kunnen opvragen met volgende indexes $data['routes'][0]['legs'][0]['distance']['value'];
Er werd gekozen om het nieuwe algoritme te implementeren binnen het bestaande systeem dat ikzelf reeds ontwikkeld had. Omdat database(MySQL), agenda, GUI en vele query's daar reeds aanwezig zijn waarvan gebruik kan gemaakt worden. Het bestaande systeem is geïmplementeerd in PHP, dit vormt een goede basis om te koppelen aan een bestaande CRM. Aangezien bv. SugarCRM, een van de bekende CRM systemen, ook geïmplementeerd is in PHP code. Webapplicaties hebben als voordeel grote flexibiliteit toe te laten, men kan immers overal waar men over internet beschikt de software gebruiken of raadplegen.
Een nadeel aan de keuze voor ontwikkeling in PHP: Is het feit dat er geen frameworks of klassen aanwezig zijn die gebruikt kunnen worden voor het ontwikkelen van het algoritme. Maar het kan natuurlijk ook als een voordeel aanzien worden, zo verhoog ik mijn inzicht in algoritmen en kan ze misschien verbeteren voor deze specifieke toepassing.
Verder werd de bestaande GUI reeds aangepast zodat adresgegevens ook kunnen ingegeven worden tijdens het plannen van een nieuwe afspraak. Zoals je ziet op volgende figuur is in de 3de stap een google map voorzien met daarboven een input veld. Als men een adres ingeeft in dit inputveld word dit automatisch vertaald naar een rode marker (aanwijzer) op de kaart. Die gaat gepaard met een latitude- en logitude coördinaten die berekend worden. (Deze codering gebeurd in javascript) Deze coördinaten kunnen dan gebruikt worden voor het aanspreken van de websevice (Google Maps API, zie hierboven)
In de komende week is het de bedoeling een concreet mathematisch model op te stellen dat het eerste probleem zo volledig mogelijk modeleerd. Het eerste probleem die zich stelt is wanneer een salespersoon zelf een nieuwe afspraak wenst toe te voegen in zijn eigen agenda. Waar is het optimale moment? Na het opstellen van dit mathematisch model kan ik overgaan tot implementatie van een eerste "eenvoudig" algoritme. Eenvoudig in de zin dat het nog geen heuristieken bevat of andere algoritme optimalisaties
Abonneren op:
Posts (Atom)