The OPL optimization programming language
The OPL optimization programming language
Soft Constraint Logic Programming and Generalized Shortest Path Problems
Journal of Heuristics
A fast arc consistency algorithm for n-ary constraints
AAAI'05 Proceedings of the 20th national conference on Artificial intelligence - Volume 1
Generalized arc consistency for global cardinality constraint
AAAI'96 Proceedings of the thirteenth national conference on Artificial intelligence - Volume 1
Using dominators for solving constrained path problems
PADL'06 Proceedings of the 8th international conference on Practical Aspects of Declarative Languages
Resource constrained shortest paths with a super additive objective function
CP'12 Proceedings of the 18th international conference on Principles and Practice of Constraint Programming
Hi-index | 0.00 |
In this paper, we describe a Constraint Programming (CP) route finding application for a container transportation company. Mathematically, this amounts to finding the k shortest paths in a directed graph. However the nature of the business constraints rule out known algorithms such as Dijkstra's. Indeed, one cannot unfold all constraints into a directed graph as the resulting graph would be too large. Given an origin and destination (two places), the problem is to decide which ships should be used (routes), and when and where the containers should be loaded from one ship to another (connections), while satisfying many business rules specified by the transportation company. The CP model described in this paper is quite simple, it doesn't use any specialized constraints, but it is surprisingly effective. Queries for the best route are answered in a matter of a second or fraction of a second, although the problem is very large: around 900 places, 2,300 routes, 22,000 connections and 4,200 business rules. The system gracefully handles 100,000 requests a day on a single server.