Computational Geometry for DAC: GeoSect Methodology

54
Computational Geometry for Computational Geometry for DAC: DAC: GeoSect Methodology GeoSect Methodology Joseph S. B. Mitchell and Girishkumar Sabhnani Stony Brook University

description

Computational Geometry for DAC: GeoSect Methodology. Joseph S. B. Mitchell and Girishkumar Sabhnani Stony Brook University. Objectives. Design and implement efficient algorithms to compute optimal (or nearly-optimal) airspace configurations - PowerPoint PPT Presentation

Transcript of Computational Geometry for DAC: GeoSect Methodology

Page 1: Computational Geometry for DAC: GeoSect  Methodology

Computational Geometry for DAC:Computational Geometry for DAC:GeoSect MethodologyGeoSect Methodology

Joseph S. B. Mitchell and Girishkumar SabhnaniStony Brook University

Page 2: Computational Geometry for DAC: GeoSect  Methodology

22

ObjectivesObjectives

Design and implement efficient Design and implement efficient algorithms to compute optimal (or algorithms to compute optimal (or nearly-optimal) airspace nearly-optimal) airspace configurationsconfigurations

Devise novel methods that may Devise novel methods that may assist in maximizing safe utilization assist in maximizing safe utilization of airspaceof airspace

Explore future concepts of operationsExplore future concepts of operations“Provide flexibility where possible and structure where necessary.”

Page 3: Computational Geometry for DAC: GeoSect  Methodology

Design for ControlDesign for Control

Determine a mapping of controllers Determine a mapping of controllers (or oversight processes) to flights.(or oversight processes) to flights.

Approaches:Approaches:• Partition airspace into sectors, other Partition airspace into sectors, other

structural elementsstructural elements• Partition aircraft (e.g., into “gaggles”)Partition aircraft (e.g., into “gaggles”)

33

Page 4: Computational Geometry for DAC: GeoSect  Methodology

44

Airspace Sectorization Airspace Sectorization ProblemProblem

Joint work with A. Basu and G. Sabhnani

Page 5: Computational Geometry for DAC: GeoSect  Methodology

55

Airspace Sectorization Airspace Sectorization ProblemProblem

k – no. of sectorsk – no. of sectors bbii – Workload(WL) of sector i – Workload(WL) of sector i Given the air-traffic pattern, Given the air-traffic pattern,

decompose the domain of airspace into decompose the domain of airspace into k sectors, “optimally”k sectors, “optimally”• Min-Max WLMin-Max WL• Min-Sum WLMin-Sum WL

OR given a max Workload B, minimize OR given a max Workload B, minimize kk

We model as precise optimal geometric partitioning problem, for which we give provable results and heuristics to approximate

Page 6: Computational Geometry for DAC: GeoSect  Methodology

Metrics, Objective FunctionsMetrics, Objective Functions

MMax # aircraft at any time instant ax # aircraft at any time instant (instantaneous count), or % of MAP values(instantaneous count), or % of MAP values

Average (over time) countAverage (over time) count Coordination workload: # Boundary Coordination workload: # Boundary

crossings (hand-offs)crossings (hand-offs) Dynamic densityDynamic density Flight efficiency (fuel, time)Flight efficiency (fuel, time) DAC: frequency of change, magnitude of DAC: frequency of change, magnitude of

change, change, robustnessrobustness to forecast inaccuracies to forecast inaccuracies

66

Page 7: Computational Geometry for DAC: GeoSect  Methodology

Good Sectors and Good Good Sectors and Good Sector-Conforming RoutesSector-Conforming Routes

Find sectors Find sectors andand set of trajectories to set of trajectories to• Minimize Minimize

# sectors# sectors var(workload across sectors)var(workload across sectors) increase in flight length/fuel (over opt or increase in flight length/fuel (over opt or

user-preferred routes) to make conformal user-preferred routes) to make conformal with sector designwith sector design

• Subject to: Subject to: Load balance (each workload < W)Load balance (each workload < W)

Multicriteria optimizationMulticriteria optimization77

Page 8: Computational Geometry for DAC: GeoSect  Methodology

Iterative ProcessIterative Process

Feedback loop: Iterative adjustment Feedback loop: Iterative adjustment of routes to sectors and sectors to of routes to sectors and sectors to routesroutes

88

Trajectory not conforming to sectors

Optimal path problem: Modify trajectory to avoid corner clipping, obey crossing rules, etc

Adjusted trajectory to conform to sectors

constraints

Page 9: Computational Geometry for DAC: GeoSect  Methodology

1111

Related WorkRelated WorkAirspace Sectorization ProblemAirspace Sectorization Problem

Integer programming; after discretizing the NAS - Integer programming; after discretizing the NAS - Yousefi and Donohue ‘04Yousefi and Donohue ‘04

Genetic algorithms - Delahaye et al. ‘98Genetic algorithms - Delahaye et al. ‘98 Graph partitioning methods - Tran et al. ’03, Martinez et Graph partitioning methods - Tran et al. ’03, Martinez et

al.’07al.’07

Other PartitioningsOther Partitionings

Partitioning of rectangles and arrays for load balancing Partitioning of rectangles and arrays for load balancing of processors - Khanna, Muthukrishnan, and Skiena ‘97of processors - Khanna, Muthukrishnan, and Skiena ‘97

Political districting – Altman ’97Political districting – Altman ’97 Minimum-cost load balancing in sensor networks – Minimum-cost load balancing in sensor networks –

Carmi, Katz ‘05Carmi, Katz ‘05

Page 10: Computational Geometry for DAC: GeoSect  Methodology

1212

ApproachApproach

Devise mathematically precise problem Devise mathematically precise problem statements for the optimization statements for the optimization

Utilize tools from computational geometry Utilize tools from computational geometry to design algorithms for efficient solution to design algorithms for efficient solution and to analyze these algorithms and to analyze these algorithms theoreticallytheoretically

Use implementation and experimentation Use implementation and experimentation to verify proof of concept and to compare to verify proof of concept and to compare results to alternate approachesresults to alternate approaches

Page 11: Computational Geometry for DAC: GeoSect  Methodology

1313

Algorithm DescriptionAlgorithm Description

Current algorithms in GeoSect:Current algorithms in GeoSect:• ““Top-down” – start with a large portion Top-down” – start with a large portion

of airspace and recursively optimize a of airspace and recursively optimize a decomposition of it into “nice” decomposition of it into “nice” subregions in order to optimize an subregions in order to optimize an objective function modeling workloadobjective function modeling workload

• Implementation based on Binary Space Implementation based on Binary Space Partitions, with subproblem optimization Partitions, with subproblem optimization based on sweep techniques (from 1D based on sweep techniques (from 1D problem statement)problem statement)

Page 12: Computational Geometry for DAC: GeoSect  Methodology

1818

2D Problem: Theory2D Problem: Theory

x, yx, y and and tt

Hardness of a special caseHardness of a special case Sectors - axis aligned rectanglesSectors - axis aligned rectangles Problem used for reduction :Problem used for reduction :

• Rectangular partition of Rectangular partition of nn x x nn matrix A, into matrix A, into kk rectangles in order to minimize the max rectangles in order to minimize the max weight of a rectangle is NP-hard – weight of a rectangle is NP-hard – Muthukrishnan et al ’98Muthukrishnan et al ’98

The element values used in the reduction The element values used in the reduction are constants are constants 44

Page 13: Computational Geometry for DAC: GeoSect  Methodology

1919

View of Trajectories in Space-View of Trajectories in Space-TimeTime

View in space-time (x,y,t) or (x,y,z,t)

Page 14: Computational Geometry for DAC: GeoSect  Methodology

2121

CG Concept: Binary Space CG Concept: Binary Space Partition (BSP)Partition (BSP)

BSPBSP: Special case of a Convex Partition, P, of a domain : Special case of a Convex Partition, P, of a domain D D

Defining propertyDefining property: Recursively obtained by cutting a : Recursively obtained by cutting a face of P into two subfaces by a face of P into two subfaces by a line/plane/hyperplane, cutting “all the way through” line/plane/hyperplane, cutting “all the way through” at each stepat each step

DD

Page 15: Computational Geometry for DAC: GeoSect  Methodology

2222Top View

t

x

y

Front View

t

Page 16: Computational Geometry for DAC: GeoSect  Methodology

2323

Optimizing a Binary Space Optimizing a Binary Space Partition (BSP)Partition (BSP)

Dynamic ProgrammingDynamic Programming: Optimize over all BSP’s, : Optimize over all BSP’s, exploiting the fact that BSP’s are recursively exploiting the fact that BSP’s are recursively defined.defined.

ResultResult: Provably optimal (among BSP partitions) : Provably optimal (among BSP partitions) method to partition an airspace into sectors, in a method to partition an airspace into sectors, in a top-down fashion, for top-down fashion, for anyany specification/definition of specification/definition of “work load” in a sector“work load” in a sector

(minimize the maximum workload in a sector – most (minimize the maximum workload in a sector – most balanced sectorization)balanced sectorization)

Page 17: Computational Geometry for DAC: GeoSect  Methodology

Conforming to Dominant Conforming to Dominant FlowsFlows

How should a polygonal cut behave How should a polygonal cut behave wrt dominant flows?wrt dominant flows?• (1) Dominant flows should cross cut (1) Dominant flows should cross cut

nearly orthogonallynearly orthogonally

2424

flow

cut

Page 18: Computational Geometry for DAC: GeoSect  Methodology

Conforming to Dominant Conforming to Dominant FlowsFlows

• (2) Dominant flows should spend at (2) Dominant flows should spend at least a minimum amount of time in a least a minimum amount of time in a sector before leavingsector before leaving

2525

flow

Page 19: Computational Geometry for DAC: GeoSect  Methodology

Conforming to Dominant Conforming to Dominant FlowsFlows

• (3) Merge points and route intersections (3) Merge points and route intersections should have ample distance from should have ample distance from upstream entry point of sectorupstream entry point of sector

2626

flow

Page 20: Computational Geometry for DAC: GeoSect  Methodology

Flow-Conforming Cut Flow-Conforming Cut ProblemProblem

Given a set of dominant flows, we compute a polygonal cut Given a set of dominant flows, we compute a polygonal cut that conforms to the flow, satisfying all constraints:that conforms to the flow, satisfying all constraints:

2727Key: Every candidate cut is guaranteed to conform to dominant flows.

SUA

Page 21: Computational Geometry for DAC: GeoSect  Methodology

2828

More General BSPMore General BSP

DD

Each cut is a flow-conforming pathWorkload Evaluator for each subregion.

Page 22: Computational Geometry for DAC: GeoSect  Methodology

Basic Idea : Modification to BSPBasic Idea : Modification to BSP

Search for a good flow-conforming cutby sweeping with a set of flow-conforming

cuts

?

How to find these flow-conforming cuts?

Page 23: Computational Geometry for DAC: GeoSect  Methodology

Finding Good Candidate Cuts for BSPFinding Good Candidate Cuts for BSPFind offsets of the cells

Discretize the boundaries

Good Candidates

Search for cuts in a network

Bad Cuts

Page 24: Computational Geometry for DAC: GeoSect  Methodology

Conforming to SUA’sConforming to SUA’sDisks at each corner of SUA

Allowable Green Cuts

Red Cut Not Allowed

Page 25: Computational Geometry for DAC: GeoSect  Methodology

Another ApproachAnother Approach

Biting off individual sectorsBiting off individual sectors

3232

Page 26: Computational Geometry for DAC: GeoSect  Methodology

Guarantees of Resulting SectorsGuarantees of Resulting Sectors

Flows cross the sector boundaries “almost Flows cross the sector boundaries “almost orthogonally”orthogonally”

Angles at sector vertices are “big” (not acute)Angles at sector vertices are “big” (not acute) Each Each conflict point conflict point at crossings of dominant flows at crossings of dominant flows

lies considerably within the sector boundarieslies considerably within the sector boundaries The dominant flows never The dominant flows never corner clip corner clip the sector the sector

boundaryboundary SUAs either lie fully inside one sector or lie favorable SUAs either lie fully inside one sector or lie favorable

with respect to two or more sectors they crosswith respect to two or more sectors they cross

Each of these conditions is a parameterized Each of these conditions is a parameterized constraint, depending on user-specified parameters.constraint, depending on user-specified parameters.

Page 27: Computational Geometry for DAC: GeoSect  Methodology

3434

Avoiding Skinny PolygonsAvoiding Skinny Polygons

To ensure that the flights remain in To ensure that the flights remain in the sector for at least sometimethe sector for at least sometime

Page 28: Computational Geometry for DAC: GeoSect  Methodology

3535

Pie-CutsPie-Cuts

Extension of 1D to Polar coordinatesExtension of 1D to Polar coordinates

Centroid

1/k , 1/k-1 …. 1/2

(x,y,t) => (angle,t)

Page 29: Computational Geometry for DAC: GeoSect  Methodology

3636

Combining BSP and Pie-CutsCombining BSP and Pie-Cuts

Given a region to sectorize,Given a region to sectorize,• Try Pie-cuts starting with 5 or 6 down to Try Pie-cuts starting with 5 or 6 down to

33• If Pie-cut was successful recurse on the If Pie-cut was successful recurse on the

smaller piecessmaller pieces• Else use BSP to sectorize and recurse on Else use BSP to sectorize and recurse on

the two piecesthe two pieces

Page 30: Computational Geometry for DAC: GeoSect  Methodology

3737

Analysis DataAnalysis Data Utilize historical track data as input to Utilize historical track data as input to

optimizationoptimization Any set of tracks (e.g., direct routes, Any set of tracks (e.g., direct routes,

wind-optimized routes, predicted wind-optimized routes, predicted reroutes around weather) can be inputreroutes around weather) can be input

Experiments record workload Experiments record workload parameters, including total # aircraft parameters, including total # aircraft ever in a sector, time averages, and an ever in a sector, time averages, and an estimation of coordination workloadestimation of coordination workload

Page 31: Computational Geometry for DAC: GeoSect  Methodology

3838

Preliminary Results: Preliminary Results: GeoSectGeoSect

Page 32: Computational Geometry for DAC: GeoSect  Methodology

3939

Experimental SetupExperimental Setup

24hr track data (74588 flight tracks)24hr track data (74588 flight tracks)• avg complexity 59.26 (no. of bends)avg complexity 59.26 (no. of bends)

Sector dataSector data• low altitude sectorslow altitude sectors

US map data from Tiger DatabaseUS map data from Tiger Database

Page 33: Computational Geometry for DAC: GeoSect  Methodology

4040

ZFW Divided into 16 SectorsZFW Divided into 16 Sectors

Page 34: Computational Geometry for DAC: GeoSect  Methodology

4141

ZFW Divided into 17 SectorsZFW Divided into 17 Sectors

Page 35: Computational Geometry for DAC: GeoSect  Methodology

4242

ZFW Divided into 18 SectorsZFW Divided into 18 Sectors

Page 36: Computational Geometry for DAC: GeoSect  Methodology

4343

DiscretizationDiscretization

No. of orientations to try No. of orientations to try Also the critical points are discretized Also the critical points are discretized

(without any performance (without any performance degradation due to the density of the degradation due to the density of the track data)track data)

Page 37: Computational Geometry for DAC: GeoSect  Methodology

4444

Tuning the ParametersTuning the Parameters

No. of different orientations

Threshold for aspect ratio beta

Level of Discretization

Page 38: Computational Geometry for DAC: GeoSect  Methodology

4545

ResultsResults

Page 39: Computational Geometry for DAC: GeoSect  Methodology

4646

ResultsResults

Max goes down in both time-avg and worstcase

Std. Deviation improves severely

Min Aspect Ratio improves

Page 40: Computational Geometry for DAC: GeoSect  Methodology

4747

Results: NAS-wide Results: NAS-wide SectorizationSectorization

Original SectorsBSP divisionBSP+PiPi division

Page 41: Computational Geometry for DAC: GeoSect  Methodology

4848

Results: Comparison of Results: Comparison of GeoSect OptionsGeoSect Options

Page 42: Computational Geometry for DAC: GeoSect  Methodology

3D Partitioning3D Partitioning

Types of cuts:Types of cuts:• z = z = constant (flat)constant (flat)• Slanted cuts, cones Slanted cuts, cones

(centered at airports)(centered at airports)

• Challenge: cruise-climb airspaceChallenge: cruise-climb airspace

4949

Page 43: Computational Geometry for DAC: GeoSect  Methodology

Difficulty of MIP FormulationDifficulty of MIP Formulation

Enforcing 3D shapes: flat floors and Enforcing 3D shapes: flat floors and ceilingsceilings

5050

Page 44: Computational Geometry for DAC: GeoSect  Methodology

ApproachesApproaches

Bottom-upBottom-up• Cluster trajectoriesCluster trajectories• Cluster elementary sector units (e.g., hex-Cluster elementary sector units (e.g., hex-

cells) using MIPcells) using MIP Top-downTop-down (recursive partition, BSP) (recursive partition, BSP) Graph theoretic partitioningGraph theoretic partitioning Genetic algorithms, neural networksGenetic algorithms, neural networks Local re-partitioningLocal re-partitioning Human-in-the-loopHuman-in-the-loop

5151

Page 45: Computational Geometry for DAC: GeoSect  Methodology

5252

Bottom-Up MethodsBottom-Up Methods

Methods based on Methods based on clusteringclustering of of trajectory datatrajectory data

Example:Example:

Duality

Clustering points

Page 46: Computational Geometry for DAC: GeoSect  Methodology

Clustering Trajectories: Clustering Trajectories: Discoverying Dominant Discoverying Dominant

FlowsFlows

5353A Weighted-Graph Approach for Dynamic Airspace Configuration Martinez, Chatterji, Sun, Bayen 2007

Page 47: Computational Geometry for DAC: GeoSect  Methodology

5454

Voronoi-Based PartitioningVoronoi-Based Partitioning

Dominant flows

Another approach: Use arrangement of flow-conforming cuts to define elementary airspace units (vs. hexcells)

Page 48: Computational Geometry for DAC: GeoSect  Methodology

5555

Local Re-PartitioningLocal Re-Partitioning

Re-Partition step replaces one region witha “best” partition into a k-face planar subdivision

Page 49: Computational Geometry for DAC: GeoSect  Methodology

Dynamic part of DACDynamic part of DAC

Optimal determination of airspace Optimal determination of airspace adjustment triggersadjustment triggers

Tradeoff: Cost of adjustment, benefit Tradeoff: Cost of adjustment, benefit from changefrom change

5656

Page 50: Computational Geometry for DAC: GeoSect  Methodology

5757

Dynamic SectorizationDynamic Sectorization

Multiple Sector Designs for different Multiple Sector Designs for different times of the daytimes of the day

How to find the optimal time of How to find the optimal time of switching between sector designs ?switching between sector designs ?

Dynamic Programming after discretizing the

switch timesApplies to any sector design method (e.g., MIP methods).

Page 51: Computational Geometry for DAC: GeoSect  Methodology

5858

Preliminary ResultsPreliminary Results

Sectorizing ZFW (18 Sectors)Sectorizing ZFW (18 Sectors) Discretizing a day into 24 intervals (hourly Discretizing a day into 24 intervals (hourly

splits)splits)0 0 023 23

91412

14.0514.11

15.33 11.78

13.39

13.56

Page 52: Computational Geometry for DAC: GeoSect  Methodology

5959

Tradeoff: Workload Improvement, Tradeoff: Workload Improvement, Number of RedesignsNumber of Redesigns

Average Workload

Number of design changes during the day

Page 53: Computational Geometry for DAC: GeoSect  Methodology

Robustness of DesignsRobustness of Designs

Formalize the notion of Formalize the notion of robustness robustness with respect to forecast of demandwith respect to forecast of demand

6060

Page 54: Computational Geometry for DAC: GeoSect  Methodology

Designing Configuration Designing Configuration PlaybooksPlaybooks

GoalGoal: Identify good configurations : Identify good configurations corresponding to mined historical data corresponding to mined historical data scenariosscenarios

RationaleRationale: Certain traffic patterns may : Certain traffic patterns may tend to repeat over different time tend to repeat over different time intervals, in response to certain intervals, in response to certain events (e.g., weather impact)events (e.g., weather impact)

What time intervals? What events?What time intervals? What events? Clustering, mining trajectory dataClustering, mining trajectory data

6262