RPA UI Target Selection Using Multi-Instance Search Scope

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Automating interaction with user interfaces in Robotic Process Automation (RPA) is challenging due to the difficulty in unambiguously identifying target UI elements, especially when multiple instances with similar properties exist, leading to failed searches and incorrect conclusions about the presence of runtime targets.

Innovation Solution

The implementation of a multiplicity flag in RPA scripts allows the robot to search for target UI elements within multiple instances of a selected node, rather than just a single instance, by setting an attribute in the UI tree representation, enabling successful identification and interaction with the correct target element.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the robot searches for target UI elements within a single instance of a selected node, then the search process is simple and fast, but the robot may fail to identify the correct target when multiple instances with similar properties exist

Engineering Contradiction:
Improvetarget identification accuracyVSAvoidsearch process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system dynamically adjusts the search scope based on the multiplicity flag setting. When the flag is set, the search expands to multiple instances; when not set, it remains limited to a single instance. This dynamic adaptation allows the system to balance between search completeness and process simplicity based on the specific automation scenario.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The multiplicity flag acts as a parameter that changes the behavior of the target identification process. By setting this parameter, the system transitions between two distinct search modes: single-instance search (simpler, faster) and multi-instance search (more comprehensive, higher reliability). This parameter-based control resolves the contradiction by allowing the appropriate search complexity to be applied based on the specific needs of the automation task.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the robot searches within multiple instances of selected nodes, then the probability of finding the correct target element increases, but the search time and computational resources increase

Engineering Contradiction:
Improvetarget identification success rateVSAvoidsearch time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The search process dynamically adapts its scope by checking the multiplicity flag. When the flag is set, the system performs a more comprehensive search across multiple instances, accepting the time cost for higher reliability. When the flag is not set, the system uses a faster, limited search. This dynamic approach allows the system to optimize the trade-off between search time and success rate based on the specific automation context.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The multiplicity flag is set in advance during the configuration phase, allowing the system to prepare the appropriate search strategy before execution. This preliminary configuration enables the robot to efficiently adjust its search behavior without real-time decision-making overhead, reducing the actual search time while maintaining high reliability when needed.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the system uses a multiplicity flag to search multiple instances, then the adaptability to varying UI conditions improves, but the complexity of the RPA script increases

Engineering Contradiction:
Improveadaptability to UI variationsVSAvoidscript complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system extracts the complexity of handling multiple instances into a separate, manageable mechanism: the multiplicity flag. This flag encapsulates the complex logic of searching across multiple instances versus a single instance, allowing the rest of the RPA script to remain simple while still achieving high adaptability. The flag acts as a standalone control element that manages the complexity without burdening the overall script structure.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The multiplicity flag serves as a simple parameter that controls the system's adaptability to different UI conditions. By changing this single parameter, the system can adapt between single-instance and multi-instance search modes without requiring complex script modifications. This parameter-based approach maintains script simplicity while achieving high versatility in handling various UI scenarios.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11886895B2Enhanced target selection for robotic process automation
Publication Date: 2024.01.30 UIPATH INC
  • US11886895B2 patent drawing
  • US11886895B2 patent drawing
  • US11886895B2 patent drawing

AI summary

A software robot is configured to automatically identify a target element (e.g., a button, a form field, etc.) within a user interface (UI) according to a set of attributes of the target element specified in the source-code of the respective UI. The robot's code specification includes a multiplicity flag which, when set, causes the robot to search for the target element within multiple instances of a UI object matching a subset of the set attributes (for instance, within all windows having a specific name, within all browser tabs, etc.)