Web-based simulation (WBS) is the invocation of
computer simulation
Computer simulation is the process of mathematical modelling, performed on a computer, which is designed to predict the behaviour of, or the outcome of, a real-world or physical system. The reliability of some mathematical models can be dete ...
services over the
World Wide Web
The World Wide Web (WWW), commonly known as the Web, is an information system enabling documents and other web resources to be accessed over the Internet.
Documents and downloadable media are made available to the network through web se ...
, specifically through a
web browser
A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used on ...
.
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.
Application
Web-based simulation is used in several contexts:
* In
e-learning
Educational technology (commonly abbreviated as edutech, or edtech) is the combined use of computer hardware, software, and Education sciences, educational theory and practice to facilitate learning. When referred to with its abbreviation, edt ...
, various principles can quickly be illustrated to students by means of interactive
computer animation
Computer animation is the process used for digitally generating animations. The more general term computer-generated imagery (CGI) encompasses both static scenes (still images) and dynamic images (moving images), while computer animation refe ...
s, for example during lecture demonstrations and computer exercises.
* In
distance learning
Distance education, also known as distance learning, is the education of students who may not always be physically present at a school, or where the learner and the teacher are separated in both time and distance. Traditionally, this usually in ...
, web-based simulation may provide an alternative to installing expensive simulation software on the student computer, or an alternative to expensive laboratory equipment.
* In
software engineering
Software engineering is a systematic engineering approach to software development.
A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term '' ...
, web-based emulation allows application development and testing on one platform for other target platforms, for example for various
mobile operating system
A mobile operating system is an operating system for mobile phones, tablets, smartwatches, smartglasses, or other non-laptop personal mobile computing devices. While computers such as typical laptops are "mobile", the operating systems used on ...
s or
mobile web browser
A mobile browser is a web browser designed for use on a mobile device such as a mobile phone or PDA. Mobile browsers are optimized to display Web content most effectively on small screens on portable devices. Mobile browser software must be smal ...
s, without the need of target hardware or locally installed emulation software.
* In
online computer games, 3D environments can be simulated, and old
home computers and
video game console
A video game console is an electronic device that Input/output, outputs a video signal or image to display a video game that can be played with a game controller. These may be home video game console, home consoles, which are generally placed i ...
s can be emulated, allowing the user to play old computer games in the web browser.
* In
medical education
Medical education is education related to the practice of being a medical practitioner, including the initial training to become a physician (i.e., medical school and internship (medical), internship) and additional training thereafter (e.g., Re ...
,
nurse education
Nurse education consists of the theoretical and practical training provided to nurses with the purpose to prepare them for their duties as nursing care professionals. This education is provided to student nurses by experienced nurses and other med ...
and allied health education (like
sonographer
A sonographer is an allied healthcare professional who specializes in the use of ultrasonic imaging devices to produce diagnostic images, scans, videos or three-dimensional volumes of anatomy and diagnostic data. The requirements for clinical pr ...
training), web-based simulations can be used for learning and practicing clinical healthcare procedures. Web-based procedural simulations emphasize the cognitive elements such as the steps of the procedure, the decisions, the tools/devices to be used, and the correct anatomical location.
Client-side vs server-side approaches
Web-based simulation can take place either on the server side or on the client side. In ''server-side simulation'', the numerical calculations and
visualization
Visualization or visualisation may refer to:
*Visualization (graphics), the physical or imagining creation of images, diagrams, or animations to communicate a message
* Data visualization, the graphic representation of data
* Information visualiz ...
(generation of plots and other computer graphics) is carried out on the web server, while the interactive
graphical user interface
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
(GUI) often partly is provided by the client-side, for example using
server-side scripting
Server-side scripting is a technique used in web development which involves employing scripts on a web server which produces a response customized for each user's (client's) request to the website. The alternative is for the web server itself ...
such as
PHP
PHP is a general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by The PHP Group ...
or
CGI scripts, interactive services based on
Ajax
Ajax may refer to:
Greek mythology and tragedy
* Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea
* Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris
* ''Ajax'' (play), by the ancient Greek ...
or a conventional application software remotely accessed through a
VNC
Virtual Network Computing (VNC) is a graphical desktop-sharing system that uses the Remote Frame Buffer protocol (RFB) to remotely control another computer. It transmits the keyboard and mouse input from one computer to another, relaying the g ...
Java applet.
In ''client-side simulation'', the simulation program is downloaded from the server side but completely executed on the client side, for example using
Java applets
Java applets were small applications written in the Java programming language, or another programming language that compiles to Java bytecode, and delivered to users in the form of Java bytecode. The user launched the Java applet from a ...
,
Flash animation
Adobe Flash animation or Adobe Flash cartoon (formerly Macromedia Flash animation, Macromedia Flash cartoon, FutureSplash animation, and FutureSplash cartoon) is an animation that is created with the Adobe Animate (formerly Flash Professional) p ...
s,
JavaScript
JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
, or some mathematical software viewer plug-in. Server-side simulation is not scalable for many simultaneous users, but places fewer demands on the user computer performance and web-browser plug-ins than client-side simulation.
The term on-line simulation sometimes refers to server-side web-based simulation, sometimes to
symbiotic
Symbiosis (from Greek , , "living together", from , , "together", and , bíōsis, "living") is any type of a close and long-term biological interaction between two different biological organisms, be it mutualistic, commensalistic, or parasit ...
simulation, i.e. a simulation that interacts in real-time with a physical system.
The upcoming
cloud-computing
Cloud computing is the on-demand availability of computer system resources, especially data storage (cloud storage) and computing power, without direct active management by the user. Large clouds often have functions distributed over multip ...
technologies can be used for new server-side simulation approaches. For instance, there are
multi-agent-simulation applications which are deployed on cloud-computing instances and act independently. This allows simulations to be highly scalable.
Existing tools
*
AgentSheets
AgentSheets was one of the first modern block-based programming language for kids. The idea of AgentSheets was to overcome syntactic challenges found in common text-based programming languages by using drag and drop mechanisms conceptualizing com ...
– graphically programmed tool for creating web-based ''
The Sims
''The Sims'' is a series of life simulation video games developed by Maxis and published by Electronic Arts. The franchise has sold nearly 200 million copies worldwide, and it is one of the best-selling video game series of all time.
The games ...
''-like simulation games, and for teaching beginner students programming.
*
AnyLogic
AnyLogic is a multimethod simulation modeling tool developed by The AnyLogic Company (former XJ Technologies). It supports agent-based, discrete event, and system dynamics simulation methodologies.Christopher W. Weimer,
J. O. Miller, Raymond ...
– a graphically programmed tool that generates Java code for
discrete-event simulation
A discrete-event simulation (DES) models the operation of a system as a (discrete) sequence of events in time. Each event occurs at a particular instant in time and marks a change of state in the system. Between consecutive events, no change in th ...
,
system dynamics
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.
Overview
System dynamics is a methodology and mathematical ...
and
agent-based model
An agent-based model (ABM) is a computational model for simulating the actions and interactions of autonomous agents (both individual or collective entities such as organizations or groups) in order to understand the behavior of a system and wha ...
s
*
Easy Java Simulations
Easy JavaScript Simulations (EJSS), formerly known as Easy Java Simulations (EJS), is an open-source software tool, part of the Open Source Physics Open Source Physics, or OSP, is a project sponsored by the National Science Foundation and David ...
– a tool for modelling and visualization of physical phenomenons, that automatically generates Java code from mathematical expressions.
*
ExploreLearning ExploreLearning is a Charlottesville, Virginia-based company which operates a large library of interactive online simulations for mathematics and science education
Education is a purposeful activity directed at achieving certain aims, suc ...
Gizmos – a large library of interactive online simulations for math and science education in grades 3–12.
*
FreeFem++
FreeFem++ is a programming language and a software focused on solving partial differential equations using the finite element method. FreeFem++ is written in C++ and developed and maintained by Université Pierre et Marie Curie and Laboratoire Ja ...
Javascript Version – FreeFem++
is a free and open source PDE solver using the finite element method.
*
GNU Octave web interfaces –
MATLAB
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation ...
compatible open-source software
*
Lanner Group Ltd
Lanner Group Ltd is a software company specialising in simulation software such as discrete event simulation and predictive simulation, headquartered in Birmingham, UK. The business develops, markets and supports business process simulation an ...
L-SIM Server – Java-based
discrete-event simulation
A discrete-event simulation (DES) models the operation of a system as a (discrete) sequence of events in time. Each event occurs at a particular instant in time and marks a change of state in the system. Between consecutive events, no change in th ...
engine which supports model standards such as
BPMN
Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes in a business process model.
Originally developed by the Business Process Management Initiative (BPMI), BPMN has been maintained by the Ob ...
2.0
*
Nanohub
nanoHUB.org is a science and engineering gateway comprising community-contributed resources and geared toward education, professional networking, and interactive simulation tools for nanotechnology. Funded by the United States National Science F ...
– web 2.0 in-browser interactive simulation of
nanotechnology
Nanotechnology, also shortened to nanotech, is the use of matter on an atomic, molecular, and supramolecular scale for industrial purposes. The earliest, widespread description of nanotechnology referred to the particular technological goal o ...
*
NetLogo
NetLogo is a programming language and integrated development environment (IDE) for agent-based modeling.
About
NetLogo was designed by Uri Wilensky, in the spirit of the programming language Logo, to be "low threshold and no ceiling". It teache ...
– a multi-agent programming language and integrated modeling environment that runs on the Java Virtual Machine
*
OpenPlaG
openPlaG is a PHP based function graph plotter for use on websites. It was first released in April 2006. In June 2007 its source code was published under the GNU GPL license. PlaG is an abbreviation for Plot a Graph.
The current version 3.2 of ...
–
PHP
PHP is a general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by The PHP Group ...
-based function graph plotter for the use on websites
*
OpenEpi
OpenEpi is a free, web-based, open source, operating system-independent series of programs for use in epidemiology, biostatistics, public health, and medicine, providing a number of epidemiologic and statistical tools for summary data. OpenEpi w ...
– web-based packet of tools for
biostatistics
Biostatistics (also known as biometry) are the development and application of statistical methods to a wide range of topics in biology. It encompasses the design of biological experiments, the collection and analysis of data from those experime ...
*
Recursive Porous Agent Simulation Toolkit (Repast) – agent-based modeling and simulation toolkit implemented in Java and many other languages
*
SageMath
SageMath (previously Sage or SAGE, "System for Algebra and Geometry Experimentation") is a computer algebra system (CAS) with features covering many aspects of mathematics, including algebra, combinatorics, graph theory, numerical analysis, numbe ...
– open-source numerical-analysis software with web interface, based on the
Python programming language
Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation.
Python is dynamically-typed and garbage-collected. It supports multiple programming p ...
*
SimScale
SimScale is a computer-aided engineering (CAE) software product based on cloud computing. SimScale was developed by SimScale GmbH and allows computational fluid dynamics, finite element analysis and thermal simulations. The backend of the platf ...
– web-based simulation platform supporting
computational fluid dynamics
Computational fluid dynamics (CFD) is a branch of fluid mechanics that uses numerical analysis and data structures to analyze and solve problems that involve fluid flows. Computers are used to perform the calculations required to simulate th ...
,
solid mechanics
Solid mechanics, also known as mechanics of solids, is the branch of continuum mechanics that studies the behavior of solid materials, especially their motion and deformation under the action of forces, temperature changes, phase changes, and ot ...
, and
thermodynamics
Thermodynamics is a branch of physics that deals with heat, work, and temperature, and their relation to energy, entropy, and the physical properties of matter and radiation. The behavior of these quantities is governed by the four laws of the ...
*
StarLogo
StarLogo is an agent-based simulation language developed by Mitchel Resnick, Eric Klopfer, and others at the Massachusetts Institute of Technology (MIT) Media Lab and Scheller Teacher Education Program in Massachusetts. It is an extension of the ...
– agent-based simulation language written in Java.
*
VisSim viewer – graphically programmed
data-flow diagram
A data-flow diagram is a way of representing a flow of data through a process or a system (usually an information system). The DFD also provides information about the outputs and inputs of each entity and the process itself. A data-flow diagram ha ...
s for simulation of
dynamical systems
In mathematics, a dynamical system is a system in which a function describes the time dependence of a point in an ambient space. Examples include the mathematical models that describe the swinging of a clock pendulum, the flow of water in a p ...
*
webMathematica and Mathematica Player – a computer algebra system and programming language.
*
VisualSim Architect – VisualSim Explorer enables system-level models to be embedded in documents for viewing, simulation and analysis from within a web browser without any local software installation.
See also
*
List of online spreadsheets
A spreadsheet is a computer application for computation, organization, analysis and storage of data in tabular form. Spreadsheets were developed as computerized analogs of paper accounting worksheets. The program operates on data entered in ce ...
References
{{Reflist
External links
A portfolio of public-access and free web-based simulations
Simulation software
Web applications