Computer simulations of complex systems.

I’m not sure what these are called but there are computer programs that simulate things like… for instance busy road traffic, or human trafic.

Does anyone know of a website where I can get such things? Preferably ones that utilize 3d hardware?

KONE (they make elevators) has a building traffic sim at http://www.kone.com/en/main/0,,content=48485&browse=linkurl_slot1,00.html

SimTower from Maxis is at its heart, an elevator traffic simulator.

Th University of Toronto has an auto traffic sim that delves into the mathematical formulas used for the modeling.

Here’s one from someone in Germany

As for using 3D, all of this stuff is formula-driven. Any 3D video would just be decorative.

Lobsang, I think you’ll get more and varied answers in the General Questions forum, rather than Cafe Society, so I’m moving this.

Lobsang, what exactly are you trying to model? Computer modeling and simulation software tends to be very specific. Do you want to model people in a que? Workflow for a business? Traffic on a street?

Are you loooking for a commercial software package or something you can play around with for free?

A couple of companies I have worked with are Global Management Technologies - www.gmt.com - and Meta Software - www.metasoft.com - both of which specialize in workflow modeling and workforce management (employee scheduling based on workflow models and employee constraints). GMT has also done some very good work with queing. Neither of these software solutions is cheap, however.

The bet way (IMHO) to build an accurate simulation is to model and code it yourself, or hire someone to do it.

I highly reccomend Simulation Methodology for Staisticians, Operations Analysts, and Engineers by P.A. W. Lewis and E. J. Orav as a starting point.

The drawback here is that for a very complicated ystem this will require a LOT of time and effort, so if you just want a quick, “good enough” answer go with the advice above.

No good simulation will have pretty 3D graphics. That’s a generalization, but the people designing the simulation are interested in accuracy over slick presentation.

One problem is that it’s impossible to perfectly simulate a complex system. The best you can do is model some aspects of it, using approximations for everything else.

Another problem (or is it the same problem?) is that 3D displays can take a large amount of calculations to be useful. Do you want to spend CPU cycles on the underlying simulation, or on the graphical display?

As zoid said, you’re best bet is to do it yourself, since it’s unlikely someone else has designed a simulation that meets the goals you have in mind. Basic simulations are actually quite simple. Read a few books, play around with sample code, you can learn enough to know what you really want.

Or, hire a scientist/engineer to code the simulation for you. I don’t usually freelance, but I could make an exception for the right offer. :smiley:

Check these links:
Portal for agent-based modelling
UMBC AgentWeb
AgentLink.org

3-d is a bit tough; you might want to check the Player/Stage robot software (the Gazebo simulator is 3-d). I think you might be looking for something like Swarm, RePast, or Ascape; a quick google should get you there if you don’t come across them in the above links.

Check these links:
Portal for agent-based modelling
UMBC AgentWeb
AgentLink.org

3-d is a bit tough; you might want to check the Player/Stage robot software (the Gazebo simulator is 3-d). I think you might be looking for something like Swarm, RePast, or Ascape; a quick google should get you there if you don’t come across them in the above links.

Similarly, unless you can find a simulator that models exactly what you want, in 3D, I wouldn’t bother. Probably Java or VB would be your best choices if you wanted to throw up something with some graphics. Though for running a thousand different test cases, not simulating things in real time is going to be better. For that a command line C app is going to be fast and not significantly different from Java or VB since it’s all math and loops.

Quick nitpick: It’s “queue” and “queueing”. Both of which make great Hangman words.

MATLAB and Simulink can be used to simulate physical systems, but you need to know the mathematics behind the system before you start. Simulink lets you make each object in the system a black box, and tweak the parameters of those boxes. At my old job, we used MATLAB + Simulink to deduce real-world performance of rocket engines from engineering performance measurements and some known flight parameters.

Basically, if you know the system you’re trying to simulate, you can write the equation that you think describes the phenomenon, and then run a simulation against real-world data. Conversely, you can argue over theory until you’re certain you’ve got the right set of equations and starting data, and then simulate the real-world system with some degree of confidence that your model matches real-world performance.

MATLAB is relatively cheap for students, and most universities have site licenses anyway. Simulink is more expensive, because it adds a graphical front-end that lets you tweak your system by dragging and dropping black boxes and connecting them differently. Neither has automatic support for a 3-D graphical output, though.

Actually, thats not quite true. Often, after you simulate something, you want to visualise it as well. In this case, 3D graphics might come in handy. For example, many weather simulations utilise sime 3D volumes and lines to visualse weather phenomena. Still, the focus is on clarity rather than pretty pictures.

Alternatively, some recent simulation is being hardware accelerated by taking advantage of the hardware shader capabilities of high end graphics cards.