
Improbable: enabling the development of large-scale simulated worlds - taylorwc
http://cdixon.org/2015/03/24/improbable-enabling-the-development-of-large-scale-simulated-worlds/
======
sakunthala
One of my best friends at university dropped out to work with these guys when
they were still < 10 people. I was really perplexed since they were living and
working in one of the founder's house, and had no product released, and seemed
to be working on something vague and pie-in-the-sky involving gaming. It
seemed like a self-indulgent vanity project. There aren't too many legit
startups in London, so I didn't expect much and teased him mercilessly that
he'd joined a cult.

A year or so later, they'd gotten actual offices and had become something of a
phenomenon. People were quitting Google to join them. A pretty famous game
developer (creator of Day-Z) was in their office working on his next game. It
seemed they'd managed to reach their ambitious technical goals, which was
really, really strange and unexpected, but it still didn't click with me that
they were doing _well_ , and they were among the most rapidly growing
companies in London. I liked the people a lot however, and continued to hang
around their offices on Friday just to chat, taking very little interest in
their technology.

No point to this story, just that spotting a great company can be hard, even
when it's right under your nose. Even more so when it doesn't fit your mental
image of what a great company should look like (i.e. not in London, not making
video games, etc.)

------
silentOpen
The post is a bit dishonest regarding prior funding and risk.

[http://www.theguardian.com/technology/2015/mar/24/andreessen...](http://www.theguardian.com/technology/2015/mar/24/andreessen-
horowitz-london-virtual-reality-startup-improbable)

------
Cynddl
> Improbable was started three years ago […]

That sounds like a wonderful project. Alas, not a lot of details on their
website/blog. I found this talk on their Facebook page:

[https://youtu.be/1fpaoKLxSE4](https://youtu.be/1fpaoKLxSE4)

------
rdtsc
Any idea how this works, what technologies, ideas they are using for their
spatial logic?

Another project with similar ideas is
[http://www.paralleluniverse.co/](http://www.paralleluniverse.co/) . Wonder
how it compares ?

(pron you around, have you heard of Improbable before?)

~~~
jandrewrogers
I do not know the details, but I do have experience designing spatial
game/simulation engines like this and a lot can be inferred from what they
have shared. They talk about Scala.

Spatial simulations like this are pretty simple to implement on a custom
basis, though I would do it differently than paralleluniverse.co. The dynamic
resource scheduling on the servers is the hard part. When I designed
simulation systems, the code for the spatial part was semi-custom every time
because there was little overhead for that part. Simulations/games use cases
allow you to take a lot shortcuts and liberties with the spatial processing
and representation that do not work for, say, spatial analytics of the
physical world using real-time sensor data.

Dynamically balancing real-time spatial skew under load and failure is tricky.
This is a problem that has been solved by a few people before but it is not a
trivial piece of engineering and is not really found in the gaming world. The
seamless nature of the logical spatial world is a necessary side-effect of how
you solve the dynamic rebalancing problem while the system is fully online.
That said, it is much easier to implement for a game engine use case than the
general use case because the load characteristics are more predictable.

It will be more interesting to see how they make money. I looked at starting a
company doing exactly what they are doing a few years ago, we had all the tech
for it, but no matter how we looked at it the scalability of the revenue model
was pretty suspect. I do wonder how they plan to address that.

While they speculatively suggest using it for more traditional simulation use
cases, this type of technology has relatively little value there for reasons
somewhat orthogonal to the technology itself (something that is not obvious
from the outside looking in).

~~~
rdtsc
Very interesting stuff. Thanks for responding.

I've thought about this stuff, not as much as you, obviously.

But wonder what kind of shortcuts do you mean. Perhaps that a game world is
not necessarily completely uniform and entities are clustered in
hubs/plazas/cities rather than say an array of sensors that might be
distributed uniformly. So then the world is really a graph of large nodes and
edges are portal betwen them.

I guess for a uniform static distribution it is easier as can pre-divide the
world into a grid and each server is reponsible for an area. But if
distribution is dynamic it will sort of be based on some kind density or
clustering. Like say during a particular time a lot entities start gathering
in one place (a virtual sporting event) so then there would be a lot of small
cells with a server responsible for each cell.

------
highCs
> But it is still difficult to write software that makes efficient use of this
> abundant computing.

Really? I'm curious. I would think that there isn't much simulated worlds in
games because 1) it costs a lot to produce content for such worlds 2) most of
the time it's kind-a useless for the gameplay anyway 3) when it's not, it
requires actual simulation ideas which are hard to find and develop. In short,
"it's difficult to use the available computing resources" would be the least
of the problems I think. Is there a game out there using their tech?

~~~
meheleventyone
Players are the ultimate spanner in the works. Ultima Online famously had
lofty ideals about simulation, particularly of ecology, which were abandoned
when players were introduced and they promptly murdered everything.

This looks interesting from the point of view of not having to roll your own
dynamic spatial load balancing and DB backend for an MMO. There's not really
enough information around to know what particularly is unique about their
implementation other than they are licensing it to other developers.

The game using it with the most public facing information is Worlds Adrift by
Bossa Studios.

~~~
jghn
The realistic economy of UO failed pretty much immediately as well. NPC shop
keepers kept actual hours and would only buy/sell things as they needed. This
didn't go over well with the newbie who just sewed together 5000 skullcaps and
needed to sell them in the off hours.

------
rlomax
As someone who is working on an artificial life simulation, I'm drooling at
the chance to use this.

------
spyder
Sounds similar to Lucidscape (
[http://lucidscape.com/](http://lucidscape.com/) ) which is planned to be open
source and have run a test simulation with 10 million entities on 828 servers.

------
newobj
"Getting the system to work at scale under real-world conditions is a very
hard problem that took the Improbable team years of R&D."

Great, it's working at scale? Okay, where can I go join the other million
people playing something powered by it? (I'll go easy and assume that scale =
1/10 of WoW MAU)

They're hardly the first MMO middleware company, but they're definitely the
first to receive $100M of funding.

Also don't understand why people keep talking about "parallelizable", when the
real issue is latency and accuracy of simulation at scale.

------
willemwijnans
congrats, their way of hiring is pretty slick. Well done.

~~~
macca321
I had a crappy experience with their hiring. After delaying my application for
months (while they worked on a 'standard test'), they eventually sent me a
woeful programming task ("implement a single function in a language of your
choice and describe how/why you implemented this way").

I did so, and submitted it. They then emailed me back I had been rejected
without any feedback at all, and didn't send me any when I asked for some.

