PFD UAV Final Presentation

Preview:

Citation preview

Ben Gardiner, Travis Cooper, Matthew Haveard, Waseem Ahmad

Everything You Need to Know aboutMixed Integer Linear Programming

Outline

I.   Overview of MILP

II.  Existing UAV path planning Implementations

III.  Our Implementation

a.  Common Constraints

b.  Significant Variables

c.   Improvements

IV.  Results

V.  Future Improvements

Mixed Integer Linear Programming

● Used to solve problems formulated as systems of linear constraints

● A solver, like Gurobi, can find the most optimal solution if given enough time

● Originally designed for offline problems, like crop planning

Prior Usages with UAVs

● Plan most effective con­colliding paths for UAVs

● Computationally intensive 

● More than a minute to find the best path

MILP Collision Avoidance

t=72.713      dt=2

Receding Horizon Control (RHC)

● Reduce computation time by having multiple smaller calculations

● Get a portion of a path solved

● Re­solve new path by the time UAVs have reached end of previous path.

Connected Components

● Creates multiple problems that can be solved simultaneously 

● Select a subset of UAVs that are close to each other

● Solve that subset as a component that has no relevance to other components

Commonly Used Constraints

● Dynamics Constraint – so UAVs conform to real world physics

● Maximum Speed and Force – physical constraints specific to UAVs

● Separation Distance – Distance that must be maintained between UAVs

Physical Dynamics Constraint

∀ p∈[1... N ]∀ i∈[0...T−1 ]si1 p=A p sipB p f ip

∀ p∈[1... N ]∀ i∈[0...T−1 ]si1 p=A p sipB p f ip

The next state must always be equal to force and velocity vectors added to current state

Maximum Speed and Force

The next state must always be inside of a polygon which represents maximum speed and force

Separation Distance

UAVs must always maintain a minimum distance from each other

New Constraint: Minimum Speed

statet1

statet

Significant Variables

●Standard Implementation

●RHC

●Connected Components

Variables from Prior Implementations

● Size of timesteps (dt)

● Number of timesteps (Nt)

● Separation Distance (d)

● Time to solve (T)

RHC/Connected Components Variables

● Horizon Length

● Component Threshold Distance

● Recalculation Point

● Number of waypoints given

Paths Planned Fully

Paths Planned Fully

Computation Time: 865.9s 

Vehicle 1 Completion Time:  159 

Vehicle 2 Completion Time:  138 

Vehicle 3 Completion Time:  118

Paths Planned using RHC

Paths Planned using RHC

Vehicle 1 Completion Time:  160 

Vehicle 2 Completion Time:  143 

Vehicle 3 Completion Time:  125 

Number of Infeasible Solutions Returned:  20 

Number of Feasible Solutions Returned:  139 

Mean Iteration Computation Time:  0.0676489431153 

Net Computation Time:  10.7561819553 

ComparisonPaths Planned Fully Paths Planned using RHC

Total Computation time: 865.9s

Total Computation time: 10.75618s

ResultsReal­time Flight Simulated using ROS

Number of UAVs: 3

Number of Waypoints per UAV: Unlimited Random (only achieved shown)

Field Size: 1000m x 1000m (Flight Map scaled to 10m/unit)

Flight Time: 300s

UAV Speed: 11.76 m/sMean Iteration Computation Time: 0.0573s

Distance actual/distance minimum: 1.046

Results

ResultsReal­time Flight Simulated using ROSNumber of UAVs: 6

Number of Waypoints per UAV:: Unlimited Random (only achieved shown)

Field Size: 1000m x 1000m (Flight Map scaled to 10m/unit)

Flight Time: 300s

UAV Speed: 11.76 m/sMean Iteration Computation Time: 0.107s

Distance actual/distance minimum: 1.063

Results

Results

Results

Conclusions● MILP implemented through RHC with 

Connected Components works very well● The interactions between the ROS 

framework and the MILP solver become unstable with large amounts of UAVs

● There is a lack of concurrency between the information from ROS and the found solutions

Possible Future Research

● Improve relations between MILP and ROS

● Dynamic RHC

● Smart Connected Components

The End