5de DINGO Gebruikerscommissie

Slides:



Advertisements
Verwante presentaties
Project Software Engineering
Advertisements

Blok 7: netwerken Les 7 Christian Bokhove.
Internet College 1 Architecturen.
TETRA valorisatieproject IWT Realisatie van een raamwerk voor automatische personeelsplanning Tweede gebruikerscommissie
Edison en de toekomst INTERNET E-loket. Algemeen overzicht n Schooldirect n Schooldirect en de Edison-helpdesk n in Edison (Route400) n.
Secure Distributed Computing Gregory Neven (3CW Pr.) Promotor: Prof. Dr. ir. Frank Piessens.
Server Management Framework
Gedistribueerde personeelsplanning: DINGO Studiedag Automatische Personeelsplanning Patrick De Causmaecker, Peter Demeester, Greet Vanden Berghe en Bart.
Presentatie Mobiel & Internet 3
Presentatie Stage/Q Roel Grit Info/Q automatisering
Blok 7: netwerken Les 8 Christian Bokhove.
FlexiPlan, een roostering toolkit 10 november 2005
Gezond roosteren in een ziekenhuis : Hoezo complex ?!
‘Inleiding programmeren in Java’ SWI cursus: ‘Inleiding programmeren in Java’ 4e college Woe 19 januari 2000 drs. F. de Vries.
VBA en VBS Een introductie.
Hoofdstuk 6: Controle structuren
Inleiding Software Engineering
PLDA – Connectiviteit Rudolf de Schipper Geoffroy Fauveaux 09/11/2004.
Activiteit 1.6 Bepalen niet-functionele eisen
Interaction diagrams: Sequence Diagram
Basic Web Services Technology Matthijs Smith & Roel Arents tbv ISS 2005/2006.
1 Voorwaarden hergebruik Modulair ontwerp Low coupling High cohesion.
Inleidend probleem Data structuur (hiërarchie van classes)
Databases I (H. 1) Wiebren de Jonge Vrije Universiteit, Amsterdam Voorlopige versie 2003.
SWI cursus: ‘Inleiding programmeren in Java’
Path planning voor elastische objecten Robin Langerak Planning paths for elastic objects under manipulation constraints LamirauxKavraki.
Lokale zoekmethoden Goed in de praktijk:
Stefan Kolgen – C.H.I.P.S. vzw 1. “ Web 2.0 is the business revolution in the computer industry caused by the move to the internet as platform, and an.
6 de DINGO Gebruikerscommissie KaHo Sint-Lieven Gent
3 de gebruikerscommissie KaHo Sint-Lieven, Gent.
Dingo1 4 de DINGO Gebruikerscommissie 2 december 2004 KaHo Sint-Lieven Gent.
2de gebruikerscommissie DINGO
AMobe 3de Gebruikerscommissie KaHo Sint-Lieven - Gent.
AMobe 4de Gebruikerscommissie KaHo Sint-Lieven - Gent.
Agentenplatformen en programmeeromgevingen 1.Java 2 Micro Edition (J2ME) 2.Personal Java 3.JADE en LEAP 4.LEAP op verschillende toestellen 5.Onze voorkeuren.
Vergadering Stuurgroep ICT Donderdag 19 december 2012.
Netwerken / Internet ICT Infrastructuren David N. Jansen.
Een Module over Model Checking voor het VWO Frits Vaandrager1, David Jansen1 & Els Koopmans2 1Radboud Universiteit Nijmegen 2Olympus College Arnhem.
Eduroam BELnet bezoek, 18 juli 2005
OO Analyse in de praktijk OO Analyse in de praktijk V Enkele Design Patterns.
Mamut Kassa K.D.C Swakhoven
Minicollege Service Oriented Architecture
Ontwikkeld door CWB3. Opbouw Presentatie 1.Wat is GeoSport? 2.Ontwerp 1.Gebruikte ontwerpmethodieken 2.Ervaring 3.Implementatie 1.Gebruikte technologieën.
PADS4 maakt het eenvoudig om informatie te verspreiden naar een specifiek publiek op de juiste plaats en het juiste moment PADS4 is een professionele oplossing.
Positie Optimalisaties Mobiele Multi-Agent Systemen Stand van zaken 2U.
DigiDoc Een digitaal kantoor voor iedereen !. Ceci n’est pas du software?! 2.
MEETING SYSTEMS BV VOOREFFECTIEFVERGADEREN.  Meeting Systems bv levert software als hulpmiddel om het vergaderen te ondersteunen met de volgende kenmerken:
Pag. Software Engineering: SCRUM 2 Schedule Generator Zjef Van de Poel, Alexander De Cock, Adam Cooman, Matthias Caenepeel
What’s in the cloud for testing de mogelijkheden voor het testvak 12 mei 2010.
T U Delft Parallel and Distributed Systems group PGS Fundamentele Informatica in345 Deel 2 College 6 Cees Witteveen.
Besturingssysteem Vaak wordt de Engelse term gebruikt: Operating System ( OS ) Plaats van het OS in een computersysteem: Hardware Applicatie Operating.
Plan Van Aanpak  Ben Van den Bergh  Jurgen Sneyers  Vincent Rigouts  Johan Van den Bogaert.
Prototyping Week 7 // Tweenlite & API. TweenMax Snel mooie en effectieve animatie.
Masterproef: finale presentatie Vital D’haveloose Promotor: prof. Erik Duval Co-promotor: dr. Joris Klerkx Begeleider: ir. Robin De Croon.
Hoorcollege 1: efficiëntie en complexiteitsontwikkeling.
Hoorcollege 1: efficiëntie en complexiteitsontwikkeling.
“IT’S THE DATA STUPID..!” WAGENINGEN UNIVERSITEIT EN RESEARCH CENTRE.
‘Business at the speed of change’
Overzicht Vooronderzoek Hypothese Onderzoeksvraag Methodologie
SDI from a technological perspective: Architecture
The Hybrid Workspace Gino van Essen Technical Consultant.
Lectora als ontwikkeltool voor interactieve multimedia programma’s
M5 Datacommunicatie Applicatielaag
Presentatie 1 Goos de Jong
Sneller een beter personeelsrooster voor de gynaecologieafdeling van het JBZ Maartje van de Vrugt PhD.
Rest webservice IN WINDEV / WEBDEV 22.
M5 Datacommunicatie Transportlaag
SQL Les February 2019.
SQL Les 6 14 April 2019.
CO2-footprint op de blockchain
Transcript van de presentatie:

5de DINGO Gebruikerscommissie Beheerraadzaal @ KaHo Sint-Lieven Gent http://ingenieur.kahosl.be/projecten/dingo

Vakgroep IT KaHo Sint-Lieven Agenda Welkom Status Bespreking vorderingen Discussie Vakgroep IT KaHo Sint-Lieven

Welkom

Status van het project

Periode 1 december 2004 – 14 april 2005 WP 4: testen van algoritmen WP 7: onderhandelingsmodel WP 8: Modelleren van gebruikers WP 9: Testen Onderhandelingsmodel Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Mijlpalen Planningscomponenten in Java Onderhandelingsmodel in Mozart/Oz Prototype agententoepassing (DistriMedia case) Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven

Bespreking

Vakgroep IT KaHo Sint-Lieven Agenda Architectuur Onderhandelingsmodel in Mozart/Oz Mozart/Oz? Zoekalgoritme Gebruikte evaluatiemethode (nummeringen) Communicatie tussen model en algoritme XML-RPC Gui Demo: DistriMedia case Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Architectuur (1) OmbudsAgent Mozart/Oz Departements Agent Departements Agent Departements Agent Departements Agent XML-RPC Java Webservice Webservice Webservice Webservice Lokaal zoekalgoritme Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Architectuur (2) DepartementsAgent Mozart/Oz Personeels Agent Personeels Agent XML-RPC Java Webservice Webservice Webservice Webservice Lokaal zoekalgoritme Vakgroep IT KaHo Sint-Lieven

Initiële toekenning van personeel Taak 1 Tabu Search Eerste Oplossing Taak 2 Taak 3 Onderhandeling Uiteindelijke oplossing Uiteindelijke oplossing Uiteindelijke oplossing Vakgroep IT KaHo Sint-Lieven

Herhaling: Onderhandelingsmechanisme OmbudsAgent PersoneelsAgentj DepartementsAgenti CFP Elk stuurt kost + duurste kwalificatie en tijdstip. Resultaat van lokaal zoek-algoritme CNP (Kost, Q, T)i Neem de hoogste kost Doorgeven van werkschema aan initieel toegewezen personeel ACCEPT PROPOSAL Stuur de anderen een REJECT CNP REJECT PROPOSAL CFP, Qmax, Tmax Evalueren elk de voorgestelde wijziging en genereren bijhorende kost CFP: T, Plaats Elke betrokken agent evalueert zijn eigen beper-kingen en gene-reert een kost CNP Kost Als Kosti < drempel-waarde, dan wordt de verandering aan-vaard Kosti + extra informatie De betrokken Departe-mentsAgenten wisselen personeel uit en passen het departementsroos-ter voor die shift aan. ACCEPT PROPOSAL ACCEPT PROPOSAL REJECT PROPOSAL REJECT PROPOSAL Anders niet CFP Stuur de agenten die aanpassingen hebben gedaan een nieuwe CFP Enkel de agenten die aanpassingen hebben gedaan sturen hun kost terug (Kost, Q, T)i Vakgroep IT KaHo Sint-Lieven

Implementatiekwesties Jade: De facto agentenomgeving voor Java Enkele faciliteiten voor CNP (Initiator & Responder) Niettemin: complexe programmacode problemen met grote aantallen agenten Mozart/Oz: multi-paradigma, gedistribueerd programmeertaal Functionaliteit voor agenten Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Mozart/Oz Mozart Programming System constraint-based inference distributed computing human-computer interfaces platformonafhankelijk (Unix, Windows, MacOs,... ) Oz language declarative programming object-oriented programming constraint programming concurrency Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven meth behavior(M) case M of msg(_ Zender shiftKost(Shift Avgr Poort)) then self.poort = Poort local S K ShiftP KostP in _|S|_|K|_ = {XmlRpcClient.execute "http://"#'10.11.0.12'#":"#self.poort#"/RPC2" "test3"#"."#"evaluatePersoneel" [self.name Shift Avgr] } ShiftP = {String.toInt {ByteString.toString S}} KostP = {String.toFloat {ByteString.toString K}} {@connector send(msg(Zender self.name personeelsKost(ShiftP KostP Avgr)))} end [] msg(_ _ opdrachten(_ Shift Avgr)) then _ = {XmlRpcClient.execute "test3"#"."#"voerVeranderingPersoneelUit" else {C.cshow watTeDoenMet(M self.name)} Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Zoekalgoritme Nieuwe evaluatiemethode: Nummeringen Beschreven in XML bestand GUI om XML bestand automatisch te genereren Demo Vakgroep IT KaHo Sint-Lieven

Nummeringen: voorbeeld planningsperiode 1 week zachte beperkingen: maximum aantal toekenningen 6 minimum 2 maximum aantal opeenvolgende vrije dagen 8 minimum 2 maximum aantal opeenvolgende toekenningen 4 maximum per dag 1 maximum aantal nachtdiensten 3 minimum aantal opeenvolgende nachtdiensten 2 volledige weekends werken N1 N2 N3 Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Nummeringen rooster P1 constraints N1 max-total = 6 min-total = 2 max-between = 8 min-between = 2 max-consecutive = 4 min-consecutive = 2 max-pert = 1 constraints N2 max-total = 3 min-consecutive = 2 tellers last total consecutive constante max constraints N3 min-consecutive = 2 Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Kostfunctie P1 constraints N1 max-total = 6 min-total = 2 max-between = 8 min-between = 2 max-consecutive = 4 min-consecutive = 2 max-pert = 1 kost N1 cost-max-total = 0 cost-min-total = 0 cost-max-between = 0 cost-min-between = 0 cost-max-consecutive = 1 cost-min-consecutive = 0 cost-max-pert = 0 tellers last total consecutive constraints N2 max-total = 3 min-consecutive = 2 kost N2 max-total = 0 min-consecutive = 1 constraints N3 min-consecutive = 2 kost N3 min-consecutive = 0 totale kost (kostparameter * kost) Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Startvoorwaarden Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Kostfunctie P1 constraints N1 max-total = 6 min-total = 2 max-between = 8 min-between = 2 max-consecutive = 4 min-consecutive = 2 max-pert = 1 kost N1 cost-max-total = 0 cost-min-total = 0 cost-max-between = 0 cost-min-between = 0 cost-max-consecutive = 3 cost-min-consecutive = 0 cost-max-pert = 0 tellers N1 last = -1 total = 0 consecutive = 2 tellers N2 last = U total = 0 consecutive = U constraints N2 max-total = 3 min-consecutive = 2 kost N2 max-total = 0 min-consecutive = 1 tellers N3 last = -2 total = 0 consecutive = 2 constraints N3 min-consecutive = 2 kost N3 min-consecutive = 0 Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Evaluatiealgoritme Initialisatie: rekening houdend met wat vroeger gepland was Planning in de periode voor de planningsperiode staat vast Beeld de nummeringen af op de voorgaande planningsperiode Zoek waarden voor de tellers: initialiseer Geen kosten aanrekenen voor het verleden Tussentijdse evaluatie: tellers aanpassen en kosten berekenen indien nodig Finale evaluatie: kosten berekenen aan het einde van de planningsperiode per iteratie worden de algoritmen 1 x uitgevoerd per persoon in de planning; onafhankelijk van het aantal en het type van de zachte beperkingen Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven -1 U -2 2 2 Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven * U -2 1 3 2 1 3 1 Vakgroep IT KaHo Sint-Lieven

Corresponderend XML bestand (1) <constraint ID="1"> <numberingId>1</numberingId> <variables> <max_total weight="1">6</max_total> <min_total weigh="1">-oneindig</min_total> <max_pert weight="1">1</max_pert> <min_pert weight="1">-oneindig</min_pert> <max_between weight="1">8</max_between> <min_between weight="1">2</min_between> <max_consecutive weight="1">4</max_consecutive> <min_consecutive weight="1">2</min_consecutive> </variables> </constraint>… Vakgroep IT KaHo Sint-Lieven

Corresponderend XML bestand (2) … <numbering ID="1"> <day ID="1"> <shift ID="1">0</shift> <shift ID="2">0</shift> <shift ID="3">0</shift> </day> <day ID="2"> <shift ID="1">1</shift> <shift ID="2">1</shift> <shift ID="3">1</shift> <day ID="3"> <shift ID="1">2</shift> <shift ID="2">2</shift> <shift ID="3">2</shift> <day ID="4"> <shift ID="1">3</shift> <shift ID="2">3</shift> <shift ID="3">3</shift> </day> <day ID="5"> <shift ID="1">4</shift> <shift ID="2">4</shift> <shift ID="3">4</shift> <day ID="6"> <shift ID="1">5</shift> <shift ID="2">5</shift> <shift ID="3">5</shift> <day ID="7"> <shift ID="1">6</shift> <shift ID="2">6</shift> <shift ID="3">6</shift> </numbering>… Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Communicatie Zoekalgoritme in Java Onderhandelingsmechanisme in Mozart/Oz Hoe met elkaar communiceren? Via webservice: Eerste idee: SOAP? Alternatief: XML-RPC? Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven XML-RPC? “It's a spec and a set of implementations that allow software running on disparate operating systems, running in different environments to make procedure calls over the Internet. It's remote procedure calling using HTTP as the transport and XML as the encoding. XML-RPC is designed to be as simple as possible, while allowing complex data structures to be transmitted, processed and returned.” Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven XML-RPC Vakgroep IT KaHo Sint-Lieven

Toegelaten types in XML-RPC Boolean String Double Date HashTable Vector byte[] Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven SOAP Service Provider Service Requester HTTP Server SOAP Dispatch ? SOAP request/response messages Underlying implementation Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven SOAP? SOAP is een “loosely coupled” protocol Lightweight (veroorzaakt minimale overhead), eenvoudig (om te gebruiken, niet noodzakelijk om te schrijven) Over HTTP & SMTP, geen problemen met firewalls SOAP is een minimale verzameling van conventies om code aan te roepen gebruikmakend van XML en HTTP Eenvoudig om zelfgemaakte objecten te encoderen (in tegenstelling tot XML-RPC) Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven SOAP structuur SOAP Message HTTP HEADER Envelope Header XML Body Vakgroep IT KaHo Sint-Lieven

GUI voor personeelsplanning Grafische User Interface voor personeelsplanning Koppeling tussen GUI en planningssoftware gebeurt via SOAP Eindwerkopdracht van Koen Vangheluwe Demonstratie Vakgroep IT KaHo Sint-Lieven

Case Study DistriMedia

Vakgroep IT KaHo Sint-Lieven Case study Distributiebedrijf, magazijn Gedistribueerd: Werknemers zijn polyvalent (verschillende kwalificaties) Rotatiesysteem Ideale test case! In ons model: Elke taak = department Elk department = voorgesteld door een agent Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Kwalificatiematrix Ontvangst Opzet Eindstation Wikkel Magazijn Retour Administratie Inpakken Vakgroep IT KaHo Sint-Lieven Boodschappen

Vakgroep IT KaHo Sint-Lieven Historische gegevens Vakgroep IT KaHo Sint-Lieven

Werkbelasting voor elke taak/dag ontvangst: 25 uren -> 3 werknemers (? 1 uur) picking: 55 uren -> 7 werknemers (! 1 uur) opzet: 9 uren -> 1 werknemer (? 1uur) reject: 2 uren -> 0 werknemers (? 2 uren) eindstation: 8 uren -> 1 werknemer (ok) wikkel: 2 uren -> 0 werknemers (? 2 uren) magazijn: 8 uren -> 1 werknemer (ok) transport: 14 uren -> 2 werknemers (! 2 uren) retour: 6 uren -> 1 werknemer (! 2 uren) administratie: 9 uren -> 1 werknemer (? 1 uur) boodschappen: 1 uur -> 0 werknemers (? 1 uur) Vakgroep IT KaHo Sint-Lieven

Resulten: toekenning van personeel ontvangst: EL,MA, MV picking: CM, CV, EV, KC, LD, RV, SV opzet: RD reject: niemand eindstation: JD wikkel: niemand magazijn: JC transport: IM, TD retour: KG administratie: VV boodschappen: niemand Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Resultaat Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Commentaar We maken geen onderscheid tussen departementen, kwalificaties en taken Gebruiken geen werknemer agenten gedurend tabu search Voortdurende communicatie tussen agenten veroorzaakt bottleneck Werknemer agenten worden gecreëerd na tabu search Als er heel veel personeel is: Werknemer agenten pas creëren als ze nodig zijn Vakgroep IT KaHo Sint-Lieven

Vakgroep IT KaHo Sint-Lieven Toekomst Testen op: Langere planningsperiode, Meer personeel Andere soorten bedrijven Andere onderhandelingsmechanismes Initiële toekenning automatiseren Vakgroep IT KaHo Sint-Lieven

Discussie