23. Smart Parking Controller
Parking · Intelligence Studio
Coordinate entrance arrivals, bay allocations, and exit gates in real time.
Scenario
Cars enter, park, and exit asynchronously. Exit requests occupy spots until authorized.
Problem statement
Welcome to ParkFlow's Smart Facility Controller interview!
Your task is to control a live multi-tier parking garage. Vehicles arrive with electric, large, VIP, accessible, and reservation requirements.
Unlike static lists, physical movement takes time: exit requests occupy spots until authorized, and drivers have limited patience (carPatienceRemaining). Submit tests your facility controller against hidden traffic scenarios!
Start with an empty rule set. Build your decision flow: 1. Release exit requests when exit gates are open (`hasExitRequest && exitGateAvailable`). 2. Match hard requirements (reserved, accessible, large). 3. Match preferences (VIP, electric). 4. Fall back to standard parking.
What this teaches
Coordinate arrival and departure queues while balancing driver patience, lane capacity, and category safety.
Evaluation contract
- Safety and state consistency: 30%
- Completion, patience, and fairness: 30%
- Queue, congestion, and exit throughput: 25%
- Generalization across hidden layouts and events: 15%
Active controller
Apply & Run executes only the selected controller.
How a rule works
A rule has two parts:
WHEN <something is true> → DO <this action>
- WHEN is a question about what is happening right now. For example: "Is it raining?" or "Is there a wall ahead?"
- DO is what happens when the answer is yes.
- The simulation runs one step at a time.
- On each step, the rules are checked from top to bottom.
- The first rule that is true wins. The rules below it are skipped for that step.
- To change which rule wins, move it up or down the list.
- If no rule is true, nothing happens on that step.
- Some actions have more than one step, like "turn right, then move". You build these in the Functions tab.
- Once a multi-step action starts, it finishes all its steps before the rules are checked again. It only stops early if the next step is not safe.
See an example
Two rules for deciding about an umbrella:
1 WHEN isRaining → take an umbrella 2 WHEN always → leave the umbrella at home
- It is raining. Rule 1 is true, so you take an umbrella. Rule 2 is skipped.
- It is sunny. Rule 1 is false, so rule 2 is checked next. Rule 2 is always true, so you leave the umbrella at home.
- Order matters. If rule 2 were on top, it would be true every day, and you would never take an umbrella.
Rule folders
Categorise cards without changing their global execution order.
ParkFlow operations
Entrance → allocation controller → parking → authorized exit
Entrance queue
Allocation controller
Classifying tutorial-001
Standard compact vehicle
Exit checkpoint · 0
No exit request
Checkpoint monitoring parked cars
Task progress & pass contractThe exact requirements used to judge this visible run⌄
- Resolve every visible vehiclenot run
reached && allVehiclesResolved - No hard allocation violationsnot run
allVehiclesResolved && hardViolations == 0 - No vehicle abandons the entrance queuenot run
allVehiclesResolved && abandonedCount == 0 - Keep operating penalty below 500bonusnot run
allVehiclesResolved && parkingScore < 500
Parking penalty audit
Entrance wait
0.00
Exit wait
0.00
Hard violations
0.00
Preferences
0.00
Abandonment
0.00
Rerouting
0.00
Congestion
0.00
Active queues
1.00
No parking allocation violation has been recorded.
Press Apply & Run to load your brain and start the simulation.
Interview evaluation
6 hidden evaluation scenarios
Hidden scenarios test your solution against different traffic patterns, failures, capacity limits, timing pressure, and edge cases that are not part of Apply & Run. To pass, your solution must satisfy every guardrail and achieve an average score of at least 70/100.