Beschrijving van het simulatiemodel Merba In dit rapport wordt het simulatiemodel beschreven dat is ontwikkeld voor Merba. Dit simulatiemodel bevat een besturingsmethodiek die is gebaseerd op multi-agent technologie. Het onderzoek maakt deel uit van het onderzoeksproject DIPLOMA dat valt onder stichting TRANSUMO. In de komende hoofdstukken word achtereenvolgens het simulatiemodel, het simulatieprogramma en de simulatie settings beschreven. 1. Het simulatiemodel In onderstaand figuur is de structuur van het simulatiemodel te zien. Overzicht van de hoofdelementen:
Invulling van bovenstaande componenten:
AGV agent Learn from data Store data Reject Delete bid info Time slot request Grant Plan job action AGV Busy? Yes Continue Finish Action No Update planning Start first action? Yes Start action Time slot update No Use reserve battery Plan recharge action Plan waiting or recharge action No Announcement Able to do this? Yes Calculate bid Bid Entity Relationship Diagram
2. Het simulatieprogramma In onderstaand figuur is een screenshot van het simulatieprogramma te zien. Een korte uitleg van de belangrijkste elementen: Screenshot simulatie omgeving Genereren van jobs en systeeminformatie Bedienen van de simulatie De besturing, dwz de koppeling van opdrachten aan AGVs: AGV intelligentie AGVs koppelen aan jobs Job intelligentie Spelen met de simulatie: Resultaten Instellingen Netwerk bouwen
De belangrijkste elementen uit het simulatieprogramma worden in de komende alinea s verder uitgewerkt. 2.1. Settings: De input van het model bestaat uit order karakteristieken, AGV karakteristieken, netwerk karakteristieken en besturingskarakteristieken. Scenario s: settings van de experimentele factoren. Door het opstellen van deze scenario s kunnen meerdere systeem instellingen in 1 keer gesimuleerd worden. Output: Hoewel de meeste input gegevens kunnen worden aangepast zullen we slechts een beperkt aantal factoren variëren en de effecten hiervan bestuderen. Deze experimentele factoren zijn: o Aantal AGVs o Layout silo ruimte o Type besturing Handlingtimes: o Tijd oppakken van een lege schaal o Tijd neerzetten van een volle schaal bij de mixer o Tijd oppaken van een volle schaal bij de mixer o Tijd neerzetten van een volle schaal bij de wachtruimte o Tijd oppaken van een volle schaal bij de wachtruimte en deze neer te zetten bij de lijn OrderCharacteristics: per lijn moeten de volgende gegevens worden opgegeven: o AantalPerUur o Tijdsduur bij silo voor ingredienten Groot o Tijdsduur bij silo voor ingredienten GrootVloeibaar o Tijdsduur bij silo voor ingredienten Klein o Tijdsduur bij silo voor ingredienten Aroma o Tijdsduur bij silo voor ingredienten Pasta o Tijdsduur bij silo voor ingredienten Bitter o Tijdsduur bij silo voor ingredienten Korst o Tijdsduur die een AGV nodig heeft een het deco bakje te pakken en om het deco bakje in de schaal te legen, exclusief de reistijd van de mixers naar de deco-silo omdat deze berekend wordt aan de hand van de layout van de fabriek. o Bij welke mixer degen voor deze lijn worden gemixed o Tijd om te mixen zonder deco in het deeg o Tijd om te mixen na toevoeging deco (dus 0 indien deeg geen deco nodig heeft) o LookAhead: tijd tussen bekendmaking van de order en de tijd dat de deeg uiterlijk bij de lijn moet zijn o MinStay: minimale statijd van een deeg o MaxStay: maximale statijd van een deeg o LineTime: tijd tussen bekendmaking van de order om de deeg uit de wachtruimte te halen en de uiterlijke bezorgtijd bij de lijn AGVs o Aantal
o Snelheid o Wel of niet meenemen van de energievoorziening o Energievoorziening (capacity, driving consumption, basic consumption, oplaadsnelheid) Virtuele kosten o Kosten bezig zijn per minuut o Kosten deeg 1 minuut te vroeg afleveren in de wachtruimte o Kosten deeg 1 minuut te laat afleveren in de wachtruimte o Kosten deeg 1 minuut te laat afleveren bij de lijn Begin van de dag Einde van de dag Aantal repetities simulatie voor bepaling betrouwbaarheidsintervallen Netwerk karakteristieken o Aantal lijnen o Aantal mixers o Afstanden tussen silo s, mixers, lijnen, deco, laadstation o Verkeersregels bij het silo object 2.2. Generator: Het genereren van orders voor alle scenario s en simulatieruns. Aan het begin van elke dag worden alle orders voor die dag gegenereerd. De tijden tussen bekendmaking van deze orders wordt bepaald aan de hand van het gemiddeld aantal orders per uur. We onderscheiden de volgende twee type orders: Verzamel orders: [starttijd 1, lijn, mixer, EDT, LDT]. De starttijd 1 de tijd is waarop deze order bekend wordt in het systeem, de lijn en mixer worden bepaald aan de hand van de invoer bij Settings, EDT is het vroegst mogelijke aflevertijdstip van het deeg bij de wachtruimte (Starttijd+LookAhead-MinStay) en LDT is het laatst mogelijke aflevertijdstip van het deeg bij de wachtruimte (Starttijd+LookAhead-MaxStay). Breng orders: [starttijd 2, lijn, LDT], waarbij starttijd 2 de tijd is waarop deze order bekend wordt in het systeem (starttijd 1 + LookAhead LineTime) en LDT het laatst mogelijk aflevertijdstip van het deeg bij de wachtruimte is (Starttijd 1 + LookAhead). Deze orders worden vervolgens stuk voor stuk de simulatieomgeving ingestuurd. 2.3. Environment Grafische weergave en simulatie reistijden. 2.4. Information: Network information o All objects o Lines o Mixers
o Tracks o Distances o Parking places AGV information o Status o Destination o Exp. Arrival times o Location o Last Update o Origin o Departure time at origin Time information o Traveltimes o Handlingtimes 2.5. Performance De output van het simulatiemodel bevat alle performance indicatoren die nodig zijn voor de evaluatie van het aantal AGVs, de besturingsregels en de netwerk layout. We onderscheiden de volgende indicatoren: Orders o Aantal orders per lijn o Aantal op tijd o Aantal/duur te vroeg in de wachtruimte o Aantal/duur te laat in de wachtruimte o Aantal/duur te laat bij de lijn o Gemiddelde en variatie wachttijden per lijn Auction statistics o Aantal orders o Aantal geaccepteerd met vertragingen o Etc AGVs o AGVstatus: tijdsduur van elke status van de AGVs (in totalen, percentages en per dag) o AGVassignments: type toekenningen van orders aan AGVs (toekomstige orders of niet) o AGVresults: inkomen, winst, kosten voor handling, leegrijden, volrijden etc. Samenvatting: overzicht van alle Key Performance Indicators (zie Sectie 2.1) inclusief betrouwbaarheids intervallen. 2.6. Resources Overzicht van alle AGVs, schedules van AGVs en methoden voor het bepalen van de biedingen.
2.7. Tasks Hier komen alle orders binnen en worden vervolgend doorgestuurd naar de veiling. Zolang een order nog niet is afgehandeld wordt de status hier bijgehouden. Intelligentie kan worden toegevoegd bij het evalueren van biedingen. 2.8. MarketMechanism Hier worden in feite orders aan AGVs toegekend door middel van een veiling.
3. Simulatie Settings De lay-out van de fabriek is te vinden in Figuur 1. De coördinaten van de verschillende objecten is te vinden in Tabel 1. Figure 1 - Layout of the factory Object Coordinate Object Coordinate Object Coordinate Object Coordinate Mixer1 (788,80) Line3 (755,311) Waiting1 (755,191) Silo1 (717,1) Mixer2 (703,80) Line4 (654,311) Waiting2 (654,191) Silo2 (491,1) Mixer3 (608,80) Line5 (554,311) Waiting3 (554,191) Silo3 (283,1) Mixer4 (476,80) Line6 (453,311) Waiting4 (453,191) Bitter (57,114) Mixer5 (406,80) Line7 (352,311) Waiting5 (352,191) Decoration (943,68) Mixer6 (330,80) Line8 (252,166) Waiting6 (252,116) Cleaning (1000,216) Line9 (176,166) Waiting7 (176,116) Recharge (1000,291) Line10 (75,311) Waiting8 (75,268) Table 1 - Factory coordinates
We gebruiken de volgende order karakteristieken: Lijn Aantal Horizon StaTijd LijnTijd Mixer Line3 3 65 15-30 50 Mixer1 Line5 4 80 30-60 50 Mixer2 Line6 2 80 30-75 50 Mixer3 Line7 2 80 30-75 50 Mixer4 Line8 2 80 30-75 50 Mixer5 Line9 4 80 30-75 50 Mixer5 Line10 2 80 30-60 50 Mixer6 Tabel 2 - Order karakteristieken De kolom Aantal is het gemiddeld aantal degen per uur per lijn. De horizon is de tijd tussen het moment dat een order bekend wordt en de tijd dat deze order op het laatst bij de lijn moet zijn. Dus wanneer er een deegverzoek binnenkomt bij lijn 3, dan moet dit deeg binnen 65 minuten bij deze lijn worden bezorgd. In de kolom StaTijd staat de minimale en maximale sta-tijd van een deeg. Deze sta-tijd is de tijd tussen het moment waarop de ingrediënten zijn gemixt en de tijd dat het deeg door de lijn gebruikt zal worden. De LijnTijd is de tijd tussen de vroegst mogelijke aflevering bij een lijn en het moment dat de deeg werkelijk nodig is bij de lijn. In de laatste kolom staat bij welke mixer het deeg van een bepaalde lijn moet worden gemixt. De eerste order arriveert op maandag morgen om 4:00 uur en de laatste order op zaterdagmorgen om 4:00 uur. Alle AGVs hebben een snelheid van 1 m/s. We gaan er van uit dat alle AGVs altijd in een rechte lijn (de kortste afstand) van het ene object naar het andere kunnen reizen. De laaden lostijden zijn te vinden in Tabel 2. We gebruiken de volgende mixtijden: Action Tijd Load barrel 0.5 Load ingredients per station 2 Drop barrel at waiting area 0.5 Pickup dough at waiting area 0.5 Drop dough at line 0.5 Tabel 3 Laad- en lostijden Mixer Tijd Mixer1 11.93 Mixer2 11.60 Mixer3 5.33 Mixer4 5.33 Mixer5 5.33 Mixer6 5.33 Tabel 4 - Mix tijden