SHARED CAR NETWORK PRODUCTION SCHEDULING PROJECT – SPRING 2014 Tyler Ritrovato (tr2397) Peter Gray...

13
SHARED CAR NETWORK PRODUCTION SCHEDULING PROJECT – SPRING 2014 Tyler Ritrovato (tr2397) Peter Gray (png2105)

Transcript of SHARED CAR NETWORK PRODUCTION SCHEDULING PROJECT – SPRING 2014 Tyler Ritrovato (tr2397) Peter Gray...

SHARED CAR NETWORKPRODUCTION SCHEDULING PROJECT – SPRING 2014

Tyler Ritrovato (tr2397)Peter Gray (png2105)

THE IDEA

Google’s Driverless Car began design in 2005 and continues to advance

Advent of Uber and Lyft services in late 2000’s

We see an opportunity…

New Driverless Car Technology

+

Efficient Dispatching Algorithms

__________________________

Shared Car Network

SHARED CAR NETWORK

Instead of owning multiple cars per household, individuals or families become a member of a Shared Car Network (SCN)

Cars dispatched based on an efficient algorithm

BENEFITS

Less cars on road is better for environment

Reduced traffic (at scale)

No more hassle of owning and maintaining personal cars

RISKS

Not as flexible for on-demand trips

Potential for late or missed pick-ups

RELATING TO A SCHEDULING PROBLEM

Machines All the cars in the network

Regular Job Picking up a customer and dropping that customer off. Defined by the following inputs:

o Origin

o Destination

o Pick-up Time

o Time due at destination

Processing Times: Unoccupied Car time from last drop-off to next customer pick-up

Occupied Car time from pick-up of customer to drop-off

OPTIMIZATION DECISION

# of Machines

% of Requests Serviced

Max Lateness

Minimize # of Machines

Constrain on Max Lateness and Minimum % of Requests Serviced

Therefore, our problem boils down to the following production scheduling problem:

P | rj , Lmax | m

SAMPLE DATA

Downloaded September, 2013 data from Citibike.com

Focused on the morning rush hour (8:00 AM- 10:00 AM) on Monday, September 9th.

Limited data to nine citibike ids (machines)

Release date Start of trip

Due date Trip Duration plus 20%

24 Total Jobs

ALGORITHM STRUCTURE

Utilizing a Greedy Algorithm:

Step 1: List job requests in ascending order (morning to night)

Step 2: For each job, choose the machine with the lowest metric score Metric Score Remaining processing time of current job + time to reach customer – time since

availability

Add a machine if all of the possible machines lead to an undesirable lateness value

Step 3: Continue until all jobs are assigned

ALGORITHM EXAMPLE

Job 1: Starts at 8:01 AM at W 25 St & 6 Ave and ends at 8:12 AM at Broadway & W 51 St

Add job 1 to machine 1

ALGORITHM EXAMPLE

Job 2: Starts at 8:04 AM at 11 Ave & W 41 St and ends at 8:33 AM at John St & William St

Must add a second machine because using just machine 1 would lead to being late by 15 minutes Lateness= 8 minutes remaining processing

time from job 1 + 7 minutes to travel from job 1 ending point to job 2 starting point

✓ Add job 2 to machine 2

METRIC SCORE EXAMPLE

Job 11: Starts at 9:00 AM at Fulton St and Grand Ave and ends at 9:04 AM at Lafayette Ave and Classon Ave

At this point in the algorithm, there are 5 machines

What machine should job 11 be assigned to?

Machine 1: Available since 8:34 and is 24 ½ minutes away from pickup location

Metric Score = 0 + 24 ½ - 26 = -1 ½

Machine 2: Busy until 9:09 and is 11 minutes away

Metric Score = 9 + 11 - 0= 20

Machine 3: Busy until 9:07 and is 5 minutes away

Metric Score = 7 + 5 - 0 = 12 minutes away

Machine 4: Available since 8:55 and is 33 minutes away

Metric Score = 0 + 33 - 5 = 28

Machine 5: Busy until 9:09 and is 0 minutes away

Metric Score = 9 + 0 - 0 = 9

Machine 1

Metric Score = Remaining processing time of current job + time to reach customer – time since availability

GANTT CHART

RESULTS & NEXT STEPS

Results: Citibike required 9 bikes needed for 24 job instances

Our shared car network algorithm required only 6 machines for 24 job instances No late jobs

We service 100% of all requests

Next Steps:

Try out our algorithm with more data (what happens when there are 100, 1000 jobs?)

Play with max lateness and % of requests serviced parameters to see affect on machine requirements

Create a program to compute algorithm

QUESTIONS?

“General Solutions get you a 50%

tip.”

Source: xkcd.com