modeling and simulation with jaamsim for discrete event scenarios
JaamSim is a powerful, free open-source tool for DES and a practical choice for engineers who need flexible modeling. The software jaamsim runs on multiple platforms because it is written in the java programming language and uses standard java libraries. Since it is cross-platform, users can deploy models on Windows, macOS, or Linux without platform locks. The project has seen continuous development since 2002 and the community has built many example models and high-level objects. For an authoritative overview visit the official site JaamSim | Free Discrete Event Simulation Software.
At its core JaamSim supports events, entities, resources and time progression. The discrete event simulation engine manages discrete-event logic and event calendars that schedule the next change in the system state. This approach contrasts with continuous approaches and makes JaamSim ideal for process-oriented scenarios, such as manufacturing lines, rail terminals, and container yards. The platform includes a built-in input editor and a text editor for expressions and attribute definitions. You can also use tools such as eclipse to extend or script models.
JaamSim excels because it combines a graphical palette of basic objects with a programmatic editor for custom logic. The model development tools and editors let engineers to build simulation models without losing access to deeper controls. Compared to many commercial simulation packages, JaamSim keeps costs low while offering fast and scalable performance. A review of open source discrete-event simulation software highlights that JaamSim “is the only free open source simulation software to offer a drag & drop interface that rivals commercial simulation packages” (review). For users who require HLA-style synchronization or advanced time management, JaamSim’s design fits into broader distributed simulation workflows; see research on time management frameworks HLA-based time management and synchronization framework.
Why pick JaamSim? First, cost: it is free open-source and offers an accessible path for universities around the world and small teams. Second, flexibility: you can mix graphical objects with custom code. Third, community: users and academics share models and examples. If your team needs a software package that allows engineers to build simulation prototypes and then scale to production, JaamSim often fits that workflow. For hands-on comparisons and planning guidance, see our analysis on terminal process planning tools terminal process planning.
model building in jaamsim: drag-and-drop interface and core features
JaamSim makes model building approachable. The GUI exposes palettes, graphical objects, and a scene editor so you can place model elements visually. The platform includes a drag-and-drop palette and an input editor for attributes. In fact, JaamSim includes a drag-and-drop user interface and a set of basic objects that speed the first prototype. For many users, that combination removes barriers to early validation and stakeholder review. The editor shows attributes for each object and allows simple expressions to drive behavior.
You can add Entities, Queue objects, Server objects and Transporters from the palette. For queues, the queue object models waiting lines and blocking. For processing, server objects handle service times and resource allocations. For transport, conveyors and vehicles model movement and dwell times. The modeling flow supports assigning attributes to items, creating conditions for branching, and using an attribute to store routing decisions. The platform’s model elements let a programmer embed short logic expressions, or attach larger scripts when needed.

Configuring attributes is straightforward. Use the input editor to define numeric distributions, lists, and dependencies. Then, the runtime collects input and tracks output statistics such as throughput and resource utilisation. JaamSim’s graphical and interactive 3d graphics improve model communication with stakeholders. The software provides built-in reporting and you can export traces for post-processing. For larger projects, version control of model files and structured folder layouts helps teams collaborate.
Engineers to build simulation models often need to integrate with external data. JaamSim supports CSV import and scripted data pulls. For port and terminal planners, this approach complements terminal digital twin workflows. If you want a practical guide to yard modelling techniques with simulation, review our article on how to model container yard operations how to model container yard operations. Also, if you are evaluating different packages, see our comparison of terminal operating systems and simulation tools comparison of TOS and simulation.
Drowning in a full terminal with replans, exceptions and last-minute changes?
Discover what AI-driven planning can do for your terminal
model building and execution with jaamsim pro: advanced workflows
JaamSim Pro offers an extension of the free open-source core and provides scripting hooks, custom modules, and automation features. While the free release supports most workflows, jaamsim pro adds a programmer-focused API and optimized batch capabilities. If your project requires automated run control, parameter sweeps, or a server-based deployment, JaamSim Pro can accelerate development and execution. The pro variant integrates with continuous development systems and can work with version control strategies used by software teams.
To set up scenarios, create parameter files and define experiment ranges. Use batch experiments to sweep arrival rates, service-time distributions, and resource counts. JaamSim Pro can export aggregated metrics automatically so you can feed them to analytics or a reinforcement learning pipeline. Our company, Loadmaster.ai, trains RL agents against a digital twin by simulating millions of scenarios; JaamSim Pro-style automation fits that pipeline when teams need to scale experiments rapidly.
For efficient execution, assign a dedicated server or a cloud worker for long runs. Use the built-in logging to capture event traces, and then run post-processing to compute KPIs such as throughput, queue lengths and utilisation. For port operations this output supports decisions on quay planning and equipment allocation; see terminal optimisation digital twin resources terminal optimisation. JaamSim Pro also supports scripted initialization, so you can replay production-like states before measurement.
When designing long experiments, watch for deadlock situations and resource starvation. The modeling toolkit helps detect deadlock by inspecting resource states and queue lengths. For teams that need IDE support, use tools such as eclipse to develop modules in Java and link them into the runtime. Finally, use clear naming for model elements, and keep the input and output processing routines separate to speed debugging. For guidance on matching TOS data sources with simulation inputs, our article on TOS vs simulation differences explains common patterns TOS vs simulation.
simulation models: build simulation models of complex supply chains
When you need to build simulation models of complex supply systems, JaamSim offers the building blocks to represent multi-stage processes. Start by mapping the process flow on paper. Then translate each activity into JaamSim model elements: sources for arrivals, queues for buffers, servers for processing, and transporters for movement. This practical approach helps visualise bottlenecks and to compute lead times end-to-end. If you want a specific terminal-focused guide, see our maritime terminal modelling resources maritime terminal tools.
Define stages with distribution-based input for inter-arrival times and service times. Include attributes to tag items for routing rules. Use the package primitive to represent parcels, containers or pallets. To reproduce supply behavior, add staging areas and delays for lead times. For complex supply chains, link stages with conveyors, vehicles and manual handling points. This allows you to compare alternatives such as single-stage buffering versus cross-docking. The approach helps engineers to build simulation models that reveal trade-offs and optimise inventory and flow.
Validate the logic with test runs and unit scenarios. First, run small load tests to confirm routing and resource allocation. Next, run longer traces to collect steady-state metrics. Sensitivity analysis helps you find which parameters change outcomes the most. A simple one-factor-at-a-time test can reveal whether queue capacity or process speed is the dominant constraint. For more on applying simulation to capacity and investment decisions, review our article on terminal simulation software for capacity investment capacity investment.
JaamSim supports open source discrete-event simulation and the model files can be shared with partners. Use the input editor to store scenario parameters and the output section to collect KPIs such as throughput and distribution of wait times. For complex supply chains better and faster decisions emerge when teams combine automated experiments with human review. Our case studies on container terminal operation show how simulation models of complex supply modules yield actionable insights simulation case studies.
Drowning in a full terminal with replans, exceptions and last-minute changes?
Discover what AI-driven planning can do for your terminal
package and transportation: porting supply chain components
JaamSim provides primitives for package handling and transportation that suit parcel flow and container logistics. Use the package object to represent a parcel or a container, and model conveyors and vehicles for movement. The package allows engineers to build scenarios with pickup, consolidation, and distribution steps. For transportation, use vehicle objects and transporters to model routes, speeds, and turnaround. The platform supports vehicle motion and material flow and includes basic objects for conveyors, lifts and storage.

Integrate handling stations with server objects and model loading and unloading as processing steps. For yard movement, represent gates, stacking areas, and quay cranes. JaamSim’s 3d graphics and interactive 3d graphics help stakeholders visualise process flow and spot conflicts. Use the input editor to load arrival schedules and distribution tables. Then run experiments to measure output such as moves per hour, average dwell, and utilisation by equipment type.
When porting components from one model to another, keep object definitions modular. Create composite modules for recurring subsystems, such as a gate complex or a reshuffle routine. This reduces duplication and eases testing. Also, consider integration with external tools for optimisation or RL training. For example, Loadmaster.ai trains agents in a simulated environment and uses simulation traces to refine policies that reduce rehandles and improve utilisation. If you need more examples of which software container terminals use, see our guide on what simulation software do container terminals use container terminal software.
used by leading companies: case studies and best practices
JaamSim is used by leading companies and universities around the world for logistics, manufacturing and healthcare projects. The open-source nature and the graphical objects make it straightforward to share models with academic partners. For example, several university courses use JaamSim to teach discrete-event simulation concepts because it includes discrete-event logic, input and output processing, and 3D visualisation in a single package. The ACM Digital Library describes JaamSim as including “all the discrete-event logic, input and output handling, programming tools, user-interface, 3D graphics, and palettes of basic objects” ACM description.
Case studies show how teams validate models, tune performance, and report to stakeholders. Common best practices include building small modules, validating each module with unit tests, and documenting assumptions. Also, always instrument models to collect key metrics: queue lengths, server utilisation, and lead times. For port projects, map KPIs to operational decisions so that simulation outputs directly inform quay scheduling, yard planning, and equipment allocation. See our terminal decision support and optimisation resources for practical templates terminal decision support.
Performance tuning often involves simplifying continuous processes such as vehicle motion into discrete checkpoints, or sampling detailed motion at lower frequency. JaamSim can model continuous processes such as vehicle motion when needed, yet many users model vehicle motion and material flow with discrete steps to speed runs. To avoid deadlock, designers should check resource graphs and run stress tests. Use version control for model files and keep the input editor files separate from scenario scripts.
Finally, training and community support accelerate adoption. Many online forums and documentation examples exist, and several ports have published case studies using open-source discrete-event simulation software. If your organisation evaluates advanced software for terminal planning, JaamSim is a cost-effective option to prototype ideas before committing to bespoke systems or large commercial simulation packages. For more about equipment utilisation and transport studies, consult our page on equipment utilisation simulation transport equipment utilisation.
FAQ
What is JaamSim and who uses it?
JaamSim is free open-source discrete-event simulation software that provides a graphical model editor and run-time engine. It is used by universities, researchers, and companies in logistics, manufacturing, and healthcare who need fast and scalable prototypes.
Can JaamSim simulate container terminals and ports?
Yes. JaamSim supports conveyors, vehicles, servers and package primitives that model container handling and yard movement. Many teams use it to create digital twin scenarios before applying optimisation or reinforcement learning.
How does JaamSim handle input and output processing?
The platform includes an input editor for distributions, lists and scenario parameters, and built-in output reporting for throughput, utilisation and time series. You can export logs for custom analysis or feed them into optimisers.
Is there a commercial version like JaamSim Pro?
There is an extension often called JaamSim Pro that adds automation, batch experiment support, and scripting APIs to scale experiments. It is suitable when teams need server-based runs and integration with CI/CD workflows.
Does JaamSim support 3D visualisation?
Yes, JaamSim includes 3d graphics and interactive 3d graphics to visualise layouts and animate flows. This helps stakeholders understand process flow and identify bottlenecks.
Can I script or extend JaamSim with Java?
JaamSim is written in Java and supports integrations using the java programming language and standard java tools. Developers often use eclipse or other IDEs to build modules and connect them to the runtime.
How do I validate a JaamSim model?
Validation starts with small test cases, then sensitivity analysis and unit tests for model elements. Compare model output to observed data or expected behaviour and document any assumptions.
What resources are available to learn JaamSim?
The official site hosts documentation and examples, and academic papers describe features and design. Also, community forums and university course materials provide hands-on tutorials.
Can JaamSim integrate with optimisation or AI systems?
Yes. JaamSim exports metrics and traces that can feed optimisation pipelines or RL training environments. Teams have used such exports to train agents that improve terminal throughput and reduce rehandles.
How does JaamSim compare to commercial simulation packages?
JaamSim provides a low-cost alternative with a drag-and-drop user interface and extensibility, while commercial packages may offer specialized libraries and vendor support. For many projects, JaamSim provides sufficient capability to prototype and validate ideas before scaling.
our products
stowAI
stackAI
jobAI
Innovates vessel planning. Faster rotation time of ships, increased flexibility towards shipping lines and customers.
Build the stack in the most efficient way. Increase moves per hour by reducing shifters and increase crane efficiency.
Get the most out of your equipment. Increase moves per hour by minimising waste and delays.
stowAI
Innovates vessel planning. Faster rotation time of ships, increased flexibility towards shipping lines and customers.
stackAI
Build the stack in the most efficient way. Increase moves per hour by reducing shifters and increase crane efficiency.
jobAI
Get the most out of your equipment. Increase moves per hour by minimising waste and delays.