Learn R Programming

⚠️There's a newer version (4.4.7) of this package.Take me there.

simmer

by Bart Smeets, Iñaki Ucar

simmer is a process-oriented and trajectory-based Discrete-Event Simulation (DES) package for R. Designed to be a generic framework like SimPy or SimJulia, it leverages the use of Rcpp to boost the performance and turning DES in R feasible. As a noteworthy characteristic, simmer exploits the concept of trajectory: a common path in the simulation model for entities of the same type. It is pretty flexible and simple to use, and leverages the chaining/piping workflow introduced by the magrittr package.

Installation

Install the release version from CRAN:

install.packages("simmer")

The installation from GitHub requires the devtools package.

devtools::install_github("Enchufa2/simmer")

Please note that the package contains some C++ code and thus you need a development environment to build the package (e.g. Rtools for Windows).

Learning simmer

To get started, please explore the vignettes:

vignette(package = "simmer")

These are currently available:

Contact

  • For bugs and/or issues, create a new issue on GitHub.
  • For other questions or comments, subscribe to the simmer-devel mailing list.

Copy Link

Version

Install

install.packages('simmer')

Monthly Downloads

1,276

Version

3.2.1.9000

License

MIT + file LICENSE

Issues

Pull Requests

Stars

Forks

Maintainer

Iaki Ucar

Last Published

September 28th, 2024

Functions in simmer (3.2.1.9000)

get_head

Get the first activity
at

Arrivals at specific times
from

Generate arrivals starting at a specified time
add_generator

Add a generator
from_to

Generate arrivals starting and stopping at specified times
get_mon_resources

Get resource statistics
create_trajectory

Create a trajectory
get_n_activities

Get the number of activities
every

Arrivals every specific interval
branch

Add a branch activity
plot_evolution_arrival_times

Plot evolution of arrival times
get_mon_arrivals

Get arrival statistics
get_mon_attributes

Get attribute statistics
plot_resource_usage

Plot usage of a resource over time
get_capacity

Get the capacity
get_prev_activity

Get the previous activity
seize

Add a seize activity
now

Get the current time
add_resource

Add a resource
set_attribute

Add a set attribute activity
get_queue_count

Get the queue count
onestep

Step the simulation
reset

Reset a simulator
get_n_generated

Get the number of arrivals generated
get_queue_size

Get the queue size
rollback

Add a rollback activity
get_next_activity

Get the next activity
plot_resource_utilization

Plot utilization of resources
get_server_count

Get the server count
timeout

Add a timeout activity
peek

Peek next events
print_activity

Print an activity
schedule

Generate a scheduling object
to

Generate arrivals stopping at a specified time
simmer

Create a simulator
wrap

Wrap a simulation environment
get_tail

Get the last activity
run

Run the simulation
needs_attrs

Checks if attributes should be supplied
reexports

Objects exported from other packages
plot_attributes

Plot evolution of attribute data
release

Add a release activity