Lift World
A fuzzy-logic lift scheduler with simulated passengers.
Borland C++, VGA 640×480, fuzzy logic
Author’s notes
Amir Husain · software I wrote
I read about fuzzy control being put into real lifts in Japan by Hitachi and Mitsubishi, and wanted to see whether I could implement it from the published idea. The source declares three membership functions, FZ_VeryFar, FZ_MediumFar and FZ_NotAtAllFar, and grades every waiting passenger into all three at once instead of sorting each into one.
The building is populated by a generator, not a script. Each yellow line is a person, created as an object with a floor, a direction and a level of patience of their own. If the wait runs past what that person will tolerate they leave, and the next in the queue moves up. The status line reports who is aboard and where they are bound, laid over the picture rather than beside it.
The constraint is what makes it a control problem. The scheduler is told only which button was pressed on each floor, up or down. It is never told which floor a waiting person actually wants, which is exactly what a real lift knows, and the fuzzy rules exist to make course corrections from that much and no more.
Reading the demonstration
Watch passengers arrive, wait, board, and leave. The controller sees the call buttons; the simulation also holds each passenger’s destination and patience.
About this recording and recovery
The recording and description are retained with the software. Where the recorded environment is identified, it is named beneath the recording. No additional repair history is asserted here.
Archive record
- Author
- Amir Husain
- Date
- c. 1995
- Environment
- Borland C++, VGA 640×480, fuzzy logic
- Reference
- ATX-SW-LIFT-WORLD
The software archive preserves dates, implementation notes, and surviving source material. Contact the museum to explore the program’s documentation.