Download presentation
Presentation is loading. Please wait.
1
Detecting and Resolving Model Errors
Jeffrey S. Smith Auburn University
2
Detecting and Resolving Model Errors
Error detection and correction (e.g., debugging) is a significant part of most simulation studies. In can be very time consuming and is usually quite frustrating. In general, there are three classes of errors encountered during the development and implementation of a simulation model: Syntax errors – Incorrect usage of language constructs/modules Runtime errors – Program errors that occur during the simulation run (e.g., exceeding the memory limits) Logic errors – Errors in the modeling logic that cause the simulation to run in an unexpected manner. Generally, you spend a significant amount of time debugging models – usually more that you spend on the initial model development. Gent used to this – it is very common. PLANNING can reduce the debugging time significantly. 12/4/2018 Detecting and Resolving Model Errors
3
Detecting and Resolving Model Errors
Syntax Errors Most commercial simulation packages (Simio included) automatically look for syntax errors during the model development or initialization (compilation) stage. Some of the common errors that are detected include: Misspellings of keywords and other reserved words Duplicate use of object names or other “strings” Undefined states, resources, statistics, etc. When Simio finds one of these errors, the error is reported to the user and Simio provides functions to try to “find” the error and lists possible causes. These errors are generally easy to find and fix (once you understand the syntactical rules of Simio). In the model, use Random.Exponentia(.25) for the Source interarrival time property. Do a State Assignment and use an invalid state name. Note that Simio is a little different that some other package in that it marks these errors “as you go” rather than waiting for a “compilation step”. 12/4/2018 Detecting and Resolving Model Errors
4
Detecting and Resolving Model Errors
Runtime Errors Output node not connected to the network 12/4/2018 Detecting and Resolving Model Errors
5
Detecting and Resolving Model Errors
Runtime Errors Might or might not actually be an “error” (in this case, it is) – check the “DefaultEntity.Maximum Number In System” property for the entity object in question. 12/4/2018 Detecting and Resolving Model Errors
6
Detecting and Resolving Model Errors
Logic Errors While Simio is fairly helpful in finding and fixing syntax and runtime errors, it generally cannot automatically find logic errors. With a logic error, the model compiles and runs without errors, but the logic error makes the model results not “correct”. 12/4/2018 Detecting and Resolving Model Errors
7
Debugging Tools and Techniques
Carefully watch the animation Enhance the animation with debugging information and “messages” “Step Mode” + “Mouse-overs” for entities Watch Breakpoints Model Trace Subclassing objects Notify step Using a simple model: Set a Breakpoint, turn Model Trace on, and run. 12/4/2018 Detecting and Resolving Model Errors
8
Detecting and Resolving Model Errors
Simio Debugging Tools 12/4/2018 Detecting and Resolving Model Errors
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.