Questions related to Discrete Event Simulation
I have a well-described planning problem at a conceptual level, and I know how to model it on software. However, I do not precisely know how to sufficiently document the discrete-event simulation model, which is the result in this case. For instance, do I need to describe the underlying deterministic model mathematically first? I appreciate any suggestion for a guide in regards to this issue. Leaving a comment with a reference for a good paper that does the same helps handsomely. Ideally, your example addresses a capacity planning problem.
I would like to know what validation techniques do people in the real world supply chain industry use. Something that is not very sensitive to time series data. Currently I am testing MAPE and paired t-test. But these tests are very sensitive and shows really high error. Any test that is not sensitive?
#simulation #discrete-event modeling #DES #agent based modeling #simulation modeling
A repository to aggregate a set of reproducible and reconfigurable codes and notebooks for testing various task placement policies for edge and fog server networks.
The simulation models are based on two of the most powerful python-based simulation modelling frameworks, namely salabim and simpy.
The systems that are modelled cover the basic types of task placement problems in edge computing servers. The models are useful for managing a network of edge computing servers.
There are animation and GUI options which are indispensable in simulation modelling.
The uploaded models are templates for building simulation models for a variety of edge network policies. Researchers who research task and server placement problems in edge computing would find the models useful.
I am currently developing a small simulation model of an assembly worker pool in which I would like to consider randomly occurring absenteeism due to illness. Meaning: if one of lets say 17 workers is ill, he becomes unavailable and the Pool capacity is dynamically set to 16. After recovery, the worker becomes available again and the Pool capacity is increased by 1.
The model shall be based on historical data, which are available in the following structure (see excerpt @attachement).
The Pool Capacity is set every 8 hours with each shift change with the following logic (triggered by schedule):
- Create a list of all worker, that belong to the next shift group
- For each worker which is available (workers have parameter called “available”):
o determine randomly, if worker gets ill (using randomFalse(average chance to become ill, e.g. 2,5%, see above)
o If worker becomes ill, assign a value from custom distribution (bases on observations for the number of absent days per illness) for the number of unavailable days and create a dynamic event which will set the availability of this worker back to true after this number of days
The Pool capacity is set to the value that equals the number of the remaining available workers in the list
The model looks like this (see model overview @attachement).
On the first glance, the model works as intended. However, after 50 replications I aggregated the simulation data and compared the simulation result with my real data (table @attachement). I found out, that the model indicates, that ~41% of the shifts are staffed with 17 workers (= highest rel. frequency) while the real data show that 44% of the shifts are staffed with 16 workers (= highest rel. frequency of real data).
Something in the model concept does not seem to fit, otherwise the relative frequencies would somehow match in a better way, right?
Does anybody can tell me, if my current approach makes sense or am I overlooking something crucial? Is there a better approach to model this kind of problem?
Assume we have 5 service blocks in a system that requires the same resource unit. Say service block A and service block B have a service time of 1 minute each. Now I decide to combine these two blocks calling it service block X with a service time of 2 minutes. What should happen to the overall service time of the system? Will it go lower or will it remain the same? and why? Any proof from literature?
My experiment shows that the overall service time reduced.
I am new to ARENA simulation and I have the following problem. I will describe the manufacturing system that I want to model.
I have the following manufacturing system (see attachment 1)
There are two different queues, in queue 1 there is only order type 1, and in queue 2 there is only order type 2. Depending on the type of order, either order type 1 or order type 2 has priority
- Order type 1 is processed first/has priority at machine 1 (process1) if machine 2 (process2) is off
- Order type 2 is processed first/has priority at machine 1 (process1) if machine 2 (process2) is on
- If machine 2 is off and there are no orders of type 1 in the queue in front of machine 1 then order type 2 will be processed at machine 1
After order type 1 is processed it is disposed of, and order type 2 goes to machine 2 (process2)
But there is also another condition. Machine 2 is only turned on when there are 3 orders in the queue in front of it. If there are less than 3 orders in the queue in front of it, machine 2 will be turned off.
- Machine 2 can only be turned on when there are 3 orders in front of it. So It has to wait until machine 1 is done processing all orders of type 1 before it can start processing orders of type 2.
- if machine 2 is off and there are no orders of type 1 and machine 1 is processing order of type 2 and suddenly an order of type 1 arrives. Machine 1 will then finish processing the order of type 2 and will start processing the newly arrived order type 1. Once this order is processed it will start processing orders of type 2 again. This goes on until there are 3 orders of type 2 in front of machine 2 and it is turned on. Once machine 2 is turned on, machine 1 will give priority to order type 2 until machine 2 is turned off again.
so my question is how do I model this manufacturing system. I have made kind of a start (see attachment 2) but I'm to ARENA and just can't seem to figure it out.
Any help would be appreciated.
Thanks in advance.
I'm fairly new to ARENA and I have the following problem:
I have two queues in which, in each queue, a different order type arrives (both having an arrival rate of exponential 10). Order type 1 is processes by machine 1 and leaves the system. Order type 2, is first processed by machine 1 and then by machine 2 and then it leaves the system. (See the picture attached)
I’m new to ARENA and I have tried multiple times to model this process, but it is just not working. So I could use some help with the following
1. The orders (order 1 and 2) stay in the queue in front of machine 1.
2. machine 1 processes order type 1 or order type 2 but it gives priority to order type 2 when machine 2 is turned on. If machine 2 is off then order type 1 gets priority.
3. Machine 2 is only turned on when there are at least 3 orders of type 2 in the queue in front of it.
I have no clue how I can properly model this. I would appreciate it if someone could help me
Thanks in advance.
My research is based on energy efficiency, I'm starting to write my Master thesis and I'd like some opinions of which software focused on energy efficiency is the best to use as a simulation tool of a manufactury plant/factory (discrete event simulation).
The aim of the work is to seek ''what-if'' scenarios of possibles savings at the energy perspective only and compare it to the real world.
I've read about Arena, Flexsim, EnergyPlus and Matlab but I don't know which one suits me best for this purpose.
Anyone got any opinions on this and suggestions for softwares (preferably free ones)?
During AM process, progressively activation of elements can predict the temperature/crystallinity history, including surroundings heat losses and than this data could be used to determine the deformation as well as the residual stresses within Abaqus AM plugin as one can do from user subroutines like UMATHT -> UMAT ? Are there any differences in term of results or convergence one have analyzed?
System simulations have been designed using MATLAB / Stateflow program. I want to calculate the execution time of the simulations under different system conditions for the purpose of comparison. Note that when calculating the execution time using tic and toc commands, each time it gives different results as is known.
In my model, the entities that are being created are supposed to be held in a Hold module and then be released on a regular basis, e.g. every 6 hours. So, I would need the Hold module to hold all entities that come in over the course of 6 hours and then release them all at once and start holding the next entities for another six hours and release them all at once and so on.
What kind of signal or condition do I have to use in the Hold module to realize this?
Thank you for your answers!
The multi-analysis modeling of a complex system is the act of building a family of models which allows to cover a large spectrum of analysis methods (such as simulation, formal methods, enactment…) that can be performed to derive various properties of this system. The High-Level Language for Systems Specification (HiLLS) has recently been introduced as a graphical language for discrete event simulation, with potential for other types of analysis, like enactment for rapid system prototyping. HiLLS defines an automata language that also opens the way to formal verification.
Hi, I am doing a research project about UAV assisted VANETs, and I need to simulate a computational offloading algorithm in this type of network, so could you guide me to a network simulator that fits best to my work ?
I need to change this automatically generated title
Modelling a Hybrid Supply Chain using Discrete Event Simulation Modelling a Hybrid Supply Chain using Discrete Event Simulation CAHIER DU 391 Modelling a Hybrid Supply Chain using Discrete Event Simulation
Modelling a Hybrid Supply Chain using Discrete Event Simulation
Let say in a 10-day simulation, I can use the "Record" module to measure the "count" of arrivals, etc. Then, using one module for each day would return the count arrivals for each day (please see the picture).
However, if I have a simulation with 100 days, using the record module manually would be extremely time consuming (if not impossible). So, is there a better way to automatically return the statistics for any specific time unit (e.g., day, week, etc.)?
Any idea or hint would be greatly appreciated!
In Arena simulation, how can one utilize different types of resources in parallel (simultaneously)? For example, if a patient (as an entity) is in bed (i.e., the entity has already seized the bed as a resource), how can we add nurse's walk-around (when the nurse, as another type of resource, checks on the patient in regular time intervals)?
Fading degrades the communication system performance due to a loss of signal power without decreasing the noise power over some or all the signal bandwidth, the received signal fluctuates, varies in intensity at each instant, increases and decreases through nulls and zeros of voltage. The probability of experiencing fading with the concomitant bit errors as the Signal-to-Noise Ratio (SNR) drops on the channel limits the link performance. Multipath fading (MF) affects most forms of radio communications links in one way or another. MF occurs in an environment where there is multipath propagation, and the paths change for some reason, resulting of propagating multiple versions of signals transmitted across different paths before they reach the receiver.
Sharda B, Bury JSA (2008). Discrete Event Simulation Model For Reliability Modeling Of A Chemical Plant. Winter Simulation Conference.
Hu W, Sarjoughian HS (2005) Discrete-event simulation of network systems using distributed object computing. SPECTS'05.
Digital Modulation in Communications Systems. An Introduction, Agilent Technologies (2001)
Padilha R, Martins B I, Moschim E (2016). Discrete Event Simulation and Dynamical Systems: A study of art. BTSym'16, Campinas, SP – Brasil, December (2016).
I'm trying to model a case where a machine stops working if the queue of the respective process reaches a certain level (max level) and starts working again if queue of the respective process drops below a certain level (min level). In other words, I want to turn off machine 1 if the queue of machine 2 reaches 10 and want to turn it on again if the queue of machine 2 drops below 5.
I also added an Arena model to better explain the instance.
I implement a discrete event simulation model namely "EOQ" in AnyLogic from https://www.runthemodel.com/models/2662/
I am going to optimize the parameters by minimizing total inventory cost. Therefore, I have to construct a function (one of the agent component in AnyLogic) in order to be able to root the total cost.
Currently, I have constructed a function and root the total cost (i.e. root.inventorycost()), but the total cost results in the same value whenever the parameters change.
is it possible to root the total cost when the model only has events, parameters, and variables? how to do it?
There are many software for system modeling such as MATLAB/Simulink, AMESim, Dymola, Easy-5 etc. They are comparable in terms of functionality. Some are decent for combinations of different type of modelings; for example AnyLogic allows you to combine SD with ABM.
Is there any in which combining SD with DES is possible?
I have one process and two resources A and B that makes the process in the same time. However, they have different process time? How I do this at Arena Software? In addition, the entity has to go in the two resources.
In one of my paper, a reviewer is asking the simulation environment including network topology, traffic assumptions.
here how should I respond to the question??? does the simulation environment means simulation tool or something else??
sir in OPNET MODELER 14.5 i have made a PSTN model in a campus network of 10 KM . I have taken two PSTN softswitches and is connected by PSTN trunkOC12. further traffic region is defined.
Also its application profile,QOS profile and its traffic profile is defined.and when
config DES statistics is run with 10 minutes duration and with kernel type preferences error has come which was attached in given file.
Sir in case of PSTN model WHAT WILL BE THE VALUE OF PREFERENCES .
sir please tell how we define this value in case of different types of network model,please explain in detail as i think due to this value the simuation is not running.
sir please give reply and explain me its basics of defining preferences for different types of models in OPNET 14.5
Preferences means from Edit--> Preferences option comes from there Discrete Event Simulation option comes there some value has to insert so as to simulate the model which we make. How to define that value for different models like for VOIP for ethernet or for PSTN. please explain it in detail.
The error which is coming is attached with this mail.
DEVS (Discrete Event System Specification) is a modular and hierarchical formalism for modeling and analyzing general systems that can be discrete event, continuous state and hybrid continuous state systems.
Most modelers who are familiar with DEVS see the view point of DEVS as a modeling formalism forgetting the DEVS simulation protocol.
The clarification needed here , is if we recollect and readjust our mind set to DEVS including the Simulation Protocol are we scientifically right to presume DEVS is a domain as well as a formalism.
There are some methods in order to determine warm up period in discrete event simulation, i.e. welch's method, SPC method.
- Is there any method used on finding run number (replication) in discrete event simulation?
- If yes, which one is outstanding?
- In simulation modelling, firstly which one (warm up period or run number) must be determined?
Hi, hope all of you are having a good time.
I'm new in Arena (extremely new), and 'cause I'm planning to simulate a roundabout, I have no idea how to start.
For example, I don't know if use a kind of "pair" for each route like, Create and Dispose and put a Process Module in the center, then connect the Create modules and Dispose ones.
UPDATE #1: Well, the roundabout problem is quite simple.
I have 4 intersections with thier own flow properties, like time arrival, time in the queue, types of vehicules. and we have off course the Server wich is the roundabout trying to attend the four ways (paths or intersections).
My doubt is, how can I model it in rockwell?. For example I was thinking about to represent each way as a pair of Create and Dispose.
My doubts are:
- What kind of elements appart of Create and Dispose elements, can I use to represent the flow showed in the pic?
- How can I verify if a vehicle can get inside into the roundabout or have to wait?
- How can I show a report of the results and get the Poisson distribution?
- How can I animate it?
I already have the queue parameters for each ways, as I mentioned. Sorry for have too many doubts, I just found this site a good way to learn and improve my knowledge between other teachers and students.
PS. Sorry for my english.
Thanks for reply
Arena simulation: how to release all entities (not resources) after certain time and start over again as a new day? (5 day simulation)
Current state: Entities are in the queue and the process is carried over the next day when resources become available. How do I clear all entities and resources in the system each day?
I am working on DEVS and I search for some Java-based simulation tool that supports the Dynamic Structure DEVS (DSDEVS) formalism. I have worked on MS4ME but I suspect that this tool does not support DSDEVS, i.e., reconfiguration of the simulation on the fly. May you suggest me some tool that suitably supports DSDEVS?
Thank you since now.
We can use historical data test or hypothesis testing to validate a model. But when generate a new model that doesn't has an existing (new system), what method that we should use?
I'm about to do a parallel discrete event simulation, my case study is time series volatility prediction with Hidden Markov Model.
Can anyone introduce me some related works about parallel implementation of HMMs?
I will be more grateful if there was a Parallel discrete event simulation using HMMs.
I am trying to pick a resource from set 1 and when it picks a resource from set 2, it will pick a resource based on first resource from set 1. Let's assume set 1 resource set is comprised of R1, R2 & R3 and set 2 resource set is comprised of R4, R5 & R6. If an entity chooses R1 resource (by random, cyclical etc) is must choose R4 (and not R5 or R6).
I understand that, in such cases, the specific resource can be selected. But how can I link both of the resource sets?
I am a phd student of computer science working in WSN. I came across your paper. I have installed INET and MIXIM in omnet++. I want to use 802.15.4 nodes with aodv routing protocol but it does not provide any option in it that I know . Can you kindly guide how to do this ?
I am implimenting the LEACH protocol on ns2.35. The protocol was added successfully in ns2.35. But when runnig the script leach-test i got the error.
I would like to calculate distances between nodes and for that I would like to find position of nodes. Then by distance formula I can calculate distance. So please help me to find to position of nodes in omnet++. I am working purely on omnet++ not on its frameworks or simulation models.
I am conducting a discrete event simulation research for the management of patients flow in an emergency unit of a healthcare system but pose with a problem of getting a suitable software that can help me analyse the data obtained.
I have made a PSTN model and assign various attributes to it but on compiling it i am getting error which is attached below.please tell me what is its meaning.
also what value is to be given at "Network simulation Repositories " at open a new project then press Edit > preferences then search for network then scroll down for a label "Discrete event simulation and then to "Network simulation Repositories " so that the program gets configure and simulation runs.
As when its value is given stdmod or stdin the program is not running similarly if we give its value as 0 again it is not running.
so please tell its value so as to run the simulation
the error is attached below
I work with the assessment of production system configurations with respect to operational, economic and environmental performances.
A production system configuration is meant to be a facility with specific equipment, layout, numbers of operators, etc.
The assessment involves a comparison of the configuration being studied with other alternative configurations (for instance, a case "yes, new equipment" VS "no new equipment, status quo"). The comparison is being done through discrete event simulation.
Now, my doubt is on how to make sure that the evaluation compare the two cases fairly.
Beyond the fact that the two systems get supplied with the same input distribution of pieces to process, I wonder if I have to make sure that the two systems are evaluated and compared with the same level of performance operations wise (e.g., same yield, same efficiency).
To me, this is to make sure that both systems' operations are managed by the same people having the same expectations in terms of efficacy of operations management.
An example of this approach is to optimizing both systems firstly and then compare the resulting performances.
What are your thoughts on that?
Every idea and source is most welcome. I will particularly appreciate previous experiences in discrete event simulation of production systems and considerations about design of experiment in the context of production systems and operations.
There are free and paid tools that develop discrete event simulations , in particular we are looking for one that is easy to use but at the same time contains all the functionality required for such simulations.
Is there any precise definition for the agent-based simulation? If a discrete event simulation (DES) is load-driven, i.e., decisions are made from a load (e.g., product, customer, etc.) prospective, can we consider it as agent-based?
There is some paper suggest that DES and agent-based simulation are separate categories. Why?
There are different methods (Dimensional Consistency Test, Event Validity Test, Sensitivity Analysis, Historical Data Validation, ...).
What is the best method for validation and verification of discrete event simulation?
I am looking for examples where a mistake in a simulation (discrete event or agent-based) has led to wrong predictions and consequently caused big trouble (e.g. problems with productivity; loss of money).
I know that people usually do not write about failures in the scientific literature. But I remember very vaguely that during my PhD studies I read about some examples. Unfortunately I cannot recall the authors/titles of these papers.
Your help is much appreciated. If possible, please provide references.
Now I work and try to optimize the vehicle scheduling and routing problem using arena Simulation but need to know and learn other softwares and approaches.