In this exposition, I invite you to embark on a journey through the intricate landscape of robotics simulations, shedding light on the diverse types and their tailored applications. Our overarching objective? To enhance client performance in manufacturing, medical, logistics, retail, and other domains. As we traverse the evolution of robotics simulations, from their humble beginnings to today’s cutting-edge AI technologies, you’ll discover how each stage of a robotics project necessitates unique simulation features and capabilities.

This is part 1 of 4 in our series. Today we discuss the diverse stakeholders’ needs. Next, in parts 2 and 3 we’ll discuss 4 different stages of a robotic product and the relevant simulations for each one. Finally, in part 4 we’ll see how we at Cogniteam fit in with our simulation and summarize the main takeaways.

Part I – Diverse Stakeholder Needs

How would different stakeholders require specific features from robotics simulations? Let’s delve into those needs in more detail:

Machine Learning Training

  • This caters to individuals looking to train ML algorithms.
  • Simulating the transfer of behaviors from simulation to the real world (sim2real).
  • Prioritizing photo-realism for vision-based ML algorithms.
  • The ability to generate substantial data.
  • Introducing a wide array of scenarios, some too risky for real-world testing.

Physical Design Testing

  • For those focused on optimizing the robot’s physical design.
  • Essential is a robust physics engine.
  • Testing different sensors, their positions, and various robot components.
  • Simulating engines, payloads, actuators, and even soft elements.
  • The simulation must be easily configurable.

Efficiency for the Company

  • This is all about making simulations efficient for the entire organization.
  • Ensuring ease of learning and accessibility.
  • Building and sustaining a supportive community and resource base.
  • Reducing costs and accelerating development processes.
  • Enhancing product robustness through comprehensive testing.
  • Stress-testing thousands of scenarios in a headless mode.
  • Supporting hardware-in-the-loop testing.

Complex Scenario Testing

  • Needed for simulating dynamic scenarios with various agents, events, human interactions, other robots, and objects.
  • Must enable the easy switching of behavioral configurations.
  • Averse to defining an excessive number of parameters.
  • Demands comprehensive reporting and summaries.

Code Testing

  • Ideal for those wanting to test new code iterations.
  • Requires seamless integration with development PCs.
  • Prioritizes ROS2 integration.
  • Automation of testing processes for rapid iteration.
  • Emphasizes fast loading and fidelity control.

    Product Showcase

  • Tailored to showcase robot features to clients.

  • Allows configuration of environments and events closely resembling the deployment environment.
  • Demonstrates how the robot addresses client pain points.

Performance Optimization

  • Focused on simulating digital twins to assess the impact of different parameters on robot performance at deployed sites.
  • Facilitates predictive maintenance and performance enhancement.

    Back in 2014, the authors of the paper above asked roboticists what they needed from a robotics simulator?

    Most things mentioned in this paper are relevant to this day. For instance, the survey participants said that their highest priority from a simulation is stability. Next are speed, precision, accuracy of contact, and the same interface between real & simulation systems. It was surprising to see that “visual rendering” came at number 8, but it was 2014. a lot has changed since then, namely the ability to render photo-realistic simulation to train vision-based ML algorithms.

    We can also see what the participants answer about the most important criteria for choosing a simulator – highlighting the Gap between simulation and the real world. Open source is very important as well – not just to reduce costs, but also to have the support of the community. They want to run the same code when operating the robot or the simulation to further reduce the gap between the simulation and the real world. The simulation should also be light and fast enough so we can test every few changes to the code. As we can see, each stakeholder has a different view about the needs of a robotic simulation, and as you may expect – there’s no one-size-fits-all solution. Fortunately, these needs may come at different stages. In Part 2 we will start delving into the different stages and which type of simulation may be the right one for each.