Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een...

39
Parallelle processen, machines en netwerken Citation for published version (APA): Rooda, J. E. (2010). Parallelle processen, machines en netwerken. Technische Universiteit Eindhoven. Document status and date: Gepubliceerd: 01/01/2010 Document Version: Uitgevers PDF, ook bekend als Version of Record Please check the document version of this publication: • A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website. • The final author version and the galley proof are versions of the publication after peer review. • The final published version features the final layout of the paper including the volume, issue and page numbers. Link to publication General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal. If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement: www.tue.nl/taverne Take down policy If you believe that this document breaches copyright please contact us at: [email protected] providing details and we will investigate your claim. Download date: 11. Sep. 2021

Transcript of Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een...

Page 1: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

Parallelle processen, machines en netwerken

Citation for published version (APA):Rooda, J. E. (2010). Parallelle processen, machines en netwerken. Technische Universiteit Eindhoven.

Document status and date:Gepubliceerd: 01/01/2010

Document Version:Uitgevers PDF, ook bekend als Version of Record

Please check the document version of this publication:

• A submitted manuscript is the version of the article upon submission and before peer-review. There can beimportant differences between the submitted version and the official published version of record. Peopleinterested in the research are advised to contact the author for the final version of the publication, or visit theDOI to the publisher's website.• The final author version and the galley proof are versions of the publication after peer review.• The final published version features the final layout of the paper including the volume, issue and pagenumbers.Link to publication

General rightsCopyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright ownersand it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.

• Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal.

If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, pleasefollow below link for the End User Agreement:www.tue.nl/taverne

Take down policyIf you believe that this document breaches copyright please contact us at:[email protected] details and we will investigate your claim.

Download date: 11. Sep. 2021

Page 2: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

BezoekadresDen Dolech 25612 AZ Eindhoven

PostadresPostbus 5135600 MB Eindhoven

Tel. (040) 247 91 11www.tue.nl

Parallelle processen,machines en netwerken

Where innovation starts

/ Faculteit Werktuigbouwkunde

Afscheidscollege

prof.dr.ir. J.E. Rooda

18 juni 2010

Page 3: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

Uitgesproken op 18 juni 2010aan de Technische Universiteit Eindhoven

Afscheidscollege prof.dr.ir. J.E. Rooda

Parallelle processen,machines en netwerken

Page 4: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.
Page 5: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

3

Vanaf ongeveer 1980 heb ik mij verdiept in het analyseren, het ontwerpen en hetrealiseren van transportsystemen. Denk aan magazijnsystemen, opslagsystemen,systemen voor het verzamelen van orders en nog vele andere typen systemen,zoals een voor het veilen van bloemen.De prestatie van een enkele machine en van een netwerk van machines wekte mijnbelangstelling. Het functioneren volgens een programma van eisen van een derge-lijk systeem, de doorzet van het systeem en de doorlooptijd van een product ineen systeem zijn hierbij de meest in het oog springende prestatie-indicatoren.Voor het berekenen van deze indicatoren maakte ik gebruik van een in SIMULA’67ontwikkelde bibliotheek van computerprogramma’s. Het te realiseren, dan wel het gerealiseerde, systeem werd vertaald in een model bestaande uit parallelleprocessen. Kanalen verbonden de processen en zorgden voor uitwisseling vaninformatie. De enige echte globale variabele in het model was de modeltijd. De modellen omvatten zowel een model van de inrichting als een model van debijbehorende besturing.Op deze wijze heb ik verschillende machines en netwerken op het gebied van hetintern transport geanalyseerd. Pas veel later werd ik mij ervan bewust dat ikmodellen bouwde waarbij ik de wereld beschouwde als een verzameling parallelleprocessen, waarbij objecten werden getransporteerd via kanalen. En waarbij zowelde processen van de inrichting als de processen van de bijbehorende besturingexpliciet werden gemodelleerd.

De naam van de vakgroep waarin ik in 1980 werkte was de groep Techniek vanIntern Transport. Die stond onder leiding van prof. Cor Jonkers van de faculteitWerktuigbouwkunde van de (toen nog) Technische Hogeschool Twente. Sinds mijnbenoeming aan de TU/e in 1985 heb ik mijn onderzoek uitgebreid met fabricage-machines en fabricagenetwerken. Ook binnen het applicatiegebied van de fabri-cage bleek het mogelijk om het paradigma van parallelle processen toe te passen.De afgelopen 30 jaar is mijn fascinatie voor deze parallelle processen gebleven. En daar wil ik u in dit afscheidscollege graag meer over vertellen.

Ik zal afronden met enkele gedachten over de taak van de universiteit en een ten slotte.

Inleiding

Page 6: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

4

Anno 2010 zijn wij zijn omgeven door embedded systemen. Een embeddedsysteem bestaat uit fysieke (een inrichting met actuatoren en sensoren) encontrole componenten (regel- en besturingscomponenten). In Angelsaksischelanden spreekt men over 'physical components’ en 'control components’. De laatste bestaan uit 'resource controller(s)’ en 'supervisory controller(s)’. Figuur 1 geeft schematisch de opbouw van een embedded systeem weer.

Het regelsysteem zorgt ervoor dat ieder deel van de inrichting op een gewenstemanier in een gewenste positie komt. Het besturingssysteem coördineert hetgedrag tussen de verschillende delen van de inrichting. De regeling en de be-sturing zorgen ervoor dat het systeem de functies uitvoert zoals beschreven in een programma van eisen (requirements).

Embedded systemen

figuur 1

Schematische opbouw van een embedded systeem

Page 7: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

5Parallelle processen, machines en netwerken

Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via eenbesturing. Deze taken worden in de besturing opgedeeld naar commando’s. De commando’s worden in de besturing verder opgesplitst en verzonden naarregelaars. De regelaars op hun beurt sturen via actuatoren de inrichting aan. De sensoren van de inrichting melden de toestand (state) van de inrichting terugaan de regelaars. De regelaars zijn weer verbonden met de besturing.Het gedrag van de besturing wordt meestal beschreven door discrete gebeurte-nissen (discrete-events). Het gedrag van de regelaars wordt meestal beschrevendoor differentiaal- en algebraïsche vergelijkingen (continuous-time). Door dediscrete en continue wijze van beschrijving van het gedrag van embeddedsystemen spreekt men ook wel van hybride systemen.

Een illustratie van een embedded systeem is een systeem voor het vullen vanflessen, zie figuur 2.

De functie van dit systeem bestaat uit het afvullen van flessen. De inrichting omvattwee delen: een tank T en twee vulinrichtingen F. De tank is verbonden met devulinrichtingen door middel van twee afsluitbare leidingen. De tank wordt met eenconstant debiet Qin gevuld. Transportbanden voeren lege flessen aan. Zodra eenlege fles aanwezig is, wordt deze gevuld. Nadat een fles is gevuld, wordt dezeafgevoerd.

figuur 2

Flessenvulsysteem

Page 8: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

6 prof.dr.ir. J.E. Rooda

Engineering van een embedded systeemDoor de eeuwen heen heeft de mens zich beziggehouden met het ontwerpen,realiseren en onderhouden van systemen.Schematisch kan deze traditionele engineering als volgt worden beschreven: op basis van een programma van eisen van het gewenste systeem ontstaat eenglobaal ontwerp. Aan de hand hiervan stelt men het programma van eisen op voorde verschillende delen van het systeem. Van deze delen maakt men ontwerpen. En worden de deelontwerpen gerealiseerd. Deze realisaties test men afzonderlijkop hun programma van eisen. Vervolgens bouwt men het geheel tot een systeem,waarna het volledige systeem wordt getest.Uitgaande van slechts één component P en één component C geeft figuur 3 dezetraditionele engineering weer.

Component P kan worden geassocieerd met de inrichting (plant), component Cmet de regeling of besturing (control). De documenten en de realisaties zijn weer-gegeven door document en vierkantsymbolen. Hierin representeert S het gehelesysteem, en P en C de componenten. Het programma van eisen is weergegevendoor index R (requirements) en het ontwerp door index D (design). De twee delenzijn met elkaar verbonden door interface I.

De komst van de microprocessor maakte het mogelijk dat systemen met meerfunctionaliteit kunnen worden ontwikkeld. Door de toegenomen functionaliteitkreeg engineering een multidisciplinair karakter. Mechanica-experts en regel-technici werken bijvoorbeeld samen met informatici. Vooral bij deze systemen isde traditionele engineering in termen van kwaliteit, doorlooptijd (time to market)en bijbehorende kosten niet altijd meer optimaal.De laatste decennia is men tot het inzicht gekomen dat het wenselijk is om zoge-naamde executeerbare modellen te gebruiken voordat men tot realisatie van een

figuur 3

Traditionele engineering van een systeem

Page 9: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

7Parallelle processen, machines en netwerken

systeem overgaat. Een executeerbaar model is een model dat op een computerkan worden geëxecuteerd zodat het gedrag van het systeem duidelijk wordt. Ik bedoel hier dus geen schaalmodellen of prototypes. Het gebruik van executeer-bare modellen heeft daarnaast het voordeel dat onderzocht kan worden hoegerealiseerde componenten zich gedragen in combinatie met andere nog terealiseren, virtuele, componenten. Op deze wijze kan de doorlooptijd van deengineering nog verder worden teruggebracht. Overigens kost het bouwen vaneen model ook tijd.Figuur 4 geeft voor twee componenten P en C de modelgebaseerde engineeringvan een systeem weer.

De symbolen zijn conform figuur 3. De modellen zijn weergegeven door cirkel-symbolen. Met modellen is het mogelijk om het gedrag van de componenten en van hettotale systeem te onderzoeken. Hierbij kan men denken aan blokkeringen en pres-taties. Na analyse dient het systeem op basis van dit model, de specificatie dus, te worden gerealiseerd. Vaak wordt in de praktijk het model weggegooid. Men begint opnieuw na te denken over de bouw van het systeem. Dit is een kost-bare werkwijze die bovendien gevoelig is voor fouten. Als nu ook nog later deeisen van het systeem moeten worden aangepast, dan past men vaak rechtstreeksde realisatie aan en laat het model terzijde liggen. Na enige aanpassingen is debruikbaarheid van het model verdwenen.

De vraag dringt zich op welk formalisme geschikt is voor deze vorm vanengineering.

figuur 4

Modelgebaseerde engineering van een systeem

Page 10: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

8

In de ingenieurswetenschappen wordt een model opgesteld met behulp van een wiskundig formalisme. In de werktuigbouwkunde worden bijvoorbeeld diffe-rentiaalvergelijkingen gebruikt om stroming en warmte, sterkte en stijfheid enregelaars te beschrijven.

Toen ik in 1980 begon met het analyseren van transportsystemen was er in mijnogen niet een voldoende krachtig formalisme beschikbaar om het gedrag van een‘discrete-event’ systeem te beschrijven. De modelleerexpressiviteit van automatenom logische besturingen van machines te beschrijven was niet voldoende en detheorie van wachtrijen om netwerken te analyseren was nog onvoldoendeontwikkeld.Vooral met het oog op de toekomst was het in mijn ogen essentieel dat een forma-lisme ook bruikbaar zou zijn voor het modelleren, analyseren, realiseren en be-sturen van grote systemen zoals men die aantreft in bijvoorbeeld de halfgeleider-industrie. Bij gebrek aan een geschikt formalisme, besloot ik om voor de analysevan systemen modellen te bouwen op basis van het paradigma van parallelle pro-cessen. Ditzelfde paradigma werd in de informatica gebruikt voor het beschrijvenvan het gedrag van parallelle processen in besturingssystemen van computers(operating systems).

De afgelopen 30 jaar hebben informatici mij (en later de sectie SystemsEngineering) geholpen om een bruikbaar formalisme te ontwikkelen voor hetbeschrijven van het gedrag in transportsystemen, en later fabricagesystemen.De Twentse informaticagroep van prof. Coen Bron, een leerling van prof. E.W. Dijkstra, heeft mij de semafoor uitgelegd. Een prachtig concept om parallelleprocessen in besturingssystemen van computers te synchroniseren. Maar ditconcept bleek ook geschikt te zijn voor het synchroniseren van parallelleprocessen in transportsystemen.De Eindhovense informaticagroep van de te vroeg overleden prof. Martin Rem, ook een leerling van prof. Dijkstra, heeft ons geleerd om te redeneren over paral-lelle systemen. Het idee om een standaard programmeertaal, zoals Simula67, Algol68, Smalltalk80, C++ of Python als uitgangspunt te nemen hebben we toenverlaten. Vanaf dat moment begonnen we met het ontwerpen van eigen talen met

Formalisme

Page 11: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

9Parallelle processen, machines en netwerken

bijbehorende softwaregereedschappen om zo het gedrag van discrete en hybridemodellen te kunnen modelleren en analyseren.

In 1995 kwam ik in contact met de logicus prof. Jos Baeten, leider van de sectieFormele Methoden aan de TU/e. Hij verrichtte onderzoek aan procesalgebra.Procesalgebra vertoont veel gelijkenis met algebra van de middelbare school: de syntaxis (schrijfwijze) en de semantiek (betekenis) van uitdrukkingen zijn een-duidig vastgelegd. Met procesalgebra kan het gedrag van systemen en de commu-nicatie tussen en binnen systemen, formeel worden vastgelegd en doorgerekend. De afgelopen jaren hebben onze secties samengewerkt aan een hybride proces-algebra, genaamd � (chi) (naar de Griekse letter H van hybride). Deze proces-algebra is een instrument om hybride industriële systemen op een compacte enmodulaire wijze te modelleren, te verbeteren, te realiseren en te besturen.Door de sectie Systems Engineering is op basis van de formele semantiek van �een aantal verschillende gereedschappen gebouwd waarmee modellen kunnenworden geanalyseerd. Voor het ontwerpen en bouwen van deze gereedschappenhebben we de hulp ingeroepen van de informaticus prof. Mark van den Brand,eerst werkzaam op het CWI en nu leider van de groep Software Technologie aan de TU/e. Ook bij deze gereedschappen streven we naar een solide formele basis.

IllustratieNu zal ik u tonen hoe de engineering verloopt voor de eerder geïntroduceerdeillustratie van het systeem voor het vullen van flessen. Figuur 5 toont het ico-nische en het symbolische model van het systeem.Het iconische model (figuur 5a) van het vulsysteem geeft de architectuur van het systeem weer. Het model bestaat uit besturing S (supervisory controller) dieop basis van opdrachten van gebruiker U (user) regelaars C1 en C2 (resourcecontrollers) aanstuurt. Iedere regelaar C zorgt ervoor dat op de juiste momentenflessen aan- en afgevoerd worden. Iedere regelaar bedient daarnaast vulklep Qtussen tank T en zijn vuleenheid F. In dit model ziet u de lagen met gebruiker,besturingen, regelaars en inrichting terugkomen. Alle componenten zijn gemodel-leerd als parallelle processen, aangegeven door cirkels. De processen zijn metelkaar verbonden door kanalen (aangegeven door een pijl) en door gedeeldevariabelen (shared variables; aangegeven door een lijn met een cirkeltje).Figuur 5b beschrijft de procesdefinities van gebruiker U, besturing S, regelaar C,vulinrichting F en tank T. Het complete model bestaat uit instanties van dezedefinities met kanalen en variabelen. Gebruiker U is beschreven in de vorm vandiscrete gebeurtenissen. De gebruiker stuurt opdrachten om per keer 24 flesjes tevullen. De besturing S stuurt 24 keer een opdracht om een enkel flesje te vullen.

Page 12: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

10 prof.dr.ir. J.E. Rooda

Vulinrichting F en tank T zijn op een hybride wijze beschreven. Vulsysteem 1 isongeveer twee keer zo snel als Vulsysteem 2. Dit model kan gesimuleerd worden. Het resultaat van de simulatie is weergegeven in figuur 6.Figuur 6a toont de waarde van het volume van de tank als functie van de tijd. Het volume beweegt zich tussen 30.0 en 32.5 eenheden. Figuur 6b toont de

a

figuur 5

Iconisch en symbolisch model van het vulsysteem

b

Page 13: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

11Parallelle processen, machines en netwerken

waarde van het volume in de flesjes. Als het volume in een flesje 10 eenhedenbedraagt, dan is het flesje afgevuld en wordt na een kleine transporttijd een leegflesje onder een vulopening geplaatst. De waarde van het volume verandert zowelcontinu (tijdens het vulproces) als discreet (na omschakeling naar een nieuwflesje). Het is mogelijk om alle toestanden en toestandsovergangen van een systeem teberekenen, resulterend in een zogenaamde toestandsgraaf, zie figuur 7a. In de figuur komt tot uitdrukking dat het mogelijk is dat meerdere paden vanuitéén toestand kunnen worden gekozen. Dit zogenaamde niet-deterministisch

figuur 6

Experiment van het vulsysteem

a b

figuur 7a

Toestandsgraaf van het vulsysteem

Page 14: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

12 prof.dr.ir. J.E. Rooda

gedrag komt niet tot uiting in de simulatieresultaten: een simulator kiest altijd één pad.Technieken zoals die worden ontwikkeld door de Visualisatiegroep van prof. Jackvan Wijk aan de TU/e kunnen hierbij het inzicht in het gedrag van het systeemvergroten, zie figuur 7b.

figuur 7b

Driedimensionale weergave van de toestandsruimte

Page 15: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

13Parallelle processen, machines en netwerken

Figuur 7b is een driedimensionale weergave van de toestandsruimte. De toestan-den worden weergegeven door bolletjes die met elkaar zijn verbonden door lijnendie de toestandsovergangen weergeven. De begintoestand bevindt zich boven inde figuur. De verticale positie van een toestand in de figuur is gerelateerd aan het aantal toestandsovergangen tussen de begintoestand en de toestand zelf. De blauwe toestanden geven het pad aan dat het systeem vanuit de begintoe-stand heeft doorlopen om bij de rode toestand uit te komen. De rode toestand iseen toestand waarin het voor het systeem mogelijk is om klep 1 dan wel klep 2 teopenen. Dit leidt tot de paarse, respectievelijk de lichtblauwe toestand.Het analyseren van de toestandsruimte noemt men verificatie. In een aantalgevallen is verificatie onmisbaar. In de praktijk is het nog niet altijd mogelijk om systemen volledig te verifiëren door de zeer grote toestandsgraaf.Na uitvoerige analyse van ontwerp (en meestal herontwerp) en het opnieuwmodelleren van delen van het systeem, kan tot realisatie van de modellen worden overgegaan.Deze modelgebaseerde aanpak heeft het voordeel dat het gedrag van delen vanhet systeem kan worden onderzocht in samenhang met modellen van anderedelen van het systeem. Deze vorm van zogenaamde ‘rapid prototyping’ (sommigenspreken van ‘early integration’) is weergegeven in figuur 8.

Deze werkwijze kan leiden tot verdere doorlooptijdverkorting met behoud van dekwaliteit van het gehele systeem.

figuur 8

Rapid prototyping van een systeem

Page 16: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

14 prof.dr.ir. J.E. Rooda

De afgelopen decennia hebben we modellen en realisaties van machines en vannetwerken gebouwd, of delen daarvan, volgens de boven beschreven methode.We hebben kleine systemen gebouwd om te onderzoeken of de gekozen taal-elementen wel optimaal waren vanuit een oogpunt van modelleerconcept. Deze studies zijn altijd in eigen laboratoria uitgevoerd.Ook zijn modellen gebouwd van grote industriële systemen. Deze modellen warenbedoeld om het modelleercomfort en de schaalbaarheid van de taal te onder-zoeken. Eveneens zijn modellen gebouwd voor zeer verschillende applicatie-gebieden om de bruikbaarheid in andere domeinen vast te stellen. Soms zijnmodellen gebouwd om gewoon een industrieel probleem op te lossen.Voorbeelden zijn modellen van zuivelfabrieken, frisdrankfabrieken, bierbrouwe-rijen, koekfabrieken, fabrieken en machines uit de halfgeleiderindustrie, kopieer-machines, plaatsingsmachines, fabrieken voor de fabricage van lantaarnpalen,opslagmagazijnen, chemische reacties in destillatiekolommen en biochemischereacties zoals de afbraak van suiker in het menselijk lichaam.

Page 17: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

15

Van oudsher worden machines bestuurd door een nokkenas. Leuke voorbeeldendaarvan vindt u nog in het Philips Museum hier in Eindhoven. Later zijn dezebesturingen vervangen door relaiskasten en PLC’s (programmable logiccontrollers). De groep van prof. Coen Bron had in Twente voor mij een Modulair Pascal vertalervoor de PDP11-procescomputer ontwikkeld. Het was mogelijk om parallelle pro-gramma’s hiermee ‘real-time’ uit te voeren. Deze wijze van beschrijven gebruiktenwe in 1984 met succes om onder meer een fabricagelijn voor fietsbinnenbanden teautomatiseren. Van deze applicatie hebben we veel geleerd over de aard van demachinebesturingen. Onder andere dat de hoeveelheid code voor de besturing ineen ideale machine slechts 10-15% bedraagt van de totale hoeveelheid code ineen echte machine. In 1986 hebben deze ervaringen in Eindhoven aanleiding gegeven tot onderzoekop het gebied van het afhandelen van excepties in machines met parallelle pro-cessen. Uitgangspunt van het onderzoek was om de afhandeling van de exceptiesgestructureerd te laten verlopen. We hebben een oplossing voor het probleemgevonden. Toen we inzagen dat geen enkele modelleur of programmeur deze in-gewikkelde oplossing ooit zou gaan gebruiken, zijn we in 1993 met dit onderzoekgestopt. Het probleem bleef wel aan ons knagen.In 1980 is in Toronto onder leiding van prof. W.M. Wonham onderzoek gestart naar het besturen van ‘discrete-event’ systemen. Het gedrag van een inrichting (plant)kan worden beschreven door toestanden (states) en toestandsovergangen(transitions) met behulp van zogenaamde toestandsmachines (automata). Er worden twee typen toestandsovergangen onderscheiden, namelijk bestuurbare(controllable) en onbestuurbare (uncontrollable). De actuatoren worden aange-stuurd door bestuurbare overgangen, terwijl de sensoren onbestuurbare over-gangen genereren. Ook is het mogelijk om de eisen die aan een systeem wordengesteld te beschrijven met behulp van deze toestandsmachines. Door prof. Wonham is nu theorie ontwikkeld om met behulp van het model van deonbestuurde machine en de gestelde eisen aan de machine een besturing auto-matisch te genereren. Men spreekt ook wel van synthetiseren. Figuur 9 toontschematisch de synthesegebaseerde engineering.

Machines

Page 18: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

16 prof.dr.ir. J.E. Rooda

De toestandsruimte van de onbestuurde machine kan zo groot worden dat hetgeheugen van de computer te klein is: toestandsexplosie maakt berekening vande supervisor onmogelijk. Een ongeregelde machine met tien miljard toestandenis heel gewoon. In de loop der jaren zijn allerlei varianten ontwikkeld om ook voorredelijk grote systemen besturingen te synthetiseren.De laatste decennia zijn er ook binnen de sectie nieuwe theorieën ontwikkeld,voor onder meer modulaire en hiërarchische besturingen. Langzamerhand wordthet mogelijk om deze methode industrieel te gaan gebruiken. En zo hebben wetoch weer voortgang geboekt in het besturen van complexe parallelle processen inmachines. Er is wel een groot verschil: vroeger ontwikkelden we een model van deinrichting en van de besturing, nu maken we een model van de inrichting en eenmodel van de aan de besturing gestelde eisen. Deze werkwijze heeft grote voordelen voor de kwaliteit van de besturing en voorde verkorting van de generatietijd van de besturing. Deze werkwijze zal bovendiengevolgen hebben binnen teams van werktuigbouwkundigen, elektrotechnici,informatici en programmeurs. Multidisciplinaire teams dus, die deze systemenontwerpen en bouwen. Zo wordt validatie van de code vervangen door validatievan de eisen.De afgelopen jaren hebben we deze theorie met succes toegepast in verschillendeindustriële projecten. De zojuist beschreven werkwijze is hierbij enthousiastontvangen.Ter illustratie wil ik u iets vertellen over de besturing van een tafel voor de onder-steuning van een patiënt die in een MRI-scanner wordt onderzocht. In figuur 10 is het systeem weergegeven.

figuur 9

Synthesegebaseerde engineering

Page 19: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

17Parallelle processen, machines en netwerken

Het complete onbestuurde systeem, bestaande uit de patiëntondersteuningstafel(patient support table) en het bedieningspaneel (user interface), is gemodelleerddoor 27 relatief eenvoudige componenten die samen 6,3 miljard toestanden repre-senteren. Aan de besturing worden verschillende eisen gesteld. Bijvoorbeeld deeis dat de tafel verticaal mag bewegen zolang de tafel zich buiten de magneet(bore) bevindt. Of de eis dat de motor van de tafel moet worden uitgeschakeld als de tafel zich in een eindpositie bevindt. In totaal zijn er ongeveer 60 vandergelijke eisen geformuleerd. De door synthese verkregen supervisor bestaat uit 14 modulaire supervisors, met 20 tot 2000 toestanden ieder. Met behulp vansimulatie is het model gevalideerd. Als volgende stap is de supervisor gekoppeldaan een echte installatie. Het bleek dat de ‘echte’ supervisor zich conform deverwachting gedroeg en dat de doorlooptijd kort was.Met deze vorm van ‘rapid prototyping’ hebben we geïllustreerd dat synthese-gebaseerde engineering in de industriële praktijk werkt.De verkregen resultaten blijken karakteristiek te zijn voor andere professionelesystemen, zoals kopieermachines. De markt voor professionele machines vraagtom steeds nieuwe functionaliteit in deze machines. Een aantrekkelijke eigenschapvan (de technologie van) het synthetiseren van supervisors voor deze machines isdat nieuwe eisen aan het systeem eenvoudig en vooral snel in de werkelijkebesturing kunnen worden opgenomen.

figuur 10

Scanner met een tafel om een patiënt te ondersteunen

Page 20: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

18 prof.dr.ir. J.E. Rooda

Het feest van de synthese van besturingen moet mijn inziens nog echt beginnen.Ook niet zo vreemd als men bedenkt dat Isaac Newton de eerste publicatie overdifferentiaalvergelijkingen in 1687 heeft geschreven en dat Alan Turing, die alsgrondlegger van de informatica kan worden beschouwd, zijn eerste artikel overautomaten en berekenbaarheid van functies in 1936 schreef. Computers ver-schenen pas in de Tweede Wereldoorlog (Suze, Z3, 1941; US Army, ENIAC, 1946).

Page 21: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

19

Naast het onderzoek naar het gedrag van machines en hun besturingen is binnende sectie onderzoek uitgevoerd op het gebied van het gedrag van netwerken. Als applicatiegebied hebben we ons voornamelijk beperkt tot fabricagesystemen.De ontwikkelde theorie is overigens ook toe te passen in andere domeinen, zoalsverkeerssystemen, supermarkten, ziekenhuizen, verzekeringsbedrijven en zelfsbiologische netwerken.

Procesalgebra is ook gebruikt om het gedrag van fabricagelijnen te analyseren ente begrijpen. Zodoende is het mogelijk om doorzet en doorlooptijden in eenbestaande lijn of netwerk uit te rekenen.Voor het berekenen van een optimaal netwerk, bijvoorbeeld hoeveel machines ernodig zijn om een bepaalde doorzet te bereiken, of hoe de leverbetrouwbaarheidvan een systeem kan worden vergroot, zijn wiskundige optimaliseringstechniekennoodzakelijk. Binnen de sectie is onderzoek verricht naar het ontwikkelen en het gebruiken vansimulatiegebaseerde optimaliseringstechnieken voor netwerken van machines die stochastisch gedrag vertonen. Een geautomatiseerde bewerking op zichzelfvertoont geen stochastisch gedrag: de bewerkingstijd, of procestijd, voor één en hetzelfde type product is altijd hetzelfde. In ieder geval hoort dat zo te zijn.Door bijvoorbeeld verschillende recepturen, omstellen en storingen varieert deprocestijd zoals het product dat op het werkstation ervaart.De vraag is vervolgens: hoe groot is de procestijd en de variabiliteit van deprocestijd op het werkstation? Dit brengt mij bij het onderzoek naar effectieveprocestijden (EPT).

Effectieve procestijden (EPT)Ruim 10 jaar geleden is een model gemaakt van een halfgeleiderfabriek inNijmegen. Het doel van dit simulatiemodel was om de doorzet in de fabriek en de productdoorlooptijd te analyseren. We beschikten over de recepturen van de te vervaardigen producten; de routering van de producten in de fabriek wasbekend. Ook was informatie beschikbaar over alle geïnstalleerde machines methun natuurlijke procestijd, de gemiddelde tijd tussen twee storingen (meantimebetween failure - MTBF) en de gemiddelde reparatietijd van een storing (mean

Netwerken

Page 22: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

20 prof.dr.ir. J.E. Rooda

time to repair - MTTR). We veronderstelden dat de verdeling van deze twee para-meters exponentieel verdeeld was. Met deze informatie is een ‘discrete-event’simulatiemodel gebouwd, waarmee experimenten zijn uitgevoerd, zie figuur 11.

Figuur 11a toont als functie van de tijd de doorlooptijd van ieder product in defabriek. Figuur 11b toont als functie van de tijd de doorlooptijd van ieder productzoals berekend met het simulatiemodel. De werkelijke doorlooptijd is twee keer zo groot als in het model en de werkelijke spreiding is ook groter. Blijkbaar zijn dewaarden voor de natuurlijke procestijd en voor de variabiliteit in de procestijd inhet model te optimistisch gekozen. Het verschil kan worden verklaard door hetniet meenemen van alle effecten, zoals het gedrag van operators en het verwaar-lozen van het omstellen van machines.Aan de hand van een voorbeeld wil ik illustreren hoe we de zogenaamde effectieveprocestijd van een werkstation kunnen bepalen uit de gemeten aankomsttijden envertrektijden, zie figuur 12.Figuur 12a toont het werkstation bestaande uit een buffer met oneindige capaci-teit en één machine. Figuur 12b toont een zogenaamd lot–tijd diagram. Op de x-asis de tijd weergegeven, op de y-as de producten. Een product arriveert op tijdstip tA bij een werkstation en verlaat op tijdstip tD ditwerkstation. Het product moet soms wachten in de buffer voor de machine omdater zich nog een ander product in de machine bevindt. Soms verblijft het productlanger in de buffer door afwezigheid van de operator of door omstellen van demachine. Soms verblijft het product langer in de machine door storing van de

MOS4YOUx

00 10 20 0 10 20

Simulation

Exit time [days]

Cycl

e ti

me

[day

s/la

yer]

figuur 11

Doorlooptijd van producten

a b

Page 23: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

21Parallelle processen, machines en netwerken

machine. Al deze effecten veroorzaken langere effectieve procestijden. Uit hetlot–tijd diagram kan voor ieder product de effectieve procestijd worden afgeleid.Voor alle producten in een bepaalde periode kan de gemiddelde effectieve proces-tijd worden berekend. Dit is een maat voor de doorzet. Voor alle producten in eenbepaalde periode kan ook de variantie van de effectieve procestijd worden be-rekend. Deze gemeten waarden kunnen worden gebruikt in analytische of nume-rieke (bijvoorbeeld met simulatie) modellen van wachtrijen voor de berekeningvan de gemiddelde doorlooptijd en eventueel de leverbetrouwbaarheid van deproducten.Deze manier van werken hebben we toegepast op de gegevens van de half-geleiderfabriek. Het bleek dat de berekende doorlooptijden van de werkstationsnu veel beter overeenkwamen met de werkelijke doorlooptijden.De EPT-methode hebben we uitgebreid voor onder meer werkstations met meer-dere machines, voor werkstations met eindige buffers en voor werkstationswaarbij de producten elkaar kunnen inhalen. Omdat de theoretische kennis vanwachtrijen in de sectie niet voldoende was hebben we ongeveer 10 jaar geledenaansluiting gezocht bij de Operations Research groep van prof. Onno Boxma vande TU/e. De afgelopen jaren hebben we samengewerkt om deze wijze van aggre-gaatmodellering verder te ontwikkelen. We zijn in staat om doorlooptijden goed te voorspellen voor clusters van machines en voor gehele fabricagelijnen.Twee dagen geleden hebben we een promotie afgerond over deze aggregatiemethode in een halfgeleiderfabriek in Crolles.

figuur 12

Werkstation en lot–tijd diagram

a

b

Page 24: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

22 prof.dr.ir. J.E. Rooda

Geregelde netwerkenIn het zojuist behandelde onderzoek wordt een fabricagelijn beschouwd als een‘discrete-event’ systeem. Een dergelijk systeem wordt gemodelleerd door discretegebeurtenissen. Een andere manier is om een fabricagesysteem te beschrijven alseen continuüm. Hierbij worden de producten niet meer afzonderlijk beschreven:de productstroom wordt beschouwd als een vloeistofstroom. De vloeistofstroomwordt gemodelleerd door gewone (of partiële) differentiaalvergelijkingen. Een belangrijk voordeel van het gebruik van deze continue beschrijvingswijze isdat theorie uit de (niet-lineaire) regeltechniek beschikbaar is om regelaars tekunnen ontwerpen voor het optimaal regelen van dergelijke fabricagelijnen.Daarnaast wordt het discrete gedrag, zoals het aanzetten, omstellen en uitzettenvan machines, beschreven door discrete gebeurtenissen. Op deze wijze ontstaateen hybride model. Voor de beschrijving van dit model kan gebruik wordengemaakt van de eerder geïntroduceerde hybride procesalgebra.

Een schakelend werkstation (switching server)Gedurende de samenwerking met de halfgeleiderfabrieken in Nijmegen viel ons opdat er soms sprake was van ophoping van producten in de diffusiefabriek (front-end fabricator). In deze fabriek wordt uit een plak zuiver silicium een wafer gepro-duceerd. Een kenmerk van een dergelijke fabriek is dat producten meerdere kerenopnieuw in de fabricagelijn worden gebracht (re-entrant) en dat verschillendeproducten tegelijk worden geproduceerd. Machines worden dus omgesteld. Door de geavanceerde bewerkingstechnologie is de variabiliteit van de bewer-kingsprocessen hoog. Het verschijnsel van deze ophopingen werd niet begrepenomdat volgens berekeningen er voldoende capaciteit op de machines beschikbaarwas. Deze casus heeft de inspiratie geleverd voor het onderzoek naar schakelendewerkstations. Figuur 13 toont een werkstation met twee buffers en één machine eneen grafiek van de zogenaamde periodieke baan.Twee producten arriveren met constante snelheid λ1 en λ2 bij de buffers. De inhoud van de buffers wordt weergegeven door de variabelen x1 en x2.De machine verwerkt de producten met een snelheid µ1 en µ2. Het omstellen vande machine van producttype 1 naar producttype 2 duurt σ12, van type 2 naar 1duurt σ21. De vraag luidt nu wanneer de machine moet worden omgesteld. Een eerste gedachte is om de volgende strategie te hanteren: werk aan productenuit buffer 1 totdat deze buffer leeg is, stel de machine om, werk aan producten vanbuffer 2 totdat deze buffer leeg is, stel de machine om, en herhaal deze werkwijze.Afhankelijk van de waarden van de gekozen parameters van λ, µ en σ blijkt dat de integraal van de werkcyclus van de hoeveelheid onderhanden werk niet altijdminimaal is. Soms is het beter om met omstellen te wachten.

Page 25: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

23Parallelle processen, machines en netwerken

Figuur 13b geeft de periodieke baan van de schakelende machine weer als functievan de bufferinhouden x1 en x2. Duidelijk is de zogenaamde ‘slow-mode’ te zien.Hoewel buffer x1 leeg is wordt niet direct geschakeld. De periode tussen tweeschakelmomenten wordt langer, zodat er minder capaciteit verloren gaat door het schakelen. Het is natuurlijk wel lastig om de baan uit te rekenen. Voor hetberekenen van een dergelijke baan wordt gebruik gemaakt van niet-lineaire opti-maliseringstechnieken. Het gedrag van een dergelijk systeem laat zich beschrijvenmet schakelende differentiaalvergelijkingen. Ook dit is een voorbeeld van eenhybride systeem.Deze niet-intuïtieve oplossing is bruikbaar voor het ontwerp van een regelaar. Voor het ontwerp van deze regelaar wordt gebruik gemaakt van niet-lineaireregeltechniek.Het vernieuwende in dit onderzoek is dat er allereerst wordt uitgegaan van eengewenst gedrag van een systeem, waarna een bijbehorende regelaar wordtafgeleid.De inzichten en resultaten van dit onderzoek zijn bruikbaar voor grotere toepas-singen. Bijvoorbeeld voor meer dan twee producten, voor meer dan één machine,en ook voor systemen met stochastisch gedrag. Ook kan het gedrag van twee ofmeer achter elkaar geplaatste werkstations met schakelende machines op dezewijze worden beschreven. De regeling van deze ketens is gecompliceerder. Het ismogelijk om dit concept te gebruiken voor ‘re-entrant’ fabricagelijnen, zoals dehalfgeleiderfabrieken.

figuur 13

Werkstation met periodieke baan (λ1 = 3, λ2 = 1, µ1 = 8, µ2 = 9, σ12 = 3, σ21 = 1)

a

b

Page 26: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

24 prof.dr.ir. J.E. Rooda

De fabricagesnelheid µ van de machine kan gevonden worden door middel van de EPT-aggregatiemethode, zoals ik eerder heb verteld. Kennis opgedaan in ditapplicatiegebied kan met succes worden toegepast in andere domeinen, zoals ver-keerssystemen met stoplichten. De auto’s zijn hierbij de producten, het schakelenvan de stoplichten is analoog met het schakelen van de machines. Ook bij stop-lichten kost omschakelen tijd: eerst dient de kruising vrijgemaakt te worden voor-dat groen licht kan worden gegeven aan een andere verkeersstroom.

Een geregelde fabricagelijnBinnen de sectie hebben we nog een andere onderzoekslijn om regelingen teontwikkelen van fabricagenetwerken.Het is een bekend fenomeen dat in fabricagesystemen, bestaande uit vele achterelkaar geplaatste werkstations, relatief kleine verstoringen grote oscillaties ver-oorzaken van de voorraad. Dit is het zogenaamde ‘bull-whip’ effect. In de industrievoorkomt men dit effect door gebruik te maken van zogenaamde pushsystemenmet eindige voorraadbuffers (hierbij worden producten in wording het systeemingedrukt) of door zogenaamde pullsystemen met voorraadbuffers (hierbij wordenproducten in wording het systeem uitgetrokken). In het laatste geval wordt de pro-ductie gestart na een autorisatiesignaal. Een uitvoeringsvorm van een pullsysteemis een zogenaamd ‘kanban’-systeem. Deze werkwijze is bruikbaar wanneer er sprake is van een constante productie-snelheid. De situatie verandert bij een variabele productiesnelheid ten gevolgevan bijvoorbeeld een variabele marktvraag.De opgave in dit onderzoek is om in een veranderende markt producten zodanig te produceren dat het verschil tussen het aantal gemaakte producten en de markt-vraag zo klein mogelijk is. Met andere woorden: hoe wordt de hoeveelheid onder-handen werk in het systeem zo klein mogelijk gehouden?Door het niet-lineair terugkoppelen van het verschil van het gemaakte aantalproducten en het te maken aantal producten met de snelheid van de machine isdit mogelijk. Op het juiste moment wordt aan het werkstation dat zich stroom-opwaarts bevindt een signaal gegeven om de productie te starten.Het blijkt dat de gevonden regeling bruikbaar is voor meerdere in serie geplaatstewerkstations. Ieder werkstation kan hierbij bestaan uit een buffer met oneindigeof eindige capaciteit en een machine. Figuur 14a toont een fabricagelijn met driewerkstations.Het lastige van het vinden van een regeling is dat de machinecapaciteit begrensdis en dat de buffer tussen de werkstations helemaal leeg of helemaal vol kan zijn.We hebben aangetoond dat bij deze wijze van regelen geen ‘bull-whip’ effectoptreedt. In figuur 14b zijn als functie van de tijd het gemaakte aantal producten

Page 27: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

25Parallelle processen, machines en netwerken

(de productie, y) en het gevraagde aantal producten (de marktvraag (marketdemand), yd) weergegeven. Duidelijk is te zien dat de productie de marktvraagvolgt. Soms treedt er een verschil op tussen de productie en de marktvraag. Door een buffer met een capaciteit ter grootte van het maximale verschil tussenproductie en marktvraag tussen het fabricagesysteem en de markt is het systeemaltijd in staat om de marktvraag te volgen.De tot dusver verkregen resultaten zijn eveneens bruikbaar voor het regelen vanfabricagelijnen met in serie geschakelde werkstations en voor het regelen van ‘re-entrant’ fabricagelijnen.

figuur 14

Een geregelde fabricagelijn

a

b

Page 28: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

26

Multidisciplinaire systeemoptimaliseringEen geheel andersoortig onderzoek binnen de Systems Engineering is het ont-werpen van complexe systemen, zoals havens, vliegtuigen en auto’s, maar ookmicrosystemen. Vaak zijn deze systemen zo complex dat ze gesplitst worden inkleinere, beter behapbare, componenten. Deze componenten kunnen dan inprincipe afzonderlijk worden ontworpen. Het is hierbij moeilijk om rekening tehouden met de onderlinge relaties tussen de componenten. Wat voor een compo-nent optimaal is, hoeft niet optimaal te zijn voor het gehele systeem. De vraag van het ontwerpen van het gehele systeem is hoe het gedistribueerd nemen vanontwerpbeslissingen gecoördineerd kan worden, zodanig dat een consistent enoptimaal systeem wordt verkregen. Binnen de Systems Engineering groep is onderzoek uitgevoerd naar coördinatie-methoden voor zulke systeemoptimaliseringsproblemen. In dit onderzoek issamengewerkt met de groep van prof. Panos Papalambros aan de Universiteit vanMichigan en met prof. Fred van Keulen aan de Technische Universiteit Delft.

Container terminalsEen toepassing van het gebruik van parallelle processen in transportsystemen iseen containerterminal. De afgelopen jaren is door prof. Jan Tijmen Udding onder-zoek verricht op het gebied van containerterminals met de bedoeling om de door-zet in een dergelijke terminal te vergroten. Hierbij dient een afweging te wordengemaakt met de investeringskosten en de operationele kosten. Studies hebbenaangetoond dat het mogelijk is om met de bestaande middelen verdere groei terealiseren.

Continue-tijd fabricagelijnenIn de sectie is tevens onderzoek uitgevoerd op het gebied van de fabricage-systemen, onder verantwoordelijkheid van prof. Dieter Armbruster, waarbij het con-tinue-tijd karakter centraal stond. Hierbij is gekeken naar het gebruik van partiëledifferentiaalvergelijkingen voor het berekenen van doorzet en productdoorlooptijdin fabricagelijnen. Het bleek mogelijk om regelaars te ontwerpen die voor autori-satie van machines in een fabricagelijn zorgdragen. Daarnaast zijn biologische net-werken onderzocht vanwege hun sterke overeenkomsten met fabricagelijnen.

Overig onderzoek

Page 29: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

27

Volgens de Wet op het Hoger onderwijs en Wetenschappelijk onderzoek (WHW) isde taak van de universiteit het verzorgen van wetenschappelijk onderwijs en hetverrichten van wetenschappelijk onderzoek.

De medewerkers van de sectie hebben de afgelopen 25 jaar vele studenten,technologische ontwerpers en promovendi begeleid. We hebben geprobeerd omde eerder in de colleges geleerde stof bij de student operationeel te maken. Juist door zelf met de materie aan de slag te gaan leert de toekomstige ingenieurwat het ontwerpen, analyseren, realiseren en besturen van systemen inhoudt.Vooral de laatste 15 jaar hebben we geprobeerd om studenten aan afstudeer-opdrachten te laten werken die in het verlengde liggen van het sectieonderzoek.Op deze wijze hebben we gewaarborgd dat de student zowel met een acade-mische denkwijze als met een adequate kennis de universiteit verlaat.Samengevat hebben we geprobeerd om studenten, technologisch ontwerpers en promovendi bewust te maken van de rol die ze later moeten vervullen in desamenleving.

De afgelopen decennia is de omvang van het fundamentele wetenschappelijkonderzoek toegenomen door de maatschappelijke behoefte aan kennisver-nieuwing.De omvang van het fundamentele industriële onderzoek zoals dat plaatsvond bijNederlandse bedrijven, zoals het Koninklijke Shell Laboratorium in Amsterdam(KLSA), het Dr. Neher laboratorium van de PTT en het Natuurkundig Laboratorium(NatLab) van Philips is sterk afgenomen. Een deel van de afname van het indus-triële onderzoek wordt gecompenseerd door additioneel onderzoek van univer-siteiten, maar door het wegvallen van industriële onderzoekcentra verloopt hetproces van de diffusie van fundamentele kennis moeizaam.Hierdoor kan de Nederlandse industrie de kennis die op de universiteit wordtopgedaan, niet meer voldoende absorberen.

De taak van de universiteit

Page 30: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

28

In de afgelopen 25 jaar heb ik het voorrecht gehad om met velen samen tewerken.

De medewerkers van de sectie Systems Engineering wil ik bedanken voor deinspirerende samenwerking. Samen met oud-medewerkers Reinier Gerritzen, Frans Langemeijer, Peter Renders, Ad de Ron en Frans van Stiphout en huidigemedewerkers Bert van Beek, Pascal Etman, Erjen Lefeber, Asia van de Mortel –Fronczak, Sasha Pogromsky, Henk van Rooy en Frans Soers is de sectie gewordenwat zij nu is. Daarin betrek ik ook oud-deeltijdhoogleraar Theo Boshuisen enhuidige deeltijdhoogleraren Dieter Armbruster en Jan Tijmen Udding en postdocsYoni Nazarathy, Qin Li en Rong Su. Mieke Lousberg, officemanager, bedank ik voorde borging van de sociale cohesie. Ik dank studenten, technologische ontwerpers en promovendi voor hun bijdragenaan het onderzoek.Uw inspanningen hebben bijgedragen aan de resultaten. Met plezier denk ik terugaan de reis wij gezamenlijk hebben afgelegd.

Met enthousiasme heb ik deelgenomen aan het professionaliseren van de faculteitWerktuigbouwkunde. Ik bedank de decanen, Dick van Campen en René de Borst,en de directeur bedrijfsvoering Alfons Bruekers, voor de constructieve samen-werking in het faculteitsbestuur.

Binnen de universiteit wil ik prof. Jos Baeten bedanken voor de jarenlange samen-werking. Ik vind dat we samen voor drie telden. Dit is echt een vorm van systeem-denken. Ik wens hem veel succes als nieuwe hoogleraar Systems Engineering. Ik bedank prof. Onno Boxma en prof. Ivo Adan van de groep Operations Research voor de bijdragen aan het onderzoek op het gebied van de effectieve procestijd.Prof. Mark van den Brand wil ik bedanken voor de samenwerking op het gebiedvan de productie van software. Buiten de universiteit bedank ik prof. Jan vanSchuppen van het CWI voor zijn hulp en expertise op het gebied van supervisors.

Tot slot

Page 31: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

29Parallelle processen, machines en netwerken

Tot slot wil ik de industrie bedanken voor de geboden mogelijkheid om onderzoekte toetsen. Zonder industriële toetsing verwordt academisch onderzoek tot l’artpour l’art. En dat is niet de bedoeling van onderzoek op een technische univer-siteit. Omgekeerd is het evenmin de bedoeling dat een technische universiteit het verlengstuk wordt van onderzoek en ontwikkeling in de industrie.

Ik heb gezegd.

Page 32: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

30

Modelgebaseerde engineeringN.C.W.M. Braspenning, J.M. van de Mortel - Fronczak, J.E. Rooda, A Model-based

Integration and Testing Method to Reduce System Development Effort,ENTCS, 164(4), 13-28, (2006)

N.C.W.M. Braspenning, E.M. Bortnik, J.M. van de Mortel - Fronczak, J.E. Rooda, Model-based system analysis using Chi and UPPAAL: an industrial casestudy, Computers in Industry, 59(1), 41-54, (2008)

N.C.W.M. Braspenning, J.M. van de Mortel - Fronczak, J.E. Rooda, Modeling,analysis, and implementation of infrastructure for model-based integrationand testing, Systems Research Forum, 2007(2), 3-10, (2008)

Modelgebaseerde integratie en testenR. Boumen, I.S.M. de Jong, J.W.H. Vermunt, J.M. van de Mortel - Fronczak,

J.E. Rooda, Test sequencing in complex manufacturing systems, IEEETransactions SMC Part A: Systems and Humans, 38(1), 25-37, (2008)

R. Boumen, I.S.M. de Jong, J.W.H. Vermunt, J.M. van de Mortel - Fronczak, J.E. Rooda, Risk-based stopping criteria for test sequencing, IEEETransactions SMC Part A: Systems and Humans, 38(6), 1363-1373, (2008)

R. Boumen, S. Ruan, I.S.M. de Jong, J.M. van de Mortel - Fronczak, J.E. Rooda, K.R. Pattipati, Hierarchical test sequencing for complex systems, IEEETransactions SMC Part A: Systems and Humans, 39(3), 640-649, (2009)

R. Boumen, I.S.M. de Jong, J.M.G. Mestrom, J.M. van de Mortel - Fronczak, J.E. Rooda, Integration and test sequencing for complex systems, IEEETransactions SMC Part A: Systems and Humans, 39(1), 177-187, (2009)

N.C.W.M. Braspenning, R. Boumen, J.M. van de Mortel-Fronczak, J.E. Rooda,Estimating and quantifying the impact of using models for integration andtesting Computers in Industry, accepted, (2010)

FormalismeE.M. Bortnik, N. Trcka, A.J. Wijs, B. Luttik, J.M. van de Mortel - Fronczak,

J.C.M. Baeten, W.J. Fokkink, J.E. Rooda, Analyzing a Chi model of a turntablesystem using Spin, CADP and Uppaal, JLAP, 65(2), 51-104, (2005)

Literatuurverwijzingen

Page 33: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

31Parallelle processen, machines en netwerken

D.A. van Beek, K.L. Man, M.A. Reniers, J.E. Rooda, R.R.H. Schiffelers, Syntax andConsistent Equation Semantics of Hybrid Chi, JLAP, 68(1-2), 129-210, (2006)

D.A. van Beek, J.E. Rooda, R.R.H. Schiffelers, K.L. Man, M.A. Reniers, Relatinghybrid Chi to other formalisms, ENTCS, 191, 85-113, (2007)

J.C.M. Baeten, D.A. van Beek, P.J.L. Cuijpers, M.A. Reniers, J.E. Rooda, R.R.H. Schiffelers, R.J.M. Theunissen, Model-based engineering of embeddedsystems using the hybrid process algebra Chi, ENTCS, 209, 21-53, (2008)

R.R.H. Schiffelers, R.J.M. Theunissen, D.A. van Beek, J.E. Rooda, Model-BasedEngineering of Supervisory Controllers using CIF, ECEASST, 21(9), 1-10,(2009)

D.A. van Beek, P. Collins, D.E. Nadales Agut, J.E. Rooda, R.R.H. Schiffelers, NewConcepts in the Abstract Format of the Compositional Interchange Format, in 3rd IFAC Conference on Analysis and Design of Hybrid Systems; Editors: A. Giua, C. Mahulea, M. Silva, J. Zaytoon, Zaragoza, Spain, 250-255, (2009)

C. Sonntag, R.R.H. Schiffelers, D.A. van Beek, J.E. Rooda, S. Engell, Modeling andSimulation using the Compositional Interchange Format for Hybrid Systems, in MATHMOD 2009 - 6th Vienna International Conference on MathematicalModelling; Editors: I. Troch and F. Breitenecker, Vienna, Austria, 640-650,(2009)

R.R.H. Schiffelers, A.Y. Pogromski, D.A. van Beek, J.E. Rooda, Hybrid Modeling andSimulation of plant/controller Combinations, in 3rd IEEE Multi-conference onSystems and Control; Saint Petersburg, Russian Federation, CD-ROM, (2009)

Besturing van machinesR.J.M. Theunissen, R.R.H. Schiffelers, D.A. van Beek, J.E. Rooda, Supervisory

control synthesis for a patient support system, in Proc. European controlconference; Budapest, Hungary, 4637-4652, (2009)

R. Su, J.H. van Schuppen, J.E. Rooda, Aggregative synthesis of distributedsupervisors based on automaton abstraction, IEEE Trans. on Aut. Control,accepted, (2010)

R. Su, J.H. van Schuppen, J.E. Rooda, Model abstraction of nondeterministic finite-state automata in supervisor synthesis, IEEE Trans. on Aut. Control,accepted, (2010)

R. Su, J.H. van Schuppen, J.E. Rooda, A.T. Hofkamp, Non-conflict check by usingsequential automaton abstractions, Automatica, accepted, (2010)

Page 34: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

32 prof.dr.ir. J.E. Rooda

Effectieve procestijdJ.H. Jacobs, L.F.P. Etman, E.J.J. van Campen, J.E. Rooda, Characterization of

operational time variability using effective process times, IEEE Trans.Semiconduct. Manufact., 16(3), 511-520, (2003)

A.J. de Ron, J.E. Rooda, Equipment Effectiveness: OEE revisited, IEEE Trans.Semiconduct. Manufact., 18(1), 190-196, (2005)

J.H. Jacobs, P.P. Van Bakel, L.F.P. Etman, J.E. Rooda, Quantifying variability ofbatching equipment using effective process times, IEEE Trans. Semiconduct.Manufact., 19(2), 269-275, (2006)

A.A.A. Kock, F.J.J. Wullems, L.F.P. Etman, I.J.B.F. Adan, F. Nijsse, J.E. Rooda,Performance Measurement and Lumped Parameter Modeling of Single SeverFlow lines Subject to Blocking: An Effective Process Time Approach,Computers & Industrial Engineering, 54, 866-878, (2008)

A.A.A. Kock, L.F.P. Etman, J.E. Rooda, Effective process times for multi-servertandem queues with finite buffers, IIE Transactions, 40, 177-186, (2008)

A.A.A. Kock, C.P.L. Veeger, L.F.P. Etman, B. Lemmen, J.E. Rooda, Lumped parametermodeling of the litho cell, Production Planning & Control, accepted, (2010)

C.P.L. Veeger, L.F.P. Etman, J. van Herk, J.E. Rooda, Generating CT-TH-PM surfacesusing EPT-based aggregate modeling, Journal of Simulation, accepted, (2010)

R. Andriansyah, L.F.P. Etman, J.E. Rooda, Flow Time Prediction for a Single-ServerOrder Picking Workstation using Aggregate Process Times, InternationalJournal on Advances in Systems and Measurements, accepted, (2010)

C.P.L. Veeger, L.F.P. Etman, J. van Herk and J.E. Rooda. Generating Cycle Time-Throughput Curves using Effective Process Time based Aggregate Modeling.IEEE Transactions on Semiconductor manufacturing, accepted, (2010)

Een schakelend werkstationE. Lefeber, J.E. Rooda, Controller design of switched linear systems with setups,

Physica A, 363(1), 48-61, (2006)E. Lefeber, J.E. Rooda, Controller Design for Flow Networks of Switched Servers

with Setup Times: the Kumar-Seidman Case as an Illustrative Example, AJC,10(1), 55-66, (2008)

V. Feoktistova, A.S. Matveev, E. Lefeber, J.E. Rooda, 2-Designs of optimal switchingfeedback decentralized control policies for re-entrant queueing networks: A case study, IMS’10, Lisbon (2010)

Page 35: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

33Parallelle processen, machines en netwerken

Een geregeld werkstationG.N. Kommer, B. Andrievsky, A.Y. Pogromsky, J.E. Rooda, Discrete-event

implementation of observer-based feedback control of manufacturingsystems, in 2009 Multi-conference on Systems and Control; St. Petersburg,Russian Federation, CD-ROM, (2009)

A.Y. Pogromsky, B. Andrievsky, J.E. Rooda, Observer-based Production control ofManufacturing Machines, in 3th IFAC Symposium on Information ControlProblems in Manufacturing (INCOM 2009); Moscow, Russian Federation, CD-ROM, (2009)

K. Starkov, A.Y. Pogromski, J.E. Rooda, Variable structure control of a line ofmanufacturing machines, IMS’10, accepted, Lisbon (2010)

K. Starkov, A.Y. Pogromsky, J.E. Rooda, Production error analysis for a line ofmanufacturing machines, variable structure control approach, APMS 2010,Cernobbio, (2010)

Multidisciplinaire systeemoptimaliseringL.F.P. Etman, M. Kokkolaras, A.T. Hofkamp, P.Y. Papalambros, J.E. Rooda,

Coordination specification in distributed optimal design of multilevelsystems using the Chi language, Struct Multidisc Optim, 29(3), 198-212,(2005)

S. Tosserams, L.F.P. Etman, P.Y. Papalambros, J.E. Rooda, An AugmentedLagrangian Relaxation for Analytical Target Cascading using the AlternatingDirections Method of Multipliers, Struct Multidisc Optim, 31(3), 176-189,(2006)

S. Tosserams, L.F.P. Etman, J.E. Rooda, Augmented Lagrangian coordination fordistributed optimal design in MDO, Int. J. Numer. Meth. Engng, 73(13), 1885-1910, (2008)

S. Tosserams, L.F.P. Etman, J.E. Rooda, Block-separable Linking Constraints inAugmented Lagrangian Coordination, Struct Multidisc Optim, 37(5), 521-527, (2009)

S. Tosserams, L.F.P. Etman, J.E. Rooda, A classification of methods for distributedsystem optimization based on formulation structure, Struct Multidisc Optim,39(5), 503-517, (2009)

S. Tosserams, M. Kokkolaras, L.F.P. Etman, J.E. Rooda, A non-hierarchicalformulation of Analytical Target Cascading, J. Mech. Design, 132(5), 051002,(2010)

Page 36: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

34 prof.dr.ir. J.E. Rooda

S. Tosserams, A.T. Hofkamp, L.F.P. Etman, J.E. Rooda, A specification language forproblem partitioning in decomposition-based design optimization, StructMultidisc Optim, DOI 10.1007/500158-010-0512-7, (2010)

S. Tosserams, L.F.P. Etman, J.E. Rooda, A micro-accelerometer MDO benchmarkproblem, Struct Multidisc Optim, 41(2), 255-275, (2010)

ContainerterminalsM.P.M. Hendriks, M. Laumanns, E. Lefeber, J.T. Udding, Robust cyclic berth

planning of container vessels, OR Spectrum, accepted, (2010)M. Laumanns, R. Zenklusen, K. Schuepbach, M.P.M. Hendriks, E. Lefeber,

J.T. Udding, Robust Adaptive Resource Allocation in Container Terminals, in Proceedings of the Conference on Uncertainty and Robustness in Planningand Decision Making; Coimbra, Portugal, CD ROM, (2010)

A.H. Gharehgozli, Y. Yu, M.B.M. de Koster, J.T. Udding, Managing the Number ofContainer Reshuffles using a Shared Stacking Policy, in Proceedings of the2009 Conference on Value Chain Sustainability (ICOVACS 2009); Editors:Sunderesh Heragu, Jalal Ashayeri, Oznur Yurt, ISBN 978-0-615-36016-4,Louisville, KY, United States, 199-204, (2010)

FabricagelijnenD.M.L. Perdaen, H.D. Armbruster, K. Kempf, E. Lefeber, Controlling a re-entrant

manufacturing line via the push-pull point, Int Journ of Prod Res, 46(16), 4521-4536, (2008)

M. La Marca, H.D. Armbruster, M. Herty and C. Ringhofer, Control of continuummodels of production systems, accepted, IEEE Transactions on automaticcontrol (2010)

H.D. Armbruster, J. Nagy, E.A.F. van de Rijt, J.E. Rooda, Dynamic Simulations ofSingle-Molecule Enzyme Networks, J. Phys. Chem. B, 113(16), 55537-5544,(2009)

Een uitgebreide literatuurlijst en een lijst van ‘SE Reports’ is te vinden op dewebsite van de sectie: http://se.wtb.tue.nl.

Page 37: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

35

Koos Rooda (1945) studeerde technisch-economische levensmiddelentechnologieaan de Landbouw Hogeschool te Wageningen. Na zijn afstuderen werd hijwetenschappelijk medewerker bij de vakgroep Techniek van het Intern Transport,faculteit Werktuigbouwkunde, aan de Technische Hogeschool Twente te Enschede. Hij promoveerde op berekeningen van schokgolven in graansilo’s. Na zijn promotiein 1977 hield hij zich bezig met het ontwerpen en analyseren van transport-systemen. In 1985 werd hij aan de TU/e benoemd tot hoogleraar Automatisering van deProduktie, later Systems Engineering. Hij verdiepte zich onder meer in hetontwikkelen van een procesalgebra om het parallelle gedrag in machines ennetwerken van machines wiskundig te kunnen beschrijven.

Curriculum vitaeProf.dr.ir. J.E. Rooda was van 1 mei 1985 tot 1 april 2010 als voltijdhoogleraar

Systems Engineering werkzaam bij de faculteit Werktuigbouwkunde van deTechnische Universiteit Eindhoven.

Page 38: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

36

Colofon

ProductieCommunicatie Expertise Centrum TU/eCommunicatiebureau Corine Legdeur

Fotografie coverRob Stork, Eindhoven

OntwerpGrefo Prepress,Sint-Oedenrode

DrukDrukkerij van Santvoort, Eindhoven

ISBN 978-90-386-2286-6NUR 978

Digitale versie:www.tue.nl/bib/

Page 39: Parallelle processen, machines en netwerken · Parallelle processen, machines en netwerken 5 Een gebruiker (user) stuurt het systeem aan en voorziet het van taken via een besturing.

BezoekadresDen Dolech 25612 AZ Eindhoven

PostadresPostbus 5135600 MB Eindhoven

Tel. (040) 247 91 11www.tue.nl

Parallelle processen,machines en netwerken

Where innovation starts

/ Faculteit Werktuigbouwkunde

Afscheidscollege

prof.dr.ir. J.E. Rooda

18 juni 2010