- About SIMPROCESS
- Trial Version
- Customer Login
SIMPROCESS comes with its own scripting language for building and executing Expressions. Model components (Entity Types, Resource, and Activities) and the model itself contain various activation points where Expression code can be executed. (Chapter 2 of Part B of the SIMPROCESS User’s Manual and Appendix F of the SIMPROCESS User’s Manual describe the use of Expressions and the various user-defined Attributes, System Attributes, and System Methods that can be included in an Expression.) There are many System Methods available that facilitate configuring a SIMPROCESS model from an external source, such as a spreadsheet or database. What is the value of configuring a model through Expressions? Consider the Inventory.spm demonstration model that is a part of the SIMPROCESS installation. It models an inventory and manufacturing process. Orders are received for the finished product. If enough finished product is available the order is fulfilled. If not, more finished product is manufactured. Each product consists of two components. If there is not enough of either component then raw materials are retrieved in order to manufacture the component. So there is one product consisting of two components and each component consists of generic raw materials. What if there are an unknown number of products and what if each product consists of an unknown number of components? What if the time to manufacture and the resources required to manufacture vary by product? The Inventory.spm demonstration model cannot handle such questions as it only models one product with two components. For these types of questions a model is needed that can handle a varying number of products with varied number of components required for each product. The model needs the resources required and other things to be configured without changing the model.
Multiple aspects of a model can be configured through the SIMPROCESS Expressions. In a sense all Expressions configure a model since complex calculation and decision making can be accomplished in Expressions. However, there are Expression statements that can change previously set properties, and there are statements that can create items that were not previously defined. These Expression statements can only be used in the Start Run Expression. The Start Run Expression is a Model Expression (Define/Model Expressions). This provides an introduction to these Expression statements and how they are used. It is recommended that all the Expressions, including the Start Run Expressions, of ConfigureWithSpreadsheet.spm and ConfigureWithDatabase.spm (included in the ExpressionDemos directory) be examined carefully since they show how many of these statements are used. Further explanatory comments are also included in the Expressions. The Run Settings, Resources, Entity Type, Activities, and Attributes can be configured at the beginning of a simulation.
Various model Run Settings can be set in the Start Run Expression.
There are Expression statements for creating Resources and configuring Resources.
There are Expression statements for creating Entity Types and configuring Entity Types.
There are Expression statements for configuring Activities. Activities cannot be created or connected through Expressions.
There are Expression statements for creating Attributes and setting and getting their values.
The examples ConfigureWithSpreadsheet.spm and ConfigureWithDatabase.spm use many other Expression statements in order to fully implement the external configurations. The comments in each Expression of these models give further information about these other statements. It is recommended that the complete list of System Attributes and System Methods in Appendix F of the SIMPROCESS User’s Manual be reviewed. SIMPROCESS Attributes (user-defined and System) and System Methods give the modeler extreme modeling power and flexibility.
The advantages of configuring a model from an external source are many. A few of these advantages are
There are disadvantages to having a model be highly configured from an external source.
SIMPROCESS gives the modeler ultimate flexibility when building a model. If a basic model of a single process is all that is needed, SIMPROCESS more than fits the bill. However, if a data driven model is desired and/or needed, SIMPROCESS is fully equipped to interface with files, spreadsheets, and databases to create a powerful and flexible model.