Data visualization is coming to robotics
The growth of the robotics industry has been nothing short of spectacular in 2021. In just one year, the density of robots in manufacturing processes has doubled, leading many to herald the dawn of a new era. Robots are finally here in numbers that matter, and it looks like they’re here to stay.
Robot development, however, is changing. It is no longer a logical codified process, but rather a matter of learning and training, similar to the approach you would take with a human child.
Unfortunately, it is difficult to master all this data. Not only is the way machines are programmed changing, but also the way engineers and software professionals troubleshoot and analyze the outputs.
Working on tons of data is no longer viable when there is so much information available. Instead, professionals who work with robots have to take a higher-level view, almost out of necessity.
The trick to solving this conundrum is data visualization. It’s the idea that you can represent complicated information and nuanced data in a way that empowers people, instead of leaving them confused. This is essential for robots, because these machines are still driven by data, but the complexity of data is higher than ever.
Data visualization also helps take robotics out of the realm of having to be an exact science. This means engineers can take an empirical rather than an analytical approach to development, testing what works through trial and error instead of trying to find the right formula in advance.
The difference between traditional software development and modern robotics
There is a chasm between traditional software development and robotics. According to the traditional paradigm, programmers essentially created code and then ran it to see if it had the desired effect. It was largely a binary “yes/no”, “on/off” approach to the problem. If the code didn’t compile, it wouldn’t compute and the robot wouldn’t do anything.
In each scenario, there is a clear expectation of what should happen. Programmers first imagine the movements in their minds and then try to translate them into reality using various scripts. Sometimes it works, and sometimes it doesn’t.
Engineers typically spend several months on the debugging process. They follow the robot’s code path, then run tests at each step, checking expected outputs against actual outputs, and enabling and disabling various features. They then use the results of their investigations to find problems in the code and fix them, or refine it further.
However, debugging trained robots is much more difficult. In these cases, it’s not just a matter of going through the code and trying to figure out which step in the sequence didn’t produce the desired result. Indeed, for autonomous systems, there are several reasons why things could have gone wrong.
For example, imagine two self-driving cars collide. The failure may result from errors in trajectories, misidentification of the vehicle or misunderstanding of road conditions. In fact, all of these factors could combine to produce an unexpected “corner” result.
Unfortunately, there are no established protocols for precisely diagnosing what went wrong in these cases using classical programming principles. In many cases, it’s not really a problem with the coding or the software itself: it just works perfectly. The problem lies in the way the statistical solutions built on top of the underlying architecture. Or, in other words, there is no common sense.
The role of data visualization
Fortunately, there is a tool that can be used, but it is quite different from standard software approaches. It’s called data visualization and works on more heuristic principles. The idea is to simulate the results to find out what aspect of robot learning can be improved to avoid unwanted results in the future.
Due to this new innovation, people in the software field or with a math background are looking to get a online analytics master. The idea here is to develop the skills that will allow them to build the systems for testing and debugging the robots.
Thanks to the cloud, we are also witnessing the development of data visualization tools available on the web. These allow teams spread across different locations to collaborate on bot projects for debugging.
Data visualization allows engineers to quickly make sense of robot data. Instead of going through the code (which is nearly impossible on training-based systems), they can just look at the output and ask which aspects of the training they need to change. They can then run simulations to see if the results improve once they adjust their tactics.
What’s great about data visualization is that it also integrates seamlessly into workflows. Teams can see the next stage of development and explore various non-binary possibilities, allowing bots to make more judgments on their own. It’s similar to the principles of software development, but much faster.
Rich datasets with easy-to-understand graphs are also suitable for non-technical people who also have a role to play in bot development. For example, teams can send results to manufacturers, giving them an indication of the kind of specs they need to keep the robot hardware running smoothly in the field.
What this means for the future
The development of the robot was blocked for many years due to the need to manually develop systems in highly controlled environments. With machine learning technology, however, the dynamics change. As long as robots have large enough datasets to work with, they can essentially learn the operations on their own without needing a human programmer to hold their hand.
The problem so far has been that robotic systems have relied on conventional debugging methods. These were slow and clumsy, and often unable to discover the source of the problem.
With the advent of data visualization, this is changing. Developers are able to get a better idea of where learning went wrong, and can then apply training cases to fix it. It’s a bit like teaching a human child to properly handle a tennis racket. Instead of going into brains and trying to fix them, it’s more about identifying issues with their technique and then training them in a new way.