Scorable Tree for Dynamic Event Processing in Chatbots
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Chatbots struggle to dynamically follow conversational tracks and respond effectively to changes in user intent or context, often resulting in ambiguity and poor performance when users deviate from expected conversational directions.
Innovation Solution
A scorable tree mechanism is employed to process incoming events, where scorable functions determine scores to dispatch events to appropriate components, enabling dynamic conversational tracking and divergence between conversational tracks by using a structured scoring tree with nodes and policies to evaluate and route user inputs effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If chatbots follow rigid conversational tracks, then the system structure remains simple and manageable, but the chatbot performs poorly when users change conversational direction or context
Solution Approach 1:
The patent implements dynamic conversational tracks that can change structure during conversation based on user input. The conversational track is no longer static but adapts dynamically by adding, removing, or modifying tracks based on detected user intent and context changes, allowing the system to maintain simplicity for common paths while becoming complex only when needed.
Solution Approach 2:
The patent segments the conversational system into multiple independent conversational tracks that can be activated or deactivated. Instead of one monolithic rigid track, the system divides conversation handling into separate tracks for different intents, contexts, and user needs, allowing selective activation based on user input while maintaining overall system manageability.
2Measurement precision
If chatbots use rigid conversational tracks, then the system is easier to manage and maintain, but ambiguity in user inputs cannot be clarified effectively
Solution Approach 1:
The patent implements feedback mechanisms where the chatbot continuously evaluates user inputs against active conversational tracks, detects ambiguity or context changes, and provides clarifying questions or responses. The system uses scoring functions to measure how well user input matches expected inputs, and when ambiguity is detected, it feeds back to the user for clarification while dynamically adjusting the conversational tracks.
Solution Approach 2:
The patent changes parameters of the conversational system dynamically, including adding new conversational tracks, modifying existing tracks, and adjusting scoring thresholds based on detected user intent and context. This allows the system to adapt its precision and complexity parameters in real-time rather than being fixed.
3Loss of information
If chatbots use rigid conversational tracks, then the system structure remains simple, but the chatbot cannot maintain context when users deviate from expected directions
Solution Approach 1:
The patent creates conversational tracks that serve multiple functions simultaneously - they define expected inputs, maintain context information, guide response generation, and enable dynamic adaptation. Each conversational track is multi-functional, handling context maintenance, input validation, and response routing in unified structures rather than separate mechanisms.
Solution Approach 2:
The patent prepares multiple possible conversational tracks in advance, scoring and ranking them based on user input before fully committing to a path. This preliminary evaluation and preparation of multiple tracks allows the system to maintain context flexibility while having pre-planned responses and next steps ready, reducing the need for complex real-time context management.
Data Source
AI summary
Methods, systems, and computer program products for dispatching an incoming event are described. A scoring stack is accessed, the scoring stack comprising an identity of one or more tasks, each task corresponding to one or more scorable functions. A scorable tree is generated based on the one or more scorable functions corresponding to the one or more tasks of the scoring stack and the incoming event is processed using the scorable tree to generate one or more scores. One or more actions identified in the scorable tree are performed based on the one or more scores.


