Computersimulatie
Van Wikipedia
Een computersimulatie is een simulatie waarbij men een deel van de werkelijkheid nabootst met een model in een computerprogramma.
Inhoud |
[bewerk] Inleiding
Computersimulaties zijn vooral van belang voor continu veranderende systemen, waarvan elke volgende toestand (mede) afhankelijk is van de vorige toestand. De toestand in de atmosfeer (het weer) is afhankelijk van de toestand van de atmosfeer van het vorige moment, maar ook van enkele externe factoren zoals zonneschijn.
In computersimulaties worden tijd en de ruimte opgedeeld in kleine blokjes. De toestand van het systeem wordt op basis hiervan schoksgewijs berekend. De optimale grootte van deze blokjes moet proefondervindelijk worden vastgesteld, en wordt beperkt door praktische factoren als de beschikbare processortijd en beschikbare meetgegevens. Bij simulaties van het weer leveren weerstations de meetgegevens, maar niet op elke vierkante meter is een weerstation geplaatst. Bovendien is het bij weersvoorspellingen van belang dat de berekening sneller gaat dan het werkelijke tijdsverloop (anders kan zo'n model misschien het weer van gisteren voorspellen, maar dat is weinig zinvol).
[bewerk] Toepassingen van computersimulatiemodellen
Er zijn verschillende soorten toepassingen van computersimulaties:
- Wetenschappelijke modellen. Het doel hiervan is uiteindelijk om continue processen in hun geheel te begrijpen. In eerste instantie wordt geprobeerd om de op elkaar inwerkende processen in een formule te beschrijven. In een later stadium kan geprobeerd worden om de beschreven processen te verklaren uit onderliggende processen.
- Voorspellende simulaties. Een voor de hand liggend voorbeeld hiervan zijn weersvoorspellingen, maar ook bijvoorbeeld voorspellingen van maansverduisteringen.
- Simulaties ten behoeve van technische ontwerpen. Bij de ontwikkeling van vliegtuigen wordt gebruikt gemaakt van windtunnels. In een eerder ontwikkelstadium wordt vaak gebruikgemaakt van een simulatie van een windtunnel.
- Simulaties ten dienste van het onderwijs. In plaats van met een echt systeem kunnen leerlingen een simulatie gebruiken om iets te leren. Dan kan bijvoorbeeld omdat het veiliger is (denk aan leren over radioactieve processen) of goedkoper. Ook kun je in de simulatie zelf allerlei vormen van instructie inbouwen. SimQuest is een programma waarmee dergelijke simulaties kunnen worden ontwikkeld.
De modellen kunnen veel verschillende aspecten van het dagelijks leven representeren:
- Weersvoorspellingen worden gemaakt met behulp van een simulatie van de atmosfeer.
- Vloeistofstromen en warmtestromen in het algemeen worden gesimuleerd door finite element analysis.
- Sterkteberekeningen in een mechanisch ontwerp
- Botssimulaties voor de automobielindustrie
- Voorspellingen over de verkeersafwikkeling op wegen in het vakgebied van de verkeerskunde
- Nabootsing van menselijke gedragingen, zoals verkeersafwikkeling van voetgangersstromen. Hierdoor kan bijvoorbeeld nagegaan worden hoe mensen zich gedragen bij een noodtoestand. een praktisch resultaat is bijvoorbeeld de plaatsing van 'drukmuren' voor uitgangen bij massamanifestaties, om het dooddrukken van mensen tijdens de vlucht naar een smalle uitgang te voorkomen.
- In de scheikunde worden computersimulaties gebruikt in de moleculaire mechanica en moleculaire dynamica om eigenschappen van moleculen te voorspellen.
- In de opleiding van piloten worden computersimulaties gebruikt om te leren omgaan met een bepaald vliegtuig of met een bepaalde situatie.
- In de astrofysica worden simulaties gemaakt van veel-deeltjes modellen.
- In de procesindustrie worden computersimulaties gebruikt om processen en stromen te optimaliseren.
Andere voorbeelden van toepassingen van een computersimulator:
- pilotenopleidingen: vliegtuigsimulators
- simulatiegames voor de PC-markt zoals SimCity, Civilization en BAHN.
[bewerk] Beschrijvende en verklarende simulaties
In de wetenschap worden computersimulaties ook gebruikt na te gaan of processen voldoende worden begrepen.
In de economie worden simulaties gebruikt om een voorspelling te maken van de winst / cashflow die een bepaalde beslissing oplevert.
[bewerk] Simulatie van een raffinaderij
Een voorbeeld van een computersimulatie in de procesindustrie is een raffinaderij. Deze raffinaderijsimulatie geeft de mogelijkheid na te gaan:
- wat de verschillende productiestromen (eindproducten) zullen zijn voor een bepaalde aardoliesoort (beginproduct)
- een aardoliesoort te kiezen die het best geschikt is voor de gesimuleerde raffinaderij (maximum financiêle opbrengst)
- hoe operators van de raffinaderij moeten reageren op noodtoestanden, met de mogelijkheid computeroperators van de raffinaderij noodtoestanden te laten inoefenen, zonder de echte raffinaderijoperatie te verstoren
[bewerk] Maken van computersimulatie-programma's
Een computersimulatie is een logisch - wiskundig model, dat de wetten van de natuurkunde, scheikunde en andere exacte wetenschappen die van toepassing zijn op het nagebootste model zo nauwkeurig mogelijk tracht te analyseren en na te bootsen.
Voor sommige simulaties zal de werking nagebootst worden met eenzelfde tijdsverloop. Andere modellen zullen een versneld of vertraagd verloop van de werkelijkheid laten zien om het resutaat van trage en langdurende processen te kunnen voorspellen.
Door deze theoretische beschrijvingen (vaak in de vorm van vergelijkingen en wetten) in een bepaalde computeromgeving in te voeren kan een systeem nagebootst worden op een computer.
Een computersimulatie wordt steeds bijgewerkt aan de hand van de waarnemingen van het nagebootste systeem die verschillen van de waarnemingen van de computersimulatie. Hierdoor kan men de realiteit steeds beter benaderen. Dit noemt men calibreren. Het controleren of het model juist functioneert in situaties die niet zijn gebruikt voor de calibratie noemt men validatie.
[bewerk] Onderverdeling ontwikkelomgevingen computersimulaties
Grofweg zijn er drie computersimulatie-ontwikkelomgevingen aan te geven:
- vakspecifieke simulaties
- blokgeoriënteerde simulaties
- object-georiënteerde simulaties.
Computersimulaties worden vaak in geavanceerde computersimulatie-omgevingen uitgevoerd, veelal op speciale computers.
Ze kunnen echter in elke programmeeromgeving, zoals bijvoorbeeld Delphi of C++ of worden gemaakt. De reden waarom men echter voor speciale simulatie-omgevingen kiest, is dat deze veel handelingen en onderdelen kunnen vereenvoudigen en stroomlijnen en vaak voorgeprogrammeerde bibliotheken bevatten. Dit zijn pakketjes die gericht zijn op het simuleren van een specifiek onderdeel. Zo hoeft iemand die bijvoorbeeld de processen op een raffinaderij simuleert niet alle pompen, kleppen en andere onderdelen opnieuw in te voeren, maar kunnen deze direct uit de bibliotheek worden gehaald. Een open source (GNU) pakket voor simulaties is Scilab.
[bewerk] Zie ook
[bewerk] Externe links
- Scilab open source simulatiepakket
- Avida, een programma dat evolutie simuleert.
- Bullet, open source programmatuur voor rigid body simulatie