Technische Universiteit Delft
Faculteit Werktuigbouwkunde, Maritieme Techniek en Technische Materiaalwetenschappen
Transporttechnologie / Logistieke Techniek



R. den Ouden Simulatie met Java®
Computeropdracht, Rapport 97.3.LT.4902, Transporttechnologie, Logistieke Techniek.


Java is een programmeertaal die door zijn toepassingsmogelijkheden voor Internet steeds belangrijker wordt. Er zijn op de markt diverse simulatietools voor Java beschikbaar, zoals JavaSim en SimJava. Geen van deze tools echter maken Java tot een geschikte taal voor het uitvoeren van discrete-event simulaties.
De opdracht was het ontwikkelen van een simulatie-unit inclusief de event-scheduler voor Java. Hierbij diende het bekende 'sluismodel' in Java geprogrammeerd te worden, gebruikmakend van de ontwikkelde simulatie-unit. De simulatiemethodes van de simulatie-unit dienden zoveel overeen te komen met de terminologie en principes van Must.

Na eerst kennisgemaakt en enige programmeerervaring opgedaan te hebben met Java werd met het programmereren van het sluismodel begonnen. Hierbij werd voor elke simulatiemethode zoals 'start', '(re)activate', 'passivate', 'hold' a and 'stop' een aparte method (Java-equivalent van de Pascal-procedure) geprogrammeerd. Uiteindelijk ontstond hierdoor een verzameling van simulatie-methoden die uiteindelijk alleen nog maar in een aparte package (Java-equivalent van de Pascal-unit) geplaatst hoefde te worden. Hierdoor is het mogelijk in elk Java-programma deze simulatie-methoden te gebruiken door in de class-definition (de syntax van een class) de package te declareren.
Tijdens de ontwikkeling van het simulatieprogramma is er voor gekozen om voor elke component een aparte class te definieren die afgeleid is van het thread-type. Door van deze threads gebruik te maken is het mogelijk om components tijdelijk te stoppen, wat essentieel is voor het uitvoeren van discrete-event simulaties.
Aangezien Java de mogelijkheid biedt tot multi-threading, d.w.z. het aktief laten zijn van meerdere threads, was het bij het ontwikkelen van de event-scheduler van essentieel belang er voor te zorgen dat vanwege het discrete-event principe er maar een component tegelijkertijd aktief was.

De conclusies m.b.t. het ontwikkelen van de simulatie-unit en het gebruik van Java zijn als volgt: Alhoewel de ontwikkelde simulatie-unit het mogelijk maakt het sluismodel in Java te programmeren en simuleren, is er uiteraard nog geen sprake van een compleet, betrouwbaar en gebruiksvriendelijke simulatie-tool zoals Must of Prosim. Daarom worden er in dit rapport de volgende aanbevelingen gedaan:


Rapporten studenten Logistieke Techniek
Gewijzigd: 1998.05.02; logistics@3mE.tudelft.nl , TU Delft / 3mE / TT / LT.