Unmanned Aerial Vehicle Path Determination
A computer stores dense maps generated by one or more aerial vehicles. The computer generates a global graph based on the dense maps and a sparse map. The computer stores a representation of one or more paths traversed by the one or more aerial vehicles within the global graph. The computer determines a path from an origin location to a destination location based on the global graph. The determined path enables an aerial vehicle to avoid objects.
1 . An unmanned aerial vehicle comprising:
a flight control subsystem; and
an electromechanical subsystem coupled with the flight control subsystem and configured to fly the unmanned aerial vehicle as directed by the flight control subsystem;
wherein the flight control subsystem is configured to:
generate dense maps during flight, wherein the dense maps represent locations of physical objects in a three-dimensional space;
generate a global graph based on the dense maps and a sparse map, the global graph comprising at least one node having a node probability that a physical location associated with the at least one node lacks a physical object, and at least one edge having an edge probability that the at least one edge is traversable, the edge probability being determined based on a time, indicated in the dense maps or the sparse map, when a physical location associated with the at least one edge was visited;
receive a trigger to move the unmanned aerial vehicle to a position in the three-dimensional space;
determine, using the global graph, a path to the position that avoids the physical objects in response to the trigger; and
navigate the unmanned aerial vehicle to the position using the determined path.
2 . The unmanned aerial vehicle of claim 1 , wherein the dense maps represent a flight path.
3 . The unmanned aerial vehicle of claim 1 , wherein the at least one node is associated with a node traversal time when a physical location represented by the at least one node was traversed, wherein the node probability is determined based on the node traversal time.
4 . The unmanned aerial vehicle of claim 1 , wherein the flight control subsystem is further configured to:
generate the sparse map, the sparse map comprising sparse map nodes representing sparse map locations in the three-dimensional space and sparse map edges representing connections between the sparse map locations.
5 . The unmanned aerial vehicle of claim 4 , wherein a sparse map edge between two sparse map nodes represents whether a sparse map path exists between the locations associated with the two sparse map nodes.
6 . The unmanned aerial vehicle of claim 1 , wherein determining the path to the position comprises:
determining the path using the dense maps.
7 . The unmanned aerial vehicle of claim 1 , wherein the trigger comprises a request to return to a dock of the unmanned aerial vehicle, wherein the position corresponds to the dock.
8 . The unmanned aerial vehicle of claim 1 , wherein the flight control subsystem comprises processing circuitry and a memory, wherein the global graph is represented, in the memory, as a graph with the nodes and edges, wherein an edge between two nodes indicates whether the unmanned aerial vehicle can travel, without hitting physical objects, in an unobstructed straight line between the locations represented by the two nodes.
9 . The unmanned aerial vehicle of claim 8 , wherein a value of the edge between the two nodes that indicates whether the unmanned aerial vehicle can travel in the unobstructed straight line between the two nodes is determined based on one or more of the dense maps.
10 . A non-transitory computer-readable medium storing instructions which, when executed by an on-board computer of an unmanned aerial vehicle, causes the on-board computer to perform operations comprising:
generating dense maps during flight, wherein the dense maps represent locations of physical objects in a three-dimensional space;
generating a global graph based on the dense maps and a sparse map, the global graph comprising at least one node having a node probability that a physical location associated with the at least one node lacks a physical object, and at least one edge having an edge probability that the at least one edge is traversable, the edge probability being determined based on a time, indicated in the dense maps or the sparse map, when a physical location associated with the at least one edge was visited;
receiving a trigger to move the unmanned aerial vehicle to a position in the three-dimensional space;
determining, using the global graph, a path to the position that avoids the physical objects in response to the trigger; and
navigating the unmanned aerial vehicle to the position using the determined path.
11 . The non-transitory computer-readable medium of claim 10 , wherein the dense maps represent a flight path.
12 . The non-transitory computer-readable medium of claim 10 , wherein the at least one node is associated with a node traversal time when a physical location represented by the at least one node was traversed, wherein the node probability is determined based on the node traversal time.
13 . The non-transitory computer-readable medium of claim 10 , the operations further comprising:
generating the sparse map, the sparse map comprising sparse map nodes representing sparse map locations in the three-dimensional space and sparse map edges representing connections between the sparse map locations.
14 . The non-transitory computer-readable medium of claim 13 , wherein a sparse map edge between two sparse map nodes represents whether a sparse map path exists between the locations associated with the two sparse map nodes.
15 . The non-transitory computer-readable medium of claim 10 , wherein determining the path to the position comprises:
determining the path using the dense maps.
16 . The non-transitory computer-readable medium of claim 10 , wherein the trigger comprises a request to return to a dock of the unmanned aerial vehicle, wherein the position corresponds to the dock.
17 . The non-transitory computer-readable medium of claim 10 , wherein the global graph is represented as a graph with the nodes and edges, wherein an edge between two nodes indicates whether the unmanned aerial vehicle can travel, without hitting physical objects, in an unobstructed straight line between the locations represented by the two nodes.
18 . The non-transitory computer-readable medium of claim 17 , wherein a value of the edge between the two nodes that indicates whether the unmanned aerial vehicle can travel in the unobstructed straight line between the two nodes is determined based on one or more of the dense maps.
19 . A method comprising:
generating dense maps during flight, wherein the dense maps represent locations of physical objects in a three-dimensional space;
generating a global graph based on the dense maps and a sparse map, the global graph comprising at least one node having a node probability that a physical location associated with the at least one node lacks a physical object, and at least one edge having an edge probability that the at least one edge is traversable, the edge probability being determined based on a time, indicated in the dense maps or the sparse map, when a physical location associated with the at least one edge was visited;
receiving a trigger to move the unmanned aerial vehicle to a position in the three-dimensional space;
determining, using the global graph, a path to the position that avoids the physical objects in response to the trigger; and
navigating the unmanned aerial vehicle to the position using the determined path.
20 . The method of claim 19 , wherein the dense maps represent a flight path.