STELLA (programming language)

Last updated
STELLA
STELLA programming language logo.gif
Paradigm Visual programming, simulation language
Designed by Barry Richmond
Developer isee systems (formerly High Performance Systems)
First appeared1985;38 years ago (1985)
Stable release
2.0.3 [1] / November 25, 2020;2 years ago (2020-11-25)
OS macOS, Windows. [2]
License Proprietary
Filename extensions .stm, .stmx, .itm, .itmx
Website www.iseesystems.com
Influenced by
DYNAMO

STELLA (short for Systems Thinking, Experimental Learning Laboratory with Animation; also marketed as iThink) is a visual programming language for system dynamics modeling introduced by Barry Richmond in 1985. The program, distributed by isee systems (formerly High Performance Systems) allows users to run models created as graphical representations of a system using four fundamental building blocks. STELLA has been used in academia as a teaching tool and has been utilized in a variety of research and business applications. The program has received positive reviews, being praised in particular for its ease of use and low cost. [3] [4] [5]

Contents

History

While working at the Massachusetts Institute of Technology in the 1960s, Jay Wright Forrester developed the earliest understanding of system dynamics which he argued could only be understood using models. [6] Dartmouth College systems science professor Barry Richmond founded High Performance Systems in 1984. [7] With the financial support of Analog Devices, Inc. and technical support from Apple Computer, he developed STELLA (short for Structural Thinking, Experimental Learning Laboratory with Animation) at his company. [8] [9] He presented the prototype for the visual programming language in 1985 at the System Dynamics Society's annual conference in a paper entitled "STELLA: Software for Bringing System Dynamics to the Other 98%". [4] [8] [10]

Within that paper, Richmond mused on the study of system dynamics: "If this stuff really is so great, then why hasn't the field 'taken off'?" [11] Steve Peterson, a colleague of Richmond's, reflected after his death in 2002 that Richmond held the belief that modeling was a tool everyone should be using and that that notion was reflected in Richmond's work. [8] He quoted a 1994 paper in which Richmond described STELLA as "quite unique, quite powerful, and quite broadly useful as a way of thinking and or learning. It's also capable of being quite transparent–leveraging the way we learn biology, manage our businesses, or run our personal lives". [8]

Functionality and features

A simple STELLA model of a cat population; stocks are represented as rectangles, flows as pipes to/from the stock, converters as the circles, and connectors as the curved lines with arrows. Cat population, STELLA model.svg
A simple STELLA model of a cat population; stocks are represented as rectangles, flows as pipes to/from the stock, converters as the circles, and connectors as the curved lines with arrows.

STELLA's approach to modeling systems shares some similarities with a precursor, the DYNAMO simulation language. DYNAMO explicitly defined "stocks" (reservoirs) and "flows" (inputs and outputs) as key variables in a system, a vocabulary that STELLA shares. [9] Within STELLA, users are presented with a graphical user interface in which they may create graphical models of a system using four fundamentals: stocks, flows, converters, and connectors. [13] Relationships between converters (which convey transforming variables) and other elements may be drawn with converters. Users are able to input values for stocks, flows, and converters (including a variety of built-in functions). [14] STELLA does not differentiate between external and intermediate variables within a system; all of them are represented with converters. [15]

The software produces finite difference equations that describe the graphical model and allows users to select a numerical analysis method to apply to the system, either the Euler method or various Runge–Kutta methods (either second or fourth order). [16] Before running a model, users may also specify a time step and runtime for the simulation. [17] STELLA can output data in graphical or tabular forms. [18]

STELLA runs one window at a time, meaning that only one model can be run at any given moment. [4] The program's native file formats are denoted either by an .stm, .stmx, .itm, or .itmx filename extension. STELLA also uses the emerging XML-based standard for storing models, XMILE. [19] In 2012, two researchers released StellaR, software which can translate STELLA models into the R programming language. [20]

Applications

Education

A STELLA model from a paper on carbon impacts in forest biomass Forest biomass carbon model in STELLA.png
A STELLA model from a paper on carbon impacts in forest biomass

Because of its simplicity relative to more complex modeling languages, STELLA has been cited as a useful tool in educational settings. [6] Richmond derisively viewed most education as "assimilating content" and proposed systems thinking as a remedy to this. [22]

In 1987, High Performance Systems released a guide to STELLA encouraging its use in academic settings [23] and numerous textbooks have been published that teach modeling and systems thinking using the software. [24] [25] Sample exercises with STELLA include recreating the Daisyworld model, [26] simulating the Easter Island population crash, [27] and modeling the protagonist's motivation throughout William Shakespeare's Hamlet . [28]

A 2010 study of the efficacy of project-based learning upon a watershed-modeling project undertaken by 72 middle schoolers found that the addition of a STELLA modeling component in the project improved overall comprehension of the material over traditional methods, especially among female students who outperformed their male counterparts with the addition of STELLA. [29]

Academia and commerce

The software is also used in research settings. Among other projects, researchers have used STELLA to apply Hubbert peak theory to the Chinese coal supply, [30] to model atrazine dynamics within agricultural lands, [31] and to simulate the interactions between marine macroinvertebrates. [32]

isee systems [lower-alpha 1] markets an identical software targeted at business consumers under the name iThink (previously STELLA for Business). [5] [33] iThink models have been applied to a variety of systems including manufacturing lines, [13] hospital waste in developing nations, [34] coordination between an emergency room and hospital beds, [35] and competition in the home video market. [5]

Reception

In a 1987 review of the program in BioScience , Robert Costanza wrote that "STELLA is a solid program–well planned and executed–that breaks new ground." [3] He praised its ease of use as beneficial both to beginners interested in learning how to build models and experts who could use it to test components of more complex models. [3] A 1998 review of the program in the Bulletin of the Ecological Society of America concurred that the program was easy to use, especially for beginning modelers, but noted its lack of model optimization tools and the ability to run only one window at a time as drawbacks. [4]

Writing for Complexity in 1997, Benedikt Hallgrímsson found the program's accompanying manual to be overzealous in its promotion of systems theory but cautioned that "the manual need not detract from what is otherwise a very well-thought-out and constructed program." [36]

A 1991 review of iThink in Planning Review noted that the software's strength was in its low cost (the program retailed at around $450 (US$967 in 2022 dollars [37] ) and the vast number of possibilities allowed by its open-ended form. [5]

See also

Notes

  1. High Performance Systems changed its name to isee systems in 2004. [7]

Related Research Articles

<span class="mw-page-title-main">Simulation</span> Imitation of the operation of a real-world process or system over time

A simulation is the imitation of the operation of a real-world process or system over time. Simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the simulation represents the evolution of the model over time. Often, computers are used to execute the simulation.

<span class="mw-page-title-main">System dynamics</span> Study of non-linear complex systems

System dynamics (SD) is an approach to understanding the nonlinear behaviour of complex systems over time using stocks, flows, internal feedback loops, table functions and time delays.

<span class="mw-page-title-main">Visual programming language</span> Programming language written graphically by a user

In computing, a visual programming language or block coding is a programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations.

<span class="mw-page-title-main">Visual Molecular Dynamics</span> Visualization and modelling software

Visual Molecular Dynamics (VMD) is a molecular modelling and visualization computer program. VMD is developed mainly as a tool to view and analyze the results of molecular dynamics simulations. It also includes tools for working with volumetric data, sequence data, and arbitrary graphics objects. Molecular scenes can be exported to external rendering tools such as POV-Ray, RenderMan, Tachyon, Virtual Reality Modeling Language (VRML), and many others. Users can run their own Tcl and Python scripts within VMD as it includes embedded Tcl and Python interpreters. VMD runs on Unix, Apple Mac macOS, and Microsoft Windows. VMD is available to non-commercial users under a distribution-specific license which permits both use of the program and modification of its source code, at no charge.

Computational science, also known as scientific computing, technical computing or scientific computation (SC), is a division of science that uses advanced computing capabilities to understand and solve complex physical problems. This includes

<span class="mw-page-title-main">Webots</span> Open-source robot simulator

Webots is a free and open-source 3D robot simulator used in industry, education and research.

Web-based simulation (WBS) is the invocation of computer simulation services over the World Wide Web, specifically through a web browser. Increasingly, the web is being looked upon as an environment for providing modeling and simulation applications, and as such, is an emerging area of investigation within the simulation community.

<span class="mw-page-title-main">AnyLogic</span> Multimethod simulation modeling tool

AnyLogic is a multimethod simulation modeling tool developed by The AnyLogic Company. It supports agent-based, discrete event, and system dynamics simulation methodologies. AnyLogic is cross-platform simulation software that works on Windows, macOS and Linux. AnyLogic is used to simulate: markets and competition, healthcare, manufacturing, supply chains and logistics, retail, business processes, social and ecosystem dynamics, defense, project and asset management, pedestrian dynamics and road traffic, IT, and aerospace.

<span class="mw-page-title-main">Molecular modeling on GPUs</span> Using graphics processing units for molecular simulations

Molecular modeling on GPU is the technique of using a graphics processing unit (GPU) for molecular simulations.

<span class="mw-page-title-main">MDynaMix</span>

Molecular Dynamics of Mixtures (MDynaMix) is a computer software package for general purpose molecular dynamics to simulate mixtures of molecules, interacting by AMBER- and CHARMM-like force fields in periodic boundary conditions. Algorithms are included for NVE, NVT, NPT, anisotropic NPT ensembles, and Ewald summation to treat electrostatic interactions. The code was written in a mix of Fortran 77 and 90. The package runs on Unix and Unix-like (Linux) workstations, clusters of workstations, and on Windows in sequential mode.

<span class="mw-page-title-main">Ascalaph Designer</span>

Ascalaph Designer is a computer program for general purpose molecular modelling for molecular design and simulations. It provides a graphical environment for the common programs of quantum and classical molecular modelling ORCA, NWChem, Firefly, CP2K and MDynaMix . The molecular mechanics calculations cover model building, energy optimizations and molecular dynamics. Firefly covers a wide range of quantum chemistry methods. Ascalaph Designer is free and open-source software, released under the GNU General Public License, version 2 (GPLv2).

Barry Marshall Richmond was an American systems scientist, and former managing director of High Performance Systems, Inc (HPS), an organization providing software and consulting services to build the capacity of people to understand and improve the workings of dynamic systems. He is known as a leader in the field of systems thinking and system dynamics and for the development of the STELLA/iThink modelling environment for simulation.

DYNAMO is a simulation language and accompanying graphical notation developed within the system dynamics analytical framework. It was originally for industrial dynamics but was soon extended to other applications, including population and resource studies and urban planning.

AnimatLab is an open-source neuromechanical simulation tool that allows authors to easily build and test biomechanical models and the neural networks that control them to produce behaviors. Users can construct neural models of varied level of details, 3D mechanical models of triangle meshes, and use muscles, motors, receptive fields, stretch sensors and other transducers to interface the two systems. Experiments can be run in which various stimuli are applied and data is recorded, making it a useful tool for computational neuroscience. The software can also be used to model biomimetic robotic systems.

The Open Source application Bio7 is a software for ecological simulation models, image analysis and statistical analysis. Built upon the RCP framework of Eclipse it embeds several tools and programming languages for the analysis of complex ecological systems. Several Java based scripting languages and the Java language can be used from within Bio7 for the creation of simulation models and analysis tasks. In addition, Bio7 also contains a complete Graphical User Interface for the statistical R programming language and the scientific image analysis tool ImageJ with special functions to send image data from ImageJ to R or R data to ImageJ.

<span class="mw-page-title-main">SAMSON</span>

SAMSON is a computer software platform for molecular design being developed by OneAngstrom and previously by the NANO-D group at the French Institute for Research in Computer Science and Automation (INRIA).

Vensim is a simulation software developed by Ventana Systems. It primarily supports continuous simulation, with some discrete event and agent-based modelling capabilities. It is available commercially and as a free "Personal Learning Edition".

References

  1. "Feature updates". isee systems. Archived from the original on January 13, 2021.
  2. "Software FAQs". isee systems. Archived from the original on November 28, 2020.
  3. 1 2 3 Costanza, R. (February 1987). "Simulation Modeling on the Macintosh Using STELLA". BioScience. 37 (2): 129–132. doi:10.2307/1310367. JSTOR   1310367. Closed Access logo transparent.svg
  4. 1 2 3 4 Carter, J. (October 1998). "Two Visual Programming Languages for Simulation Modeling: Stella 5.0 and Modelmaker 3.0". Bulletin of the Ecological Society of America. 79 (4): 237–239. JSTOR   20168276. Closed Access logo transparent.svg
  5. 1 2 3 4 Samzelius, J. E.; Miller, S. E. (1991). "ithink: Animated Strategic Models on Your Desktop Computer". Planning Review. 19 (1): 32–34. doi:10.1108/eb054316. Closed Access logo transparent.svg
  6. 1 2 Doerr, H. M. (1996). "Stella ten years later: A review of the literature". International Journal of Computers for Mathematical Learning. 1 (2): 201–224. doi:10.1007/BF00571080. S2CID   19428296. Closed Access logo transparent.svg
  7. 1 2 "High Performance Systems, Inc. becomes isee systems" (PDF) (Press release). Lebanon, NH: isee systems. March 4, 2004. Archived from the original (PDF) on October 22, 2006. Retrieved March 1, 2016.
  8. 1 2 3 4 Peterson, S. (July 2003). Barry Richmond, System Dynamics and Public Policy (PDF). 21st System Dynamics Conference. New York City. pp. 1–14. Archived from the original (PDF) on March 1, 2013. Retrieved February 29, 2016.
  9. 1 2 Bossel 1994, p. 213.
  10. Richmond et al. 1987, p. iv.
  11. Richmond, B. (1985). STELLA: Software for Bringing System Dynamics to the Other 98% (PDF). The 3rd International Conference of the System Dynamics Society. Keystone, CO. pp. 706–718. Archived from the original (PDF) on March 1, 2016. Retrieved February 29, 2016.
  12. Richmond et al. 1987, pp. 85–97.
  13. 1 2 de Souza, R.; Huynh, R.; Chandrashekar, M.; Thevenard, D. (October 1996). A comparison of modelling paradigms for manufacturing line. IEEE International Conference on Systems, Man, and Cybernetics, 1996. Beijing. pp. 1253–1258. doi:10.1109/ICSMC.1996.571288. Closed Access logo transparent.svg
  14. Hannon & Ruth 1997, p. 13.
  15. Bossel 1994, p. 216.
  16. Taffe, W. J. (March 1991). Simulation and modelling with Stella: a general education course. 22nd SIGCSE Technical Symposium on Computer Science Education. San Antonio, TX. pp. 87–91. doi:10.1145/107005.107021. Closed Access logo transparent.svg
  17. Hannon & Ruth 1997, p. 14.
  18. Bossel 1994, p. 219.
  19. "XMILE – An open standard for system dynamics models". isee systems. 2013. Retrieved January 23, 2018.
  20. Naimi, B.; Voinov, A. (December 2012). "StellaR: A software to translate Stella models into R open-source environment". Environmental Modelling & Software. 38: 117–118. doi:10.1016/j.envsoft.2012.05.012. Closed Access logo transparent.svg
  21. Timmons, D. S.; Buchholz, T.; Veeneman, C. H. (May 2016). "Forest biomass energy: assessing atmospheric carbon impacts by discounting future carbon flows". GCB Bioenergy. 8 (3): 631–643. doi: 10.1111/gcbb.12276 .
  22. Richmond 2013, pp. 9–11.
  23. Richmond et al. 1987, pp. 245–246.
  24. Hannon & Ruth 1997, p. vi.
  25. Bossel 1994, p. xv.
  26. Hannon & Ruth 1997, p. 357.
  27. Menking, K. (January 7, 2016). "Unit 2 Reading: Growth and Dynamics of Populations". InTeGrate. Carleton College. Archived from the original on March 4, 2016. Retrieved March 3, 2016.
  28. Hopkins, P. L. (Winter 1992). "Simulating Hamlet in the classroom". System Dynamics Review. 8 (1): 91–98. doi:10.1002/sdr.4260080109. Closed Access logo transparent.svg
  29. Eskrootchi, R.; Oskrochi, G. R. (January 2010). "A Study of the Efficacy of Project-based Learning Integrated with Computer-based Simulation – STELLA". Journal of Educational Technology & Society. 13 (1): 236–245. JSTOR   jeductechsoci.13.1.236. Closed Access logo transparent.svg
  30. Tao, Z.; Li, M. (June 2007). "What is the limit of Chinese coal supplies—A STELLA model of Hubbert Peak". Energy Policy. 35 (6): 3145–3154. doi:10.1016/j.enpol.2006.11.011. Closed Access logo transparent.svg
  31. Ouyang, Y.; Zhang, J. E.; Lin, D.; Liu, G. D. (March 2010). "A STELLA model for the estimation of atrazine runoff, leaching, adsorption, and degradation from an agricultural land". Journal of Soils and Sediments. 10 (2): 263–271. doi:10.1007/s11368-009-0107-8. S2CID   14407780. Closed Access logo transparent.svg
  32. Gertseva, V. V.; Schindler, J. E.; Gertsev, V. I.; Ponomarev, N. Y.; English, W. R. (August 2004). "A simulation model of the dynamics of aquatic macroinvertebrate communities". Ecological Modelling. 176 (1–2): 173–186. doi:10.1016/j.ecolmodel.2003.10.029. Closed Access logo transparent.svg
  33. Hannon & Ruth 1997, p. 6.
  34. Eleyan, D.; Al-Khatib, I. A.; Garfield, J. (October 2013). "System dynamics model for hospital waste characterization and generation in developing countries" (PDF). Waste Management & Research. 31 (10): 986–995. doi:10.1177/0734242X13490981. PMID   23743573. S2CID   33919085. Closed Access logo transparent.svg
  35. Spillan, John E.; Ziemnowicz, Christopher (February 2009). Using Systems Dynamics to Improve Coordination Between Hospital Units. Southeast Decision Sciences Institute Annual Conference. Charlestown, SC. Retrieved November 26, 2022.
  36. Hallgrímsson, B. (July–August 1997). "Simulation Made Simple". Complexity. 2 (6): 38–40. doi: 10.1002/(SICI)1099-0526(199707/08)2:6<38::AID-CPLX8>3.0.CO;2-D .
  37. 1634–1699: McCusker, J. J. (1997). How Much Is That in Real Money? A Historical Price Index for Use as a Deflator of Money Values in the Economy of the United States: Addenda et Corrigenda (PDF). American Antiquarian Society. 1700–1799: McCusker, J. J. (1992). How Much Is That in Real Money? A Historical Price Index for Use as a Deflator of Money Values in the Economy of the United States (PDF). American Antiquarian Society. 1800–present: Federal Reserve Bank of Minneapolis. "Consumer Price Index (estimate) 1800–" . Retrieved May 28, 2023.

Cited