Elevators and Queuing: Part Two— Multi Level Single Elevator System

Sujith Santhosh Kumar
The Startup
Published in
3 min readJun 29, 2019
Photo by Michel Paz on Unsplash

In the last part of this series, I talked about a two level single elevator system. The goal in that specific case was to minimize wait time per request and also minimizing distance traveled.

Let’s expand this system, let’s still work with a single elevator, but have 10 levels.

Different variables to consider in this case:

  • Managing multiple requests (deciding which request to answer first)
  • Direction of the elevator
  • Wait time (let’s assume each floor traveled is 1 unit of time waited by the request)

Let’s consider an example request sequence:
- R1 from Level 1 going to Level 5 and R2 from Level 4 going to Level 5
- R3 (after 2 units of time) from Level 8 going to Level 4
- R4 (after 7 units of time) from Level 6 going to Level 8

Now let’s process this sequence using different approaches and rate different parameters of performance to see what is a viable solution to maximize efficiency, which, in this case is to minimize wait time + travel time for each request. Let’s also assume that the elevator starts at level 1.

Case 1: Condition — Requests are taken in sequence as received (FIFO)
FIFO or First In First Out, is self-explanatory, first request is received and completed and move to the next sequence.

Total Times for Each Request(Travel Time + Wait Time)
- R1: 4 units (Total Distance is 4 units)
- R2: 6 units (Total Distance is 1 units)
- R3: 11 units (Total Distance is 4 units)
- R4: 12 units (Total Distance is 2 units)

Case 2: Condition — Requests in the same direction are processed first (Modified FIFO)
Note: If there are two concurrent requests, the first one is chosen for the direction
So, in this case, the elevator will accept requests and maintain an active and an “on deck queue” of some sorts. Once the first request is accepted, the direction is set and any requests to the opposite direction is put in the “on deck queue”. Once the active queue is empty, the “on deck queue” is switched to active and so on.

Total Times for Each Request(Travel Time + Wait Time)
-R1: 4 units (Total Distance is 4 units)
-R2: 4 units (Total Distance is 4 units)
-R3: 10 units (Total Distance is 4 units)
-R4: 8 units (Total Distance is 2 units)

Comparison of the Two Cases
Comparing the total times for each cases, we can make an assessment that the second strategy had better results. Case 1 can be used as a benchmark when coming up with better strategies and any strategies that have results worse than Case 1 can be discarded.
The key thing to note that even though Case 2 seems better, it can have the same performance if there was only a single request to be handled.

There are other strategies that are put in place to reduce the wait time when the system gets complex with multiple elevators and multiple floors as the wait time can get significantly higher if a FIFO method was used. In such cases, a statistical model can prove effective. I’ll be working on that in the next part of this series with a 2 elevator system with 10 floors.

--

--

Sujith Santhosh Kumar
The Startup

Just another soul looking into the inner workings of life and logic.