AWS HPC Blog

Simulating autonomous mining operations using Robotec.ai on AWS

This post was contributed by Matthew Hansen, Principal SA, Advanced Computing & Simulation, Ryan Qi, Principal BD/GTM, Advanced Computing from AWS and Dominik Jargot, Software Engineer, Bartłomiej Boczek, Senior Machine Learning Engineer from Robotec.ai, and Peter Burman, Program Manager, Boliden.

Autonomous mining operations represent a significant leap forward in the mining industry, offering enhanced safety, efficiency, and productivity. The introduction of autonomous trucks is at the forefront of this transformation. Boliden AB, a Swedish multinational company specializing in precious metals, is an AWS customer using autonomous trucking technology for mining operations. These self-driving heavy-duty vehicles are equipped with advanced sensors and navigation systems, and operate around the clock without human intervention – reducing the risk of accidents and increasing uptime. These trucks follow pre-determined routes to move materials from the mining site to storage or processing sites, communicating real-time data back to a central control system.

Simulations are instrumental in developing and optimizing autonomous mining operations. They create a virtual environment for testing various scenarios and conditions, minimizing the risks and costs of real-world trials. Engineers at Boliden use simulations to evaluate the operations and performance of autonomous trucks, refine control strategies, and ensure systems can adapt to unexpected events or changes in the mining environment. This predictive capability is essential for maintaining safety, enhancing efficiency, and ensuring continuous production, all of which contribute to the long-term sustainability and profitability of mining operations.

In this post, you’ll learn how Boliden simulates multiple autonomous trucks in a mine, and scales those simulations to run dozens of scenarios simultaneously using the recently added multi-container jobs feature in AWS Batch.

Building autonomous mining simulations

Robotec.ai is a technology leader in the realm of robotics and autonomous vehicles. They have a diverse team of experts in robotics, electrical engineering, software development, AI/ML, and human-technology interaction. Their simulation platform, RoSi, is engineered to create hyper-realistic simulations of confined spaces such as mining sites, warehouses, and large agricultural fields. The simulation of virtual mining environments enables accurate modeling of mining equipment and experimentation with many traffic scenarios.

Boliden uses RoSi to simulate the real-time operations of their mines over 40 distinct scenarios that cover a wide spectrum of machine interactions. This rigorous testing regime demands in excess of 1,000 hours of computational simulation every time Boliden changes their mining operations, to ensure robustness and reliability.

Figure 1 illustrates a scenario where two autonomous mining trucks, operating underground and simulated using the RoSi platform, navigate a narrow tunnel while avoiding obstacles and each other. One truck is using an underground turnout to wait for another to pass going the opposite direction. The time spent waiting is idle time that Boliden wants to reduce. The number of turnouts is also an expense they want to minimize. They run scenarios with varying numbers of trucks and turnouts and measure the idle time of the trucks, to find the optimal number of turnouts in the mine.

Figure 1 – Underground autonomous mining simulations using Robotec.ai’s RoSi platform

Multi-container simulations

Traditionally, when Boliden used AWS Batch to simulate these types of scenarios, the service allowed only jobs with a single container. Consequently, engineers had to spend time on extra job preparation steps, merging all of the simulation components into a large, complex, monolithic container which also made division of work across teams difficult. Any code changes required engineers to rebuild the entire monolithic container, complicating software development (Dev), IT operations (Ops), and debugging.

Recently, though, AWS Batch added multi-container jobs, a feature that streamlines the process for customers to conduct large-scale simulation for complex systems in autonomous vehicles and robotics. This enhancement allows teams like those at Robotec.ai and Boliden to leverage Batch’s sophisticated scaling, scheduling, and cost management features without the added complexity of converting their systems into monolithic containers. Figure 2 illustrates the architecture for simulating mining operations with RoSi, using these multi-container job features in Batch.

Figure 2 - Architecture for running mining operation simulations on RoSi and AWS Batch multi-container feature

Figure 2 – Architecture for running mining operation simulations on RoSi and AWS Batch multi-container feature

As shown in Figure 2, engineers can use an array of smaller, independent containers, each representing a mining truck, alongside the RoSi simulator. This approach not only accelerates development by eliminating redundant steps in job setup, but also reduces the need for engineers to develop additional in-house tools, and eases collaboration between software development and IT operations teams.

How you can run simulations on AWS Batch with RoSi

Step 1 – Configure your Job inputs in RoSi

Using RoSi, you can configure experiment properties specific to each use case. In the Boliden example, the configuration includes the main scenario setup, traffic properties, events, and safety system parameters. Configuration enables testing of the entire underground mine in the simulated environment against the complex system of systems, which typically consists of autonomous vehicles, a traffic management system, and a safety system.

RoSi offers a lot of flexibility in the system configuration, allowing engineers to create isolated tests for individual system parameters, or large-scale system-wide stress tests. The typical flow of batch experiments configuration in RoSi goes like this:

  1. Configure the types and paths of vehicles in the Events
  2. Configure traffic properties in the Traffic tab, for example, the localization of the turnouts (places where vehicles can freely pass each other) in the narrow tunnels of the mine.
  3. In the Main tab, configure the scenario details, like the number of vehicles, their positions, and speeds, to simulate various situations.

Figures 3 and 4 show the detail for some of the configuration capabilities of RoSi.

Figure 3 – Turnouts and other traffic parameters configuration in the underground mine.

Figure 3 – Turnouts and other traffic parameters configuration in the underground mine.

Figure 4 – A scenario configuration with six autonomous mine vehicles starting in different points of the mine.

Figure 4 – A scenario configuration with six autonomous mine vehicles starting in different points of the mine.

Step 2 – Submit multi-container jobs from RoSi

RoSi lets you to run multiple real-time experiments in parallel, which greatly reduces the time needed to test a large number of scenarios, significantly improving efficiency. Engineers can select the configurations required for the batch of experiments from the simulation setup screen (Figure 5).

For convenience, a set of configurations can be stored as a preset that can be reused. After pressing the Start button, RoSi Simulations Manager will perform a cartesian product of selected configs, configure a batch of experiments, and submit them to the AWS Batch job queue. By increasing the number of workers, you can speed up the experiment execution rate – by running them in parallel. Once the jobs are submitted, you can also view them in the Batch console (Figure 6).

Figure 5 – The simulation setup screen, where users can select configurations and start a batch of experiments.

Figure 5 – The simulation setup screen, where users can select configurations and start a batch of experiments.

Figure 6 - AWS Batch console while a multi-container job is running.

Figure 6 – AWS Batch console while a multi-container job is running.

Step 3 – Viewing the simulation data

Viewing real-time simulation data from the RoSi experiment manager (Figure 7) helps you gain insights before the experiments end. In the mining example, Boliden can evaluate the productivity of each experiment to assess the impact of changing mining variables. Data is streamed, so when the multi-container job is submitted to Batch, you can monitor the job status, and view the logs from each container. All the data is stored in log files saved in an Amazon Simple Storage Service (Amazon S3) bucket, which you can use for post-processing, analysis, visualization, and debugging.

Figure 7 - RoSi dashboard provides status of each experiment in real-time

Figure 7 – RoSi dashboard provides status of each experiment in real-time

Step 4 – Viewing and analyzing the results

RoSi enables viewing real-time data to automate and optimize multiple aspects of mining operations.

Boliden can track metrics they need in RoSi, and post-process them on AWS. This enables them to effectively manage the mining fleet and reduce the time vehicles wait between operations. The result is a cost-effective use of fuel and optimization of working shifts. Figure 8 depicts wait times (in minutes) of six vehicles running across multiple simulation experiments.

Figure 8 - Waiting times distribution across the mining tunnel with six turnouts.

Figure 8 – Waiting times distribution across the mining tunnel with six turnouts.

In this sample data, the vehicles spend the most time waiting at turnout ID 1. In a 24-hour simulation, vehicle six spent the most time waiting at turnout ID 1, waiting approximately 55 minutes of total time.

We can compare this data with other scenarios – with different locations and numbers of turnouts – to find the optimal turnout configuration within the mine, before creating the mine in the real world, thus ensuring smooth operation and minimizing costs.

Conclusion

In this post, we’ve explored running multi-container simulations on AWS to enhance autonomous mining operations, using the advanced capabilities of Robotec.ai’s RoSi simulator, in tandem with AWS Batch.

By partitioning complex systems into containers, such as individual mining trucks, we can analyze their interactions to increase efficiency. The integration of RoSi with Batch means simulation engineers and DevOps teams can orchestrate large-scale simulations, scaling of their compute resources more easily, and getting fast results that help them optimize their operations.

Most of all, this approach paves the way for more streamlined underground mining operations by reducing waiting times and operational costs in the real world.

Matt Hansen

Matt Hansen

Matt Hansen is a Principal Solutions Architect specializing in Robotics and Simulation at Amazon Web Services (AWS).

Peter Burman

Peter Burman

Peter Burman is Program Manager for Mine Automation at Boliden AB. Peter holds a master of science and M.B.A. and has been Project Manager in the Mine Automation Program since 2012.

Bartłomiej Boczek

Bartłomiej Boczek

Bartłomiej Boczek is a Machine Learning Engineer and Machine Learning & Cloud team leader at Robotec.ai. He has over 6 years of experience in various ML/MLOps projects and extensive knowledge in Synthetic Data Generation, Generative Modelling, AWS, Computer Vision, and NLP.

Dominik Jargot

Dominik Jargot

Dominik Jargot is a Software Engineer at Robotec.ai, engaged in the development of RoSi, a simulation platform tailored for robotic applications. He has over five years of hands-on experience in industry and an academic background in Robotics and Vehicle Engineering.

Dr. Ryan Qi

Dr. Ryan Qi

Ryan has 19 years of experience in Multiphysics modeling and simulation, strategy and business development across both industrial and digital domains. At AWS, Ryan is a Principal Worldwide BD/GTM Leader focusing on simulation technologies and autonomous systems.