Back to Blog

Why Ghosts, Golems and Zombies Roam Around InOrbit

Julian Cerruti and Keith Shaw

The end of October brings out spooky and scary creatures of the night during Halloween festivities, but here at InOrbit we deal with ghosts, zombies and vampires almost every day. The different fantasy creatures give us a quick shorthand to the different artifact types we have available in our fleet simulation, the first of its kind.

In fact, these creatures are affectionately known as the “Hooli Robotics Horror Story Demo Fleet”, which operate as part of our fictional company, Hooli Robotics. Aside from the playful (scary?) names, there’s a deeper technical reason for all of this. There are many options, both open source and proprietary, for simulating an individual robot operating in a given environment. There are also solutions of creating variations, known as domain randomization, often used to accelerate reinforcement learning. However, what we found was missing was a way to simulate large fleets of robots, and to do that in a way that is both scalable and sustainable.

Most of our customers have enjoyed the Hooli fleet. While customers can’t directly interact with our spooky subjects (yet, but let us know if you want to meet them), in the spirit of the upcoming holiday, we'd like to give you a peek behind the curtain of our internal technology. Read on, if you dare, to learn more about the different types of spookiness that roams the hallways of Hooli…


Ghosts are creatures without essence. There are many times when we think we see them, but in reality there is nothing there. It’s an illusion or a figment of our imagination.

In the Hooli fleet, a ghost is a fixture in the database that doesn’t have any kind of interactivity. They don’t update at any frequency, and they don’t respond to any interaction. They are very clearly dead. Alas, thanks the the ephemeral nature of their existence they consume very little resources out of our environment and can be used easily to exercise the behavior of different parts of our system with very large fleets.

Need a fleet of 100? Easy. How about 1,000? No problem. 10,000? We've got you covered.


In horror films and TV shows, zombies come out of the grave to roam amongst us, but they generally are aimless and don’t respond to the world (variations of this, do occur). If you see a zombie, you get out of their way, you don’t try to interact with them.

In the Hooli world, zombies are InOrbit clients that blindly repeat a pre-recorded robot data recording, also known as a ROSbag. For this reason, they appear to be moving, but they don’t respond to any kind of interaction. Nothing we do to them has any effect.

The rate of update is the same as it would be for any real robot or simulation, as it is managed by InOrbit’s Adaptive Diagnostics rules.

Zombies can be created with different recordings (ROSbags), depending on what we want to showcase. Several recordings have been saved already, and they are relatively inexpensive to create and keep running, although they do require computing resources. Zombies are a key part of o ur test-driven-development process, as they produce a semi-predictable data output to test against.


Most times, a vampire will act like a normal human being. They dwell among us, and sometimes trick us into believing they are one of us. But if you bring them out during the daytime or show them a mirror, they immediately vanish.

In the Hooli world, vampires are simulations. They behave in the same way as real robots, but they live in a simulated world inside a docker component in the cloud, so the quality and realism of what is seen varies according to the quality of the simulation.

These are the most complex to set up, and costliest to run in terms of computing resources.

InOrbit currently uses two simulation types:

  • 2D, based on the Stage simulator. These use a completely 2D environment, similar to Flatland, so you cannot get any type of vertical or 3D sensor output (e.g., camera image), only 2D mapping information.
  • 3D, based on the Gazebo simulator. These use a completely 3D environment. It is much more compute-intensive, but it can render some basic camera feeds -- they just look a bit like 1990s video games.


Not to be confused with Gollum from The Lord of the Rings, a golem is an animated being that exists in the physical world, although they are created from inanimate matter. They do exist among us, although they are dumb and their reason for existence is for the entertainment of their creators.

In the Hooli demo world, golems are the real-world toy robots that we use for demos, such as Turtlebots. We used them in our awesome "Brickmart" demo at various events.

They do take considerable technical effort to keep them running and operating, so they are usually short lived compared to their digital counterparts.

No tricks, our treat

The teams at Hooli (as well as InOrbit) do their best to keep these spooky and creatures inside the safe confines of their demonstration and simulated worlds, but we’re more than happy to let you get a glimpse into their world.

Working together, the ghosts, zombies, vampires and golems provide us with a way to showcase to customers the benefits of the InOrbit platform for robotics companies looking to scale their robot fleets.

Sign up today for your own tour of our Hooli Robotics Haunted Ware(house) - and we promise not to play “Monster Mash” on repeat.