Context-Based Virtual Assistant Dialogue State Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtual assistants lack the ability to maintain context-based dialogues effectively, leading to inefficient task execution and user experience, as they rely on simple stateless interactions rather than dynamic state management and user input history analysis.

Innovation Solution

A context-based virtual assistant system that utilizes a state-specific context object to manage dialogue states, allowing for dynamic updates based on user input and history, enabling more intelligent and adaptive interactions by mapping user inputs to variables and transitioning between states to execute tasks more efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a stateless interaction model is used for virtual assistant commands, then the system simplicity is maintained, but the ability to maintain dialogue context and understand user intent deteriorates

Engineering Contradiction:
Improvesystem simplicityVSAvoiddialogue context
Core Design Contradiction:
Device complexityVSLoss of information

Solution Approach 1:

The system pre-defines state machines for different tasks (e.g., weather inquiry, flight booking) that encapsulate the expected dialogue flow and context requirements. These state machines are prepared in advance and selected based on the detected task type, allowing the system to maintain context without ad-hoc complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The virtual assistant system is segmented into independent task handlers, each with its own state machine. Instead of one complex global state management system, multiple simple task-specific state machines work in parallel, maintaining context within each task domain while keeping individual components simple

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If simple task execution is implemented without context management, then the ease of operation is improved, but the adaptability to different user scenarios deteriorates

Engineering Contradiction:
Improveease of operationVSAvoidadaptability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The state machine framework provides a universal structure that can handle multiple different tasks (weather, flights, hotels, etc.) through a common interface. Each task uses the same state machine paradigm but with task-specific transitions and actions, making the system both easy to operate and highly adaptable

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Manufacturing precision

If context-based dialogue management is implemented, then the task execution accuracy is improved, but the device complexity increases

Engineering Contradiction:
Improvetask execution accuracyVSAvoidsystem complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

Instead of implementing complex context management uniformly across all interactions, the system applies context management locally only where needed - within each task-specific state machine. Simple tasks without dialogue requirements can bypass complex state management, while tasks requiring context (like multi-step booking) get appropriate state machine handling

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10452695B2Context-based virtual assistant implementation
Publication Date: 2019.10.22 ORACLE INT CORP
  • US10452695B2 patent drawing
  • US10452695B2 patent drawing
  • US10452695B2 patent drawing

AI summary

Techniques for maintaining a dialog between a virtual assistant and a user are presented. The system generates a context object. Contextual information, related to the dialog, is stored to the context object. The contextual information, may define a state. Based on the state, the virtual assistant may present information, present a query, execute a query, or receive information from a user. The virtual assistant determines context throughout the conversation via the context object. The virtual assistant may to determine a variable corresponding to received input using information stored to the context object.