IP Library Granted Patent US 11,630,679
Granted Patent B2
US 11,630,679 · App. 16/795,236 · Granted Apr 18, 2023

Using a lane-structured dynamic environment for rule-based automated control

Inventor: David R. Cheriton (Palo Alto, CA)
Assignee: OptumSoft, Inc.
G06F9/4494B60W30/18163G06F9/46G06F9/5038G06Q40/04G16H50/20
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,630,679
App. No.
16/795,236
Granted
Apr 18, 2023
Kind
B2
Abstract

Specifications are input, comprising: a plurality of lanes in an environment for a controlled system; a plurality of lane maneuvers associated with the plurality of lanes; a plurality of lane subconditions associated with the controlled system; and a rule set comprising a plurality of rules, wherein a rule in the rule set specifies a rule condition and a rule action to take when the rule condition is satisfied, wherein the rule condition comprises a corresponding set of lane subconditions, and wherein the rule action comprises a corresponding lane maneuver. The controlled system is automatically navigated dynamically, at least in part by: monitoring the plurality of lane subconditions; evaluating rule conditions associated with the plurality of rules in the rule set to determine one or more rules whose corresponding rule conditions has been met; and executing one or more lane maneuvers that correspond to the one or more determined rules.

Claims (48)

1. A method, comprising:

inputting specifications comprising:

a plurality of lanes in an environment for a controlled system;

a plurality of lane maneuvers associated with the plurality of lanes;

a plurality of lane subconditions associated with the controlled system; and

a rule set comprising a plurality of rules, wherein a rule in the rule set specifies a rule condition and a rule action to take when the rule condition is satisfied, wherein the rule condition comprises a corresponding set of lane subconditions, and wherein the rule action comprises a corresponding lane maneuver; and

automatically navigating the controlled system dynamically, including:

monitoring the plurality of lane subconditions;

evaluating rule conditions associated with the plurality of rules in the rule set to determine one or more rules whose corresponding rule conditions has been met; and

executing one or more lane maneuvers that correspond to the one or more determined rules.

2. The method of claim 1 , wherein automatically navigating further comprises:

receiving one or more inputs from the environment for the controlled system; and

in response to receiving the one or more inputs, dynamically updating a status of the plurality of subconditions.

3. The method of claim 1 , wherein a representation of a lane subcondition in the plurality of lane subconditions comprises a value having one of a plurality of states, and wherein the plurality of states comprises a state of “don't care”.

4. The method of claim 3 , wherein the value is represented by a single bit.

5. The method of claim 3 , wherein the value is represented by a single bit and an ANDN hardware instruction is used to match two values.

6. The method of claim 3 , wherein the value is represented by two bits.

7. The method of claim 1 , wherein a first lane in the plurality of lanes is adjacent to a second lane in the plurality of lanes.

8. The method of claim 7 , wherein a lane maneuver in the plurality of lane maneuvers comprises a change between the first lane to the second lane.

9. The method of claim 1 , wherein the environment for the controlled system is a constrained environment comprising a discretized lane-structured environment wherein the controlled system proceeds in a current lane or switches to a lane adjacent to the current lane.

10. The method of claim 1 , wherein the plurality of lane subconditions comprises a route guidance subcondition.

11. The method of claim 1 , wherein the plurality of lane maneuvers comprises a preemptable lane maneuver.

12. The method of claim 1 , wherein a lane in the plurality of lanes is a discretized directional path segment that the controlled system can transit along.

13. The method of claim 1 , wherein automatically navigating the controlled system dynamically comprises controlling a behavior of a self-driving physical vehicle.

14. The method of claim 13 , wherein the plurality of lanes comprises a road lane for driving.

15. The method of claim 1 , further comprising receiving the rule set in a different representation, wherein the different representation is at least one of the following: a compiled table and a code realization.

16. The method of claim 1 , wherein specifications further includes one or more additional rule sets.

17. A system, comprising:

an interface configured to receive specifications comprising:

a plurality of lanes in an environment for a controlled system;

a plurality of lane maneuvers associated with the plurality of lanes;

a plurality of lane subconditions associated with the controlled system; and

a rule set comprising a plurality of rules, wherein a rule in the rule set specifies a rule condition and a rule action to take when the rule condition is satisfied, wherein the rule condition comprises a corresponding set of lane subconditions, and wherein the rule action comprises a corresponding lane maneuver; and

a processor coupled to the interface and configured to automatically navigate the controlled system dynamically at least in part by:

monitoring the plurality of lane subconditions;

evaluating rule conditions associated with the plurality of rules in the rule set to determine one or more rules whose corresponding rule conditions has been met; and

executing one or more lane maneuvers that correspond to the one or more determined rules; and

a memory coupled to the processor and configured to provide the processor with instructions.

18. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

inputting specifications comprising:

a plurality of lanes in an environment for a controlled system;

a plurality of lane maneuvers associated with the plurality of lanes;

a plurality of lane subconditions associated with the controlled system; and

a rule set comprising a plurality of rules, wherein a rule in the rule set specifies a rule condition and a rule action to take when the rule condition is satisfied, wherein the rule condition comprises a corresponding set of lane subconditions, and wherein the rule action comprises a corresponding lane maneuver; and

automatically navigating the controlled system dynamically at least in part by:

monitoring the plurality of lane subconditions;

evaluating rule conditions associated with the plurality of rules in the rule set to determine one or more rules whose corresponding rule conditions has been met; and

executing one or more lane maneuvers that correspond to the one or more determined rules.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2020
From: CHERITON, DAVID R.
To: OPTUMSOFT, INC.
Reel/Frame 052455/0068 →
Continuity (2)
Provisional Application 62807694 · Feb 19, 2019
Related Publication 20200264900A1 · Aug 20, 2020