System and related methods for user-defined scenario identification and analysis of historical data

The multi-agent AI system enhances decision-making by allowing flexible scenario definition, iterative feature refinement, and efficient database querying using DAGs, addressing limitations of existing systems in pattern identification and adaptability.

GB2634730APending Publication Date: 2025-04-23TRADRLAB LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
GB2023015835
Authority / Receiving Office
GB · GB
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-16
Publication Date
2025-04-23

AI Technical Summary

Technical Problem

Existing systems lack flexibility in scenario definition, user involvement in model refinement, computational efficiency, and adaptability to various data sources and architectures, limiting their ability to identify patterns in historical data effectively.

Method used

A multi-agent artificial intelligence system comprising a feature extraction engine, function projection system, and model generation engine using Directed Acyclic Graphs (DAGs), which allows users to define scenarios through text, voice, or image, iteratively refine features, and project onto a function subspace for efficient database querying.

Benefits of technology

Enables versatile and interactive decision-making and analysis by integrating user input at multiple stages, ensuring compatibility with diverse data sources and computational environments, and providing comprehensive statistical analysis of historical scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000001_0000
    Figure 00000001_0000
  • Figure 00000002_0000
    Figure 00000002_0000
  • Figure 00000002_0001
    Figure 00000002_0001
Patent Text Reader

Abstract

A system for query construction and processing is configured to: receive a set of input data (e.g. including visual information and / or natural language) describing a scenario query; perform a feature
Need to check novelty before this filing date? Find Prior Art

Description

[002] In the realm of decision-making and analysis, existing systems often fall short in providing a robust, dynamic, and user-friendly interface for identifying patterns in historical data. Traditional methods typically rely on either statistical techniques that may be overly simplistic and unable to capture the nuances of complex scenarios, or machine learning approaches that may lack interpretability and user input in the model creation process.

[003] Another limitation is the rigidity of predefined scenarios. Current systems are not adept at allowing users to define and describe scenarios in a flexible manner, often confining them to a fixed set of variables or parameters. Such systems may rely on one mode of input, such as text, limiting their applicability across various contexts and user preferences. Moreover, the feature extraction capabilities of existing solutions often remain static, lacking the ability to iteratively refine the identified features based on user feedback.

[004] When it comes to constructing a mathematical model to identify the given scenario, present systems usually depend on a limited set of functions, making it challenging to adapt the model to unique or evolving scenarios. Furthermore, the process is often opaque, lacking a mechanism for users to influence or understand the function selection and projection methods employed.

[005] The search for historical occurrences of a particular scenario in past data is another area where extant systems are found wanting. Many solutions suffer from high computational costs and may not offer an efficient way to delve into large datasets. These systems also frequently fall short in providing a comprehensive statistical analysis of past occurrences, an essential feature for interpreting the historical significance of a given scenario.

[006] Additionally, the architecture of existing systems often lacks scalability and adaptability, usually being designed to work within the confines of specific computational settings or databases. This makes it difficult to implement them in diverse environments or to integrate them with different data sources.

[007] US11748342B2 describes an apparatus comprising an interface and a natural language processor. The interface receives a data retrieval request formatted in a natural language and the natural language processor processes the data retrieval request. Processing the data retrieval request includes identifying database entities, database relations, or any combination thereof based words in the data retrieval request. It can also include identifying database entity criterion, database relation criterion, or any combination thereof based on words in the data retrieval request. It also includes generating a database query based on the database entities, the database relations, the database entity criterion, the database relation criterion, or any combination thereof and causing the database query to be applied to a database.

[008] US10409846B2 describes systems and methods for querying a data repository using a flexible natural language interface, which comprises receiving an initiated user question at a graphical user interface and generating automatically one or more suggested completed questions in response to the receipt of the initiated user question. A selected completed question at the graphical user interface is received and subsequently parsed into a logic representation. The logic representation is translated into an executable query, which is executed against the data repository. One or more search results in response to the executed translated query and presented at the graphical user interface.

[009] The aforementioned prior art patents describe systems that can only run on a limited set of SQL functions, the flexibility of the query constructors also being limited due to the nature of SQLbased translation tools. These systems are incapable of parsing natural language input data into complex queries constructed of multiple sequential functions. Furthermore, the end user has little to no visibility or ability to interact with the query construction process, and so it is not possible to iteratively improve queries as they are constructed.

[010] It is within this context that the present invention is provided. Summary [Oil] The present disclosure pertains to a multi-agent artificial intelligence system designed to enhance decision-making and analysis by identifying and analyzing patterns in historical data based on user-defined scenarios in a manner which overcomes the aforementioned shortcomings of the prior art.

[012] The principal components of the system include a feature extraction engine, a function projection system, a model generation engine using Directed Acyclic Graphs (DAGs), and a backend execution environment connected to historical databases. Key merits of the invention are its flexibility in scenario definition, user involvement in model refinement, computational efficiency, and adaptability to various data sources and architectures.

[013] The feature extraction engine receives input from the user in the form of text, voice, or image to describe a particular scenario. This engine then identifies key features of the scenario to generate a prompt, which can be recursively refined by the user for more accurate representation. The refined prompt is subsequently passed to a function projection system. This system projects the refined prompt onto a function subspace selected from an extensive library of pre-built functions, thereby generating a subset of functions that are syntactically and thematically matched to the user-defined scenario.

[014] The invention further comprises a model generation engine that constructs a DAG representing a sequence of functions that will identify the scenario in historical data. The user has the ability to augment this model for enhanced accuracy. Once finalized, the DAG model is executed by a backend system against a database of historical records. The backend system is capable of efficiently sifting through large datasets to pinpoint past occurrences of the scenario, complete with a statistical analysis.

[015] Through its multi-agent architecture, the invention effectively integrates user input at various stages, thereby providing a versatile and interactive platform for decision-making and analysis. Its designed adaptability ensures compatibility with a range of data sources and computational environments.

[016] Thus, according to a first aspect of the present disclosure, there is provided a system for assisted decision-making and data query construction, the system comprising: one or more user devices; at least one first database having stored thereon a library of functions; at least one second database having stored thereon a set of historical scenario data; and one or more servers in communication with the one or more user devices via a graphical user interface.

[017] The one or more servers of the system are configured to: receive a set of input data from a user device describing a scenario query; perform a feature extraction operation on the input data; construct a refined query based on the input data and the extracted features; map the refined query onto a function subspace comprising a set of functions from the at least one first database to identify a subset of matching functions; input the query data, including the subset of matching functions, into a first neural network configured to generate a corresponding query in the form of a Directed Acyclic Graph (DAG) which, when executed on a dataset from the at least one second database, will use the function subset to identify occurrences of matching historical scenarios of the refined query; receive a corresponding DAG query from the first neural network and return the corresponding DAG query to the requesting user device for feedback and modification; receive a finalised DAG query from the requesting user device; execute the finalised DAG query on the at least one second database; and return one or more query results to the requesting user device.

[018] In some embodiments, each function in the first database is accompanied by a description of the function and associated thematic element data.

[019] In some embodiments, the construction of the refined query is performed by a second neural network which is configured to convert the extracted features and the input query data into one or more refined queries in the form first natural language text strings.

[020] Specifically, the one or more servers may be further configured to return the refined query to the requesting user device for iterative feedback and modification and receive a final refined query form the user device.

[021] The multiple suggested refined queries may be returned to the requesting user device for selection.

[022] In some embodiments, the system further comprises at least one third database comprising a library of predefined functional basis vectors for representing queries, and which is constructed and structured based on the function subspace defined in the first database.

[023] In such embodiments, the step of mapping the refined query onto the function subspace may comprise determining a vector of embeddings representing the refined query.

[024] The mapping step may also further comprise using said vector of embeddings to identify a first subset of functions that are semantically similar to the input query within the function subspace.

[025] Additionally, the mapping step may further comprises the steps of: comparing each of the identified functions in the first set of functions against a first database which is structured according to common scenario themes to determine a thematic distance measure representing thematic similarity; and determining a reduced second subset of functions based on the semantic and thematic similarity measures of each function in the first subset.

[026] The second subset may comprise the top N most closely matched functions from the first subset, and the one or more servers are further configured to return the second subset to the requesting user device for feedback and modification prior to inputting the query data and function subset into the first neural network.

[027] In some embodiments, the one or more servers are further configured to receive input data in the form of voice recordings, and to perform a speech to text conversion on said audio recordings.

[028] In some embodiments, the one or more servers are further configured to receive input data in the form of images, and to augment the images with one or more annotations.

[029] In some embodiments, the one or more servers are further configured to receive input data comprising multiple input data elements, and to combine the elements into a single query input.

[030] In some embodiments, the first neural network is configured to output DAG queries in the form of JSON representations.

[031] In some embodiments, the one or more servers are further configured to the one or more query results comprise historical occurrences of scenarios matching the refined query, and are accompanied by one or more related statistical measures.

[032] In some embodiments, the one or more servers are further configured to determine that insufficient features were extracted from the input query data, and to request additional query information from the requesting user device. Brief Description of the Drawings

[033] Various embodiments of the invention are disclosed in the following detailed description and accompanying drawings.

[034] FIG. 1 illustrates a flowchart representing the high-level functions of the disclosed system.

[035] FIG. 2 illustrates a block diagram schematic of the necessary servers and computer architecture in an example implementation of the disclosed system.

[036] FIG. 3 illustrates a data flow representation of an example use-case of a user providing a prompt, generating a DAG and executing it against the back-end execution engine.

[037] FIG. 4 illustrates a flowchart representing an example scenario description process.

[038] FIG. 5 illustrates a flowchart representing an example feature extraction and prompt construction process.

[039] FIG. 6 illustrates a flowchart representing a high-level description of an example process for the projection of the prompt onto a subspace of functions that span the syntactic and thematic information contained within it, referenced to a set of functional basis vectors.

[040] FIG. 7 illustrates an example process for the generation of the functional basis vectors used by the prompt generation engine.

[041] FIG. 8 illustrates a flowchart of an example process for the generation of a directed acyclic graph of function calls which, when executed, will identify historical occurrences of the scenario of interest.

[042] FIG. 9 illustrates an example of a DAG to identify a scenario, serving as an executable model for our back-end execution engine.

[043] Common reference numerals are used throughout the figures and the detailed description to indicate like elements. One skilled in the art will readily recognize that the above figures are examples and that other architectures, modes of operation, orders of operation, and elements / functions can be provided and implemented without departing from the characteristics and features of the invention, as set forth in the claims. Detailed Description and Preferred Embodiment

[044] The following is a detailed description of exemplary embodiments to illustrate the principles of the invention. The embodiments are provided to illustrate aspects of the invention, but the invention is not limited to any embodiment. The scope of the invention encompasses numerous alternatives, modifications and equivalent; it is limited only by the claims.

[045] Numerous specific details are set forth in the following description in order to provide a thorough understanding of the invention. However, the invention may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the invention has not been described in detail so that the invention is not unnecessarily obscured. DEFINITIONS:

[046] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention.

[047] As used herein, the term "and / or" includes any combinations of one or more of the associated listed items.

[048] As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well as the singular forms, unless the context clearly indicates otherwise.

[049] It will be further understood that the terms "comprises" and / or "comprising," when used in this specification, specify the presence of stated features, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, steps, operations, elements, components, and / or groups thereof.

[050] The terms "first," "second," and the like are used herein to describe various features or elements, but these features or elements should not be limited by these terms. These terms are only used to distinguish one feature or element from another feature or element. Thus, a first feature or element discussed below could be termed a second feature or element, and similarly, a second feature or element discussed below could be termed a first feature or element without departing from the teachings of the present disclosure. DESCRIPTION OF DRAWINGS

[051] The present disclosure a multi-agent artificial intelligence system designed to assist in decision-making and analysis through the identification and scrutiny of patterns in historical data.

[052] The system includes a feature extraction engine, a function projection engine, a model generation engine employing Directed Acyclic Graphs, and a backend execution environment connected to a repository of historical data. Through these components, the system offers an 7 integrated approach that combines the flexibility of user-defined scenarios with advanced computational techniques.

[053] Users can describe scenarios using multiple modes of input, such as text, voice, or images. The described scenario then undergoes an iterative refinement process to create a mathematical model that is capable of identifying similar scenarios in a database of historical records.

[054] Referring to FIG.l, a flowchart is shown illustrating the high-level functions of the disclosed system.

[055] After the process commences at the start step 100, the user engages a graphical interface to integrate various types of data inputs into a singular or multiple images describing the event or scenario of interest 102. Such images can encompass charts, time series data, and textual annotations.

[056] Upon creating the image, the next procedural step 104 involves submitting a snapshot of this image to a feature-to-NLP engine. This engine performs feature extraction on the image, subsequently returning a set of extracted features expressed as natural language descriptors to the user.

[057] Step 106 determines whether the necessary features were extracted. Should the feature capture be deemed unsuccessful, the process circulates back to step 104. During this iteration, the user supplements the image with additional annotations and instructions before resubmission for feature extraction.

[058] If the features are successfully captured, the workflow advances to step 108. At this stage, the captured features are submitted to an NLP-prompt construction engine. This engine produces a prompt that is both expressive and comprehensive, encapsulating all the identified features of interest.

[059] In step 110, the user reviews the generated prompt. Should the prompt be found lacking, the process loops back to step 108 for recursive feature expansion and prompt refinement. If satisfactory, the workflow proceeds to step 112, where the NLP prompt undergoes projection onto a low-dimensional function subspace. This projection is accomplished in relation to a preexisting functional basis, coupled with vector embeddings of the NLP prompt, culminating in an augmented prompt.

[060] Subsequently, in step 114, this augmented prompt is submitted to a model DAG generation service. A Directed Acyclic Graph (DAG) is formulated, predicated on the features and augmented prompt generated in the prior steps. This DAG is relayed back to the user for further action.

[061] Step 116 allows the user to interact with this generated DAG through an interactive graphical user interface. The purpose here is to offer the user an opportunity to augment or refine the final model as needed before execution.

[062] Following this, in step 118, the finalized model is routed to a backend execution system for comprehensive evaluation. The system undertakes the task of matching the described pattern or scenario against a repository of databases containing historical data.

[063] Lastly, step 120 is where the results are compiled and conveyed back to the user. These results include historical occurrences of the scenario and related statistical metrics for further analysis. The entire process culminates at the end step 122.

[064] Referring to FIG.2, a block diagram is shown representing the architecture of the example system, which comprises an assemblage of servers and databases specifically designed to facilitate the process of scenario description, function subspace projections, and scenario occurrence identification.

[065] The system is hosted across multiple computer servers that interact with various databases. At the user level, a user 202 engages with the system through a user device, which connects to a web-based front end 204. The front end 204 communicates with an HTTP server and orchestrator 206, functioning as the intermediary for data and request transmission between the front end and other architectural components of the system.

[066] One of the principal communications from the HTTP server 206 is directed towards a data collection service for scenario description 208. This service is responsible for gathering and forwarding pertinent data to a historical data database 210. In addition to the data collection service, the HTTP server 206 also serves as the communication hub for four separate computational engines. These include a neural network feature extraction engine 212, a function projection engine 214, a neural network DAG (Directed Acyclic Graph) generation engine 216, and a back-end execution engine 218.

[067] The function projection engine 214 communicates with an assortment of databases: one containing function basis vectors 220, another holding vector embeddings 222, and an expert function library 224. This expert function library serves as a repository of predefined functions and methods and has communication links to both the historical data database 210 and the back-end execution engine 218.

[068] The system architecture is capable of efficiently handling various computational tasks, ranging from data collection to advanced mathematical projections as described herein, all orchestrated through the HTTP server 206. This layout ensures a structured yet flexible framework for executing the sequence of steps involved in the identification and description of complex scenarios or events based on user-provided inputs and automated feature extraction and projection methods.

[069] FIG. 3 shows a data flow representation of an example use-case and the steps a user 300 takes to convert a natural language prompt into a Directed Acyclic Graph (DAG) and execute it against a back-end execution engine, using the architecture and resources detailed in previous figures.

[070] Initiating the data flow, the user 300 submits a natural language prompt to a first LLM1 302. This LLM1 302 processes the natural language prompt into a series of logical steps and returns this transformed input to the user 300 for validation. The user may accept or amend the logical steps, engaging in an iterative validation process.

[071] After securing user approval, the restructured prompt undergoes a mapping process against a vector of embeddings in a Vec library 304. This library identifies the most suitable functions within a function space for implementing the prompt's requirements. The top N most closely matched functions are returned for subsequent processing.

[072] The revised prompt then integrates these closely matched function candidates and is forwarded to a second LLM2 306. The LLM2 306 produces a JSON-formatted DAG representation of a pattern-matching algorithm that incorporates the identified functions. This DAG representation is sent back to the user 300, who has the option to edit and set parameters via a graphical user interface.

[073] Once the user finalizes the DAG, it is submitted to a back-end execution library 308. The library 308 executes the function set against a historical database 310 and furnishes the user 300 with the query results, accompanied by statistical analysis and other relevant measures. Through this methodical data flow, the system translates user-provided prompts into executable DAGs, effectuating a comprehensive analysis of complex queries against historical data.

[074] FIG. 4 details a flowchart outlining an example of a scenario description process, comprising several steps that allow the user to describe complex scenarios with the system's assistance. This approach accommodates various input methods, including voice-to-text technology, free text entry, and the use of graphical representations collated from database data. The graphical representations can also be enhanced with free text annotations for further clarification.

[075] The method initiates at the start point 400 and proceeds to step 402, where the user employs a graphical user interface to select and incorporate relevant data sources into an input request.

[076] Following data source identification, the method advances to step 404. At this juncture, the selected data is imported and rendered into a visual format, such as a chart, table, or other graphical representation.

[077] Subsequently, the method proceeds to a validation step 406, where the user is queried on whether the visual representation adequately captures the desired pattern or scenario. If the representation requires modification, the method cycles back to the data import stage at step 404 for further refinement. If the representation meets the user's requirements, the method advances to step 408.

[078] In step 408, the user is given the opportunity to add annotations directly onto the graphical representation. These annotations serve to highlight key events or phenomena and articulate how they contribute to the complexity of the depicted pattern or scenario.

[079] Concluding the method, step 410 directs the system to generate a final snapshot of the graphical representation, complete with data and user-added annotations. This consolidated image is then forwarded to the feature-to-NLP Al system for subsequent analysis. The method then terminates at the end point 412.

[080] FIG. 5 describes a flowchart that outlines an example feature extraction and prompt construction process. This process leverages a specialized deep neural network engine for generating precise natural language descriptions of submitted scenarios. The engine focuses on key features that it identifies as relevant to a complex event of interest.

[081] The method initiates at start point 500, where an image is received from a user 502 via the graphical user interface. Upon receipt, the process moves to step 504, where text associated with or embedded in the image is extracted and stored in a designated storage medium.

[082] The next phase of the method occurs at step 506, wherein a custom prompt is generated. This custom prompt integrates the extracted text and the context of the image, and explicitly requests a comprehensive description of all features in the image that are relevant to the complex event of interest, as previously annotated.

[083] Proceeding to step 508, the extracted text, the image, and the custom prompt are submitted to the specialized deep neural network system. This system is trained to interpret and analyze the various components in the context of the user's inquiry.

[084] Subsequently, at step 510, the deep neural network model returns a text-based interpretation of the image, along with identified features that are germane to the complex event of interest. This interpretation is made accessible to the user for review or further action.

[085] The process concludes at end point 512, providing the user with a structured, machinegenerated interpretation of an image-based scenario, replete with relevant features that enrich understanding of the complex event under investigation.

[086] FIG. 6 describes a flowchart delineating an example process for the projection of a user-supplied prompt onto a function subspace. This subspace captures both syntactic and thematic information pertinent to the prompt and references a predefined set of functional basis vectors that embody common scenarios in this domain.

[087] The process is initiated at start point 600, where a server receives a text-based representation of a complex scenario from a user 602.

[088] Moving to step 604, the system ingests a list of functions as well as descriptions for each function from the expert system library. Concurrently, the system generates a vector of word embeddings, termed V(text), using the incoming natural language description of the scenario and the function list from the expert system library.

[089] Upon reaching step 606, this generated vector of embeddings, V(text), is used to identify a set of functions that share a semantic similarity with the incoming scenario. This set is denoted as F(V).

[090] In the following step 608, the similarity of F(V) is quantitatively measured against a well-organized database containing functions that cover a broad range of scenarios specific to the technical domain. These functions are sorted by thematic scenarios, which act as the basis vectors in the functional space of interest. The outcome of this quantitative comparison is a set of distance metrics, M(V), capturing thematic or process-related similarity measures.

[091] Proceeding to step 610, the system integrates V(text), F(V), and M(V) to derive a reduced set of functions, denoted as F(sub), from the total functions available in the expert library. These functions are ranked based on their relevance to the user-supplied scenario description.

[092] The process concludes at end point 612, providing the user with a subset of relevant functions, F(sub), that capture the essence of the user's initial complex scenario, enriched by both syntactic and thematic correlation.

[093] FIG. 7 provides a depiction of an example process intended for the generation of functional basis vectors, collectively referred to as F(full), employed by the prompt generation engine. These vectors are integral for constructing the similarity measure M(V) and the functional subspace F(sub).

[094] Initiating at start 700, the process moves to step 702 where the full function space, F(full), along with associated descriptions, is ingested. The functions in this step are sourced from a backend execution library, and the objective is to arrange these functions into distinguishable, easily manageable groups.

[095] Proceeding to step 704, the method identifies clusters that serve as prototypes for functional subspaces. Clustering is executed using algorithms such as HDBSCAN. Criteria for the clustering include the function's title, an explanatory descriptor, and the parameters it uses. The cohesiveness of the resulting clusters is evaluated to ascertain an optimal number of groupings.

[096] Step 706 then engages in the elimination of linearly dependent functions within the clusters. A basis search is performed within each cluster using sample inputs generated from a defined subset of domain data. These sample inputs are employed to extract output vectors for each function, assisting in the identification of linearly independent functions within the same cluster.

[097] Continuing to step 708, linearly dependent functions between clusters are eliminated. The principle of linear independence is applied iteratively to identify a subset of functions within each cluster that display no linear dependence with functions in other clusters. These subsets are established as the foundational functions of their respective clusters.

[098] In the concluding step 710, the method integrates Principal Component Analysis (PCA) with Locally Linear Embedding (LLM) to identify any missing functional bases. This process is iterative and applied across all clusters generated from the original segmentation of the full function space. This iterative action ensures a complete identification of all foundational functions. Following the removal of linearly dependent functions, dimensionality reduction techniques like PCA are applied to identify missing functions necessary for achieving a complete basis. The algorithm is coupled with LLM to aid in the identification of these missing functions.

[099] The process concludes at end point 712, resulting in a thoroughly refined set of functional basis vectors, F(f u 11), which are ready for use in generating similarity measures M(V) and functional subspaces F(sub).

[0100] FIG. 8 shows a flowchart detailing an example process for generating a directed acyclic graph (DAG) of function calls. When executed, this DAG is designed to identify historical occurrences of the specified scenario of interest. At this juncture, the system is equipped with a refined prompt, a set of functions complete with their descriptions, and thematic information pertaining to the scenario under consideration.

[0101] The process is initiated at start 800 and moves to step 802, where a customized and detailed prompt is constructed. The elements utilized for this construction include F(sub), the descriptions of the functions found in F(sub), a finalized prompt obtained from the recursive prompt construction process, examples of prompts that share thematic similarities based on the measure M(V), and instructions to the artificial intelligence system for assembling these elements into a DAG of function calls.

[0102] Following the construction of the custom prompt, the process advances to step 804. Here, the system submits this prompt to a fully trained neural network model. The model is tasked with taking the custom prompt and constructing a DAG. This DAG is composed of interconnected function calls described in the prompt, which are a subset of the functions contained in the backend expert library.

[0103] Concluding the process at step 806, the neural network translates the DAG into a textbased representation, such as a JSON structure. This representation is returned to the user interface for the user to review.

[0104] The process then ends 808, resulting in a DAG that is both encoded and returned to the user for additional, recursive refinement. This DAG serves as a model for identifying scenarios that align with the conditions specified in the original, refined prompt.

[0105] FIG. 9 depicts an example of a Directed Acyclic Graph (DAG) produced according to the disclosed system and methods, designed to identify a specific scenario. This DAG functions as an executable model compatible with the system's back-end execution engine. The figure is particularly relevant to the trading sector, illustrating a DAG represented in JSON format that sequences functions for the purpose of identifying historical patterns in financial data.

[0106] A user will be presented with such a display prior to setting the parameters they wish to search a database for. They will be able to make modifications in an intuitive manner via the graphical user interface described above, before submitting the DAG for execution.

[0107] The example DAG commences with an initial function OHLC 902, which is responsible for obtaining Open, High, Low, and Close data points from financial markets. This is followed by the function regional OHLC 904, specialized in gathering OHLC data but constrained to specific geographical or market sectors. Another function in the DAG is trailing min 906, designed to capture the lowest value within a specified range of historical financial data. These functions output values that are then subjected to comparative analysis against predefined lows to decide the subsequent function to be executed within the DAG.

[0108] As the DAG progresses, it culminates in the inclusion of sequence pattern matchers 908 and 910. These functions serve the purpose of identifying recurring trends or anomalies in financial data patterns, effectively concluding the functional chain of the DAG.

[0109] After the user defines parameters concerning the lows to be considered, execution of this DAG against a historical scenario database enables the identification of financial patterns. Such patterns are congruent with the type of data or scenarios that the user aims to explore or monitor. NETWORK COMPONENTS

[0110] The disclosed system can be implemented over any suitable network architecture using one or more servers and user devices.

[0111] A server as described herein can be any suitable type of computer. A computer may be a uniprocessor or multiprocessor machine. Accordingly, a computer may include one or more processors and, thus, the aforementioned computer system may also include one or more processors. Examples of processors include sequential state machines, microprocessors, microcontrollers, graphics processing units (GPUs), central processing units (CPUs), application processors, digital signal processors (DSPs), reduced instruction set computing (RISC) processors, systems on a chip (SoC), baseband processors, field programmable gate arrays (FPGAs), programmable logic devices (PLDs), gated logic, programmable control boards (PCBs), and other suitable hardware configured to perform the various functionality described throughout this disclosure.

[0112] Additionally, the computer may include one or more memories. Accordingly, the aforementioned computer systems may include one or more memories. A memory may include a memory storage device or an addressable storage medium which may include, by way of example, random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), electronically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), hard disks, floppy disks, laser disk players, digital video disks, compact disks, video tapes, audio tapes, magnetic recording tracks, magnetic tunnel junction (MTJ) memory, optical memory storage, quantum mechanical storage, electronic networks, and / or other devices or technologies used to store electronic content such as programs and data. In particular, the one or more memories may store computer executable instructions that, when executed by the one or more processors, cause the one or more processors to implement the procedures and techniques described herein. The one or more processors may be operably associated with the one or more memories so that the computer executable instructions can be provided to the one or more processors for execution. For example, the one or more processors may be operably associated to the one or more memories through one or more buses. Furthermore, the computer may possess or may be operably associated with input devices (e.g., a keyboard, a keypad, controller, a mouse, a microphone, a touch screen, a sensor) and output devices such as (e.g., a computer screen, printer, or a speaker).

[0113] The computer may advantageously be equipped with a network communication device such as a network interface card, a modem, or other network connection device suitable for connecting to one or more networks.

[0114] A computer may advantageously contain control logic, or program logic, or other substrate configuration representing data and instructions, which cause the computer to operate in a specific and predefined manner as, described herein. In particular, the computer programs, when executed, enable a control processor to perform and / or cause the performance of features of the present disclosure. The control logic may advantageously be implemented as one or more modules. The modules may advantageously be configured to reside on the computer memory and execute on the one or more processors. The modules include, but are not limited to, software or hardware components that perform certain tasks. Thus, a module may include, by way of example, components, such as, software components, processes, functions, subroutines, procedures, attributes, class components, task components, object-oriented software components, segments of program code, drivers, firmware, micro code, circuitry, data, and / or the like.

[0115] The control logic conventionally includes the manipulation of digital bits by the processor and the maintenance of these bits within memory storage devices resident in one or more of the memory storage devices. Such memory storage devices may impose a physical organization upon the collection of stored data bits, which are generally stored by specific electrical or magnetic storage cells.

[0116] The control logic generally performs a sequence of computer-executed steps. These steps generally require manipulations of physical quantities. Usually, although not necessarily, these quantities take the form of electrical, magnetic, or optical signals capable of being stored, transferred, combined, compared, or otherwise manipulated. It is conventional for those skilled in the art to refer to these signals as bits, values, elements, symbols, characters, text, terms, numbers, files, or the like. It should be kept in mind, however, that these and some other terms should be associated with appropriate physical quantities for computer operations, and that these terms are merely conventional labels applied to physical quantities that exist within and during operation of the computer based on designed relationships between these physical quantities and the symbolic values they represent.

[0117] It should be understood that manipulations within the computer are often referred to in terms of adding, comparing, moving, searching, or the like, which are often associated with manual operations performed by a human operator. It is to be understood that no involvement of the human operator may be necessary, or even desirable. The operations described herein are machine operations performed in conjunction with the human operator or user that interacts with the computer or computers.

[0118] It should also be understood that the programs, modules, processes, methods, and the like, described herein are but an exemplary implementation and are not related, or limited, to any particular computer, apparatus, or computer language. Rather, various types of general-purpose computing machines or devices may be used with programs constructed in accordance with some of the teachings described herein. In some embodiments, very specific computing machines, with specific functionality, may be required.

[0119] Unless otherwise defined, all terms (including technical terms) used herein have the same meaning as commonly understood by one having ordinary skill in the art to which this invention belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and the present disclosure and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.

[0120] The disclosed embodiments are illustrative, not restrictive. While specific configurations of the system and computer-implemented methods carried out thereby have been described in a specific manner referring to the illustrated embodiments, it is understood that the present invention can be applied to a wide variety of solutions which fit within the scope and spirit of the claims. There are many alternative ways of implementing the invention.

[0121] It is to be understood that the embodiments of the invention herein described are merely illustrative of the application of the principles of the invention. Reference herein to details of the illustrated embodiments is not intended to limit the scope of the claims, which themselves recite those features regarded as essential to the invention.

Claims

What is claimed is:

1. A system for assisted decision-making and data query construction, the system comprising:one or more user devices;at least one first database having stored thereon a library of functions;at least one second database having stored thereon a set of historical scenario data;one or more servers in communication with the one or more user devices via a graphical user interface, and being configured to:receive a set of input data from a user device describing a scenario query;perform a feature extraction operation on the input data;construct a refined query based on the input data and the extracted features;map the refined query onto a function subspace comprising a set of functions from the at least one first database to identify a subset of matching functions;input the query data, including the subset of matching functions, into a first neural network configured to generate a corresponding query in the form of a Directed Acyclic Graph (DAG) which, when executed on a dataset from the at least one second database, will use the function subset to identify occurrences of matching historical scenarios of the refined query;receive a corresponding DAG query from the first neural network and return the corresponding DAG query to the requesting user device for feedback and modification;receive a finalised DAG query from the requesting user device;execute the finalised DAG query on the at least one second database; andreturn one or more query results to the requesting user device.

2. A system according to claim 1, wherein each function in the first database is accompanied by a description of the function and associated thematic element data.

3. A system according to claim 1, wherein the construction of the refined query is performed by a second neural network which is configured to convert the extracted features and the input query data into one or more refined queries in the form first natural language text strings.

4. A system according to claim 3, wherein the one or more servers are further configured to return the refined query to the requesting user device for iterative feedback and modification and receive a final refined query form the user device.

5. A system according to claim 4, wherein multiple suggested refined queries are returned to the requesting user device.

6. A system according to claim 1, wherein the system further comprises at least one third database comprising a library of predefined functional basis vectors for representing queries, and which is constructed and structured based on the function subspace defined in the first database.

7. A system according to claim 6, wherein the step of mapping the refined query onto the function subspace comprises determining a vector of embeddings representing the refined query.

8. A system according to claim 7, wherein the mapping step further comprises using said vector of embeddings to identify a first subset of functions that are semantically similar to the input query within the function subspace.

9. A system according to claim 8, wherein the mapping step further comprises the steps of:comparing each of the identified functions in the first set of functions against a first database which is structured according to common scenario themes to determine a thematic distance measure representing thematic similarity; anddetermining a reduced second subset of functions based on the semantic and thematic similarity measures of each function in the first subset.

10. A system according to claim 9, wherein the second subset comprises the top N most closely matched functions from the first subset, and the one or more servers are further configured to return the second subset to the requesting user device for feedback andmodification prior to inputting the query data and function subset into the first neural network.

11. A system according to claim 1, wherein the one or more servers are further configured to receive input data in the form of voice recordings, and to perform a speech to text conversion on said audio recordings.

12. A system according to claim 1, wherein the one or more servers are further configured to receive input data in the form of images, and to augment the images with one or more annotations.

13. A system according to claim 1, wherein the one or more servers are further configured to receive input data comprising multiple input data elements, and to combine the elements into a single query input.

14. A system according to claim 1, wherein the first neural network is configured to output DAG queries in the form of JSON representations.

15. A system according to claim 1, wherein the one or more servers are further configured to the one or more query results comprise historical occurrences of scenarios matching the refined query, and are accompanied by one or more related statistical measures.

16. A system according to claim 1, wherein the one or more servers are further configured to determine that insufficient features were extracted from the input query data, and to request additional query information from the requesting user device.

Citation Information

Patent Citations

  • Systems and methods for a unified analytics platform

    US11727007B1

  • Multi-detector probabilistic reasoning for natural language queries

    US20200311072A1

  • Method and apparatus for outputting structured query sentence

    US20210200763A1