Showcasing Kent, Ohio and the surrounding
Northeastern Ohio Region.

Computational Thinking

Computational Thinkers Do It Virtually

Paul Wang, Computational Thinking 8, A World of 1's and 0's. Photo at Kent Free Library Kent, Ohio, by photographer Matt Keffer.

Visit Paul's websites:

From Computing to Computational Thinking (

Becoming a Computational Thinker: Success in the Digital Age  (

Book cover of women looking into distance with computer graphics

We say modern computers are universal machines. That is because a computer can do almost anything as long as a program can be written for it. Here we will focus on using computers to imitate reality through simulation. Computer simulation is a technique that uses computing to build models that mimic or imitate real-life systems in order to investigate, study, understand, gain experience, or otherwise deal with those systems.

Computer simulation has many applications including pilot training, space exploration, weather forecasting, oil/gas production, healthcare, video gaming, creating virtual reality (VR) and much more. An understanding of computer simulation enriches computational thinking (CT) and makes you a better computational thinker.

What Is Computer Simulation

According to Oxford Languages simulation is defined as “imitation of a situation or process” or “the action of pretending; deception”. In this article it takes the imitation meaning.

In simple terms, computer simulation refers to creating a computer-based representation of a real-world system or situation. It involves building a computational model, a virtual version of a certain real system, to simulate it and understand how it works or behaves, predict outcomes, or test different scenarios without actually doing it in the physical world. The latter alternative can be too expensive, hard to control, dangerous, or downright impossible.

Think of it like playing a video game or using a flight simulator. In a video game, you control characters or objects in a virtual world that mimics reality. Similarly, a flight simulator allows pilots to practice flying in a realistic virtual environment. These are typical examples where computer models are used to simulate the behavior of characters, objects, or systems based on certain rules such as geometry, physics, chemistry, biology, mathematics, logic and so on.

Figure 1: Game of Billiards

Figure 1 shows a computer simulation of a pool or billiards game. As you can imagine, a model involving the table, balls, and cues as interacting objects must be created. Their behaviors must obey rules governed by mechanics, physics, and geometry. Thus, the pool game model needs to simulate ball speed, momentum, spin, collisions (between balls and with table sides), angles of incidence and reflection, surface friction and so on. Needless to say, a realistic visual display from multiple viewing angles and perspectives must also be provided. Thus, a pool game simulation is much more complicated than simple computer games such as Pac-Man or Angry Birds. Yet, as far as computer simulations go, it is quite simple and straight-forward.

Obviously, a simulation is usually created for specific purposes and has well-defined goals. A combination of hardware, software, and user interface techniques are used to achieve the desired simulation which can collect data and have a mutual reinforcement and feedback relationship with the target real-world system or application.

Examples of Computer Simulation

In addition to billiards, simulations have been used for many different sports for both gaming and training purposes.

Figure 2: Simulation of Baseball

Figure 2 shows a baseball simulation. Gaming and sports are just two areas. In fact, computer simulation has wide applicability and is even indispensable in certain situations. Let’s list some example applications:

  • Weather Prediction: Simulating atmospheric processes to forecast weather conditions accurately (Figure 3).

Figure 3: Weather Forecasting

  • Drug Development: Modeling and simulating drug interactions, pharmacokinetics, and clinical trials to optimize drug discovery and development processes.
  • Transportation and Traffic Management: Simulating traffic flow, optimizing transportation systems, and improving traffic management strategies.
  • Car Crash Simulation: Simulating automobile structure integrity, predicting what will happen in physical tests, and easily changing design parameters, greatly helping car development decisions (Figure 4).

Figure 4: Automobile Crash Simulation

  • Epidemiology and Disease Spread: Simulating disease spread, analyzing the effectiveness of interventions, and developing strategies for disease control and prevention.
  • Financial Modeling and Risk Analysis: Simulating financial markets, analyzing investment portfolios, and assessing risk for better financial decision-making.
  • Crowd Simulation: Simulating crowd behavior in public spaces, events, or emergency scenarios to optimize crowd management and safety measures.
  • Structural Engineering and Civil Infrastructure: Simulating the behavior of structures and infrastructure under different conditions to ensure safety and optimize design.
  • Power Systems and Grid Management: Simulating electric power generation, distribution, and consumption to optimize power systems, plan renewable power integration, and improve grid management.
  • Manufacturing and Process Optimization: Simulating manufacturing processes, supply chains, and logistics to optimize production efficiency and reduce costs.
  • Ecological Modeling: Simulating ecosystems and species interactions to understand biodiversity, assess environmental impacts, and develop conservation strategies.
  • Virtual Simulations in Healthcare: Simulating medical procedures, patient anatomy, and healthcare scenarios for training, surgical planning, and research purposes.
  • Pilot Training: Simulating cockpit controls, pilot views, flight aerodynamics, airport approaches, takeoff and landing (Figure 5).

Figure 5: Pilot Training

These examples highlight the wide range of applications where simula- tions have proven to be valuable tools for training, understanding complex systems, optimizing processes, and making informed decisions.

Applications of Computer Simulation

Simulations are indispensable in various situations where other alternatives may be impractical, too costly, dangerous, or simply infeasible. Here are a few situations and reasons where simulation becomes the preferred or only viable option:

  1. Training for Dangerous or Rare Events: Simulation allows personnel to train for rare, hazardous, or extreme events, such as nuclear accidents, natural disasters, spacewalks, and emergency medical procedures. Replicating such scenarios in the real world could be unsafe or logistically challenging.
  2. Space and Deep Sea Explorations and Mission Planning: Simulating space or deep sea missions is critical as they involve remote, hostile, and extreme environments where direct human intervention must be minimized and well-planned.
  3. Aircraft and Vehicle Testing: Simulation is used in aviation, automotive, and aerospace industries to test design concepts and optimize vehicle performance. Simulating aircraft and jet engine design, aerodynamics, vehicle mechanics, dynamics, and other aspects are safer and more cost-effective than conducting physical tests with prototypes or real items.
  4. Medical and Surgical Training: Simulators are employed for medical students and surgeons to practice surgeries and medical procedures without putting patients at risk. High-fidelity medical simulators provide a realistic environment for hands-on learning.
  5. Virtual Prototyping: Simulating products or structures in the virtual environment allows engineers to test and validate designs before constructing physical prototypes. This approach saves time and resources.
  6. Disaster Preparedness and Response: Simulations help emergency responders and disaster management teams prepare for various calamities like earthquakes, floods, and chemical spills by modeling potential scenarios and response strategies.
  7. Economics and Financial Markets: In economic studies and financial markets, simulations are used to model various economic conditions, predict market behavior, and analyze risk management strategies.
  8. Military Training and Strategy: Simulation is widely used for military training, tactical simulations, and war game scenarios, providing valuable insights into strategy and decision-making.

In all these situations, simulations offer a controlled and efficient means to gain insights, make informed decisions, and enhance safety without the limitations or risks associated with real-world experimentation. As simula- tion technologies continue to advance, their applications are likely to expand, further revolutionizing industries and problem-solving approaches.

Simulation Methods

Having an idea of computer simulation, its applications and importance, we now turn our attention to “how to do simulations”.

First of all, there are several major simulation methods. Depending on the type and purposes of the desired simulation, an appropriate method can be chosen. Here’s an overview of the major simulation methods:

  • Discrete Event Simulation (DES): DES is a simulation method used for modeling systems where events occur at specific points in time. The model tracks the sequence of events and the changes in the system state at each event occurrence. This method is suitable for systems with discrete and sequential events, such as queues, manufacturing processes, and computer networks. It is efficient for modeling complex systems with infrequent events, as only relevant events are simulated. The method also supports modeling of resource constraints, time delays, and synchronization among entities. For example, the method is a good choice for the pool game and sports simulations.
  • Continuous Simulation: This method models systems where variables change continuously over time. It involves solving differential equations to model system dynamics. It is suitable for continuous systems, such as physical processes and dynamic systems and provides detailed time-varying information and smooth transitions between events. The method allows for the modeling of systems with complex interdependencies and continuous interactions. For example, weather forecasting, pilot training, flight simulation, air and missile defense are applications.
  • Agent-Based Simulation (ABS): ABS involves modeling individual agents or entities with their own behaviors, decision-making rules, and interactions. The system’s behavior emerges from the interactions of these agents. Ideal for modeling complex systems with diverse entities and individual decision-making processes. It can capture emergent behavior and interactions among agents in a dynamic environment and is flexible and adaptable for modeling systems with heterogeneous entities and varying behaviors. Example applications include war games, video games, financial markets, and traffic simulation.
  • Monte Carlo Simulation: It involves using random sampling techniques to model uncertainty and variability in a system. It performs repeated simulations to estimate the distribution of outcomes. The method is useful for modeling systems with uncertain inputs or less than exact probabilities. Example applications are simulations in crowd control, disease spread, and stock markets (Figure 6).

Figure 6: Stock Market Simulation

There are other methods. Each simulation method offers unique advantages and is best suited for particular types of problems. The choice of simulation method depends on the characteristics of the system being modeled, the level of detail required, and the available data and resources. Often, a combination of simulation methods may be used to capture different aspects of a complex system or to address specific modeling requirements.

Building Models

The heart of any simulation is modeling. Building accurate and efficient models is critical. Creating a simulation model involves several important steps and considerations to ensure its accuracy, reliability, and effectiveness. Here are the essential keys to building simulation models:

  1. Clearly Define the Objectives: Begin by defining the objectives of the simulation. Clearly state what you want to achieve with the simulation and what questions you aim to answer. Understanding the purpose and scope of the simulation will guide the modeling process.
  2. Gather Data and Information: Collect relevant data and information about the system or process you are simulating. This data can include input parameters, system characteristics, performance metrics, and real-world observations. Ensure that the data are accurate, comprehensive, and representative of the real-world scenario.
  3. Choose the Simulation Methods: Select the appropriate simulation methods based on the nature of the problem and the available data.
  4. Develop the Model: Create the simulation model based on the selected simulation method and the collected data. Use the available data and information to define the model’s structure, input parameters, and variables. Construct the logical relationships and rules that govern the behavior of the system being simulated.
  5. Validate the Model: Validate the simulation model to ensure that it accurately represents the real-world system or process. Compare the model’s outputs with observed data or historical records to verify its accuracy. Address any discrepancies or errors in the model and refine it as needed.
  6. Calibrate the Model: Calibrate the simulation model by adjusting parameters or assumptions to better match the real-world behavior. Fine-tune the model until it produces results that align with empirical data and observations.
  7. Verification and Sensitivity Analysis: Perform verification tests to ensure that the model’s internal workings are correct. Conduct sensitivity analysis to assess how changes in input parameters affect the simulation outputs. This analysis helps identify critical factors and uncertainties in the model.
  8. Run Scenarios and Experiments: Run the simulation with different scenarios and input configurations to explore various situations and test different hypotheses. Analyze the simulation results to gain insights into system behavior and performance under different conditions.
  9. Interpret and Communicate Results: Interpret the simulation results to draw meaningful conclusions and insights. Clearly communicate the findings to stakeholders, decision-makers, or other relevant audiences. Use visualizations, graphs, and reports to present the simulation outcomes effectively.
  10. Continuously Improve and Update: Continue to improve and up- date the model as new data and insight become available, the system changes, or new objectives arise. Stay open to feedback and incorpo- rate lessons learned from real-world experiences to refine the model over time.

Creating a good, efficient and effective computer simulation combines method selection and great modeling. Clearly, it requires computing and application domain experts to cooperate closely. Such cross-disciplinary collaboration also needs enough understanding by one side of the other side, yet another reason why CT is important in all areas.

Simulation Advantages and Limitations

Computer simulations offer numerous advantages, including risk reduction, cost-effectiveness, time efficiency, flexibility, visualization, reproducibility, scalability, and educational benefits.

These advantages make simulations powerful tools for understanding complex systems, optimizing designs, making informed decisions, and driving innovation in various fields.

At the same time, computer simulation also has drawbacks and limitations. After all, simulated results are not real-world results and computer programs can have bugs or other problems. Overreliance on simulations without careful testing and validation is to be avoided. Here is an example. The Tacoma Narrows Bridge, also known as “Galloping Gertie”, was a suspension bridge in Washington state, USA. It collapsed on November 7, 1940, just a few months after its completion, due to a phenomenon known as aeroelastic flutter.

Figure 7: Tacoma Narrows Bridge Collapse

The bridge’s deck began oscillating violently under the influence of wind, leading to its collapse (Figure 7). Miraculously, no people died.

The design of the bridge did not account for aeroelastic effects, such as wind-induced vibrations. The design team relied on wind tunnel tests and simulations, but these did not accurately capture the behavior of the bridge under specific wind conditions. As a result, the bridge’s oscillations were not adequately considered, leading to its failure.

Generally, to ensure the reliability and usefulness of simulations, best practices include conducting sensitivity analyses, validating models against real-world data, involving domain experts, transparently documenting assumptions, and consistently reviewing and updating the simulation methodology.

Virtual Reality

Before we end this article, we must say a few words about Virtual Reality

(VR) and its relation with computer simulation.

The purpose of VR is to create a computer-generated, interactive, and three-dimensional environment that immerses users in a virtual world. This sense of immersion and presence is a key characteristic of VR, and it requires the use of 3D simulation techniques to render the virtual environment and objects in three dimensions (Figure 8).

Thus, achieving VR typically involves the following steps:

  • 3D Modeling: To create a virtual environment, objects, and characters, 3D modeling is used. 3D modeling involves creating digital representations of real-world objects or entirely fictional elements that will be present in the virtual environment.

Figure 8: Virtual Reality

  • Texturing and Rendering: Once the 3D models are created, texturing and rendering techniques are applied to add surface details, colors, and lighting effects to the objects. This process enhances the realism of the virtual environment.
  • Virtual Interaction: To achieve interactivity in the virtual world, users need to interact with objects and the environment. This interaction is facilitated through motion controllers, VR headsets with motion tracking, or other input devices, allowing users to navigate and manipulate the 3D elements.
  • Stereoscopic Display: VR headsets typically use a stereoscopic display, which presents a slightly different image to each eye, creating a sense of depth perception. This is crucial for the immersive experience, as it mimics the way humans perceive depth in the real world.
  • Real-Time Rendering: For VR to be immersive and responsive, it requires real-time rendering of the 3D environment. As users move and interact in the virtual world, the system needs to update the visuals in real-time to match the user’s perspective and actions.

By combining 3D simulation, motion tracking, and interactive elements, VR technology can create a seamless and immersive experience for users, enabling them to feel like they are physically present in a computer-generated environment. 3D simulation is at the core of creating these rich and interactive virtual worlds in Virtual Reality.

In the End

Computer simulation uses a computer-based artificial model to mimic a real-life system or process in order to investigate, understand, and/or improve the real system.

Mutual Feedback Loop

Thus, using the power of computation and clever simulations we can model real systems with virtual ones, making computer simulation a valuable, often indispensable, tool. Building such tools requires collaboration and cross-disciplinary knowledge.

When solving problems in the real world, it is natural to seek real-world solutions and use real-world methods. However, computers and computation offer a virtual alternative which in many cases can be advantageous, effective, and efficient. Thus,

CT concept–Keep computer simulation in mind: When solving problems or achieving certain objectives, do not forget simulation as a possible tool that can bring many advantages.

We all, especially computational thinkers, should keep simulation in mind as a powerful problem solving method. The virtual system and real system also form a mutual feedback loop to inform, validate, affect, and improve each other.

A Ph.D. and faculty member from MIT, Paul Wang (王 士 弘) became a Computer Science professor (Kent State University) in 1981, and served as a Director at the Institute for Computational Mathematics at Kent from 1986 to 2011. He retired in 2012 and is now professor emeritus at Kent State University.

Paul is a leading expert in Symbolic and Algebraic Computation (SAC). He has conducted over forty research projects funded by government and industry, authored many well-regarded Computer Science textbooks, most also translated into foreign languages, and released many software tools. He received the Ohio Governor's Award for University Faculty Entrepreneurship (2001). Paul supervised 14 Ph.D. and over 26 Master-degree students.

His Ph.D. dissertation, advised by Joel Moses, was on Evaluation of Definite Integrals by Symbolic Manipulation. Paul's main research interests include Symbolic and Algebraic Computation (SAC), polynomial factoring and GCD algorithms, automatic code generation, Internet Accessible Mathematical Computation (IAMC), enabling technologies for and classroom delivery of Web-based Mathematics Education (WME), as well as parallel and distributed SAC. Paul has made significant contributions to many parts of the MAXIMA computer algebra system. See these online demos for an experience with MAXIMA.

Paul continues to work jointly with others nationally and internationally in computer science teaching and research, write textbooks, IT consult as, and manage his Web development business

aroundkent Digital Magazine is a local, regional website containing relevant information about Kent, Ohio, Akron and the surrounding area, including all of Northeast Ohio. Thinking about what to do in Kent?, or where to eat in Kent? Our focus is on art, music, food, family and everything in-between. Our content is sent to us by local professionals so it's both accurate and updated regularly. Our goal is simple: to showcase the amazing people, places and things in and around Kent, Ohio. We are also designers and photographers working on the webflow platform.