Blog: Artificial Intelligence and Robotic Process Automation
In its simplest form, machine learning is the ability of machines to learn from past experiences using historical data (supervised and semi-supervised cases) to solve a given problem. It uses different algorithms to realise one or more (mathematical) models that act as baseline for producing the desired result set, while consuming input data parameters (dimensions). This is the fundamental difference from any computer program where instead of programmatic implementation of a logic or algorithm a trained model is used to produce the output.
By combining RPA with cognitive technologies such as machine learning, speech recognition, and natural language processing, companies can automate higher-order tasks with AI assist that in the past required the perceptual and judgement capabilities of humans.
This article is divided into 4 main sections;
- The first section talks little bit about the process automation and its advantages.
- In the second section, I describe how AI/ML can be leveraged to improve user experience.
- Third section is mainly the representation of design concepts and narrative on technologies, touching upon some of the best practices.
- Lastly, an example case showing merits of this union (between RPA and AI) is mentioned in the fourth section.
1. Process Automation
Companies adequately understand that increasing business efficiency and employee productivity is of supreme importance to thrive in a highly-competitive digital environment. Any process can be automated as long as there is a clear operating procedure available.
“Going from manual to auto-drive” —
There were times when software scripts for (semi-automatically) doing mundane routine, such as network provisioning, system administration, etc. were highly sought for increasing operational efficiency. Though there was a human involved for administering those tasks, yet the benefits of software approach became apparent quite rapidly and it started to gain popularity around the industry. With the evolution in system design, mainly the trend shift towards service oriented architecture (SOA), systems get bigger and more complicated. Various modes of integration with external and/or internal services started to emerge, creating more demand for Orchestration and Automation for flawless execution.
Leveraging low-level knowledge of application engineering as well as access to different tools and application interfaces, software modules were created for tasks blueprint, so that those tasks can be triggered on-demand or at predefined schedule as a software routine without involving a human.
Benefits of Process Automation
Companies are beginning to understand that increasing business efficiency and employee productivity is of supreme importance to thrive in a highly-competitive digital environment.
Automation through software is of utmost importance for corporations to stay competitive and achieve operational excellence by meeting (or surpassing) Service Level Agreements (SLAs). Harnessing the power of so-called software robots, these engineering companies have opened up new avenues for process engineering in the IT industry. Information processing mechanisms are now created considering RPA as a viable and more reachable option than ever before.
Incorporating AI in Process Automation
For the success of the project, it is imperative to clearly identify and understand the mechanics behind a successful realization of RPA in presence of an AI driven strategy. RPA systems where AI is considered as the centerstage requires fundamental understanding of how both technologies co-exits in collaborative manner. Design constructs from both angles need to be clearly defined before going into implementation phase.
Taking holistic perspective, historical data for model training is inevitable. Besides, other aspects such as actors, trigger points, sub-system boundaries, domain knowledge, interfacing API/hooks, regulations, as well as corner cases where human intervention may be needed, exception handling, etc. are all going to be crucial.
In the ensuing section, we will take a look at it it from different angle.
2. Inducing AI/ML in Process Automation Strategy
By now, unless you are living in a cave, everyone is quite familiar with the definitions of AI and ML. Terms like supervised/unsupervised learning and deep learning doesn’t sound foreign.
Description on AI/ML is beyond the scope of this article. At your leisure, you can go through these references to get a better idea about the topic —
This section further discusses our collaborative approach, which we saw previously in “Incorporating AI in Process Automation”.
Just like any purpose built and light weight automation, a complete process understanding including process design, MOP, environment, variable factors (moving parts), actors, etc. is necessary before implementing RPA.
Good news is that both AI and RPA can co-exist and can function well without issues.
Some of the relevant questions pertaining to “RPA/AI amalgamation”, can be listed as under —
- What degree of manual intervention is involved in the process?
- Which process steps are repetitive?
- Do you have enough training data for conversational and other AI related pieces?
- How can conversational AI augment user experience in your case?
- What are the pitfalls that AI/ML piece may pose?
- Is AI/ML adding value without incurring too much cost and complexity?
- What is your success criteria? KPI, Satisfaction index, etc.
- What are the parameters/factors that influence process improvement?
- Are there off-the-shelf tools available to handle some or all of your needs?
- Do you have the required resources? What are cost and time constraints?
There has to be a clear understanding of the subject matter. Furthermore, system architecture knowledge and insight into details involving functionalities, process, sub-systems interfaces, interconnect logic, etc. are pivotal that will serve as a blueprint of your design strategy.
For cost efficiency and ROI, you would also need to have clarity about which solutions exist today commercially or open source. For example, an off-the-shelf solution if fits well is preferred over re-inventing the wheel. Longer cycles and wastage can harm the project. Leveraging available solution and technology (where possible) provides extra cushion to minimize risks and let you focus on other areas to achieve your target system sooner.
3. Design and Implementation Techniques
Figure 1 shows a typical end-to-end component design depicting implementation of a fully functional AI driven Robotic Process Automation (RPA).
Starting from the top, we have a user interface which will allow to capture user requests. The user intent is understood by classifying into pre-defined categories using NLU pipelines. These pipelines are typically made up of several NLP libraries such as SpaCy or NLTK, providing support for word vectors/embedding in multiple languages, tokenization, etc. Another important task, which is also performed by this layer, is to extract entity (contextual data) form the user request. Entities are part of text that are of interest to the data scientist or the business, such as names of people, address, account numbers, locations etc. These are then passed downstream for further processing. Advanced techniques and algorithms, such as CRF (Conditional Random Fields), Stemming, etc. are used to train model for performing Named Entity Recognition (NER). Support for NER is available in libraries like SpaCy, which allows entity extraction by knowing their pattern and other statistical properties. Furthermore, specific piece of information, such as date and time can be extracted using libraries like duckling.
When the intent and the data objects are extracted, they pass through the next level, which is the Machine to Machine interface. At this point, a software robot can be plugged in to drive orchestration and (mainly) automation aspects. For example, ‘Create and send a report’, ‘provision or configure a network device’ or ‘use paypal account to purchase movie tickets’.
Policies and Best Practices
The figure above may over simplify the efforts involved in implementing this architecture. There are several moving parts here and each component (sub-system) requires sizeable effort and proper domain knowledge for effective implementation and coordination. It is wise to take a deep holistic look during the design phase and iron out specifics such as, protocols, data structure, access requirements, performance and efficiency, availability, logging and monitoring, exception handling, as well as technology leverage.
Where possible, externalising and decoupling of control logic can yield benefits in terms of flexible design and system updates.
How to handle exceptions?
There are going to be cases when one-off conditions will arise such as, ‘insufficient balance to purchase grocery’, ‘invalid shipping address’, ‘unsatisfied or missing data’, ‘unfavourable (weather) conditions’, and so on. To properly handle such conditions, several policies can be drafted and fed into the system through a separate exceptions control mechanism.
Piggybacking corrective actions on the error message adds value to the user experience. Hiding fine details, your error message presented to the user should reflect accurate description of the issue and suggestion for the next best action(s). This presents another opportunity for machine learning whereby, a trained model can predict follow on action based on the variables and the contextual data.
4. An Example Case — Healthcare
Let’s take a look at an example. News are circulating that healthcare sectors are increasingly adopting artificial intelligence to improve patient care and process efficiencies. So, let’s see how RPA can be beneficial here.
An effective RPA can result in improved care management, with substantial improvements in quality of coordinating care, population wellness, remote monitoring, and utilization management. When healthcare professionals are no longer bogged down by many of their daily tasks, they have the freedom to focus on more critical activities like interacting one-on-one with patients.
So how RPA is relevant here? There are manual intensive activities which organizations are bogged down with, can be alleviated by moving the work load to robots. Think for example, coding or billing. A properly defined process can be augmented with automation where multiple entries from one or more forms can be evaluated and a final bill is produced and presented the checkout kiosk without any human intervention. Collecting payment from patient will be just another step. Furthermore, the coded report/claim can also be sent to the insurance (payer) without breaking a sweat.
Similarly, cases where AI assisted image recognition is adopted for finding malignant traces can be integrated with an alert and notification system, so that sensitive issues like cancers, tumor can go into a final review by the domain experts before calling it out.
Besides cost savings aspects, providers can enforce an adaptable system in place whose behaviour can be rapidly altered as and when needed maximizing operational efficiency.
“Design by Data” approach — What’s in it for us?
Identify areas where AI can surpass a conventional logic based implementation in terms of scale, adaptability and proficiency. There can be situations where a process should decide on the next best action based on hundreds of factors. Considering all those variables (dimensions) at the time of design and build phase can become challenging. Furthermore, a program logic has to be modified for every new addition of parameters, whereas with ML based approach only the model needs to be re-trained whereas core business logic remains untouched.
In cases where sensors or monitoring tools generate tons of data, it becomes quite a daunting task to parse and extract relevant information.
Putting it all together
In this blog, I briefly described RPA and conversational AI, mainly from the point of convergence. We looked at significant factors that play central role in influencing the design and strategy. Apart from drawing values from industry standards, business case(s) need to be borne in mind to produce an exquisite implementation scheme all the way from laying out fundamental substance to nitty-gritty details.
Basic understanding around conversational AI is a must for ameliorating design quality and thoroughly building functional accuracy. Machine learning pipelines stand as the fundamental building block for producing precise results.
Robotic Process Automation is considered by many as much needed element of digital transformation. When software robots are used along with AI and guided through policies and historical data, efficiency improvement can be achieved, reaping the benefits of automation, AI/ML and creating opportunities for idyllic user experience, boosting user trust level, gaining operational excellence and improving ROI.