2009-11-03 6 views
1

Je suis actuellement en train d'écrire un simulateur orienté processus en utilisant JavaSim pour un examen universitaire. Le simulateur lui-même fonctionne bien, mais j'ai un doute majeur: y-a-t-il une bonne/meilleure façon de trouver le en régime continu de la simulation en code?État stationnaire dans une simulation orientée processus

Le livre que je lis décrire vaguement le processus de trouver le « état stable » lorsque le comportement de la simulation converge vers une valeur constante ou répéter:

Steady state http://img24.imageshack.us/img24/9782/steadystate.png

Mais comment ce regard dans le code? Je pense que je pourrais échantillonner les statistiques dont j'ai besoin de recueillir à intervalles réguliers et vérifier si elles convergent sur une certaine valeur moyenne ou non. Ou je pourrais simplement imprimer les valeurs dans le temps et décider arbitrairement quand la simulation atteint un état stable?

Répondre

0

L'approche standard consiste à surveiller le taux de fluctuation et à sélectionner un seuil suffisamment petit pour être considéré comme un état stable. L'utilisation d'une valeur moyenne fournie est fragile car elle code en dur la valeur absolue de la solution que vous recherchez. Je calcule simplement le standard deviation pour une fenêtre de points, disons les 50 derniers, et déclare l'état d'équilibre atteint lorsque cet écart tombe en dessous d'un minimum acceptable (vous devez choisir vous-même l'écart minimum, car c'est votre définition de l'état stable). Cela équivaut à peu près à accepter la réponse lorsque les ondulations dans votre graphique deviennent suffisamment petites pour un certain temps.

0

Vous ne trouvez pas que vous avez jamais une bonne réponse à cette question ...

Consultez les ressources en ligne ou de droit et Kelton, modélisation de simulation et d'analyse, pour le processus de détermination de l'état d'équilibre. La clé est que vous voulez que votre simulation soit indépendante des conditions de démarrage du système. Plus précisément, la distribution de vos mesures clés (comme le délai) doit être indépendante des conditions de départ. Ils ont un ensemble de procédures pour construire des intervalles de confiance autour de votre mesure clé basée sur la moyenne, la variance et la taille de l'échantillon, puis pour déterminer si vos échantillons consécutifs sont statistiquement les mêmes. Il est important d'avoir une taille d'échantillon suffisante pour satisfaire l'hypothèse de normalité.

Également de bonnes choses dans le livre Simulation avec Arena comprennent une discussion de POURQUOI état stable peut-être pas important.

Bonne chance!