Redundancy system and method
A method, computer program product, and computing system for operating an autonomous vehicle; monitoring the operation of a plurality of computing devices within the autonomous vehicle; and in response to detecting the failure of one or more of the plurality of computing devices, switching the autonomous vehicle from a nominal autonomous operational mode to a degraded autonomous operational mode.
1. A computer-implemented method, executed on a computing device, comprising:
operating an autonomous vehicle;
monitoring the operation of a plurality of computing devices within the autonomous vehicle, wherein each respective computing device of the plurality of computing devices provides a respective quantity of computational units, and wherein the respective quantity of computational units represents an amount of processing power of the respective computing device;
detecting a failure of one or more of the plurality of computing devices;
responsive to detecting the failure of the one or more of the plurality of computing devices, determining a total quantity of operational computational units by summing the respective quantity of computational units provided by each operational computing device that is operating without a failure;
responsive to determining that the total quantity of operational computational units provided by each operational computing device of the plurality of computing devices exceeds a threshold, maintaining a nominal autonomous operational mode; and
responsive to determining that the total quantity of operational computational units provided by each operational computing device of the plurality of computing devices fails to exceed a threshold, switching the autonomous vehicle from the nominal autonomous operational mode to a degraded autonomous operational mode.
2. The computer-implemented method of claim 1 wherein nominal autonomous operational mode includes one or more of:
operating the autonomous vehicle up to a full operational speed;
utilizing a full obstacle detection range;
allowing passing maneuvers;
allowing unprotected turns across traffic;
processing certain sensor data; allowing the use of higher risk routes;
allowing the use of less-connected routes;
allowing the use of routes lacking breakdown lanes/areas;
utilizing a narrower definition of an obstacle to allow higher speed operation; and
allowing the use of smaller buffers with respect to obstacles.
3. The computer-implemented method of claim 1 wherein degraded autonomous operational mode includes one or more of:
operating the autonomous vehicle up to a degraded operational speed;
utilizing a degraded obstacle detection range;
prohibiting passing maneuvers; prohibiting unprotected turns across traffic;
not processing certain sensor data; prohibiting the use of higher risk routes;
prohibiting the use of less-connected routes;
prohibiting the use of routes lacking breakdown lanes/areas;
utilizing a broader definition of an obstacle to require lower speed operation;
requiring the use of larger buffers with respect to obstacles;
requiring the vehicle to safely pull off of the road; and
requiring the vehicle to call for assistance.
4. The computer-implemented method of claim 1 wherein:
a first quantity of the plurality of computing devices are capable of operating the autonomous vehicle in the nominal autonomous operational mode; and
a second quantity of the plurality of computing devices are incapable of operating the autonomous vehicle in the nominal autonomous operational mode, wherein the first quantity is greater than the second quantity.
5. The computer-implemented method of claim 4 wherein:
the second quantity of the plurality of computing devices are capable of operating the autonomous vehicle in the degraded autonomous operational mode.
6. The computer-implemented method of claim 4 wherein the first quantity of the plurality of computing devices capable of operating the autonomous vehicle in the nominal autonomous operational mode includes:
all of the plurality of computing devices within the autonomous vehicle.
7. The computer-implemented method of claim 4 wherein the first quantity of the plurality of computing devices capable of operating the autonomous vehicle in the nominal autonomous operational mode includes:
a subset of the plurality of computing devices within the autonomous vehicle.
8. The computer-implemented method of claim 1 wherein the autonomous vehicle includes a plurality of sensors.
9. The computer-implemented method of claim 8 wherein all of the plurality of sensors are coupled to all of the plurality of computing devices.
10. The computer-implemented method of claim 8 wherein a first quantity of the plurality of sensors are coupled to a first computing system within the plurality of computing devices and at least a second quantity of the plurality of sensors are coupled to at least a second computing system within the plurality of computing devices.
11. A computer program product residing on a computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising:
operating an autonomous vehicle;
monitoring the operation of a plurality of computing devices within the autonomous vehicle, wherein each respective computing device of the plurality of computing devices provides a respective quantity of computational units, and wherein the respective quantity of computational units represents an amount of processing power of the respective computing device;
detecting a failure of one or more of the plurality of computing devices;; and
responsive to detecting the failure of the one or more of the plurality of computing devices, determining a total quantity of operational computational units by summing the respective quantity of computational units provided by each operational computing device that is operating without a failure;
responsive to determining that the total quantity of operational computational units provided by each operational computing device of the plurality of computing devices exceeds a threshold, maintaining a nominal autonomous operational mode; and
responsive to determining that the total quantity of operational computational units provided by each operational computing device of the plurality of computing devices fails to exceed a threshold, switching the autonomous vehicle from the nominal autonomous operational mode to a degraded autonomous operational mode.
12. The computer program product of claim 11 wherein nominal autonomous operational mode includes one or more of:
operating the autonomous vehicle up to a full operational speed;
utilizing a full obstacle detection range;
allowing passing maneuvers;
allowing unprotected turns across traffic;
processing certain sensor data;
allowing the use of higher risk routes;
allowing the use of less-connected routes;
allowing the use of routes lacking breakdown lanes/areas;
utilizing a narrower definition of an obstacle to allow higher speed operation; and
allowing the use of smaller buffers with respect to obstacles.
13. The computer program product of claim 11 wherein degraded autonomous operational mode includes one or more of:
operating the autonomous vehicle up to a degraded operational speed;
utilizing a degraded obstacle detection range;
prohibiting passing maneuvers; prohibiting unprotected turns across traffic;
not processing certain sensor data;
prohibiting the use of higher risk routes;
prohibiting the use of less-connected routes; prohibiting the use of routes lacking breakdown lanes/areas;
utilizing a broader definition of an obstacle to require lower speed operation;
requiring the use of larger buffers with respect to obstacles;
requiring the vehicle to safely pull off of the road; and
requiring the vehicle to call for assistance.
14. The computer program product of claim 11 wherein:
a first quantity of the plurality of computing devices are capable of operating the autonomous vehicle in the nominal autonomous operational mode; and
a second quantity of the plurality of computing devices are incapable of operating the autonomous vehicle in the nominal autonomous operational mode, wherein the first quantity is greater than the second quantity.
15. The computer program product of claim 14 wherein:
the second quantity of the plurality of computing devices are capable of operating the autonomous vehicle in the degraded autonomous operational mode.
16. The computer program product of claim 14 wherein the first quantity of the plurality of computing devices capable of operating the autonomous vehicle in the nominal autonomous operational mode includes:
all of the plurality of computing devices within the autonomous vehicle.
17. The computer program product of claim 14 wherein the first quantity of the plurality of computing devices capable of operating the autonomous vehicle in the nominal autonomous operational mode includes:
a subset of the plurality of computing devices within the autonomous vehicle.
18. The computer program product of claim 11 wherein the autonomous vehicle includes a plurality of sensors.
19. The computer program product of claim 18 wherein all of the plurality of sensors are coupled to all of the plurality of computing devices.
20. The computer program product of claim 18 wherein a first quantity of the plurality of sensors are coupled to a first computing system within the plurality of computing devices and at least a second quantity of the plurality of sensors are coupled to at least a second computing system within the plurality of computing devices.
21. A computing system including a processor and memory configured to perform operations comprising:
operating an autonomous vehicle;
monitoring the operation of a plurality of computing devices within the autonomous vehicle, wherein each respective computing device of the plurality of computing devices provides a respective quantity of computational units, wherein the respective quantity of computational units represents an amount of processing power of the respective computing device;
detecting a failure of one or more of the plurality of computing devices;; and
responsive to detecting the failure of the one or more of the plurality of computing devices, determining a total quantity of operational computational units by summing the respective quantity of computational units provided by each operational computing device that is operating without a failure;
responsive to determining that the total quantity of operational computational units provided by each operational computing device of the plurality of computing devices exceeds a threshold, maintaining a nominal autonomous operational mode; and
responsive to determining that the total quantity of operational computational units provided by each operational computing device of the plurality of computing devices fails to exceed a threshold, switching the autonomous vehicle from the nominal autonomous operational mode to a degraded autonomous operational mode.
22. The computing system of claim 21 wherein nominal autonomous operational mode includes one or more of:
operating the autonomous vehicle up to a full operational speed;
utilizing a full obstacle detection range; allowing passing maneuvers;
allowing unprotected turns across traffic;
processing certain sensor data;
allowing the use of higher risk routes;
allowing the use of less-connected routes; allowing the use of routes lacking breakdown lanes/areas;
utilizing a narrower definition of an obstacle to allow higher speed operation; and
allowing the use of smaller buffers with respect to obstacles.
23. The computing system of claim 21 wherein degraded autonomous operational mode includes one or more of:
operating the autonomous vehicle up to a degraded operational speed;
utilizing a degraded obstacle detection range;
prohibiting passing maneuvers; prohibiting unprotected turns across traffic;
not processing certain sensor data;
prohibiting the use of higher risk routes;
prohibiting the use of less-connected routes;
prohibiting the use of routes lacking breakdown lanes/areas;
utilizing a broader definition of an obstacle to require lower speed operation;
requiring the use of larger buffers with respect to obstacles;
requiring the vehicle to safely pull off of the road; and
requiring the vehicle to call for assistance.
24. The computing system of claim 21 wherein:
a first quantity of the plurality of computing devices are capable of operating the autonomous vehicle in the nominal autonomous operational mode; and
a second quantity of the plurality of computing devices are incapable of operating the autonomous vehicle in the nominal autonomous operational mode, wherein the first quantity is greater than the second quantity.
25. The computing system of claim 24 wherein:
the second quantity of the plurality of computing devices are capable of operating the autonomous vehicle in the degraded autonomous operational mode.
26. The computing system of claim 24 wherein the first quantity of the plurality of computing devices capable of operating the autonomous vehicle in the nominal autonomous operational mode includes:
all of the plurality of computing devices within the autonomous vehicle.
27. The computing system of claim 24 wherein the first quantity of the plurality of computing devices capable of operating the autonomous vehicle in the nominal autonomous operational mode includes:
a subset of the plurality of computing devices within the autonomous vehicle.
28. The computing system of claim 21 wherein the autonomous vehicle includes a plurality of sensors.
29. The computing system of claim 28 wherein all of the plurality of sensors are coupled to all of the plurality of computing devices.
30. The computing system of claim 28 wherein a first quantity of the plurality of sensors are coupled to a first computing system within the plurality of computing devices and at least a second quantity of the plurality of sensors are coupled to at least a second computing system within the plurality of computing devices.