Abstract
This paper studies a family of optimization problems where a set of items, each requiring a possibly different amount of resource, must be assigned to different slots for which the price of the resource can vary. The objective is then to assign items such that the overall resource cost is minimized. Such problems arise commonly in domains such as production scheduling in the presence of fluctuating renewable energy costs or variants of the Travelling Salesman Problem. In Constraint Programming, this can be naturally modeled in two ways: (a) with a sum of element constraints; (b) with a MinimumAssignment constraint. Unfortunately the sum of element constraints obtains a weak filtering and the MinimumAssignment constraint does not scale well on large instances. This work proposes a third approach by introducing the ResourceCostAllDifferent constraint and an associated incremental and scalable filtering algorithm, running in \(\mathcal {O}(n \cdot m)\), where n is the number of unbound variables and m is the maximum domain size of unbound variables. Its goal is to compute the total cost in a scalable manner by dealing with the fact that all assignments must be different. We first evaluate the efficiency of the new filtering on a real industrial problem and then on the Product Matrix Travelling Salesman Problem, a special case of the Asymmetric Travelling Salesman Problem. The study shows experimentally that our approach generally outperforms the decomposition and the MinimumAssignment ones for the problems we considered.
Similar content being viewed by others
Notes
Although in practice the computation in a search tree is incremental.
We also experimented with the version from [8] to get exact reduced costs, but it appeared to be very slow for the instances we considered, so we do not report any results regarding that implementation.
According to preliminary experiments we conducted. We do not report any results when exact reduced costs are used.
Accessible at http://performance-profile.info.ucl.ac.be/.
References
Ait-Kaci, H., & Des Flambertins. F. (1999). Warren’s abstract machine: a tutorial reconstruction.
Applegate, David L., Bixby, Robert E., Chvátal, V, & Cook, W. J. (2006). Concorde TSP solver.
Applegate, David L., Bixby, Robert E., Chvátal, V, & Cook, W. J. (2011). The traveling salesman problem: a computational study. Princeton University Press.
Van Cauwelaert, S, & Schaus, P. CSPLib problem 075: product matrix travelling salesman problem. http://www.csplib.org/Problems/prob075.
de Saint-Marcq, V C, Schaus, P, Solnon, C, & Lecoutre, C (2013). Sparse-sets for domain implementation. In International workshop on techniques foR implementing constraint programming systems (pp. 1–10).
Dejemeppe, C, Devolder, O, Lecomte, V, & Schaus, P (2016). Forward-checking filtering for nested cardinality constraints: application to an energy cost-aware production planning problem for tissue manufacturing. In International conference on integration of artificial intelligence and operations research techniques in constraint programming (pp. 108–124). Springer.
Dolan, Elizabeth D., & Moré, Jorge J. (2002). Benchmarking optimization software with performance profiles. Mathematical Programming, 91(2), 201–213.
Ducomman, S, Cambazard, H, & Penz, B (2016). Alternative filtering for the weighted circuit constraint: comparing lower bounds for the TSP and solving TSPTW. In AAAI conference on artificial intelligence.
Focacci, F, Lodi, A, & Milano, M (1999). Integration of CP and OR methods for matching problems. In International workshop on integration of AI and OR techniques in constraint programming for combinatorial optimization problems.
Focacci, F, Lodi, A, Milano, M, & Vigo, D (1999). Solving TSP through the integration of OR and CP techniques. Electronic Notes in Discrete Mathematics, 1, 13–25.
Gay, S, Hartert, R, Lecoutre, C, & Schaus, P (2015). Conflict ordering search for scheduling problems. In International conference on principles and practice of constraint programming (pp. 140–148). Springer.
Gay, S, Schaus, P, & De Smedt, V (2014). Continuous casting scheduling with constraint programming. In International conference on principles and practice of constraint programming (pp. 831–845). Springer.
Gilmore, P.C, Lawler, E.L., & Shmoys, D. (1985). Well-solved special cases of the traveling salesman problem. In John Wiley & Sons (ed.), The traveling salesman problem.
Houndji, V. R., Schaus, P., Wolsey, L., & Deville, Y. (2014). The stockingcost constraint. In International conference on principles and practice of constraint programming (pp. 382–397). Springer.
Jonker, R., & Volgenant, T. (1983). Transforming asymmetric into symmetric traveling salesman problems. Operations Research Letters, 2(4), 161–163.
OscaR Team (2012). OscaR: scala in OR. Available from https://bitbucket.org/oscarlib/oscar.
Pesant, G, Gendreau, M, Potvin, J.-Y., & Rousseau, J.-M. (1998). An exact constraint logic programming algorithm for the traveling salesman problem with time windows. Transportation Science, 32(1), 12–29.
Plante, R. D., Lowe, T. J., & Chandrasekaran, R. (1987). The product matrix traveling salesman problem: an application and solution heuristic. Operations Research, 35(5), 772–783.
Régin, J.-C (1994). A filtering algorithm for constraints of difference in CSPs. In AAAI conference on artificial intelligence (Vol. 94, pp. 362–367).
Régin, J.-C. (2002). Cost-based arc consistency for global cardinality constraints. Constraints, 7(3-4), 387–405.
Sarvanov, V. I. (1980). On the complexity of minimizing a linear form on a set of cyclic permutations. In Dokl. Akad. Nauk SSSR (Vol. 253, pp. 533–535).
Sellmann, M (2002). An arc-consistency algorithm for the minimum weight all different constraint. In International conference on principles and practice of constraint programming (pp. 744–749). Springer.
Simonis, H, & Hadzic, T (2010). A family of resource constraints for energy cost aware scheduling. In Third international workshop on constraint reasoning and optimization for computational sustainability. St. Andrews.
Simonis, H, & Hadzic, T (2011). A resource cost aware cumulative. In Recent advances in constraints: 14th annual ERCIM international workshop on constraint solving and constraint logic programming, CSCLP 2009, Barcelona, Spain, June 15-17, 2009, Revised Selected Papers (pp. 76–89). Springer.
Van Cauwelaert, S., Lombardi, M., & Schaus, P. (2015). Understanding the potential of propagators. In International conference on integration of artificial intelligence and operations research techniques in constraint programming (pp. 427–436). Springer.
Van Cauwelaert, S, Lombardi, M, & Schaus, P (2017). A visual web tool to perform what-if analysis of optimization approaches. arXiv preprint arXiv:1703.06042.
Van Hentenryck, P, & Carillon, J.-P. (1988). Generality versus specificity: an experience with AI and OR techniques. In AAAI conference on artificial intelligence (pp. 660–664).
van Hoeve, W.-J. (2001). The alldifferent constraint: a survey. coRR cs.PL/0105015.
Vilím, P. (2004). \(\mathcal {O}(n.log(n))\) filtering algorithms for unary resource constraint. In Régin, J-C, & Rueher, M (Eds.), International conference on integration of artificial intelligence and operations research techniques in constraint programming (pp. 335–347): Springer.
Wamba, G. M., & Beldiceanu, N. (2016). The taskintersection constraint. In International conference on integration of artificial intelligence and operations research techniques in constraint programming (pp. 246–261). Springer.
Warren, D. H. D. (1983). An abstract Prolog instruction set Vol. 309. California: Artificial Intelligence Center, SRI International Menlo Park.
Weron, R (2014). Electricity price forecasting: a review of the state-of-the-art with a look into the future. International Journal of Forecasting, 30(4), 1030–1081.
Wüstenhagen, R, & Bilharz, M (2006). Green energy market development in Germany: effective public policy and emerging customer demand. Energy Policy, 34 (13), 1681–1696.
Acknowledgements
This Research has been supported by the “Service Publique de Wallonie – Direction générale opérationnelle de l’Economie, de l’Emploi & de la Recherche” under the scope of the InduStore project.
Author information
Authors and Affiliations
Corresponding author
Additional information
This article belongs to the Topical Collection: Integration of Artificial Intelligence and Operations Research Techniques in Constraint Programming
Guest Editors: Michele Lombardi and Domenico Salvagnin
Rights and permissions
About this article
Cite this article
Van Cauwelaert, S., Schaus, P. Efficient filtering for the Resource-Cost AllDifferent constraint. Constraints 22, 493–511 (2017). https://doi.org/10.1007/s10601-017-9269-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10601-017-9269-y