IP Library Granted Patent US 11,941,542
Granted Patent B2
US 11,941,542 · App. 17/347,051 · Granted Mar 26, 2024

Computer-based reasoning system for operational situation control of controllable systems

Inventors: Christopher James Hazard (Raleigh, NC); Michael Vincent Capps (Raleigh, NC)
Assignee: DIVEPLANE CORPORATION
G06N5/04G06N20/00
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,941,542
App. No.
17/347,051
Granted
Mar 26, 2024
Kind
B2
Abstract

Techniques are provided for operational situation vehicle control, and include determining action and context data for one or more vehicle operations in one or more operational situations, training vehicle control rules for those operational situations, and using those vehicle control rules to control vehicles in compatible operational situations.

Claims (76)

1. A method, comprising:

during operation of a first controllable system, repeatedly:

determining, via an operational analysis system executing on one or more computing devices, first context-action pairs, where each of the first context-action pairs comprise one or more first actions taken related to operation of the first controllable system in a particular operational situation, each first action being represented as numbers, variables, functions, or a combination of two or more of the foregoing, and a first context in which the one or more first actions were taken, the first context including one or more data elements each representing information related to the first controllable system represented as numbers, variables, functions, or a combination of two or more of the foregoing, wherein each first action is related to operation of the first controllable system in the first context and particular operational situation, wherein the particular operational situation relates to the operation of the first controllable system over a period of time; and

storing, via the operational analysis system executing on the one or more computing devices, a first set of context-action pairs for the particular operational situation related to each first action taken and the first context in which it is taken;

during operation of a second controllable system in a second operational situation

determining, via the operational analysis system executing on the one or more computing devices, a second context for the second controllable system, wherein the second context is different from the first context, wherein the second context comprises one or more data elements each representing information related to the second controllable system represented as numbers, variables, functions, or a combination of two or more of the foregoing;

determining, via the operational analysis system executing on the one or more computing devices, a second action to take based at least in part on the second context of the second controllable system and the first set of context-action pairs for the particular operational situation, wherein determining the second action to take based at least in part on the second context of the second controllable system and the first set of context-action pairs comprises:

determining distance values of the second context to context-action pairs in the first set of context-action pairs, wherein the distance values are determined using a distance metric;

determining N closest context-action pairs based on the distance values of the second context to the context-action pairs in the first set of context-action pairs, wherein N is two or greater;

determining the second action to take based at least in part on the determined N closest context-action pairs; and

controlling, via a control system executing on the one or more computing devices, characteristics of execution of the second controllable system based on the second action determined based on the second context.

2. The method of claim 1 , further comprising:

determining, via the one or more computing devices, third context-action pairs, where each of the third context-action pairs comprise one or more third actions taken related to a third operation of a third controllable system in a third operational situation, each third action being represented as numbers, variables, functions, or a combination of two or more of the foregoing, and a third context in which the one or more third actions were taken, the third context including one or more data elements each representing information related to the third controllable system represented as numbers, variables, functions, or a combination of two or more of the foregoing, wherein each third action is related to a third operation of the third controllable system in the third context and the third operational situation;

determining, via the one or more computing devices, a third set of context-action pairs for the third operational situation based at least in part on the third context-action pairs;

determining, via the one or more computing devices, whether to perform an additional operation of the second controllable system using the third set of context-action pairs based at least in part on a comparison of the second operational situation with each of the particular operational situation and the third operational situation;

when a determination is made to use the third set of context-action pairs for operation of the second controllable system, determining the second action to take based at least in part on the second context of the second controllable system and the third set of context-action pairs for the particular operational situation.

3. The method of claim 2 , where determining whether to perform an additional operation of the second controllable system using the third set of context-action pairs comprises comparing geographic regions associated with each of the particular operational situation, the second operational situation, and the third operational situation.

4. The method of claim 2 , where determining whether to perform an additional operation of the second controllable system using the third set of context-action pairs comprises comparing times of day, weather, road congestion, cargo quantities and types, passenger types and preferences, and road conditions associated with each of the particular operational situation, the second operational situation, and the third operational situation.

5. The method of claim 2 , where determining whether to perform an additional operation of the second controllable system using the third set of context-action pairs comprises comparing driver identities associated with each of the particular operational situation, the second operational situation, and the third operational situation.

6. The method of claim 2 , where determining whether to perform an additional operation of the second controllable system using the third set of context-action pairs comprises comparing vehicle types associated with each of the particular operational situation, the second operational situation, and the third operational situation.

7. The method of claim 1 , further comprising evolving the first set of context-action pairs for the particular operational situation, wherein evolving the first set of context-action pairs comprises combining two or more context-action pairs to form a third context-action pairs using evolutionary programming techniques.

8. The method of claim 1 , further comprising:

detecting an anomalous action related to operation of the second controllable system;

determining a particular context-action pair associated with the anomalous action detected; and

providing information associated with the particular context-action pair via a graphical user interface.

9. The method of claim 1 , further comprising, during operation of an additional controllable system in an additional operational situation repeatedly:

determining additional actions taken related to operation of the additional controllable system in the additional operational situation, and an additional context in which the additional actions were taken;

storing an additional set of context-action pairs for the additional operational situation related to each additional action taken and the additional context in which it is taken; and

during the operation of the second controllable system:

determining the second action to take based at least in part on the second context of the second controllable system, the first set of context-action pairs for the particular operational situation and the additional set of context-action pairs.

10. The method of claim 9 , further comprising:

determining a first action and an associated first confidence level based on the first set of context-action pairs and the second context;

determining an additional action and an associated additional confidence level based at least in part on the additional set of context-action pairs and the second context; and

determining the second action to take based at least in part on the first confidence level and the additional confidence level.

11. The method of claim 1 , wherein acting on the second action determined based on the second context comprises controlling the second controllable system based at least in part on the second action.

12. The method of claim 1 , wherein acting on the second action determined based on the second context comprises controlling a simulation of the second controllable system.

13. A system for executing instructions, wherein said instructions are instructions which, when executed by one or more computing devices, cause performance of a process including:

during a first operation of a first controllable system in a first operational situation, repeatedly:

training a first machine intelligence system based on first actions taken and a first context in which those first actions were taken, wherein each first action is related to the first operation of the first controllable system in the first context and first operational situation, wherein each first action is represented as numbers, variables, functions, or a combination of two or more of the foregoing, the first context includes one or more data elements each representing information related to the first controllable system represented as numbers, variables, functions, or a combination of two or more of the foregoing, and the first operational situation relates to the operation of the first controllable system over a period of time;

during a second operation of a second controllable system in a second operational situation, repeatedly:

training a second machine intelligence system based on second actions taken and a second context in which those second actions were taken, wherein each second action is related to the second operation of the second controllable system in the second context and second operational situation, wherein each second action is represented as numbers, variables, functions, or a combination of two or more of the foregoing, the second context includes one or more data elements each representing information related to the second controllable system represented as numbers, variables, functions, or a combination of two or more of the foregoing, and the second operational situation relates to the operation of the second controllable system over a period of time; and

determining whether to perform a third operation of a third controllable system in a third operational situation the first machine intelligence system or the second machine intelligence system based at least in part on a comparison of the third operational situation and the first operational situation and the second operational situation;

based on the determining to perform the third operation of the third controllable system in the third operational situation using the first machine intelligence system:

determining a third context for the third controllable system;

determining a third action to take based at least in part on the third context of the third controllable system and the first machine intelligence system, wherein determining the third action to take based at least in part on the third context of the third controllable system and the first machine intelligence system comprises:

determining distance values of the third context to context-action pairs in the first machine intelligence system, wherein the distance values are determined using a distance metric;

determining N closest context-action pairs based on the distance values of the third context to the context-action pairs in the first machine intelligence system, wherein N is two or greater;

determining the second action to take based at least in part on the determined N closest context-action pairs and

controlling characteristics of execution based on the third action determined based on the third context and the first machine intelligence system; and

based on the determining based on the determining to perform the third operation of the third controllable system in the third operational situation using the second machine learning system:

determining a fourth context for the third controllable system;

determining a fourth action to take based at least in part on the fourth context of the third controllable system and the second machine intelligence system; and

controlling characteristics of execution of the third controllable system based on the fourth action determined based on the fourth context and the second machine intelligence system.

14. The system of claim 13 , wherein the system further comprises a control mechanism for the second controllable system and wherein acting on the third action comprises controlling, using the control mechanism, the second controllable system based at least in part on the third action.

15. The system of claim 13 , wherein determining whether to perform the third operation of the third controllable system in the third operational situation using the first machine intelligence system or the second machine intelligence system comprises comparing geographic region associated with the third operational situation with geographical regions associated with each of the operational situation and the second operational situation.

16. The system of claim 13 , wherein determining whether to perform the third operation of the third controllable system in the third operational situation using the first machine intelligence system or the second machine intelligence system comprises comparing times of day, weather, road congestion, cargo quantities and types, passenger types and preferences, and road conditions associated with the third operational situation with those associated with each of the first operational situation and the second operational situation.

17. The system of claim 13 , wherein determining whether to perform the third operation of the third controllable system in the third operational situation using the first machine intelligence system or the second machine intelligence system comprises comparing driver identities associated with the third operational situation with those associated with each of the first operational situation and the second operational situation.

18. A non-transitory computer readable storage medium storing instructions which, when executed by one or more computing devices, cause the one or more computing devices to perform a process of:

during a first operation of a first controllable system in a particular operational situation, repeatedly:

determining first actions taken related to the first operation of the first controllable system in the particular operational situation, and a first context in which the first actions were taken, wherein each first action is related to the first operation of the first controllable system in the first context and particular operational situation, and wherein each first action is represented as numbers, variables, functions, or a combination of two or more of the foregoing, the first context includes one or more data elements each representing information related to the first controllable system represented as numbers, variables, functions, or a combination of two or more of the foregoing, and the particular operational situation relates to the operation of the first controllable system over a period of time; and

storing a first set of context-action pairs for the particular operational situation related to each first action taken and the first context in which it is taken;

during operation of a second controllable system in a second operational situation:

determining a second context for the second controllable system;

determining a second action to take based at least in part on the second context of the second controllable system and the first set of context-action pairs for the particular operational situation, wherein determining the second action to take based at least in part on the second context of the second controllable system and the first set of context-action pairs comprises:

determining distance values of the second context to context-action pairs in the first set of context-action pairs, wherein the distance values are determined using a distance metric;

determining N closest context-action pairs based on the distance values of the second context to the context-action pairs in the first set of context-action pairs, wherein N is two or greater;

determining the second action to take based at least in part on the determined N closest context-action pairs; and

controlling characteristics of execution of the second controllable system based on the second action determined based on the second context, wherein each second action is represented as numbers, variables, functions, or a combination of two or more of the foregoing, the second context includes one or more data elements each representing information related to the second controllable system represented as numbers, variables, functions, or a combination of two or more of the foregoing, and the second operational situation relates to the operation of the second controllable system over a period of time.

19. The non-transitory computer readable storage medium of claim 18 , the process further comprising:

detecting an anomalous action related to operation of the second controllable system;

determining a particular context-action pair associated with the anomalous action detected; and

providing information associated with the particular context-action pair via a graphical user interface.

20. The non-transitory computer readable storage medium of claim 18 , the process further comprising:

detecting an anomalous action related to operation of the second controllable system;

determining a particular context-action pair associated with the anomalous action detected; and

providing information associated with the particular context-action pair.

Assignments (6)
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 22, 2025
From: WESTERN ALLIANCE BANK
To: HOWSO INCORPORATED
Reel/Frame 069988/0038 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2024
From: HAZARD, CHRISTOPHER JAMES; CAPPS, MICHAEL VINCENT
To: HOWSO INCORPORATED
Reel/Frame 066499/0084 →
CHANGE OF NAME Recorded Sep 28, 2023
From: DIVEPLANE CORPORATION
To: HOWSO INCORPORATED
Reel/Frame 065081/0559 →
CHANGE OF NAME Recorded Sep 22, 2023
From: DIVEPLANE CORPORATION
To: HOWSO INCORPORATED
Reel/Frame 065021/0691 →
SECURITY INTEREST Recorded Jan 31, 2023
From: DIVEPLANE CORPORATION
To: WESTERN ALLIANCE BANK
Reel/Frame 062554/0106 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2021
From: HAZARD, CHRISTOPHER JAMES; CAPPS, MICHAEL VINCENT
To: DIVEPLANE CORPORATION
Reel/Frame 056535/0841 →
Continuity (14)
Continuation In Part 17346901 · Jun 14, 2021
Continuation In Part 17333671 · May 28, 2021
Continuation In Part 17038955 · Sep 30, 2020
Continuation In Part 17006144 · Aug 28, 2020
Continuation 16713714 · Dec 13, 2019
Continuation In Part 16219476 · Dec 13, 2018
Continuation In Part 15817627 · Nov 20, 2017
Provisional Application 63179916 · Apr 26, 2021
Provisional Application 63168521 · Mar 31, 2021
Provisional Application 63036741 · Jun 9, 2020
Provisional Application 63024152 · May 13, 2020
Provisional Application 62814585 · Mar 6, 2019
Related Publication 20210304038A1 · Sep 30, 2021
Related Publication 20230140835A9 · May 4, 2023
Cited By (1)
US 12,443,863