Micro Saint Sharp
Micro Saint Sharp is a general purpose discrete-event simulation and human performance modeling software tool developed by Alion Science and Technology.[1] It is developed using C# and the .NET Framework. Micro Saint Sharp allows users to create discrete-event simulations as visual task networks with logic defined using the C# programming language.[2]
Developer(s) | Alion Science and Technology |
---|---|
Stable release | 3.8
|
Written in | C Sharp, .NET Framework |
Operating system | Microsoft Windows |
Type | Discrete Event Simulation |
Website | microsaintsharp |
Micro Saint Sharp uses a task network, a series of functions which decompose into tasks, to create stochastic models. Micro Saint Sharp has been used in the healthcare,[3][4] manufacturing,[5] supply chains,[6] business process re-engineering,[7] workstation design,[8] call centers,[9] transportation,[10] and command and control[11] areas. It has also been used extensively to simulate human performance and workload.[12][13]
History
Micro SAINT began as a "micro" computer implementation of the SAINT (Systems Analysis of Integrated Networks of Tasks) language in the 1980s.[14] SAINT was a FORTRAN based discrete event simulation language developed in the 1970s.[15] SAINT evolved from 1) task analysis and 2) Monte Carlo simulation of operator performance under workload stress as represented by Siegel and Wolf.[16] Micro SAINT was originally a DOS application developed by Micro Analysis and Design, Inc. (MA&D) and was first released in 1985. Since then the tool has undergone many changes and enhancements. Micro Saint Sharp's intuitive graphical user interface and flow chart approach to modeling make it a tool that can be used by generalists as well as simulation experts. In 2003 Micro SAINT was completely redesigned by MA&D to take advantage of the C# programming language and Microsoft .NET environment. This allowed it to be faster and more modular. The tool was renamed Micro Saint Sharp.[17]
Discrete event simulation in Micro Saint Sharp
Micro Saint Sharp models contain a task network called a Network Diagram. The network diagram contains a series of tasks connected by paths which determine control flow. System objects called entities flow through the system to create a simulation. Micro Saint Sharp also includes more low level features such as global variables and subroutines called Functions.
Tasks
The task node is the primary element driving the simulation's outcome. Task nodes simulate system behavior by allowing programmer specified effects, task duration, and sequences. Task Effects are programmer-specified C# expressions where programmers can manipulate variables and data structures when a task is invoked. Task duration can be specified by the programmer as a specific value, through use of one of the 31 built-in probability distributions, or using a C# expression. Control flow and sequencing can also be specified by the programmer.
Entities
Entities are dynamic objects which arrive into the system and flow through the task network. Entities flow from one task to the next based on the task's path logic. When an entity enters a task, the task's effects are triggered. When the task concludes, the entity moves to the next task. One entity is generated by default at the beginning of the simulation. More entities can be generated at any point in the simulation based on programmer specified logic. When all entities reach the end node or are destroyed, the simulation concludes. Entities can be viewed as they flow through the system and where queues form.
Events
Events are occurrences that happen in an instant of simulated time within Micro Saint Sharp that can change the global state of the system. This can be the arrival or departure of an entity, the completion of a task, or some other occurrence. The events are stored in a master event log (called the Event Queue) which captures every event that will happen and the simulated time that the event occurred. Due to the stochastic nature of discrete-event simulation, an event will often trigger the generation of a random variate to determine the next time that same event will occur. Thus, as events occur, in the simulation, the event log is altered.
Flow sequencing
Once a task concludes, the invoking entity moves to another node which is directly connected to the current node in the task network. Nodes can connect to any number of other tasks, so Micro Saint Sharp provides a number of sequencing options to determine the task to which the entity moves.
- Probabilistic type paths allows the programmer to specify a percentage chance for an entity to be moved adjacent nodes by inputting probabilities or expressions that are evaluated for each node.
- Tactical type paths allows the programmer to use C# predicates to determine the sequencing of an entity to each adjacent node. If more than one expression evaluates to true, the entity will follow the first path with a true expression.
- Multiple type paths behaves exactly like tactical sequencing, but will path entities to all adjacent nodes where the expression evaluates to true.
Variables and functions
Micro Saint Sharp has a number of global variables used by the system throughout a simulation. Micro Saint Sharp provides the public global variable Clock which tracks the simulation's current time. Micro Saint Sharp also has private variables. Micro Saint Sharp allows the modeler to create custom global variables which can be accessed and modified in any task node. Variables can be of any type native to C#, but the software provides a list of suggested variable types including C# primitive data types and basic data structures. Micro Saint Sharp also provides the programmer with the functionality to create globally accessible subroutines called functions. Functions work as C# functions and can specify parameters, manipulate data, and return data.
2D and 3D animation
Micro Saint Sharp has three different visual representations of the model that are available to users. The first representation of the process is a flow diagram, or Task Network – users can visually track entities as they flow through the system, and can immediately identify where bottlenecks and queues are building up. The second visual representation available is a two dimensional animation (Animator) which can show moving objects over floor plans, maps, photos or other 2D images. Animator also provides the capability for charts, graphs, and text to all be displayed while the model is executing on one screen. The third visual representation that can be developed is a three dimensional animation (Animator3D). This gives a realistic picture of the modeled process with moving images. Animator3D includes features such as zooming in/out, rotating, panning around, and saving camera views. Users can decide the level of detail they want to include. Micro Saint Sharp also allows user to view individual pieces of a model with the use of dynamic real-time charting. Over 20 different charts can be saved as files or printed out for analysis.
Optimization
OptTek's OptQuest optimization software is included in the Gold version of Micro Saint Sharp. OptQuest, through a sophisticated optimization technique, finds the right combination of variables that produces the best results possible. OptQuest works with Micro Saint Sharp by sharing variables. Users can directly choose the variables that will have an effect on the Micro Saint Sharp model results. This includes every aspect of an optimization model including constraints, decision variables, and the optimization problem itself.
External Communication
Micro Saint Sharp provides the capability for your model to communicate with files, databases, and web sites. There are currently six types of communication protocols that are used to customize protocols for models: (1) ADO.NET, (2) Console Command-line interface, (3) Microsoft Excel, (4) Network socket, (5) Text file, and (6) World Wide Web. The ADO.NET protocol connects to a database or any data source that .NET supports through OLE (Object Linking and Embedding) or ODBC (Open Database Connectivity). The console protocol allows Micro Saint Sharp to interact with command line applications. The Excel protocol connects to a Microsoft Excel® spreadsheet and allows the modeler the capability to do basic reading and writing of cells in workbooks. The Socket protocol connects to an address on the internet for low level communication. The Text protocol opens a file located on your computer for reading and writing. The Web protocol reads data from a URL.
Tools based on the Micro Saint Sharp engine
Micro Saint Sharp is a general purpose simulation tool. However, several customized tools have been developed that use Micro Saint Sharp as the underlying simulation engine. Each tool was designed for a specific purpose. The table below lists some of the Micro Saint Sharp based tools that have been developed.
Tool | Purpose | Sponsor |
---|---|---|
IMPRINT (Improved Performance Research Integration Tool)[18] | Predict system performance as a function of operator and maintainer manpower, personnel, and human factors engineering (HFE) components very early in the acquisition process. | U.S. Army |
C3TRACE (Command Control and Communications-Techniques for Reliable Assessment of Concept Execution)[19] | A general-purpose C3 modeling environment that can be used to evaluate a number of different organizational concepts, including the effect of information flow on decision-making performance. | U.S. Army |
IPME (Integrated Performance Modelling Environment)[20] | A tool to predict human performance under a wide range of environmental conditions, with particular attention to information processing, perceptual control, and task design. | United Kingdom and Canada |
ISMAT (Integrated Simulation Manpower Analysis Tool)[21] | A tool to investigate ship board manning and task skill requirements. | U.S. Navy |
ECAT (Engineering Control Analysis Tool)[22] | Tool to identify displays and tasks that could lead to high human error potential. | U.S. Navy |
S-PRINT (Space Performance Research Integration Tool)[23] | Tool to predict human performance in long-duration missions. | NASA |
CSDT (Crew Station Design Tool)[24] | Allows designers to visualize and optimize their choices of controls and displays, and the position of those elements in a workstation. | U.S. Army |
AVOSCET (Autonomous Vehicle Operator Span of Control Evaluation Tool) | A tool to determine the best ratio of operators to autonomous systems. | U.S. Army |
MIDA (Multi-modal Interface Design Advisor) | Provides multi-modal interface design support. | U.S. Army |
References
- Plott, Beth; Pearson, Jake; Shaw, Christopher (3 December 2017). Micro Saint Sharp User Manual v3_8. ISBN 978-1387180349.
- Schunk, Daniel (10 December 2000). "Micro saint: modeling with the Micro Saint simulation package". Proceedings of the 32nd Conference on Winter Simulation. Society for Computer Simulation International. pp. 274–279. ISBN 9780780365827.
- Gunal, M. Health Service efficiency mapped with simulation tools. Lancaster University. http://www.adeptscience.co.uk/media-room/press_room/health-service-efficiency-mapped-with-simulation-tools.html
- Kanagarajah, Ashok Kay; Lindsay, Peter; Miller, Anne; Parker, David (2010). "An Exploration into the Uses of Agent-Based Modeling to Improve Quality of Healthcare". Unifying Themes in Complex Systems. pp. 471–478. doi:10.1007/978-3-540-85081-6_58. ISBN 978-3-540-85080-9.
- Harshell, J. and Dahl, S., Simulation Model Developed to Convert Production to Cellular Manufacturing Layout, Industrial Engineering, 20, 12 (1988) 40-45.
- Daniel Schunk, Beth Plott, Using simulation to analyze supply chains, Proceedings of the 32nd conference on Winter simulation, December 10–13, 2000, Orlando, Florida. https://www.computer.org/csdl/proceedings/wsc/2000/6579/02/65791095.pdf
- Laughery, Ron; Plott, Beth; Scott-Nash, Shelly (1998). "Simulation of Service Systems". Handbook of Simulation. pp. 629–644. doi:10.1002/9780470172445.ch18. ISBN 9780470172445.
- Hoffman, Mark S.; Cramer, Martin L. (October 1981). "Workstation Design Optimization Through a Simulation Model". Proceedings of the Human Factors Society Annual Meeting. 25 (1): 374–378. doi:10.1177/107118138102500199. S2CID 109166902.
- Keller, J., Plott, B. Staff Resource Simulation of Phone Company Switch Support Service. In Proceedings of the 1999 Winter Simulation Conference.
- Sweeney, Kevin D.; Campbell, James F.; Sweeney II, Donald C. (2014). "Impact of Shippers' Choice on Transportation System Congestion and Performance: Integrating Random Utility with Simulation". Transportation Journal. 53 (2): 143–179. doi:10.5325/transportationj.53.2.0143. JSTOR 10.5325/transportationj.53.2.0143. Project MUSE 543112.
- Plott, Beth; Wojciechowski, Josephine Q.; Kilduff, Patricia W. (1 August 1999). "Command and Control: Human Performance Modeling". Gateway. 10 (1): 10–11. DTIC ADA385362.
- Laughery, Romn (1999). "Using discrete-event simulation to model human performance in complex systems". Proceedings of the 31st conference on Winter simulation Simulation---a bridge to the future - WSC '99. Vol. 1. pp. 815–820. doi:10.1145/324138.324506. ISBN 0780357809. S2CID 18163468.
- Pop, Vlad L. (21 September 2015). Using task network modeling to predict human error (Thesis). hdl:1853/54320.
- Drews, C. (1986) Anybody Can Simulate! A Discussion of Micro SAINT.
- Seifert. D.J., Chubb, G.P. (1978) SAINT: A Combined Simulation Language for Modeling Large, Complex Systems. Aerospace Medical Research Laboratory Technical Report. AMRL-TR-78-48.
- Siegel, A. and Wolf, J. (1967) Man-Machine Simulation Models: Performance and Psychological Interaction. New York, John Wiley & Sons, Inc.
- Bloechle, W., Schunk, D. (2003) Micro Saint Sharp Simulation Software. In Proceedings of the 2003 Winter Simulation Conference.
- Rusnock, Christina F; Geiger, Christopher D. (2013). Using Discrete-Event Simulation for Cognitive Workload Modeling and System Evaluation. IIE Annual Conference. Proceedings. Norcross. pp. 2485–2494. ProQuest 1471959351.
- Plott, Beth; Quesada, Stacey; Kilduff, Patricia; Swoboda, Jennifer; Allender, Laurel (September 2004). "Using an Information-Driven Decision_Making Human Performance Tool to Assess U.S. Army Command, Control, and Communication Issues". Proceedings of the Human Factors and Ergonomics Society Annual Meeting. 48 (20): 2396–2400. doi:10.1177/154193120404802005. S2CID 110342823.
- Dahn, D., Laughery, R. The Integrated Performance Modeling Environment - Simulating Human-System Performance. In Proceedings of the 1997 Winter Simulation Conference. https://www.informs-sim.org/wsc97papers/1141.PDF
- Scofield, T., Brown, A. Manning and Automation Model for Naval Ship Analysis and Optimization. Virginia Polytechnic Institute and State University Technical Paper.http://www.dept.aoe.vt.edu/~brown/VTShipDesign/ASNEManningPaperRev2.pdf
- Plott, B. (2006) Evaluating Control Displays with the Engineering Control Analysis Tool (ECAT). In Proceedings of the 5. International Topical Meeting on Nuclear Plant Instrumentation Controls, and Human Machine Interface Technology. https://inis.iaea.org/search/search.aspx?orig_q=RN:43118843
- Gore, B. Minimizing Human Risk: Human Performance Models in the Space Human Factors and Habitability and Behavioral Health and Performance Elements. In Proceedings of the 2016 Applied Human Factors and Ergonomics Meeting.
- Walters. B., Bzostek, J., Li, J. (2005) Integrating Human Performance and Anthropometric Modeling in the Crew Station Design Tool. SAE Transactions Journal. Vol. 114, Section 7. pp. 730-734.