Why is Simulation Difficult

Say you are making a movie and need to shoot an India Mela. You could either locate a real Mela and go shoot there or you could simulate one on your set. Except at the cost of tremendous effort, one can tell the simulated one from the real one (maybe it is too clean or too organized). This is a question that arises everywhere. Why is simulation so difficult? Why is it so difficult to simulate liquids but the liquids themselves use no compute at all?

I think, a good start to understanding this situation to ask ourselves why we expect simulation to be easy. Most of the phenomena that we care about lack centralized control. Numerous agents interact with each other on the basis of simple local rules (think fish schools). While simulating, we try to mimic this interaction using either some overall deterministic relation or if the complexity is too much, randomized relations. But the fact of the matter is that "the real thing" is neither of these. The source of complexity is in the interactions among numerous agents based on simple rules. You may come up with statistical properties of these interactions or you may try to replicate the interactions using "one" set of rules. But "the real thing" is a collection of simple rules. A "simplified" relation may describe the interaction in simple terms to a human brain, but it can only be an approximation.

So now we have this one equation that we think can describe the fluid dynamics. Only if we had sufficient compute. The issue is again that we are trying to simulate numerous agents using (say) one central unit. There is no reason why this should be efficient or easy. For a system in a certain state, that follows a fixed set of deterministic rules, there is only a limited number of possible future states. Contrast that with a computer trying to simulate that system's future state. The computer's current state and its rules are very different from the system's. Hence, the computer needs a hell lot of extra compute and information to really zero down on (an approximation) of the system's future state.

Reality is not a mystical computer with unlimited compute.

Shivam Vats on #meta,


A fundamental reality of life is complexity. Any attempt to define an inherent value in anything must depend on its complexity. Hence, search for ways to deal with complexity is the most basic problem in life. In fact, it can also be used to define life itself- anything that does better than random at dealing with the complexities of life is alive.

Here, I have comfortably been ambiguous about what solving complexity entails. Clearly, there is also a need for a goal, whether well-defined or indeterminate.

The process of attaining such a goal, in the face of complexity is what I mean by search (I think this is equivalent to optimization but I don't have a proof).


Given its principal importance, it is surprising that I am yet to find literature that deal with this problem at the most abstract level. The goal of this post is to collect my thoughts about it and see if we can find something of value at so high a level- highly unlikely but of supreme value if found.

Exact Methods

Simple problems can be handled directly. Binary search is a good example. The method is direct and deterministic as a consequence of limited complexity. We can come up with direct methods if we (our brain that is) are capable of wrapping our heads around the problem.


If the complexity is well beyond any full-blown analysis, we resort to heuristics. In such situations, no one (except reality) has the computational capacity to fully determine the solution (or the future). The only reason predictions about future are on such shaky ground is that reality if infinitely complex and we will forever lack the capacity to fully analyze it.

In dealing with such kinds of complexity, heuristics come to our rescue. To be useful across a large spectrum of problems, they need to refrain from being very precise. Yet, at their core they contain some fundamental truth about the complexity of a problem. Viewed through this prism, even the most exact laws and equations in physics and other science are just heuristics expressed in the language of Maths.

The goal of any search for general problem solving strategies should then be to find heuristics (that these heuristics can be expressed mathematically is a different matter).

Shivam Vats on #meta,



  1. The Anti-fragile: an introduction

  2. Modernity and the denial of anti-fragility

  3. A non-predictive view of the world

  4. Optionality, technology and the intelligence of antifragility

  5. The non liinear and the nonlinear

  6. Via Negativa

  7. The Ethics of fragility and antifragility


  1. Fragility is quite measurable, risk not so at all, particularly risk associated with rare events.

  2. Instead of a discussion of risk (which is both predictive and sissy), I advocate the notion of fragility, which is not predictive.

  3. The noise produced by the person is inverse to the pecking order.

  4. Those who are in debt need to predict much. (Is it a consequence of capitalism?)

  5. Randomness in the Black Swan domain is intractable.

  6. Our sophistication continuously puts us ahead of ourselves, creating things we are less and less capable of understanding.A

  7. My idea of the modern Stoic sage is someone who transforms fear into prudence, pain into information.

  8. People don't know what they want until you provide them with it.

  9. The option is an agent of antifragility.

  10. What gains from dispersion is antifragile.

  11. Let us call trail and error tinkering when it presents small errors and large gains.

  12. My sadness is that we are moving further and further away from grandmothers.

  13. Never respond with a straight answer to a question that makes no sense to you.

  14. Incremental progress (with small and bounded downside but unbounded upside) rather than revolutions.

  15. You decide principally based on fragility, not so much on True/False.

  16. The fragility that comes from linearity is immediately visible, so we rule it out because the object would be already broken.

  17. What is fragile is something that is both unbroken and subjected to nonlinear and extreme (rare) effects.

  18. It is completely wrong to use the calculus of benefits without including the probability of failure.

  19. Bottlenecks are the mothers of all squeezes.

  20. Economics largely a charlatanic profession.

  21. In political systems, a good mechanism is one that helps remove the bad guy.

  22. Almost everything contemporary has winner-take-all effects, which includes sources of harm and benefits.

  23. Obvious decisions require no more than a single reason.

  24. Antifragility implies that the old is superior to the new.

  25. In a complex domain, only time is evidence.

  26. In medicine, there is a marked bias in favor of treatment, even when it brings more harm, because the legal system favors intervention.

  27. Our record of understanding risks in complex systems has been pitiful.

  28. When the present inhabitants of Mother Earth want to do something counter to nature, they are the ones that need to produce evidence.

  29. Never ask the doctor what you should do. Ask him what he would do if he were in your place.

  30. Suckers try to wind arguments, nonsuckers try to win.

  31. Banks have lost more than they ever made in their history.

  32. In a large data set, large deviations are vaslty more attributable to noise than to information.

  33. A central argument is never a summary, it is more like a generator.

  34. A world whose charm comes from our inability to truly understand it.


  1. Ariel Rubinstein

  2. Jon Elster

  3. Craig Venter

  4. Ray Kurzwaii

  5. Thales

  6. Aristotle

  7. Socrates

  8. Ralph Nader

  9. Shaiy Pilpel

Shivam Vats on #book,


Steve Jobs

During his formative years, Jobs worked at Atari for a while under Nolan Bushnell. Bushnell is among the founding fathers of video games. He taught Jobs that if you act like you can do something then it will work. Jobs also learned that "If you pretend to be completely in control then people will assume that you are."

Jobs had this uncanny ability that his friends called the "reality distortion field" using which he would stare at someone unblinkingly and make them do a seemingly impossible task.

Wozniak mentioned that Jobs knew how to talk to a sales representative. Before starting Apple, Jobs called chip makers like Intel to get free samples.

Bill Gates

Bill Gates had this ability to be laser focussed on whatever he was working on (he sounds eerily similar to Elon Musk). He was a genius, hard bargainer and liked to flaunt his genius( at least in his younger days ).

When working on a coding project, Gates would work non-stop for two days, sleep for ten hours, eat a pizza and get back to work. He must also have been charming as despite being a jerk (sometimes), he always had a friend with which he would hack on things.

In probably his most important meeting with IBM, Gates looked like an office-boy in his oversize suit. The IBM folks first thought that he looked like a punk kid. However, once he started, he wowed everyone with his insight and calm confidence. However, it was largely an ACT. Gates went to his office and lay on the floor agonizing about his doubts. Moral of the story: If you don't have confidence, FAKE it.

Shivam Vats on #log,


Imagine yourself dancing the best dance of your life in the best party you have ever been to and suddenly you have to go attend a different party. You must. Graduating from IIT Kharagpur brings similar feelings to me. It is amazing that a single institution is capable of arousing such myriad memories and emotions. The funny thing about most precious memories is that you do not realize how precious they are going to be for you when you are making them. After my 5 years at Kgp, I think I have a keener eye for them.

I also know myself much better.