The Story of DragonBot: RPA Can Do Science

MATT / April 06, 2020

This is a co-post by Derek Woodley, Services Program Manager at Carahsoft and Black Cape's own Matt Kishiyama.

With public interest in machine learning and automation technology reaching a fever pitch, Robotic Process Automation (RPA) is a hot topic. There is a perception that RPA tools and techniques are only fit for simple and repetitive tasks. While the wheelhouse for RPA tools such as UiPath are business processes in support areas such as finance and HR, these tools are increasingly being applied to core business functions.

Black Cape and our partner Carahsoft had an opportunity to test this hypothesis - can RPA do more complex analysis, specifically data science?

Our customer had an issue where they were looking for events and unusual trends in large data sets produced by a group of geospatially dispersed sensors. These sensors took a set of observations every ten seconds, 24/7. Throw in four distinct types of sensors deployed over a dozen geographic locations and the data volume grew quickly into the tens of millions. Our customer data scientist was using a Kibana dashboard to hover over perceived data peaks in order to detect significant events and validate sensor performance. This was unideal for a variety of reasons, primarily due to the possibility of human error interpreting the Kibana visualizations. It was also a slow manual process for the data science team which distracted them from assessing the performance of the sensors.

Could an RPA approach help? To find out, we received a collection of historical data to train our RPA model. Using UiPath, we built automation scripts that normalized the data (which was noisy due to the fact that it was an export from Kibana - raw data from the sensors wasn’t made available to us) and put it into a format we could use for analysis. Next, we built algorithms to establish baselines of sensor behavior that were used to detect irregularities and identify them as possible events. The customer data scientist gave us the logic he was using to capture the process manually. From these guidelines, we built event algorithms using state machines to baseline activity and detect deviation (positive or negative). The customer had a summer intern who named the robot DragonBot. Sometimes a good name makes all the difference!

DragonBot Blog Image

“What took the lead data scientist a week to do manually was reduced to a few hours using DragonBot.”

One key benefit of an RPA solution was the transparency of how well things were working. When the automation ran in an attended fashion (i.e. replicating a human user rather than in the background), the customer could see the robot populating a results file and could quickly interpret that our approach was successfully implementing the business logic he outlined for us. What took the lead data scientist a week to do manually was reduced to a few hours using DragonBot. In the customer’s own words: “DragonBot is doing great. We are all caught up with analyzing past data outputs and current through the end of October. Very pleased with the enabling function DragonBot provides. Really couldn’t do what we need to do without it.”

So there you have it. While RPA tools such as UiPath are great for automating manual processes such as invoicing and payment, you can also use these tools for data science applications as well!