Moving to jeremy-chen.org

I'm moving to http://jeremy-chen.org/. Mostly.

I plan to use that site as a "self-marketing website" of sorts and to manage content in a way that I would otherwise not be able to do on blogger alone.

This blog will stay, ostensibly for more provisional ideas prior to refinement. I'll be gradually moving content (I still like) over to the other website. =)

Friday, May 7, 2010

On Simulations and the Future

Simulations are interesting things. They are the business world's stock tool for understanding and conducting dry dry runs of proposed operational plans. They have little of the analytical beauty of the analytical trajectory of a dynamical system, but businessmen do not bother about matters like that.

The question is whether simulation is a tool that will be able to cope with future demands of it, in view of the future. This little note seeks to highlight some thoughts I had while discussing the matter on the MIT alumni Linkedin discussion board.

Computational Workload
Computational complexity is always a problem. Even when simulating rational human decision making, let's say where a simulated agent has to "make a choice" the simulation solves a convex optimization problem (may be a linear program), solves a dynamic programming problem, or perhaps uses some search algorithm to arrive at a decision. This can be computationally taxing.

Where things are probabilistic, you need about 26500 monte carlo samples to ensure that the probability that the empirical distribution resulting from the simulation is more than 1% off is at most 1%. That is painful.

I recall that on one of the evenings when I was heading home from campus on the "Big Silver Van" one of my housemates quipped that it was interesting how things deemed to be interesting were usually at least in the NP complexity class. This probably would summarize much of the difficulties in embedding decision making into simulations.

Complexity issues hurt and linear speedups and improvements do not look to help as the demand is for growing sophistication. A successful simulation study requires discipline in modeling to avoid being swamped by complexity and ending in failure.

Business Matters
In the business world, simulations make sense of the effects of a proposed set of operations under some dynamics and under uncertainty. Indeed, projects these days tend to phrase requirements to the tone of "... shall report the service level with 99% accuracy" which is an appeal to the use of monte carlo algorithms rather than simulations of the single run deterministic variety.

Of course the bulk of simulations in engineering remain the "this is my structure, here are my loads, will it break?" type, but to a very large extent, problems in that regime tend to be of "low complexity" in terms of the rate at which workload scales with desired accuracy.

An interesting point was also raised on the board:
    "When a sim can let me add and subtract new variables as quickly and easily as a spreadsheet, then I get interested."
To get customer buy-in for a simulation, it has to be easy enough to use in order for him/her to quickly and intuitively vary operational parameters that he/she should be familiar with (it's the customer's operation, after all). Interface complexity is another thing that has to be managed in view of increasing demands for sophistication in simulation.

The Customary Conclusion
Simulation has its work cut out for it, its future success requiring control of both computational complexity and human interface complexity. It will be interesting to see how things go.