Agent based modeling for Supply Chain Management - simulation

I am a final year student of Computer System Engineering.My FYP is Agent Based Modeling for Supply Chain Management. I don't know how to start it or which software should I use. Repast? Netlogo? Anylogic?
Please guide me how to proceed with my project.

Even though this question is opinion-based, I was part of a project whose objective was to compare exactly the softwares you mentioned here: Repast, Netlogo and AnyLogic. What I did in this study was to create AnyLogic models. Someone else was creating the models in Netlogo and Repast.
There is no paper with the conclusions yet, but the person who did this study told me that AnyLogic was better in terms of easy to use and scalability than the others and Repast has the steepest learning curve. Nevertheless for small scale projects, AnyLogic and Netlogo are equally suited so it doesn't matter which one you choose.
Nevertheless, remember that AnyLogic on its free version allows you to use only 10 agents, which is a lot, but if your project is really big and you want everything for free, you may encounter a problem there.

As a platform that allows to work with agents that include in the same platform: editing code, show the area of simulation and generate graphics. I think Netlogo platform is suitable for this reason. you can also link it with other programming languages like python and R.

Related

AS/RS simulation in Anylogic Simulation Software

I need to simulate a fully functional AS/RS in warehousing. Moreover, I am a complete beginner in this field. Can some please let me know if I could get readymade simulation file? Or if not, please let me know how to learn to do it.
I have checked out the Anylogic website and it's tutorials (They are too lengthy).
fortunately for you, i have developed an AS/RS example that is a ready-made downloadable model for you, available at https://cloud.anylogic.com/model/1f5c7d1f-8782-40ac-957d-d3ba97bf6bf0?mode=SETTINGS
In general, when you want a model example, the first thing you should do is check the anylogic cloud, and if you are lucky the model is downloadable. Unfortunately, most people don't share
It really depends on what type of ASRS you are modeling (shuttle versus unit load) and level of detail you need. Do you need specific slotting and inventory tracking, or simplier black box delays with the assumption inventory is always available? The level of detail you need depends on questions you are asking, and should be addressed prior to starting development. If results from the model are critical and urgent, and you need anything more than simple black box delays, you should consider outsourcing to an experienced professional until you can get your AnyLogic skills up to speed.

How to process with ABM

In my bachalar work I am supossed to build an model of terrorist attack in Tokyo in 1995 (sarin gas). I have never done heard anything about ABM until about a month ago. Now I am even able to do some simple models.
However I would welcome some ideas about how to even start with the model. I only need to model one train of 5 from the attack. Should I start with the environment, defining agents...? And is there anybody who could provide me kind of a support if I need to know something?
Also should I model everything with statecharts, or is It possible to model the train with Trail library using flowcharts and passengers with statecharts?
best idea is to check out the example models that come with AnyLogic (Menu/Help/Example Models).
Get a feeling for a good number and start pulling together techniques and items that were used to achieve similar things.
Otherwise, your questions are far too broad for StackOverFlow, I am afraid.
Best modelling advise in a nutshell: Start (super)simple and add features as you go along (and your skills increase)

best toolbox for simulating multiagent systems

I want to simulate a multiagent system. Is netlogo good for that? Does it have good abilities for simulating all multiagent systems with any characteristics.
Is netlogo good in graphic ?
Can we do task sharing between agents with netlogo?
Can we do functional analysis with netlogo?
what other toolbox do you suggest?
Netlogo is good and easy and fast to implement. If you are an experienced Java programmer you might think of Mason too. I am using netlogo for social simulation, so far I did not feel that I need anything more than what Netlogo has, but I have performance problems which I might never faced with Mason. It all depends on what do you need from each agent and what are your priorities. You can check this website to see the different models and their characteristics and different frameworks used for developing them :
http://www.openabm.org/

Modelica and CANBus (General, CANOpen, and/or J1939)

I have experience with Simulink and CANbus interfaces for both simulation and code generation... but I really like open source. For quite awhile Octave has qualified as a MATLAB replacement (at my usage level) but I just recently found out about Modelica. I have yet to find any information about any blocksets (what term does Modelica tend to use?) for CANbus other than the broken link for Exite from Extessy.
Can anyone provide personal experience or a reference to information on using Modelica with CANbus? I know that I could write my own blockset, but it seems like the sort of thing someone else would already have done.
The best reference I could find on this topic was this paper. It was apparently developed as part of the EuroSysLib project. I do not know if it is publicly available anywhere. I would suggest you contact the authors.
another option for simulation of entire ECUs, including CAN is described here:
http://qtronic.de/en/index_news_12_6_ATZ.html
See paper "Building Virtual ECUs Quickly and Economically" in the June 2012 issue of ATZ electronic. Use Modelica to build vehicle simulation models for export as FMU,
and the Silver Basic Software (SBS) to configure CAN emulation based on DBC files,
and run both parts closed-loop in Silver.

Robot simulation environments

I would like to make a list of remarkable robot simulation environments including advantages and disadvantages of them. Some examples I know of are Webots and Player/Stage.
ROS will visualize your robot and any data you've recorded from it.
Packages to check out would rviz and nav_view
This made me remember the breve project.
breve is a free, open-source software package which makes it easy to build 3D simulations of multi-agent systems and artificial life.
There is also a wikipage listing Robotics simulators
Microsoft Robotics Studio/Microsoft Robotics Developer Studio 2008
Also read this article on MSDN Magazine
It all depends on what you want to do with the simulation.
I do legged robot simulation, I am coming from a perspective that is different than mobile robotics, but...
If you are interested in dynamics, then the one of the oldest but most difficult to use is sd/fast. The company that originally made it was acquired by a large cad outfit.
You might try heading to : http://www.sdfast.com/
It will cost you a bit of money, but I trust the accuracy of the simulation. There is no contact or collision model, so you have to roll you own. I have used it to simulate bipeds, swimming fish, etc.. There is also no visualization. So, it is for the hardcore programmer. However, it is well respected among us old folk.
OpenDynamics engine is used by people http://www.ode.org/ for "easier" simulation. It comes with an integrator and a primitive visualization package. There are python binding (Hurray for python!).
The build in friction model.. is ... well not very well documented. And did not make sense. Also, the simulations can suddenly "fly apart" for no apparent reason. The simulations may or may not be accurate.
Now, MapleSoft (in beautiful Waterloo Canada) has come out with maplesim. It will set you back a bit of money but here is what I like about it:
It goes beyond just robotics. You can virtually anything. I am sure you can simulate the suspension system on a car, gears, engines... I think it even interfaces with electrical circuit simulation. So, if you are building a high performance product, than MapleSim is a strong contender. Goto www.maplesoft.com and search for it.
They are pretty nice about giving you an eval copy for 30 days.
Of course, you can go home brew. You can solve the Lagrange-Euler equations of motion for most simple robots using a symbolic computation program like maple or mathematica.
EDIT: Have not be able to elegantly do certain derivatives in Maple. I have to resort to a hack.
However, be aware of speed issue.
Finally for more biologically motivated work, you might want to look at opensim (not to be confused with OpenSimulator).
EDIT: OpenSim shares a team member with SD/Fast.
There a lots of other specialized simulators. But, beware.
In sum here are the evaluation criteria for a simulator for robot oriented work:
(1) What kind of collision model do you have ? If it is a very stiff elastic collision, you may have problem in numerical stability during collisions
(2) Visualization- Can you add different terrains, etc..
(3) Handy graphical building tools so you don't have to code then see-what-you-get.
Handling complex system (say a full scale humanoid) is hard to think about in your head.
(4) What is the complexity of the underlying simulation algorithm. If it is O(N) then that is great. But it could be O(N^4) as would be the case for a straight Lagrange-Euler derivation... then your system just will not scale no matter how fast your machine.
(5) How accurate is it and do you care?
(6) Does it help you integrate sensors. For mobile robots you need to have a "robot-eyes view"
(7) If it does visualization, can it you do things like automatically follow the object as it is moving or do you have to chase it around?
Hope that helps!
It's not as impressive looking as Webots, but RobotBasic is free, easy to learn, and useful for prototyping simple robot movement algorithms. You can also program a BasicStamp from the IDE.
I've been programming against SimSpark. It's the open-source simulation engine behind the RoboCup 3D Simulated Soccer League.
It's extensible for different simulations. You can plug in your own sensors, actuators and models using C++, Ruby and/or RSG (Ruby Scene Graph) files.
ABB has a quite a solution called RobotStudio for simulating their huge industrial robots. I don't think it's free and I don't guess you'll get much fun out of it but it's quite impressive. Here's a page about it
I have been working with Carmen http://carmen.sourceforge.net/ and find it useful.
One of the disadvantages with Carmen is the documentation with all respect I think the webpage is a bit outdated and insufficient. So I like to hear from other people with experience in working with Carmen, or student reports/projects dealing with Carmen.
You can find a great list with simulation environments http://www.intorobotics.com/robotics-simulation-softwares-with-3d-modeling-and-programming-support/
MRDS is one of the best and it's free. Also LabView is good to be used in robotcs
National Instruments' LabView is a graphical programming environment for developing measurement, test, and control systems.
It could be used for 3D control simulation with SolidWorks.
MRDS is free and is one of the best simulation environment for robotics. Workspace also can be used, and please check this link if you want a complete list with robotics simulation software
Trik Studio has a nice and clear 2D model simulator and also visual and textual programming programming environments for them. They also soon will support 3D modeling tools based on Morse simulator. Also it is free and opensource and has multi-language interface.