Patent Publication Number: US-2022223059-A1

Title: Probability-based obstacle avoidance

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application claims priority from U.S. Provisional Patent Application No. 63/135,227 entitled “PROBABILITY-BASED OBSTACLE AVOIDANCE,” filed Jan. 8, 2021, the contents of which are incorporated by reference in their entirety. 
    
    
     FIELD OF THE DISCLOSURE 
     The subject disclosure is generally related to obstacle avoidance for vehicles. 
     BACKGROUND 
     As autonomous vehicle become increasingly utilized, air space congestion due to increased air traffic is predicted to overwhelm resources that are currently used for obstacle avoidance. The development of obstacle avoidance systems has focused on efficient sensor systems and associated software. The computational resources needed to adequately process on-board sensor-created data results in size, weight, and power challenges for autonomous vehicle design. 
     Some obstacle avoidance systems include an obstacle database and consolidate obstacle information that is dynamically acquired using on-board system with information on terrain and stationary man-made objects from the obstacle database. However, such conventional obstacle databases are typically focused on stationary objects, such as terrain and man-made obstacles, and the precision of information stored in such databases can vary depending on the covered area, the information provider, or both. Although conventional obstacle databases enable avoidance of stationary obstacles, detection and avoidance of non-stationary, uncooperative obstacles requires implementation of additional components for obstacle detection. However, the underlying incompatibility of dynamic obstacle detection data with stationary obstacle database data presents challenges for on-board obstacle avoidance systems. 
     SUMMARY 
     In a particular implementation, a system includes an interface configured to receive sensor data corresponding to a potential hazard associated with a travel path of a vehicle. The system also includes an obstacle database including probability distributions of potential obstacles. The system further includes one or more processors coupled to the interface and configured to generate a probability index associated with the potential hazard and to determine whether to modify the travel path based on the probability index and the probability distributions. 
     In another particular implementation, a method includes receiving, by one or more processors, sensor data corresponding to a potential hazard associated with a travel path of a vehicle. The method also includes generating, by the one or more processors, a probability index associated with the potential hazard. The method further includes determining, by the one or more processors, whether to modify the travel path based on the probability index. 
     In another particular implementation, a non-transitory, computer-readable medium stores instructions that, when executed by a processor, cause the processor to initiate, perform, or control operations that include receiving sensor data corresponding to a potential hazard associated with a travel path of a vehicle. The operations also include generating a probability index associated with the potential hazard. The operations further include determining whether to modify the travel path based on the probability index. 
     The features, functions, and advantages described herein can be achieved independently in various implementations or may be combined in yet other implementations, further details of which can be found with reference to the following description and drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a diagram that illustrates an example system configured to perform probability-based obstacle avoidance. 
         FIG. 2  is a diagram that illustrates a flow chart of an example of a method of operation of the system of  FIG. 1 . 
         FIG. 3  is a diagram depicting an example of probability-based obstacle avoidance. 
         FIG. 4  is a diagram that illustrates a flow chart of an example of a method of probability-based obstacle avoidance. 
         FIG. 5  is a block diagram of a computing environment including a computing device configured to support aspects of computer-implemented methods and computer-executable program instructions or code according to the subject disclosure. 
     
    
    
     DETAILED DESCRIPTION 
     Aspects disclosed herein present systems and methods of probability-based obstacle avoidance. Dynamic obstacle detection in conventional obstacle avoidance systems relies on extensive sensor data processing that impacts the size, weight, and power requirement of vehicles. Further, conventional dynamic obstacle detection systems are not natively compatible with conventional stationary obstacle databases, which presents challenges for integrating dynamic detection data with obstacle database data in on-board obstacle avoidance systems. 
     As disclosed herein, systems and methods of probability-based collision avoidance include a comprehensive obstacle database system in which obstacles are defined in terms of probability distributions. In an example, an obstacle database includes spatial and temporal parameters associated with probability distributions of potential obstacles, where spatial probability distributions enable evaluation of vehicle trajectories in terms of risk, and temporal distributions additionally provide time-based characteristics of temporary events. The obstacle database can include any objects or events that may affect vehicle safety, such as severe weather areas, man-made structures, stationary or non-stationary natural obstacles, etc. In some implementations, the database-stored information is configured to be efficiently compared to (e.g., subtracted from) the situational picture generated by an on-board obstacle detection sensor system, reducing the processing load of on-board resources by focusing analysis on potential hazards that are detected by detection sensors but that are not included in the obstacle database. 
     The disclosed systems and methods of probability-based collision avoidance improve the efficiency of obstacle avoidance systems that can be implemented in vehicles, such as unmanned aircraft and autonomous personal air transport vehicles. The probability-based obstacle database enables reduction of workload for on-board obstacle avoidance systems and can therefore improve vehicle safety beyond conventional basic obstacle detection and avoidance processes. The probability-based obstacle database enables storage of comprehensive and timely information about potentially threatening objects and phenomena that might otherwise need to be processed by limited on-board resources. The disclosed techniques are applicable to all classes of vehicles, and particularly to autonomous air vehicles. 
     The figures and the following description illustrate specific exemplary embodiments. It will be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the principles described herein and are included within the scope of the claims that follow this description. Furthermore, any examples described herein are intended to aid in understanding the principles of the disclosure and are to be construed as being without limitation. As a result, this disclosure is not limited to the specific embodiments or examples described below, but by the claims and their equivalents. 
     Particular implementations are described herein with reference to the drawings. In the description, common features are designated by common reference numbers throughout the drawings. In some drawings, multiple instances of a particular type of feature are used. Although these features are physically and/or logically distinct, the same reference number is used for each, and the different instances are distinguished by addition of a letter to the reference number. When the features as a group or a type are referred to herein e.g., when no particular one of the features is being referenced, the reference number is used without a distinguishing letter. However, when one particular feature of multiple features of the same type is referred to herein, the reference number is used with the distinguishing letter. For example, referring to  FIG. 3 , multiple potential trajectories  340  are illustrated and associated with reference numbers  340 A,  340 B,  340 C,  340 D, and  340 E. When referring to a particular one of these trajectories, such as a trajectory  340 A, the distinguishing letter “A” is used. However, when referring to any arbitrary one of these trajectories or to these trajectories as a group, the reference number  340  is used without a distinguishing letter. 
     As used herein, various terminology is used for the purpose of describing particular implementations only and is not intended to be limiting. For example, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. Further, the terms “comprise,” “comprises,” and “comprising” are used interchangeably with “include,” “includes,” or “including.” Additionally, the term “wherein” is used interchangeably with the term “where.” As used herein, “exemplary” indicates an example, an implementation, and/or an aspect, and should not be construed as limiting or as indicating a preference or a preferred implementation. As used herein, an ordinal term e.g., “first,” “second,” “third,” etc. used to modify an element, such as a structure, a component, an operation, etc., does not by itself indicate any priority or order of the element with respect to another element, but rather merely distinguishes the element from another element having a same name but for use of the ordinal term. As used herein, the term “set” refers to a grouping of one or more elements, and the term “plurality” refers to multiple elements. 
     As used herein, “generating,” “calculating,” “using,” “selecting,” “accessing,” and “determining” are interchangeable unless context indicates otherwise. For example, “generating,” “calculating,” or “determining” a parameter or a signal can refer to actively generating, calculating, or determining the parameter or the signal or can refer to using, selecting, or accessing the parameter or signal that is already generated, such as by another component or device. As used herein, “coupled” can include “communicatively coupled,” “electrically coupled,” or “physically coupled,” and can also or alternatively include any combinations thereof. Two devices or components can be coupled e.g., communicatively coupled, electrically coupled, or physically coupled directly or indirectly via one or more other devices, components, wires, buses, networks e.g., a wired network, a wireless network, or a combination thereof, etc. Two devices or components that are electrically coupled can be included in the same device or in different devices and can be connected via electronics, one or more connectors, or inductive coupling, as illustrative, non-limiting examples. In some implementations, two devices or components that are communicatively coupled, such as in electrical communication, can send and receive electrical signals, digital signals or analog signals directly or indirectly, such as via one or more wires, buses, networks, etc. As used herein, “directly coupled” is used to describe two devices that are coupled e.g., communicatively coupled, electrically coupled, or physically coupled without intervening components. 
       FIG. 1  depicts an example of an example system  100  including a vehicle  102  that is configured to perform probability-based obstacle avoidance. As illustrated, the vehicle  102  corresponds to an unmanned aerial vehicle (UAV) traveling to a destination  170  along a travel path  160 . A potential hazard  150  along the travel path  160  is represented as a flock of birds (e.g., a non-stationary natural obstacle). Another potential hazard  152  is represented as an antenna (e.g., a stationary man-made obstacle). As used herein, a “hazard” refers to an object (e.g., structure, terrain, another object or condition, etc.) for which a collision between the vehicle  102  and the object would endanger the safety of the vehicle  102 . A “potential hazard” refers to an object that is detected by the vehicle  102 , whether or not the object represents a probable collision risk by being directly along the travel path  160 . 
     The vehicle  102  includes an interface  108  coupled to one or more sensors  104 , one or more processors  110  coupled to the interface  108 , and a memory  112  coupled to the one or more processors  110 . The one or more sensors  104  are coupled to the vehicle  102  (e.g., a sensor package) and configured to generate sensor data  106  corresponding to an environment of the vehicle  102 , including any potential hazards that may be in the vicinity of the vehicle  102 . In the illustrated example, the sensor data  106  includes data indicative of the potential hazards  150  and  152 . The one or more sensors  104  can include one or more cameras to capture image or video data, radar devices, lidar devices, ultrasound devices, antennas to receive beacons or other signal from other vehicles or stationary emitters, one or more other sensors to detect the environment of the vehicle  102 , or any combination thereof. In some implementations, the one or more sensors  104  further include one or more positional or motion sensors, such as one or more compasses, altimeters, gyroscopes, accelerometers, positioning systems (e.g., a global positioning system (GPS) receiver), one or more other sensors, or any combination thereof. The interface  108  is configured to receive the sensor data  106  corresponding to the potential hazards. 
     The one or more processors  110  can be implemented as a single processor or as multiple processors, such as in a multi-core configuration, a multi-processor configuration, a distributed computing configuration, a cloud computing configuration, or any combination thereof. In some implementations, one or more portions of the vehicle  102  are implemented using dedicated hardware, firmware, or a combination thereof. 
     The memory  112  includes an obstacle database  120 , an obstacle analysis system  130 , a travel control system  132 , travel path data  140 , a probability index  142 , and a probability distribution  144 . The obstacle analysis system  130  includes instructions that are executable by the one or more processors  110  to analyze the sensor data  106  to detect one or more potential hazards and to generate a probability index  142  associated with a potential hazard. In some implementations, a “probability index” indicates an absolute or relative likelihood or probability of an undesirable outcome, such as a collision (e.g., with another vehicle, a terrain feature, or the ground) or the vehicle  102  entering an unpermitted region (e.g., entering within a prohibited distance from another vehicle or crossing into a restricted airspace). 
     A probability index for an obstacle or a hazard represents an estimated likelihood that the vehicle  102  will have an undesirable outcome due to interaction with that hazard, also referred to as “encountering” that hazard. A cumulative probability index for a travel path of the vehicle  102  represents an estimated likelihood that the vehicle  102  will have an undesirable outcome, such as encountering one or more obstacles or hazards, while travelling along the travel path. However, in other implementations, a probability index indicates an estimated safety metric for the vehicle  102  (e.g., an estimated likelihood of a desirable outcome). 
     The travel path data  140  is stored in the memory  112  and represents a planned path of travel for the vehicle  102 . For example, the travel path data  140  can indicate a sequence of headings, bearings, speeds, distances, altitudes, waypoints, or any other information representing a planned path of travel for the vehicle  102 . In some implementations, the travel path data  140  is determined based on known obstacles prior to initiating travel, such as to reduce or minimize the likelihood of collision with any known obstacles based on contents of the obstacle database  120 . As illustrated, the motion of the vehicle  102  following the stored travel path data  140  is graphically represented as the travel path  160 . The stored travel path data  140  can be dynamically modified during travel of the vehicle  102 , such as in response to detecting one or more potential hazards that affect a likelihood of collision or other undesirable outcomes for the vehicle  102 . 
     As used herein, a “trajectory” of the vehicle  102  indicates a direction of travel of the vehicle  102 . Because changing the trajectory of the vehicle  102  also results in changing the travel path of the vehicle  102 , and changing the travel path results in changing the trajectory (or future trajectory) of the vehicle  102 , the terms “travel path” and “trajectory” are used interchangeably herein. 
     The obstacle analysis system  130  uses the probability index  142  to determine whether to adjust the travel path  160  to reduce a likelihood of the vehicle  102  encountering a detected hazard, as described further below. The travel control system  132  includes instructions that are executable by the one or more processors  110  to control flight operations of the vehicle  102 , such as to cause the vehicle  102  to travel in accordance with the travel path  160 . 
     The obstacle database  120  includes records indicating probability distributions  124  of potential obstacles  126 . In an example, the potential obstacles  126  correspond to at least one of: a stationary natural object, a stationary man-made object, a mobile natural object, a mobile man-made object, hazardous weather, a geofenced region, or a prohibited travel region. Examples of various potential obstacles are described further with reference to  FIG. 3 . Each of the probability distributions  124  includes probability information corresponding to each of the potential obstacles  126 . 
     In some implementations, a probability distribution for a particular obstacle represents an estimated spatial probability of encountering the obstacle. In an illustrative example, the probability distribution of the potential hazard  152  is represented as having a “1” value (i.e., 100% likelihood of encountering the potential hazard  152 ) within a cylindrical region of space enclosing the antenna, and having a “0” value (i.e., 0% likelihood of encountering the potential hazard  152 ) outside of the cylindrical volume. For permanent obstacles, the probability distribution is time-invariant. In some implementations, for mobile or temporary obstacles, the probability distribution is time-dependent. To illustrate, the probability distribution for a construction crane may have a “0” value for times prior to a scheduled start of construction and following a scheduled end of construction and non-zero values based on spatial location during the scheduled period of construction. 
     The one or more processors  110  are configured to generate a probability index  142  associated with the potential hazard  150 . To illustrate, the obstacle analysis system  130  processes the sensor data  106 , detects the potential hazard  150 , and estimates the probability of the vehicle  102  encountering the potential hazard  150  based on an estimated size, trajectory, and/or speed of the potential hazard  150 , and further based on the location, trajectory, and/or speed of the vehicle  102  along with estimated future locations of the vehicle  102  based on the travel path data  140 . 
     In some implementations, the probability index  142  corresponds to a likelihood of the vehicle  102  encountering the potential hazard  150  along the travel path  160 . In some implementations, the probability index  142  is determined based on a spatial and temporal probability distribution  144  associated with the potential hazard  150 . In an example, the obstacle analysis system  130  processes the sensor data  106  to estimate the probability distribution  144  of the potential hazard  150 . 
     In an illustrative example, the one or more processors  110  are configured to filter out potential hazards detected in the sensor data  106  that represent known obstacles. In an example, the obstacle analysis system  130  is configured to compare the detected potential hazard  152  to the potential obstacles  126  and to determine that the potential hazard  152  matches a potential obstacle  126  in the obstacle database  120 , such as based on a signature (e.g., visual appearance or radar signature) and location. In response to determining that the potential hazard  152  matches a known obstacle, the obstacle analysis system  130  bypasses further processing of the sensor data  106  corresponding to the potential hazard  152  and relies on the information in the obstacle database  120 , thus conserving processing resources for processing of unknown hazards. In addition, because the travel path  160  is determined based on the known potential obstacles  126  in the obstacle database  120 , detection of the potential hazard  152  does not trigger re-evaluation of the travel path  160 . 
     In contrast, the obstacle analysis system  130  compares the detected potential hazard  150  to the potential obstacles  126  and, in response to determining that the detected potential hazard  150  does not match a potential obstacle  126  of the obstacle database  120 , generate the probability index  142  associated with the detected potential hazard  150 . In some implementations, the one or more processors  110  (e.g., the obstacle analysis system  130 ) are configured to apply machine learning to determine the probability distribution  144  associated with the potential hazard  150 . 
     The obstacle analysis system  130  is configured to determine whether to modify the travel path  160  based on the probability index  142  and the probability distributions  124 . In an example, re-evaluation of the travel path  160  is performed as a real-time dynamic process during travel of the vehicle  102  because of unknown obstacles/hazards which may affect the travel path  160  and that are detected by on-board systems, such as the potential hazard  150 . The travel path  160  can be dynamically adjusted due to other detecting hazards which were not initially used for the initial probability index computations when determining the travel path  160 . 
     The obstacle analysis system  130  is configured to, responsive to determining that the potential hazard  150  does not match any of the potential obstacles  126  of the obstacle database  120 , compute a first cumulative probability index associated with the travel path  160 , compute a second cumulative probability index associated with a first alternate travel path  162 , and compute a third cumulative probability index associated with a second alternate travel path  164 . The obstacle analysis system  130  is configured to determine whether to transition to the first alternate travel path  162  or the second alternate travel path  164  at least partially based on a comparison between the first cumulative probability index, the second cumulative probability index, and the third cumulative probability index. In some implementations, the one or more processors  110  are configured to apply machine learning to determine whether to modify the travel path  160 . An example of determining cumulative probability indices and selecting updated travel paths is described further with regard to  FIG. 3 . 
     During operation in accordance with a particular example, the initial travel path  160  to the destination  170  is generated based on the probability distributions  124  of the potential obstacles  126  in the obstacle database  120 . For example, the one or more processors  110  (or another processing device, such as a dedicated flight control server) determines one or more possible travel paths to the destination  170  having the lowest computed probability of encountering any of the potential obstacles  126 , selects the travel path  160  as the most efficient (e.g., based on shortest distance, least fuel consumption, fastest travel time, etc.) of the determined travel paths, and stores the travel path data  140  corresponding to the selected travel path  160 . 
     The vehicle  102  initiates travel to the destination  170  according to the travel path data  140 . During travel, the obstacle analysis system  130  operates continuously to process the sensor data  106  to detect potential hazards. In response to detecting the potential hazard  150  and the potential hazard  152 , the obstacle analysis system  130  compares signatures of the potential hazards  150  and  152  to entries in the obstacle database  120 . In response to determining that the potential hazard  152  matches the signature and location of one of the potential obstacles  126  in the obstacle database  120 , the obstacle analysis system  130  bypasses further processing of the sensor data  106  corresponding to the potential hazard  152 . 
     In response to determining that the potential hazard  150  does not match the signature of any of the potential obstacles  126  in the obstacle database  120 , the obstacle analysis system  130  estimates the probability distribution  144  for the potential hazard  150 . For example, the sensor data  106  is processed to estimate a location, altitude, heading, and speed for the flock of birds, and extrapolates probable locations of the flock into the future, with diminishing probability indicating increasing uncertainty in future projections. In some implementations, the obstacle analysis system  130  creates a new entry in the obstacle database  120  corresponding to the potential hazard  150 . 
     In some implementations, the obstacle analysis system  130  determines the probability index  142  of the vehicle  102  encountering the flock of birds based on the travel path data  140  and the probability distribution  144 . If the probability index  142  is below a threshold (e.g., 0.05) indicating a very low probability of collision if the vehicle  102  continues along the travel path  160 , no adjustment to the travel path data  140  is made. If the probability index  142  exceeds the threshold, the obstacle analysis system  130  begins evaluating alternate travel paths, such as the alternate travel paths  162  and  164 , to identify an updated travel path to the destination  170  that has a reduced or minimized probability of encountering any obstacle, including the flock of birds. 
     In some cases, the obstacle analysis system  130  selects an updated travel path further based on comparing efficiencies of the candidate travel paths. For example, if both the first alternate travel path  162  and the second alternate travel path  164  have equal, or approximately equal, estimated probability of encountering a known obstacle (including the potential hazard  150 ), then the first alternate travel path  162  is chosen as having the shorter distance, requiring less fuel or battery consumption and resulting in shorter delay from the originally estimated arrival time at the destination  170 . The travel path that is selected is used to update the travel path data  140 , which is used by the travel control system  132  to continue to the destination  170 . 
     Because in some implementations the obstacle database  120  is entirely probability distribution-based, obstacle presence is defined in terms of probability with probability distribution, different types of obstacle data from different sources and in different native formats can be seamlessly combined and processed from the obstacle database  120 . The obstacles&#39; probability distributions depend on time, location, and non-stationary obstacles&#39; intent, among other factors. Intent, such as indication of flight path or trajectory, can be provided by cooperative obstacles or estimated for uncooperative ones. During evaluation of alternative travel paths, a probability index is estimated for each database record to estimate temporal probability of an obstacle&#39;s existence at a specific future time or a specific period of time. 
     Thus, the system  100  enables use of different types of input data regarding potential obstacles, such as for the purpose of optimizing the flight path of a UAV, that are represented in the obstacle database  120  using a common format (e.g., the probability distributions  124 ). To illustrate, using the probability distributions  124  enables different types of obstacle data to be represented and analyzed according to a uniform scheme, independent of whether the underlying obstacle corresponds to weather data, flight data of other vehicles, terrain data, or physical or temporal restrictions such as a temporarily restricted airspace over a sporting event, as illustrative, non-limiting examples. As a result, the one or more processors  110  can generate and evaluate updated travel paths faster and with less processing resources as compared to evaluating multiple different types of data of different potential hazards from different sources and using different formats. In addition, comparing potential hazards detected via the sensor data  106  to the obstacles  126  enables faster results using fewer resources when encountering unexpected hazards by bypassing processing of detected potential hazards that match known entries in the obstacle database  120 . Vehicle performance and safety is thus enhanced when the vehicle  102  encounters an unexpected hazard. 
     Although  FIG. 1  illustrates particular examples for clarity of explanation, such examples are not to be considered as limitations. For example, although the one or more sensors  104  are illustrated coupled to the vehicle  102 , in other implementations the interface  108 , the obstacle database  120 , the one or more sensors  104 , and the one or more processors  110  are integrated into the vehicle  102 . As another example although the obstacle analysis system  130  is described as performing comparisons of potential hazards detected via the sensor data  106  to entries in the obstacle database  120  and bypassing processing of potential hazards matching entries in the obstacle database  120 , in other implementations the obstacle analysis system  130  does not bypass processing of potential hazards matching entries in the obstacle database  120  and instead processes all detected potential hazards as potentially unexpected obstacles. 
       FIG. 2  illustrates an example of a method  200  of probability-based object avoidance that can be performed by the vehicle  102 . The method  200  includes, at block  202 , activating on-board sensors, such as the one or more sensors  104 . The method  200  includes, at block  204 , receiving sensor data (e.g., radar returns and image data), such as the sensor data  106  received at the one or more processors  110  via the interface  108 . 
     The method  200  includes, at block  206 , retrieving database information from the obstacle database  120 , which can be updated based on external real-time obstacle information sources  210 . The method  200  includes, at block  212 , comparing and filtering out sensor data matching the database information. 
     The method  200  includes, at block  214 , estimating intent and probability characteristics for the filtered dataset. The method  200  includes, at block  216 , applying machine learning to update the obstacle database  120  to include entries corresponding to hazards detected in the filtered dataset. 
     The method  200  includes, at block  218 , evaluating the hazards in the filtered dataset, the obstacles in the obstacle database  120 , or both, to generate a situational picture. In an example, the process of taking “situational snapshots” is repeated with a pre-defined frequency. If the “snapshot” does not show any imminent collision threats, no action is taken, and the trajectory is not modified. 
     The method  200  includes, at block  220 , determining whether to modify the trajectory of the vehicle based on the situational picture. In response to determining not to modify the trajectory, the method  200  includes, at block  222 , taking no action regarding modifying the trajectory. 
     Otherwise, in response to determining to modify the trajectory, the method  200  includes, at block  224 , determining whether the situational picture is sufficient to determine how to modify the trajectory to avoid the hazard(s) detected in the filtered dataset. In response to the situational picture being sufficient, the method  200  includes, at block  232 , updating the flight path of the vehicle. 
     If the situational picture is not sufficient, the method  200  includes, at block  226 , determining whether a human operator is available or “in the loop” to provide instructions for the vehicle. In response to a human operator  234  being in the loop and available to provide an instruction  236  for the vehicle, the method  200  includes, at block  230 , determining whether a solution is obtainable regarding how to modify the trajectory to avoid the hazard(s) detected in the filtered dataset. If a solution is obtainable, the method  200  advances to updating the flight path of the vehicle, at block  232 . If no human operator is available, or if the human operator  234  is unable to resolve the situation, the method  200  includes, at block  228 , initiating an emergency action, e.g., landing, or triggering a ballistic parachute deployment. 
     The system  100  and the method  200  enable several benefits, in accordance with various aspects. In a particular aspect, use of the obstacle database  120  results in obstacle-related, on-board processing being performed for subsets of sensor-acquired data that cannot be associated with obstacle-related information residing in the obstacle database  120 . In a particular aspect, the obstacle database  120  is entirely probability distribution-based, and obstacle presence is defined in terms of probability with probability distribution. That distribution depends, at least partially, on time, the location, and the intent of non-stationary obstacles. The intent can be provided by cooperative obstacles or estimated for uncooperative ones. 
     In a particular aspect, the distinction between stationary objects and non-stationary objects or temporary objects is expressed in terms of temporal probability. As an example, the probability of encountering a bridge known to exist at a given location is very close to (or equal to) 1, while the probability to encounter a construction crane is less than 1 if outside of the planned construction period. In this particular case, the probability distribution is unsymmetrical in that the probability of encountering the crane after the planned construction period is higher than the probability of encountering the crane before the planned construction period. 
     In a particular aspect, for flying objects detected in a certain airspace, the probability of encountering the flying objects in another airspace volume (other than the detection space) depends on the intent of the flying objects. For example, the change of position of a flock of birds detected in the area of a migratory route can be estimated accurately over a relatively long period of time, whereas the change of position may not be capable of being estimated accurately for an individual bird close to the ground, such when the bird is engaged in hunting. 
     In a particular aspect, system parameters of the vehicle  102  are conditioned based on the probability functions associated with obstacles. In an illustrative example, the travel control system  132  is configured to slow down travel of the vehicle  102  in a space-time volume with higher collision probability. In a particular aspect, tailored probability distributions are used. In an example, a probability distribution for a tall building scheduled to be constructed accounts for the likelihood that construction of the building begins behind schedule rather than ahead of schedule. 
     In a particular aspect, the obstacle database  120  is updated relatively frequently during travel and is compiled from many sources, including both proprietary and public domain information, such as: JEPPESEN® (registered trademark of BOEING DIGITAL SOLUTIONS, INC., Chicago, Ill.) obstacle databases; real-time information from other, cooperative vehicles, manned and unmanned, piloted and autonomous; weather data, where “severe weather warnings” are interpreted as obstacles, acquired from a multiplicity of sources, such as the National Oceanic and Atmospheric Association (NOAA); geographical data, such as the United States Geographical Survey “National Elevation Dataset” of the U. S. Department of the Interior and the “Terrain and Obstacles Data” of the Federal Aviation Administration; and other relevant data omni-acquisition/crawling, including private databases of satellite and street-view imagery, social media, weather forecasts, animal migratory routes information, etc. 
     In a particular aspect, obstacle database information is specific for the on-board sensors  104  of the vehicle  102 . In an example in which the sensors  104  include a synthetic aperture radar-based obstacle detection system, the known obstacle database  120  is formatted appropriately to accelerate the removal of “known” radar echo information from the dataset of potential hazards based on the sensor data  106 . 
     In a particular aspect, blockchain-based trust mechanisms are implemented for security and credibility of the obstacle database  120 . In a particular aspect, the obstacle database  120  is compatible with geofencing, such as with geofenced space being assigned the collision probability of one. In a particular aspect, the obstacle database  120  on-board the vehicle  102  stores a subset of data, relevant for a particular mission, from a more comprehensive obstacle database, and automatic updates are provided through a communications link with the vehicle  102  as such updates become relevant and available. 
     In a particular aspect, the intent of any detected observed uncooperative objects and of any unexpected cooperative objects is evaluated to assign a probability of encountering the objects elsewhere. For example, an obstacle identified as a flock of migratory birds is likely to maintain its course and altitude over a reasonable time, and the probability of encountering the flock along the predicted trajectory is relatively high. 
     In a particular aspect, the obstacle database  120  contains information about suitable emergency flight termination locations in, or close to, the mission area, such as sites appropriate for possible emergency landing or destruction. Such information includes operation-critical data, such as prevalent wind direction at the sites, the type of soil or surface and possible overgrowth, etc. The information for a particular site includes the probability data associated with site&#39;s important characteristics and data regarding a most recent update of the information, to help to estimate a probability of success of an emergency operation, enabling evaluation of multiple emergency operations to determine an emergency response plan. In an example, in response to an engine failure in a given area, the vehicle  102  elects to glide to a private landing strip that is farther away but that has a lower unsuccessful landing probability, rather than to attempt landing at a nearby forest clearing that was surveyed a year ago because shrubbery or low trees might have grown there since the most recent survey. 
     In a particular aspect, multiple benefits arise from the addition of a probability parameter (e.g., the probability distributions  124 ) indicating spatial and temporal likelihoods of safety-related events or of encountering an obstacle in a given segment of airspace. In a particular aspect, the obstacle database  120  has does not explicitly distinguish stationary from non-stationary obstacles. Instead, non-stationary objects corresponding to database entries with diminishing temporal probabilities. 
     In a particular aspect, management of the obstacle database  120  is simplified by obviating periodic cleanups of the obstacle database  120  due to semi-stationary objects or events. For example, objects or events are associated with diminishing temporal probabilities that tail-off to zero and are thus automatically removed. 
     In a particular aspect, use of the obstacle database  120  enables improvement or optimization of trajectories, in terms of risk and safety. In a particular aspect, machine learning is implemented to improve the probability distributions associated with the estimation of obstacle coordinates in space and time. Alternatively or in addition, in a particular aspect, machine learning is used for dynamic trajectory generation. 
     In a particular aspect, the sensor data  106  includes real-world images that are evaluated by machine-learning algorithms to improve the precision of defining obstacle parameters, e.g., positions of man-made obstacles, vegetation coverage area or other phenomena, prevalent migrating bird flock areas, or severity of weather events. In a particular aspect, supervised learning of one or more neural networks are used for obstacle recognition, and reinforcement learning is used for efficient obstacle avoidance and following of flight paths. In a particular aspect, the reinforcement learning process enhances the database content by improving recognition precision and detection probability of obstacles based on systematically acquired sensor data. Database enhancements improve data reliability and reduce the computational effort for onboard obstacle avoidance system, improving operation of the obstacle analysis system  130  and the vehicle  102 . 
       FIG. 3  is a diagram depicting an example of probability-based obstacle avoidance by the vehicle  102 , including a graphical representation of potential obstacles for travel from location A  302  to destination B  304 , and also including an example of data values used by the vehicle  102  for obstacle avoidance. 
     As illustrated, a mountain chain stands between location A  302  and destination B  304 . Obstacles  310 ,  314 , and  318  are portions of the mountain chain that cannot be overflown by the vehicle  102  and correspond to stationary natural objects (SNOs). Obstacle  310  is represented by a probability distribution  312 , obstacle  314  is represented by a probability distribution  316 , and obstacle  318  is represented by a probability distribution  320 . Each of the probability distributions  312 ,  316 , and  320  has a value of 1.0 (e.g., certainty of encounter) within the respective spatial area depicted for that obstacle and has a value of 0.0 (e.g., certainty of no encounter) outside of the spatial area. The obstacles  310 ,  314 , and  318  (also referred to as “mountains”  310 ,  314 , and  318 , respectively) are separated by valleys  350  and  352  through which the vehicle  102  can cross the mountain chain. In this example, only spatial probabilities are considered, and collision probabilities are discrete, to facilitate the presentation of the concept. 
     Obstacle  322  (also referred to as “birds  322 ”) represents extensive bird breeding grounds in parts of valley  350 . A probability distribution  324  represents estimated probabilities of collision with birds and includes a center portion having a value of 0.2, an outer portion having a value of 0.1, and is 0 elsewhere. 
     Obstacle  326  (also referred to as “winds  326 ”) represents strong, gusty winds in the valley  352 . A probability distribution  328  represents estimated probabilities of vehicle crash due to the winds and includes a center portion having a value of 0.3, an outer portion having a value of 0.2, and is 0 elsewhere. 
     Obstacle  330  represents prohibited travel region which the vehicle  102  is prohibited from entering. A probability distribution  332  represents boundaries of the region, with a value of 1.0 inside the region, and is 0 outside the region. 
     Obstacle  334  represents a geo-fenced region which the vehicle  102  is prohibited from entering. A probability distribution  335  represents boundaries of the geo-fenced region, with a value of 1.0 inside the region, and is 0 outside the region. 
     At location A  302 , the obstacle database  120  is populated with records of known potential obstacles. Each record corresponds to a particular obstacle and includes an identifier (ID), a probability distribution (PROB. DIST.), and a signature (SIG.) for that obstacle. In the illustrated example, the vehicle  102  includes a radar system and a camera in the sensors  104 , and the signatures include at least one of a radar signature or image feature data for efficient comparisons to incoming sensor data  106 . 
     Record  360  corresponds to obstacle  310 , which is a stationary natural object (SNO) with probability distribution parameters P 1  representing the probability distribution  312  and with signature S 1 . Record  362  corresponds to obstacle  314 , which is a stationary natural object with probability distribution parameters P 2  representing the probability distribution  316  and with signature S 2 . Record  364  corresponds to obstacle  318 , which is a stationary natural object with probability distribution parameters P 3  representing the probability distribution  320  and with signature S 3 . Record  366  corresponds to obstacle  322  (e.g., birds), which are mobile natural objects (MNO) with probability distribution parameters P 4  representing the probability distribution  324  and with signature S 4 . Record  368  corresponds to obstacle  326 , which is hazardous weather (HZW) with probability distribution parameters P 5  representing the probability distribution  328  and with signature S 5 . Record  370  corresponds to obstacle  330 , which is a prohibited travel region (PTR) with probability distribution parameters P 6  representing the probability distribution  332  and with signature S 6 . Record  372  corresponds to obstacle  334 , which is a geo-fenced region (GFR) with probability distribution parameters P 7  representing the probability distribution  335  and with signature S 7 . 
     Prior to detection of an uncooperative drone  336  by the vehicle  102 , multiple potential travel paths, illustrated as a first travel path  342 , a second travel path  344 , and a third travel path  346  have been evaluated and the first travel path  342  is selected to travel to the destination  304 . An illustrative, non-limiting example of evaluating each of the travel paths (TPs)  342 ,  344 , and  346  includes evaluating, for each of the travel paths  342 ,  344 , and  346 , a probability index (PROB. INDEX) indicating the probability of encountering each of the obstacles along that particular travel path. For example, the first travel path  342  has a 0.1 probability of encountering the birds  322  and a 0 probability of encountering each of the other obstacles, the second travel path has a 0.3 probability of encountering the winds  326  and a 0 probability of encountering each of the other obstacles, and the third travel path has a 0 probability of encountering each of the obstacles. 
     A first cumulative probability index  374  indicating a probability of encountering any obstacle along the first travel path  342  is computed (e.g., by processor  110 ) and has a value of 0.1. A second cumulative probability index  376  indicating a probability of encountering any obstacle along the second travel path  344  is computed (e.g., by processor  110 ) and has a value of 0.3. A third cumulative probability index  378  indicating a probability of encountering any obstacle along the third travel path  346  is computed (e.g., by processor  110 ) and has a value of 0.0. In a particular example, the cumulative probability index for a travel path is computed based on a sum of the probabilities that the vehicle  102  will not encounter each of the known obstacles while traveling along that travel path. In an example, the cumulative probability index is computed based on 1−Π i∈DB (1−PI i ) where i represents an obstacle in the obstacle database  120 , PI 1  represents the probability index for obstacle i, and Π i∈DB ( ) represents the product over all obstacles in the obstacle database  120 . 
     Although the third travel path  346  has the lowest cumulative probability index, an additional determination (e.g., by processor  110 ) can indicate that the length of the third travel path  346  exceeds available fuel or power resources for the vehicle  102 . For example, factors such as estimated travel time and fuel consumption are incorporated into a trip efficiency metric for each of the travel paths, with the first travel path  342  having a trip efficiency metric  394  of 0.7, the second travel path  344  having a trip efficiency metric  396  of 0.5 (due to being slightly longer and therefore less efficient than the first travel path  342 ), and the third travel path  346  having a trip efficiency metric  398  of 0 (due to being too long for the available fuel). As a result, the first travel path  342  is selected (e.g., by processor  110 ) based on a combination of having a relatively low-magnitude cumulative probability index  374  and the highest trip efficiency metric  394 . 
     In response to detecting the drone  336 , the obstacle analysis system  130  on-board the vehicle  102  determines a signature  382  of the drone  336 , compares the signature  382  to the signatures  306  in the obstacle database  120 , and in response to determining that the signature  382  of the drone  336  does match any of the signatures  306  in the obstacle database  120 , designates the drone  336  as a potential hazard. The obstacle analysis system  130  analyzes the sensor data  106  and determines that the drone  336  is flying with an apparent intent of crossing the mountain chain through the valley  350 , but its planned exact trajectory is unknown. 
     The obstacle analysis system  130  determines that the most probable trajectory of the drone  336  goes through the center of the valley  350 , and the expected distribution of the probability of trajectory deviation is incorporated into an estimated probability distribution  338  for the drone  336 . For example, a probability of encountering the drone  336  is 0.3 if the drone  336  follows a first trajectory  340 A, 0.4 if the drone  336  follows a second trajectory  340 B, 0.6 if the drone  336  follows a third trajectory  340 C, 0.4 if the drone  336  follows a fourth trajectory  340 D, and 0.3 if the drone  336  follows a fifth trajectory  340 E. 
     The obstacle analysis system  130  creates a new database record  380  corresponding to the drone  336  to add to the obstacle database  120 . The drone  336  corresponds to a man-made mobile object (MMO), with parameters P 8  representing the probability distribution  338 , and with the signature S 8   382 . The obstacle analysis system  130  calculates probability indices of encountering the drone  336  of 0.55 along the first travel path  342  and 0 along the second travel path  344  and the third travel path  346 . 
     Based on the updated information in the obstacle database  120 , the obstacle analysis system  130  calculates a new cumulative probability index  384  of 0.59 for the first travel path  342 , a new cumulative probability index  386  of 0.3 for the second travel path  344 , and a new cumulative probability index  388  of 0 for the third travel path  346 . Based on the updated information in the obstacle database  120 , and the trip efficiency metrics  394 ,  396 , and  398 , the obstacle analysis system  130  determines to change to the second travel path  344 , which is less efficient than the first travel path  342  but has a lower chance of encountering an obstacle while traveling to the destination  304 . 
     Thus, the example illustrates improved unmanned and autonomous vehicle trajectory management efficiency, such as by computing the first cumulative probability index  374  associated with the first travel path  342  and computing a second cumulative probability index  376  associated with the second travel path  344 , and determining whether to transition to the second travel path  344  at least partially based on a comparison between the first cumulative probability index  374  and the second cumulative probability index  376 . In a particular aspect, the determination of whether to transition to the second travel path  344  is further based on the trip efficiency metric  394 , a magnitude of at least one of the first cumulative probability index  374  and the second cumulative probability index  376 , the instruction  236  from the human operator  234  of  FIG. 2 , or any combination thereof. 
       FIG. 4  illustrates an example of a method  400  for collision avoidance. The method  400  can be performed by the vehicle  102 , the one or more processors  110 , or by one or more other vehicles, computation devices, or control circuits. 
     The method  400  includes, at block  402 , receiving, by one or more processors, sensor data corresponding to a potential hazard associated with a travel path of a vehicle. For example, the one or more processors  110  receive, via the interface  108 , the sensor data  106  corresponding to the potential hazard  150  associated with the travel path  160  of the vehicle  102 . 
     In some implementations, the method  400  includes, at block  404 , comparing the detected potential hazard to the potential obstacles of an obstacle database. A probability index associated with the detected potential hazard is generated in response to determining that the detected potential hazard does not match a potential obstacle of the obstacle database. For example, the obstacle analysis system  130  generates the probability index  142  associated with the detected potential hazard  150  in response to determining that the detected potential hazard  150  does not match a potential obstacle  126  of the obstacle database  120 . 
     The method  400  includes, at block  406 , generating, by the one or more processors, a probability index associated with the potential hazard, such as the probability index  142  associated with the potential hazard  150 . In some implementations, the probability index corresponds to a likelihood of the vehicle encountering the potential hazard along the travel path, such as a likelihood of the vehicle  102  encountering the potential hazard  150  along the travel path  160 . In some implementations, the probability index is determined based on a spatial and temporal probability distribution associated with the potential hazard. 
     The method  400  includes, at block  408 , determining, by the one or more processors, whether to modify the travel path based on the probability index. To illustrate, the one or more processors  110  determine, via execution of the obstacle analysis system  130 , whether to modify the travel path  160  based on the probability index  142 . In some implementations, determining whether to modify the travel path  160  is based at least partially on machine learning. 
     In some implementations, determining whether to modify the travel path includes, at block  410 , computing a first cumulative probability index associated with the travel path, such as the first cumulative probability index  374  associated with the first travel path  342  of  FIG. 3 . In such implementations, determining whether to modify the travel path includes, at block  412 , computing a second cumulative probability index associated with an alternate travel path, such as the second cumulative probability index  376  associated with the second travel path  344 , and determining, at block  414 , whether to transition to the alternate travel path at least partially based on a comparison between the first cumulative probability index and the second cumulative probability index. In some implementations, determining whether to transition to the alternate travel path is further based on a trip efficiency metric, such as the trip efficiency metric  394 , a magnitude of at least one of the first cumulative probability index and the second cumulative probability index, an instruction from a human operator, such as the instruction  236  from the human operator  234  of  FIG. 2 , or any combination thereof. 
       FIG. 5  is a block diagram of a computing environment  500  including a computing device  510  configured to support aspects of computer-implemented methods and computer-executable program instructions or code according to the subject disclosure. For example, the computing device  510 , or portions thereof, is configured to execute instructions to initiate, perform, or control one or more operations described with reference to  FIGS. 1-4 . In some implementations, the computing device  510  includes components of vehicle  102 . For example, the computing environment  500  can correspond to the system  100  of  FIG. 1 . 
     The computing device  510  includes one or more processors  520 . The processors  520  are configured to communicate with system memory  530 , one or more storage devices  540 , one or more input/output interfaces  550 , one or more communications interfaces  560 , or any combination thereof. The system memory  530  includes volatile memory devices e.g., random access memory RAM devices, nonvolatile memory devices e.g., read-only memory ROM devices, programmable read-only memory, and flash memory, or both. The system memory  530  stores an operating system  532 , which can include a basic input/output system for booting the computing device  510  as well as a full operating system to enable the computing device  510  to interact with users, other programs, and other devices. The system memory  530  stores data  536 , such as the obstacle database  120 , the stored travel path data  140 , the probability distribution  144 , the probability index  142 , or a combination thereof. 
     The system memory  530  includes one or more applications  534  e.g., sets of instructions executable by the processors  520 . As an example, the one or more applications  534  include instructions executable by the processors  520  to initiate, control, or perform one or more operations described with reference to  FIGS. 1-4 . To illustrate, the one or more applications  534  include instructions executable by the processors  520  to initiate, control, or perform one or more operations described with reference to obstacle analysis system  130 , the travel control system  132 , or a combination thereof. 
     In a particular implementation, the system memory  530  includes a non-transitory, computer-readable medium storing the instructions that, when executed by the processors  520 , cause the processors  520  to initiate, perform, or control operations to perform part or all of the functionality described above. For example, the instructions can be executable to implement one or more of the operations or methods of  FIGS. 1-4 . To illustrate, the instructions of the applications  534 , when executed by the processors  520 , can cause the processors  520  to initiate, perform, or control operations to perform probability-based collision avoidance. The operations include receiving sensor data corresponding to a potential hazard associated with a travel path of a vehicle. The operations include generating a probability index associated with the potential hazard. The operations include determining whether to modify the travel path based on the probability index. In some implementations, part or all of one or more of the operations or methods of  FIGS. 1-4  can be implemented by one or more processors e.g., one or more central processing units CPUs, one or more graphics processing units GPUs, one or more digital signal processors DSPs executing instructions, by dedicated hardware circuitry, or any combination thereof. 
     The one or more storage devices  540  include nonvolatile storage devices, such as magnetic disks, optical disks, or flash memory devices. In a particular example, the storage devices  540  include both removable and non-removable memory devices. The storage devices  540  are configured to store an operating system, images of operating systems, applications e.g., one or more of the applications  534 , and program data e.g., the program data  536 . In a particular aspect, the system memory  530 , the storage devices  540 , or both, include tangible computer-readable media. In a particular aspect, one or more of the storage devices  540  are external to the computing device  510 . 
     The one or more input/output interfaces  550  enable the computing device  510  to communicate with one or more input/output devices  570  to facilitate user interaction. For example, the one or more input/output interfaces  550  can include a display interface, an input interface, a sensor interface, such as the interface  108 , or a combination thereof. The processors  520  are configured to communicate with devices or controllers  580  via the one or more communications interfaces  560 . For example, the one or more communications interfaces  560  can include a network interface. The devices or controllers  580  can include, for example, a receiver, a transmitter, one or more other devices, or any combination thereof, such as to enable communication with the human operator  234  of  FIG. 2 . 
     In conjunction with the described systems and methods, an apparatus is disclosed that includes means for receiving sensor data corresponding to a potential hazard associated with a travel path of a vehicle. In some implementations, the means for receiving sensor data corresponding to a potential hazard associated with a travel path of a vehicle corresponds to the one or more sensors  104 , the interface  108 , the one or more processors  110 , the vehicle  102 , the communications interface  560 , the input/output interfaces  550 , the computing device  510 , one or more other devices configured to receive sensor data, or a combination thereof. 
     The apparatus includes means for generating a probability index associated with the potential hazard. In some implementations, the means for generating a probability index associated with the potential hazard corresponds to the obstacle analysis system  130 , the obstacle database  120 , the one or more processors  110 , the vehicle  102 , the processor  520 , the computing device  510 , one or more other devices configured to process the data to generate a probability index associated with the potential hazard, or a combination thereof. 
     The apparatus includes means for determining whether to modify the travel path based on the probability index. In some implementations, the means for determining whether to modify the travel path based on the probability index corresponds to the obstacle analysis system  130 , the obstacle database  120 , the one or more processors  110 , the vehicle  102 , the processor  520 , the computing device  510 , one or more other circuits or devices configured to determine whether to modify the travel path based on the probability index, or a combination thereof. 
     Further, the disclosure comprises embodiments according to the following clauses: 
     Clause 1. A system  100 , comprising: an interface  108  configured to receive sensor data  106  corresponding to a potential hazard  150  associated with a travel path  160  of a vehicle  102 ; an obstacle database  120  including probability distributions  124  of potential obstacles  126 ; and one or more processors  110  coupled to the interface  108 , the one or more processors configured to: generate a probability index  142  associated with the potential hazard  150 ; and determine whether to modify the travel path  160  based on the probability index  142  and the probability distributions  124 . 
     Clause 2. The system  100  of clause 1, wherein the probability index  142  corresponds to a likelihood of the vehicle  102  encountering the potential hazard  150  along the travel path  160 . 
     Clause 3. The system  100  of clause 2, wherein the probability index  142  is determined based on a spatial and temporal probability distribution  144  associated with the potential hazard  150 . 
     Clause 4. The system  100  of any of clauses 1 to 3, wherein the one or more processors  110  are configured to apply machine learning to determine a probability distribution  144  associated with the potential hazard  150 . 
     Clause 5. The system  100  of any of clauses 1 to 4, wherein the one or more processors  110  are configured to apply machine learning to determine whether to modify the travel path  160 . 
     Clause 6. The system  100  of any of clauses 1 to 5, wherein the one or more processors  110  are configured to, responsive to determining that the potential hazard  150  does not match any of the potential obstacles  126  of the obstacle database  120 : compute a first cumulative probability index  374  associated with the travel path  342 ; compute a second cumulative probability index  376  associated with an alternate travel path  344 ; and determine whether to transition to the alternate travel path  344  at least partially based on a comparison between the first cumulative probability index  374  and the second cumulative probability index  376 . 
     Clause 7. The system  100  of clause 6, wherein the one or more processors  110  are configured to determine whether to transition to the alternate travel path  344  further based on a trip efficiency metric  394 , a magnitude of at least one of the first cumulative probability index  374  and the second cumulative probability index  376 , an instruction  236  from a human operator  234 , or any combination thereof. 
     Clause 8. The system  100  of any of clauses 1 to 7, further comprising the vehicle  102  and one or more sensors  104 , the one or more sensors  104  configured to generate the sensor data  106 , and wherein the interface  108 , the obstacle database  120 , the one or more sensors  104 , and the one or more processors  110  are integrated into the vehicle  102 . 
     Clause 9. The system  100  of any of clauses 1 to 8, wherein the vehicle  102  comprises an air-based vehicle  102 . 
     Clause 10. The system  100  of any of clauses 1 to 9, wherein the one or more processors  110  are further configured to: compare a signature  382  of the potential hazard  336  to signatures  306  of the potential obstacles  126 ; and in response to determining that the signature  382  of the potential hazard  336  does not match any of the signatures  306  of the potential obstacles  126 , generate the probability index  142  associated with the detected potential hazard  336 . 
     Clause 11. The system  100  of clause 10, wherein the potential obstacles  126  correspond to at least one of: a stationary natural object  310 , a stationary manmade object  152 , a mobile natural object  322 , a mobile manmade object  336 , hazardous weather  326 , a geofenced region  334 , or a prohibited travel region  330 . 
     Clause 12. A method, comprising: receiving, by one or more processors  110 , sensor data  106  corresponding to a potential hazard  150  associated with a travel path  160  of a vehicle  102 ; generating, by the one or more processors  110 , a probability index  142  associated with the potential hazard  150 ; and determining, by the one or more processors  110 , whether to modify the travel path  160  based on the probability index  142 . 
     Clause 13. The method of clause 12, wherein the probability index  142  corresponds to a likelihood of the vehicle  102  encountering the potential hazard  150  along the travel path  160 . 
     Clause 14. The method of clause 13, wherein the probability index  142  is determined based on a spatial and temporal probability distribution  144  associated with the potential hazard  150 . 
     Clause 15. The method of any of clauses 12 to 14, wherein determining whether to modify the travel path  160  is based at least partially on machine learning. 
     Clause 16. The method of any of clauses 12 to 15, wherein determining whether to modify the travel path  342  comprises: computing a first cumulative probability index  374  associated with the travel path  342 ; computing a second cumulative probability index  376  associated with an alternate travel path  344 ; and determining whether to transition to the alternate travel path  344  at least partially based on a comparison between the first cumulative probability index  374  and the second cumulative probability index  376 . 
     Clause 17. The method of clause 16, wherein determining whether to transition to the alternate travel path  344  is further based on a trip efficiency metric  394 , a magnitude of at least one of the first cumulative probability index  374  and the second cumulative probability index  376 , an instruction  236  from a human operator  234 , or any combination thereof. 
     Clause 18. The method of any of clauses 12 to 17, further comprising comparing a signature  382  of the potential hazard  336  to signatures  306  of potential obstacles  126  in an obstacle database  120 , and wherein the probability index  142  associated with the potential hazard  336  is generated in response to determining that the signature  382  of the potential hazard  336  does not match any of the signatures  306  of the potential obstacles  126 . 
     Clause 19. A non-transitory, computer-readable medium  530  storing instructions  534  that, when executed by a processor  520 , cause the processor  520  to initiate, perform, or control operations comprising: receiving sensor data  106  corresponding to a potential hazard  150  associated with a travel path  160  of a vehicle  102 ; generating a probability index  142  associated with the potential hazard  150 ; and determining whether to modify the travel path  160  based on the probability index  142 . 
     Clause 20. The non-transitory, computer-readable medium of clause 19, wherein the probability index  142  is determined based on a spatial and temporal probability distribution  144  associated with the potential hazard  150 . 
     The illustrations of the examples described herein are intended to provide a general understanding of the structure of the various implementations. The illustrations are not intended to serve as a complete description of all of the elements and features of apparatus and systems that utilize the structures or methods described herein. Many other implementations can be apparent to those of skill in the art upon reviewing the disclosure. Other implementations can be utilized and derived from the disclosure, such that structural and logical substitutions and changes can be made without departing from the scope of the disclosure. For example, method operations can be performed in a different order than shown in the figures or one or more method operations can be omitted. Accordingly, the disclosure and the figures are to be regarded as illustrative rather than restrictive. 
     Moreover, although specific examples have been illustrated and described herein, it should be appreciated that any subsequent arrangement designed to achieve the same or similar results can be substituted for the specific implementations shown. This disclosure is intended to cover any and all subsequent adaptations or variations of various implementations. Combinations of the above implementations, and other implementations not specifically described herein, will be apparent to those of skill in the art upon reviewing the description. 
     The Abstract of the Disclosure is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, various features can be grouped together or described in a single implementation for the purpose of streamlining the disclosure. Examples described above illustrate but do not limit the disclosure. It should also be understood that numerous modifications and variations are possible in accordance with the principles of the subject disclosure. As the following claims reflect, the claimed subject matter can be directed to less than all of the features of any of the disclosed examples. Accordingly, the scope of the disclosure is defined by the following claims and their equivalents.