One holiday I was playing GO. It was very stressful. I had pain in my stomach hoping that my opponent would not discover my strategy. It intrigued me that a game with very simple rules like GO, could result in such complex behavior and thrilling entertainment.
Now I am again playing a game. I play a game in the training about “the rule based approach to traffic management.” The goal is to distribute traffic to lower priority roads in a road network. Again, the rules are very simple. Again, the overall system behavior is complex.
Playing the game is entertaining and helps traffic managers to understand the new methodology.
Let me tell you in this post:
- Why traffic managers in the Netherlands needed a rules based approach.
- How simple rules can effectively improve the overall performance.
- Why other organizations need their own rule based approach.
Traffic managers used flow charts to describe what the traffic operator should do in response to an event like congestion during rush hour, accident or football match. The objective is to avoid heavy congestion or a gridlock. A flow chart is the worst choice to describe what a traffic operator should do. The reason is that traffic is not a process with a start event and end state. Instead, the traffic situation constantly changes and the traffic operator needs to react to multiple events at the same time.
This explains why:
- The protocols for the traffic operator are incomplete, inconsistent and highly redundant.
- Maintaining the flowcharts in the protocols was using more and more resources.
- It was impossible to prove operational compliance with the agreed policy.
These were the reasons to look for alternatives.We found a better way by using declarative business rules that describe what
must, may and can be done to improve a traffic situation.Typically we can promote the outbound flow, decrease inbound flow or reroute traffic.
These are the three traffic services. The rule based traffic management approach has four principles that determine which service must be
- Prevent saturation on a link by early detection of bottlenecks and by the request of services to control outbound and inbound traffic.
- Optimize travel time on route segments by requesting the reroute services of upstream decision points.
- Turn down a service request when traffic conditions violate the policy constraints set by the traffic management authority.
- Manage conflicting service requests by turning down the service requested from the least severe traffic situation.
Each principle translates to a set of generic business rules that answer questions like:
- Which traffic management service must be requested for a control point?
- Is a traffic management service available?
- Which traffic management service must be executed when conflicting services are requested?
The road network is divided into links, used to measure compliance with the traffic norms, and control points, used to handle service requests. The generic business rules, presented as a decision table, are applied to each link in the road network.
Using these simple rules the traffic congestion is distributed to lower priority roads in the road network. The new approach uses the road priority and traffic norms agreed on in the traffic policy by the road authorities. Therefore:
overall traffic performance improves while being more compliant with the agreed policy.
A side catch is that the new approach easily integrates with technology innovations like self-driving cars and the Internet of Things (IOT).
The essential ingredients of a rule based approach are rules that describe knowledge applicable to every general case. The other ingredient is a well-defined and quantifiable policy.
Every organization that has a need for agility and compliance should be inspired by this methodology and consider making its own ‘rule based approach’.
Such a method would be developed together with the subject matter experts in a domain. In this case I have worked with traffic engineers from the different road authorities and boutique companies in the Netherlands. Traffic engineers should now be able to make changes to the road network, road priority and road norms to change the behavior of the system. That is what I call business driven software development with software that supports the business.
This is the fourth article in a series on the future of business driven software development. Read on about: design for the unknown, controlled natural languages, scrum and more.
Let me know if you have been the one reading 500 words by liking this post.
More information about the rule based approach to traffic management:
Thanks to Paul Maas (illustration), Kumi Hiroi (animation), Rolf Krikke (traffic engineer) and Alex Smienk (vision).
Let me know if you learned something new by sharing this post.