Vehicle state aware cloud resource management
Mitigating the impact of cloud service downtime, migration to a new cloud instance/container, and/or software update on a vehicle or fleet of vehicles may include receiving an indication that a vehicle is experiencing or is scheduled to experience downtime; determining, based at least in part on the indication, a criterion indicating a minimum vehicle state for the vehicle to be prepared for the downtime; determining, based at least in part on sensor data received by the vehicle, a vehicle state associated with the vehicle; and causing control of the vehicle based at least in part on the criterion and the vehicle state data.
1 . A system comprising:
one or more processors; and
one or more non-transitory memory storing processor-executable instructions that, when executed by the one or more processors, cause the system to perform operations comprising:
receiving an indication that a fleet of vehicles is experiencing or is scheduled to experience downtime based at least in part on software of the fleet of vehicles being scheduled to be updated or a first cloud instance to which the fleet of vehicles is connected is down or is scheduled to be down;
receiving first fleet data from a first subset of the fleet indicating the first subset is prepared for the downtime;
switching, based at least in part on the first fleet data, the first subset from connecting to the first cloud instance to a second cloud instance or updating software of the first subset;
receiving second fleet data from a second subset of the fleet indicating the second subset is unprepared for the downtime;
determining, based at least in part on the second fleet data and the indication, a remaining time before the downtime is scheduled to occur; and
transmitting the remaining time to the second subset of the fleet, wherein the remaining time is configured to cause a first vehicle of the second subset to mitigate impact of the downtime or to be prepared for the downtime.
2 . The system of claim 1 , wherein the first fleet data indicating the first subset is prepared for the downtime includes receiving second vehicle data from a second vehicle indicating at least one of:
the second vehicle being stopped;
the second vehicle being parked;
the second vehicle has not begun a mission or has completed a mission;
the second vehicle determining that the second vehicle is scheduled to stop within a time period;
the second vehicle detecting less than a first threshold number of total objects or detecting less than a second threshold number of objects detected as being associated with a first object classification;
the second vehicle is not carrying a passenger;
the second vehicle is not streaming data to or receiving data from one or more services hosted by the first cloud instance; or
the second vehicle being located outside a region.
3 . The system of claim 2 , wherein the operations further comprise determining the region based at least in part on:
historical fleet data indicating at least one of a density of objects detected within the region, a classification of object associated with the region, or at least a threshold number of teleoperation requests originating from vehicles within the region;
a classification of roadway associated with the region; or
receiving a second indication of an event associated with the region.
4 . The system of claim 1 , wherein mitigating impact of the downtime by the first vehicle comprises at least one of:
re-routing the first vehicle to a location outside a region or to exclude use of a roadway;
re-routing the first vehicle to delay a pick-up;
determining a location at which to stop before the remaining time is complete;
controlling the first vehicle to reach a pickup or drop-off location; or
controlling the first vehicle to reach a stop location determined by the first vehicle to have a safety score associated therewith that meets or exceeds a safety threshold.
5 . The system of claim 1 , wherein the operations further comprise at least one of:
receiving a second indication from the first vehicle that the first vehicle determines a first time to be prepared for the downtime within that exceeds the remaining time and transmitting a first request to a cloud orchestrator to delay the downtime until at least the first time; or
transmitting a second request to delay the downtime until indications are received from the second subset indicating the second subset is prepared for the downtime.
6 . The system of claim 1 , wherein the operations further comprise:
receiving third fleet data from the first subset; and
determining, based at least in part on the third fleet data, a duration associated with the downtime,
wherein the remaining time is based at least in part on the duration or the duration is used to update the remaining time as an updated remaining time.
7 . One or more non-transitory computer-readable media storing processor-executable instructions that, when executed by one or more processors, perform operations comprising:
receiving an indication that a fleet of vehicles is experiencing or is scheduled to experience downtime based at least in part on software of the fleet of vehicles being scheduled to be updated or a first cloud instance to which the fleet of vehicles is connected is down or is scheduled to be down;
receiving first fleet data from a first subset of the fleet indicating the first subset is prepared for the downtime;
switching, based at least in part on the first fleet data, the first subset from connecting to the first cloud instance to a second cloud instance or updating software of the first subset;
receiving second fleet data from a second subset of the fleet indicating the second subset is unprepared for the downtime;
determining, based at least in part on the second fleet data and the indication, a remaining time before the downtime is scheduled to occur; and
transmitting the remaining time to the second subset of the fleet, wherein the remaining time is configured to cause a first vehicle of the second subset to mitigate impact of the downtime or to be prepared for the downtime.
8 . The one or more non-transitory computer-readable media of claim 7 , wherein the first fleet data indicating the first subset is prepared for the downtime includes receiving second vehicle data from a second vehicle indicating at least one of:
the second vehicle being stopped;
the second vehicle being parked;
the second vehicle has not begun a mission or has completed a mission;
the second vehicle determining that the second vehicle is scheduled to stop within a time period;
the second vehicle detecting less than a first threshold number of total objects or detecting less than a second threshold number of objects detected as being associated with a first object classification;
the second vehicle is not carrying a passenger;
the second vehicle is not streaming data to or receiving data from one or more services hosted by the first cloud instance; or
the second vehicle being located outside a region.
9 . The one or more non-transitory computer-readable media of claim 8 , wherein the operations further comprise determining the region based at least in part on:
historical fleet data indicating at least one of a density of objects detected within the region, a classification of object associated with the region, or at least a threshold number of teleoperation requests originating from vehicles within the region;
a classification of roadway associated with the region; or
receiving a second indication of an event associated with the region.
10 . The one or more non-transitory computer-readable media of claim 8 , wherein the operations further comprise:
determining that the second vehicle is prepared for the downtime;
creating a new instance in a cloud computing system to replace a former instance associated with the downtime; and
causing the second vehicle to connect to the new instance.
11 . The one or more non-transitory computer-readable media of claim 7 , wherein mitigating impact of the downtime by the first vehicle comprises at least one of:
re-routing the first vehicle to a location outside a region or to exclude use of a roadway;
re-routing the first vehicle to delay a pick-up;
determining a location at which to stop before the remaining time is complete;
controlling the first vehicle to reach a pickup or drop-off location; or
controlling the first vehicle to reach a stop location determined by the first vehicle to have a safety score associated therewith that meets or exceeds a safety threshold.
12 . The one or more non-transitory computer-readable media of claim 7 , wherein the operations further comprise at least one of:
receiving a second indication from the first vehicle that the first vehicle determines a first time to be prepared for the downtime within that exceeds the remaining time and transmitting a first request to a cloud orchestrator to delay the downtime until at least the first time; or
transmitting a second request to delay the downtime until indications are received from the second subset indicating the second subset is prepared for the downtime.
13 . The one or more non-transitory computer-readable media of claim 7 , wherein the operations further comprise:
receiving third fleet data from the first subset; and
determining, based at least in part on the third fleet data, a duration associated with the downtime,
wherein the remaining time is based at least in part on the duration or the duration is used to update the remaining time as an updated remaining time.
14 . A method comprising:
receiving an indication that a fleet of vehicles is experiencing or is scheduled to experience downtime based at least in part on software of the fleet of vehicles being scheduled to be updated or a first cloud instance to which the fleet of vehicles is connected is down or is scheduled to be down;
receiving first fleet data from a first subset of the fleet indicating the first subset is prepared for the downtime;
switching, based at least in part on the first fleet data, the first subset from connecting to the first cloud instance to a second cloud instance or updating software of the first subset;
receiving second fleet data from a second subset of the fleet indicating the second subset is unprepared for the downtime;
determining, based at least in part on the second fleet data and the indication, a remaining time before the downtime is scheduled to occur; and
transmitting the remaining time to the second subset of the fleet, wherein the remaining time is configured to cause a first vehicle of the second subset to mitigate impact of the downtime or to be prepared for the downtime.
15 . The method of claim 14 , wherein the first fleet data indicating the first subset is prepared for the downtime includes receiving second vehicle data from a second vehicle indicating at least one of:
the second vehicle being stopped;
the second vehicle being parked;
the second vehicle has not begun a mission or has completed a mission;
the second vehicle determining that the second vehicle is scheduled to stop within a time period;
the second vehicle detecting less than a first threshold number of total objects or detecting less than a second threshold number of objects detected as being associated with a first object classification;
the second vehicle is not carrying a passenger;
the second vehicle is not streaming data to or receiving data from one or more services hosted by the first cloud instance; or
the second vehicle being located outside a region.
16 . The method of claim 15 , further comprising determining the region based at least in part on:
historical fleet data indicating at least one of a density of objects detected within the region, a classification of object associated with the region, or at least a threshold number of teleoperation requests originating from vehicles within the region;
a classification of roadway associated with the region; or
receiving a second indication of an event associated with the region.
17 . The method of claim 15 , further comprising:
determining that the second vehicle is prepared for the downtime;
creating a new instance in a cloud computing system to replace a former instance associated with the downtime; and
causing the second vehicle to connect to the new instance.
18 . The method of claim 14 , wherein mitigating impact of the downtime by the first vehicle comprises at least one of:
re-routing the first vehicle to a location outside a region or to exclude use of a roadway;
re-routing the first vehicle to delay a pick-up;
determining a location at which to stop before the remaining time is complete;
controlling the first vehicle to reach a pickup or drop-off location; or
controlling the first vehicle to reach a stop location determined by the first vehicle to have a safety score associated therewith that meets or exceeds a safety threshold.
19 . The method of claim 14 , further comprising at least one of:
receiving a second indication from the first vehicle that the first vehicle determines a first time to be prepared for the downtime within that exceeds the remaining time and transmitting a first request to a cloud orchestrator to delay the downtime until at least the first time; or
transmitting a second request to delay the downtime until indications are received from the second subset indicating the second subset is prepared for the downtime.
20 . The method of claim 14 , further comprising:
receiving third fleet data from the first subset; and
determining, based at least in part on the third fleet data, a duration associated with the downtime,
wherein the remaining time is based at least in part on the duration or the duration is used to update the remaining time as an updated remaining time.