Vehicle control governor
A computer includes a processor and a memory, and the memory stores instructions executable by the processor to determine an adjusted control input for a component of a host vehicle that maximizes a number of timesteps for which a constraint on a host kinematic state of the host vehicle and a target kinematic state of at least one target vehicle is satisfiable; and actuate the component according to the adjusted control input. The determination of the adjusted control input is based on a nominal control input, the host kinematic state, and the target kinematic state.
1 . A computer comprising a processor and a memory, the memory storing instructions executable by the processor to:
determine whether a first adjusted control input for a component of a host vehicle exists for which a constraint on a host kinematic state of the host vehicle and a target kinematic state of at least one target vehicle is satisfiable for an indefinite number of timesteps;
in response to the first adjusted control input not existing, determine a second adjusted control input for the component of the host vehicle that maximizes a number of timesteps for which the constraint is satisfiable, the determination of the second adjusted control input being based on a nominal control input, the host kinematic state, and the target kinematic state; and
actuate the component according to the second adjusted control input.
2 . The computer of claim 1 , wherein the instructions further include instructions to output the number of timesteps for which the constraint is satisfied.
3 . The computer of claim 1 , wherein the instructions further include instructions to recursively determine for each timestep a set of possible host kinematic states at that timestep for which the constraint is satisfied at that timestep, the set of possible host kinematic states at the timestep being a subset of a set of possible host kinematic states at an immediately previous timestep.
4 . The computer of claim 3 , wherein the instructions further include instructions to perform the recursive determination of the set of possible host kinematic states until a timestep at which the set of possible host kinematic states is empty.
5 . The computer of claim 3 , wherein the instructions further include instructions to determine the set of possible host kinematic states at each timestep such that a possible control input exists for which the set of possible host kinematic states at the timestep is a subset of the set of possible host kinematic states at the immediately previous timestep.
6 . The computer of claim 3 , wherein the instructions further include instructions to determine the possible host kinematic states at each timestep using a system dynamics model taking as inputs the second adjusted control input, host kinematic state, and target kinematic state at the immediately previous timestep.
7 . The computer of claim 1 , wherein the instructions further include instructions to actuate the component according to the first adjusted control input in response to the first adjusted control input existing, and actuate the component according to the second adjusted control input in response to the first adjusted control input not existing.
8 . The computer of claim 1 , wherein the instructions further include instructions to determine the first adjusted control input that minimizes an objective function of the host vehicle.
9 . The computer of claim 1 , wherein the instructions further include instructions to set the first adjusted control input to the nominal control input in response to the constraint being satisfiable for an indefinite number of timesteps by the nominal control input.
10 . The computer of claim 1 , wherein the instructions further include instructions to determine whether the first adjusted control input exists for which the host kinematic state is in a set of host kinematic states satisfying the constraint, and the set of host kinematic states is a control invariant set.
11 . The computer of claim 1 , wherein the instructions further include instructions to determine the second adjusted control input that maximizes the number of timesteps for which the constraint on the host kinematic state and target kinematic state is satisfiable across a range of target kinematic states.
12 . The computer of claim 11 , wherein the range is a predetermined range.
13 . The computer of claim 11 , wherein the instructions further include instructions to determine possible host kinematic states at each timestep using a system dynamics model taking as inputs a control input at the immediately previous timestep, the host kinematic state at the immediately previous timestep, and the range of target kinematic states.
14 . The computer of claim 1 , wherein the second adjusted control input is a command for at least one of a propulsion system, brake system, or steering system of the host vehicle.
15 . The computer of claim 1 , wherein the instructions further include instructions to determine the nominal control input based on the host kinematic state and the target kinematic state.
16 . The computer of claim 1 , wherein the instructions further include instructions to receive the nominal control input from an operator of the host vehicle.
17 . The computer of claim 1 , wherein the host kinematic state includes a velocity of the host vehicle.
18 . The computer of claim 1 , wherein the target kinematic state includes at least one velocity of the at least one target vehicle.
19 . A method comprising:
determining whether a first adjusted control input for a component of a host vehicle exists for which a constraint on a host kinematic state of the host vehicle and a target kinematic state of at least one target vehicle is satisfiable for an indefinite number of timesteps;
in response to the first adjusted control input not existing, determining a second adjusted control input for the component of the host vehicle that maximizes a number of timesteps for which the constraint is satisfiable, the determination of the second adjusted control input being based on a nominal control input, the host kinematic state, and the target kinematic state; and
actuating the component according to the second adjusted control input.
20 . A computer comprising a processor and a memory, the memory storing instructions executable by the processor to:
determine an adjusted control input for a component of a host vehicle that maximizes a number of timesteps for which a constraint on a host kinematic state of the host vehicle and a target kinematic state of at least one target vehicle is satisfiable across a range of target kinematic states, the determination of the adjusted control input being based on a nominal control input, the host kinematic state, and the target kinematic state; and
actuate the component according to the adjusted control input.