OPTIMISATION OF CAR-PARK DESIGNS · su cient road separation to allow parking Function 1 -...

Post on 21-Jul-2020

0 views 0 download

Transcript of OPTIMISATION OF CAR-PARK DESIGNS · su cient road separation to allow parking Function 1 -...

OPTIMISATION OF CAR-PARK DESIGNS

ESGI91 - Arup

J. Billingham, J. Bradshaw, M. Bulkowski, P. Dawson, P. Garbacz, M. Gilberg,L. Gosce, P. Hjort, M. Homer, M. Jeffrey, D. Papavassiliou, R. Porter, D. Wind

PROBLEM STATEMENT

At present, the layout of car parks is designed by an architect with CAD tools, and the results may be extremely complicated.

There is no guarantee that the architect has achieved the maximum possible number of spaces.

We seek automatic algorithms which will either replace the role of the architect (or more realistically, act as a decision support tool to him/her).

APPROACHES

• Use algorithms to generate good routes around the polygon, and fit parking spaces to this route.

Lanes

Cars• Fill the polygon with parking spaces, and modify to assure

exit-routes for all cars.

We assume that the perimiter of the parking lot area is a polygon. Parking spaces are rectangles. All cars should be able to get out.

HILBERT’S CAR PARK

TAPESTRY + TRIMOverlay car park polygon with Hilbert’s optimal tapestry. Then trim excess parking spaces. If necessary ensure connectivity of lanes by removing some spaces.

HILBERT’S CAR STRIP

a

For finite height, non perpendicular tilings may be optimal.

NON LINEAR OPTIMISATIONTo find the optimal packing in the finite Hilbert strip

Maximise: Car density

Subject to:

Constraint 1:

Constraint 2:

MATLAB

‘Roads’ Approach

Strategy - To design a road network around which parking spacescan be efficiently packed.

Cost Functions

We want to design a road network that covers the car park Ω withsufficient road separation to allow parking

Function 1 - Continuous

Filling the space with ‘car-sized’gaps between the curves isequivalent to wanting a certainamount of road in the disc (ofhalf road width) around eachpoint in the domain

I Penalty (at a point) is afunction of the differencebetween the desired andactual amount of road in thedisc.

Function 2 - Numerical(Piecewise Linear or BezierCurves)

Penalise

I being outside the car park

I nodes coming closer than aroad width

I points far from road

I non-adjacent stretches ofroad being too close

I (piecewise linear paths only)angles less than π/2

Variational Approach

We minimise the spatial average of Cost Function 1 over thepaths f : [0, 1]→ Ω in Ω.

The Euler-Lagrange Equation for the variational problem is

∫Ω

((([f ′(z) ·

(x− f (z)

)δ(‖f (z)− x‖2 − w)

]f ′(z)

‖f ′(z)‖2

+ I‖f (z)−x‖2<w

[f ′(z)

‖f ′(z)‖2

−f ′′(z) · f ′(z)

‖f ′(z)‖32

f ′(z)

])

×∫ 1

0

(I‖f (y)−x‖2<w‖f

′(y)‖2 − kw)dy

)

+

(([f ′(z) ·

(x− f (z)

)δ(‖f (z)− x‖2 − w)

]‖f ′(z)‖2 + I‖f (z)−x‖2<w

f ′′(z) · f ′(z)

‖f ′(z)‖2

)

×∫ 1

0I‖f (y)−x‖2<w

f ′(y)

‖f ′(y)‖2

dy

))dx

=

∫Ω

[(x− f (z)

)δ(‖f (z)− x‖2 − w)‖f ′(z)‖2

] ∫ 1

0

(I‖f (y)−x‖2<w‖f

′(y)‖2 − kw)dy

+(I‖f (z)−x‖2<w‖f

′(z)‖2 − kw) ∫ 1

0

(x− f (y)

)δ(‖f (y)− x‖2 − w)‖f ′(y)‖2

We hope to discretize this and solve numerically.

Numerical Algorithm

We loop over two optimization algorithms sequentially to minimizeCost Function 2. We discretize the problem by

I partitioning the curve into N linear sections

I using an M ×M grid of points to minimize the cost function

We loop over

I Genetic Algorithm

I Simplex Algorithm

Plots

How good is a given network?

In a given car park, a small number of plausible road networks. . .easy to make ‘intuitive guesses’Which is best and how can it be optimized?Define a road network with roads and connectionsDevelop a coarse algorithm to assess how good a network is

assume ‘nose in’ parking is bestdistribute ‘nose in’ parking stalls along each segment on the networkpenalise for

overlapping stalls (proportional to area)stalls that leave the domainvoids in coverage

Combine penalties into one ‘cost function’

For a selection of initial guesses, optimise cost function w.r.t. nodes

ARUP: Optimizing Car Parking

Output

0 10 20 30 40 50 60 70 80 90

−10

0

10

20

30

40

50

60

12

345678

9 10 11 12 13 14

nparked

=191

ARUP: Optimizing Car Parking

Output

0 10 20 30 40 50 60 70 80 90

−10

0

10

20

30

40

50

60

12

34

5

6 7

nparked

=205

ARUP: Optimizing Car Parking

Output

0 20 40 60 80 100 120

−10

0

10

20

30

40

50

60

70

123456

7

8

9 10 11 12 13 14 15

16 17

18 19

nparked

=247

ARUP: Optimizing Car Parking

Output

0 20 40 60 80 100 120

−10

0

10

20

30

40

50

60

70

12

3

4 5

6 7

8 9 10

11

nparked

=266

ARUP: Optimizing Car Parking

Output

0 20 40 60 80 100 120

−10

0

10

20

30

40

50

60

70

123456

7

8

9 10 11 12 13 14 15

16

17 18

nparked

=273

ARUP: Optimizing Car Parking

Output

0 20 40 60 80 100 120

−10

0

10

20

30

40

50

60

70

80

12

34

56

7 8

nparked

=286

ARUP: Optimizing Car Parking

0 10 20 30 40 50 60 70 80 90

−10

0

10

20

30

40

50

60

12

345678

9 10 11 12 13 14

nparked

=191

0 20 40 60 80 100 120

−10

0

10

20

30

40

50

60

70

123456

7

8

9 10 11 12 13 14 15

16 17

18 19

nparked

=247

QUESTIONS