IP Library Granted Patent US 11,055,451
Granted Patent B2
US 11,055,451 · App. 15/835,312 · Granted Jul 6, 2021

System and methods for multi-language abstract model creation for digital environment simulations

Inventors: Jason Crabtree (Vienna, VA); Andrew Sellers (Monument, CO)
Assignee: QOMPLX, Inc.
G06F30/20G06F8/10G06F9/448G06N7/005G06Q10/0637H04L67/02G06N5/003
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,055,451
App. No.
15/835,312
Granted
Jul 6, 2021
Kind
B2
Abstract

A system and method for creating a meta-model simulation of a domain-specific simulation model wherein one or more domain-specific simulation models are abstracted into a meta-model by creating behavior tree models of the objects, actors, and events contained in each domain-specific simulation model. The meta-model simulation may represent combined or merged functionality of domain-specific simulation models from different domains and may be dynamically adjusted during execution by altering one or more parameters of objects, actors, or events in the meta-model simulation.

Claims (48)

1. A system for abstract meta-model simulation creation and execution, comprising:

a computing device comprising a memory, a processor, a non-volatile data storage device, and a display device;

a domain-specific simulation model based on domain specific language stored in the non-volatile data storage device, the domain-specific simulation model comprising actors, objects, and events, and a plurality of behaviors of the actors, the objects, and the events within a specific application domain;

a probabilistic behavior interpreter comprising first plurality of programming instructions stored in the memory and operating on the processor, wherein the first plurality of programming instructions, when operating on the processor, cause the computing device to:

retrieve the domain-specific simulation model from the non-volatile data storage device;

calculate probabilistic behavior results based on the behaviors of the actors, objects, and events of the domain-specific simulation model, wherein the probabilistic behavior results include environment interactions, specific behaviors and outcomes of the specific behaviors;

store the probabilistic behavior results as a behavior tree model in the non-volatile data storage device;

a meta-model constructor comprising second plurality of programming instructions stored in the memory and operating on the processor, wherein the second plurality of programming instructions, when operating on the processor, cause the computing device to:

retrieve the domain-specific simulation model from the non-volatile data storage device;

retrieve the behavior tree model from the non-volatile data storage device;

create a meta-model specification from the domain-specific simulation model and the behavior tree model;

wherein the meta-model specification comprises a plurality of relationships between the domain-specific simulation model and a plurality of additional models outside the domain; and

wherein the domain-specific simulation model may itself be used as an object in the meta-model specification with or within other domain-specific simulations, thereby nesting simulations to achieve complex behaviors within a meta-model simulation;

a visual simulation model editor comprising third plurality of programming instructions stored in the memory and operating on the processor, wherein the third plurality of programming instructions, when operating on the processor, cause the computing device to:

retrieve the meta-model specification for the meta-model simulation;

graphically represent meta-model specification on a the display device;

receive a modification of the graphical representation of the meta-model specification using a graphical user interface; and

store the modified meta-model specification in the non-volatile data storage device;

a meta-model simulation execution environment comprising a fourth plurality of programming instructions stored in the memory and operating on the processor, wherein the fourth plurality of programming instructions, when operating on the processor, cause the computing device to:

retrieve the modified meta-model specification from the non-volatile data storage device; and

execute the meta-model simulation based on the modified meta-model specification; and

an internal heuristic comprising a fifth plurality of programming instructions stored in the memory and operating on the processor, wherein the fifth plurality of programming instructions, when operating on the processor, cause the computing device to:

receive data from the meta-model simulation when the meta-model simulation is being executed;

receive an input from a user when the user is connected to the meta-model simulation being executed as an active actor; and

alter the simulation environment of the meta model simulation being executed in response to the data from the meta-model simulation and the input from the user by parameterizing specific discrete objects, events, and actors in the received data of the meta-model simulation being executed;

wherein at least part of the input taken from the user represents parameters for objects, events, or actors within the meta-model simulation being executed, wherein the simulation environment alteration further include altering status of the specific discrete objects, events, and actors within the simulation environment to change the stored behaviors in the behavior trees or add new behaviors altogether.

2. The system of claim 1 , wherein the computing device further comprises a web server, and the graphical user interface for meta-model modification is hosted as a website accessible by a web browser.

3. The system of claim 1 , wherein the computing device further comprises a remote server, and the meta-model simulation is hosted on the remote server.

4. The system of claim 3 , wherein a plurality of users may alter the execution of the meta-model simulation using the internal heuristic.

5. The system of claim 1 , wherein the meta-model simulation execution environment is a cloud-based third-party simulation environment.

6. A method for abstract meta-model simulation creation and execution, comprising the steps of:

storing a domain-specific simulation model based on domain specific language in a non-volatile data storage device, the domain-specific simulation model comprising actors, objects, and events, and a plurality of behaviors of the actors, the objects, and the events within a specific application domain;

calculating probabilistic behavior results based on the plurality of behaviors of the actors, objects, and events of the domain-specific simulation model, wherein the probabilistic behavior results include environment interactions, specific behaviors and outcomes of the specific behaviors;

storing the probabilistic behavior results as a behavior tree model in the non-volatile data storage device;

creating a meta-model specification from the domain-specific simulation model and the behavior tree model;

wherein the meta-model specification comprises a plurality of relationships between the domain-specific simulation model and a plurality of additional models outside the domain;

wherein the domain-specific simulation model may itself be used as an object in the meta-model specification with or within other domain-specific simulations, thereby nesting simulations to achieve more complex behaviors within a meta-model simulation;

graphically representing the meta-model specification on a display device;

receiving a modification of the graphical representation of the meta-model specification using a graphical user interface;

executing a meta-model simulation based on the modified meta-model specification;

receiving data from the meta-model simulation when the meta-model simulation is being executed;

receiving an input from a user when the user is connected to the meta-model simulation being executed as an active actor; and

altering the simulation environment of the meta-model simulation being executed in response to the data from the meta-model simulation and the input from the user by parameterizing specific discrete objects, events, and actors in the received data of the meta-model simulation being executed;

wherein at least part of the input taken from the user represents parameters for objects, events, or actors within the meta-model simulation being executed, wherein the simulation environment alteration further include altering status of the specific discrete objects, events, and actors within the simulation environment to change the stored behaviors in the behavior trees or add new behaviors altogether.

7. The method of claim 6 , wherein the graphical user interface for meta-model modification is hosted as a website accessible by a web browser.

8. The method of claim 6 , wherein the meta-model simulation is hosted on a remote server.

9. The method of claim 8 , wherein a plurality of users may use the remote server to alter the execution of the meta-model simulation using the internal heuristic.

10. The method of claim 6 , wherein the meta-model simulation is executed on a cloud-based third-party simulation environment.

Assignments (9)
CHANGE OF ADDRESS Recorded Oct 1, 2024
From: QOMPLX LLC
To: QOMPLX LLC
Reel/Frame 069083/0279 →
CHANGE OF NAME Recorded Sep 27, 2023
From: QPX LLC
To: QOMPLX LLC
Reel/Frame 065036/0449 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY PREVIOUSLY RECORDED AT REEL: 064674 FRAME: 0408. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 20, 2023
From: QOMPLX, INC.
To: QPX LLC
Reel/Frame 064966/0863 →
PATENT ASSIGNMENT AGREEMENT TO ASSET PURCHASE AGREEMENT Recorded Aug 23, 2023
From: QOMPLX, INC.
To: QPX, LLC.
Reel/Frame 064674/0407 →
CHANGE OF ADDRESS Recorded Dec 29, 2022
From: QOMPLX, INC.
To: QOMPLX, INC.
Reel/Frame 062251/0629 →
CHANGE OF ADDRESS Recorded Oct 27, 2020
From: QOMPLX, INC.
To: QOMPLX, INC.
Reel/Frame 054298/0094 →
CHANGE OF ADDRESS Recorded Aug 7, 2019
From: FRACTAL INDUSTRIES, INC.
To: QOMPLX, INC.
Reel/Frame 049996/0683 →
CHANGE OF NAME Recorded Aug 7, 2019
From: FRACTAL INDUSTRIES, INC.
To: QOMPLX, INC.
Reel/Frame 049996/0698 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2018
From: CRABTREE, JASON; SELLERS, ANDREW
To: FRACTAL INDUSTRIES, INC.
Reel/Frame 044578/0706 →