1 Introduction

The idea that business process execution can be automated via the deployment of robotic components or bots, leading to the notion of Robotic Process Automation (or RPA) [1, 13, 27], has gained significant traction in industry. This technology trend started with cost-saving as the driving value proposition (e.g., automating many of the human-mediated tasks often outsourced to call centres could lead to signficant cost reductions). There is, however, a growing realisation that RPA can deliver a significant improvement in the quality of enterprise functionality.

A key trend is the shift in emphasis from process automation to enterprise automation. In the current thinking (and product offerings) around RPA, the unit of analysis is the business process. We argue that agent technology affords the opportunity to automate all aspects of enterprise functionality (traditionally conceived as a collection of disparate business processes) within a single unifying conceptual (and programming) framework. In the most general sense, an enterprise can be viewed as a collection of agents. This does not imply that we must view every distinct enterprise actor (people, roles, machines) as a distinct agent. Instead, we create distinct agents to accommodate situations where the separation of knowledge or capabilities (driven by business competition constraints, or compliance requirements) needs to be maintained. In the rest of this paper, we will base our arguments mainly around the Belief-Desire-Intention (BDI) agent architecture [21] which is arguably the most expressive and most comprehensive conception of agent design and implementation [20] on offer in the literature.

Much of the discourse around business process management (BPM) assumes a clear distinction between the coordination machinery (the process engine, driven by a coordination model) and the machinery that actually executes the required functionality. We have come to a point where we have to acknowledge the need for ubiquitous, hierarchic coordination. In other words, what is an activity or task at a given level abstraction is in fact a complex sub-process requiring its own coordination model at a lower level of abstraction. Similarly, an action in an abstract BDI agent plan is a goal requiring its own set of plans at a lower level of abstraction. This sets the stage for a compare-and-contrast exercise between the coordination capabilities of BDI agents and those of current business process engines.

In the following, when we refer to RPA, we mean the RPA technology of the future, built around sophisticated agent technology (such as BDI agent systems).

2 Related Work

Agent technology has been used in RPA in a variety of settings. The following is a brief survey of existing work in using agents or bots in RPA implementations in various contexts. Agents have been used in RPA to enable automation in multiple industries and enterprise functions including Telecommunication [18], Human Resources (HR) & Recruitment [6, 8], and Banking [11]. Rule-based and monotonous tasks of a business process can be automated with the help of rule-based agents whereas agents utilizing AI algorithms can be used to automate more complex business processes involving decision-making [23]. Agents in RPA combine AI technologies such as machine learning, computer vision, image and natural language processing with internet of things (IoT) and block chain technologies to perform automation tasks. [16] represents an orchestration of agents with different functionalities into a single bot to automate a business function.

Autonomous agents have been used in an innovative approach to debt collection [28]. This approach uses optical character recognition (OCR) to identify the main objects from a document and employs deep learning methods, such as temporal convolutional networks and convolutional neural networks to enhance the quality. Lin et al. [14] demonstrates RPA agents in semiconductor smart manufacturing without the help of an RPA vendor, where an OCR technique is implemented for reading handwritten or printed text and an artificial neural network (ANN) is implemented for identifying the fuzzy or clear pictures. Kobayashi et al. [9] illustrates requirements for utilizing RPA agents in consumer services, especially using robots to assist elderly people by communicating with their families and placing grocery orders for them. Desirable technologies for implementation with RPA agents include the internet of things (IoT), artificial intelligence (especially the Watson Natural Language Classifier for learning communication), the Google Cloud Platform for voice recognition, and the NeoFace Cloud for facial recognition. Zhang et al. [30] has provided an RPA implementation framework for audit engagements which involves audit workflow analysis, audit tasks are automated using either RPA agents or combination of RPA agents and AI or cognitive computing based on the complexity of the audit task (structured, semi-structured or unstructured respectively). Rizk et al. [22] explores interactive automation in the form of a conversational digital assistant. It allows the business users to interact with customers and customize their automation solutions through natural language. The framework, responsible for creating such assistants, relies on a multi-agent orchestration model and conversational wrappers to create autonomous agents including RPA agents. These agents are equipped with skills that help them understand and generate natural language alongside task automation. The orchestrator expects agents to adhere to a specific contract to determine which agents respond to a user’s utterance.

Little research has been conducted to improve RPA technology using Belief-Desire-Intention (BDI) agents. Mahala [15] explores using BDI agents as a promising alternative to the current approaches in the implementation and design of complicated software systems and uses BDI agent architecture to implement BDI agents in RPA. BDI agents can handle multiple competing agendas which is not possible in process-oriented approaches. BDI agents provide additional flexibility by using an option selection function and allowing high priority events to interrupt lower priority goals.

3 Agent-Based Process Execution

It is useful to compare and contrast agent-based process execution with current approaches to process execution based on BPM technology.

3.1 Where BPM Outperforms Agent-Based Execution

  • Process models are easier to understand than agent models

  • Diagrammatic executable specification languages are in widespread use (e.g., BPMN)

  • BPM technology in general enjoys widespread use and adoption

  • There is a vast amount of associated tooling on offer

  • Mature technology for data-driven extraction of process models is available and in widespread use (process mining)

3.2 Where Agent-Based Execution Outperforms BPM Technology

  • BDI agent plans have pre-conditions

  • In some extensions, they also have post-conditions

  • There are sophisticated mechanisms for hierarchic structuring of workflows (via sub-goals)

  • Sophisticated mechanisms exist for the interruption, re-consideration and re-deliberation of agent plans (again, leveraging sub-goals)

  • Sophisticated event listeners and event management exist (e.g., the event set and the event selection function)

  • Sophisticated XOR-gateways, which might leverage run-time non-functional assessments are on offer (via the option selection function)

  • Sophisticated pre-emptive scheduling mechanisms exist (e.g., intention stacks and intention selection)

  • Sophisticated agent communication languages exist

  • A large body of other AI results can be brought to bear (learning, uncertainty handling, knowledge representation and reasoning, optimisation, game-tree search...)

4 The Evolution of Enterprise Functionality

4.1 Personalization

Personalization has received considerable attention in the recent past. The question of business process personalization has been considered in the literature [29] (although tool support is not in widespread use in industry). The adoption of RPA makes the prospect of extreme personalization or enterprise-wide personalization - where all business processes personalize to cater to the individual’s unique characteristics or needs every time an external client (or internal user) engages with the enterprise - feasible. For instance, the simple act of an employee engaging with the corporate leave booking process can lead to multiple downstream consequences. It can trigger a process to search for temporary replacement from the internal pool of employees, or a process to externally recruit a temporary replacement (which process is actually executed might be determined by the preferences of the employee seeking leave). Also, in a manner driven by employee preferences, a leave notification email might be sent to a set of internal or external stakeholders, a temporary hold might be placed on the employee’s corporate gym and childcare centre membership, and a similar temporary hold might be placed on room cleaning services for the employee’s office. Depending on the employee’s preferences, a request for a travel quote might be generated from the firm’s corporate travel agency and an alert might be generated for the firm’s internal security service seeking additional patrolling of the employee’s office area for the duration of the leave. In terms of RPA implementation, the personalization exercise would be driven by a multi-dimensional characterization of the individual (which might be explicitly coded or learnt over a series of interactions). An agent planning approach, where the variations in the preconditions satisfied might lead to a wide variety of plans or sub-plans invoked, would be far more amenable to achieving these behaviour variations than a more traditional approach based on existing BPM technology.

4.2 Variation

While personalization is one significant driver for process variability [2], a range of other factors require the generation, selection and enactment of business process variants. These include the local needs of various industry segments, local compliance requirements and so on. An insurance claim handling process, for instance, must vary according to the legislative and regulatory frameworks that apply in various jurisdictions and according to the specific line of business, while adhering, where possible, to the intent of an enterprise-wide reference process model [19]. An agent planning approach that would be feasible in an RPA context would enable us to support a very large space of process variants, for very similar reasons to those listed above.

4.3 Adaptation

The notion of business process adaptation generalizes many of the questions around process personalization and variation management [7]. Specifically, adaptation of enterprise functionality involves responding to changes in the operating context, ideally in real-time. Reactivity is difficult to achieve in a BPM context, but is often a natural consequence of the adoption of agent technology (specially, BDI agent systems). BDI agent systems provide for event listeners which feed into an event set. The event set can be viewed as a FIFO queue, or can be provided as input to an event selection function which can support sophisticated machinery for identifying the event most deserving of immediate attention. A combination of event listeners and event-driven, context-sensitive agent planning will enable future RPA systems to achieve enterprise functionality adaptation on a scale and at a level of ubiquity not achievable with current BPM technology.

4.4 Distribution

Distributed business process execution has received limited attention in the literature [4], but represents an important challenge. Future RPA systems will likely still require a mix of human and machine functionality. In general, the locus of execution of these functionalities might be different (even for fully automated processes). Distributed process execution may be necessary for a variety of reasons. The knowledge required for process execution might be distributed and not easily shared on account of business competition or compliance constraints. Sometimes connectivity or network latency issues might impede knowledge sharing and hence centralized process execution. Distributed process execution is not uncommon in the current context. A field service technician might execute some parts of an equipment maintenance or repair process on-site, while the automated components might be executed at the corporate headquarters. Future RPA systems will enable seamless distribution of process execution (something eminently achievable with current agent technology). This will also likely involve elements of edge computing (driven by similar considerations underpinning current deployments of edge computing).

4.5 Distributed Optimization

While business process optimization has received considerable research attention [26], and some modicum of tool support, very little attention has been paid to the problem of distributed optimization. The notion of distribution here includes geographic distribution, but also distribution over multiple loci for decision making and multiple actuators (or effectors or business process execution engines). The optimization exercise can apply to design-time artefacts (plans, coordination models, business process designs etc.) or to run-time artefacts (executing agents, business process instances and such). For a simple example, consider a situation where seeking agreement from a customer to wait for a few hours can lead to better alignment with the trucking providers schedule (leading to discounts in trucking costs) thus leading to an overall reduction in costs incurred by both the producer and customer. This is a clear instance of run-time optimization, but if this is a repeated pattern, it can also play out at design time. Future RPA systems will be able to exploit such opportunities by leveraging enterprise business process architectures [10] and techniques for managing the designs of business process ecosystems [12]. For run-time optimization, techniques for solving Distributed Constraint Optimization Problems (DCOP) such as [3].

5 Novel Forms of Governance

In this section, we summarize future prospects for RPA systems governance.

Normative Governance: Future RPA systems will need to be governed as a socio-technical system based on norm-driven agents. In this conception [24] the socio-technical system will be populated by agents (humans or machines/RPA systems) each of which retain individual autonomy but are incentivized to comply with a set of norms that govern inter-agent interactions (obligations, prohibitions and such). This approach offers the opportunity to ensure that the behaviour of the overall multi-agent RPA system meets the required objectives while not removing the opportunities for autonomous behaviour on the part of the constituent agents.

6 Conclusion

This paper reports on a preliminary exercise in technology foresight in relation to RPA. It is by no means a detailed research roadmap, which remains an important item for future work. The formation of optimal coalition structures [25] can play an important role in delivering enterprise functionality via RPA, but remains the subject of future study. The role of agent belief dynamics (revision, merging etc.) [5, 17] in RPA also requires further study.