Skip to main content

Objective Landscapes for Constraint Programming

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10848))

Abstract

This paper presents the concept of objective landscape in the context of Constraint Programming. An objective landscape is a light-weight structure providing some information on the relation between decision variables and objective values, that can be quickly computed once and for all at the beginning of the resolution and is used to guide the search. It is particularly useful on decision variables with large domains and with a continuous semantics, which is typically the case for time or resource quantity variables in scheduling problems. This concept was recently implemented in the automatic search of CP Optimizer and resulted in an average speed-up of about 50% on scheduling problems with up to almost 2 orders of magnitude for some applications.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    The distinction between objective decision variables x and the other variables y clearly depends on the formulation of the problem and may be considered as a bit arbitrary. This will be discussed in Sect. 7.

  2. 2.

    Through the paper, we use lower cases for variables and upper cases for constants.

  3. 3.

    By abuse of notation, as \(\mathcal{P}\) is supposed to be given, we do not use it in the notations of these bounds although they clearly depend on the propagation algorithm.

  4. 4.

    A specific parameter can be used to switch off objective landscapes.

References

  1. Beck, J.C., Refalo, P.: A hybrid approach to scheduling with earliness and tardiness costs. Ann. Oper. Res. 118(1–4), 49–71 (2003)

    Article  MathSciNet  Google Scholar 

  2. Biskup, D., Feldmann, M.: Benchmarks for scheduling on a single machine against restrictive and unrestrictive common due dates. Comput. Oper. Res. 28(8), 787–801 (2001)

    Article  Google Scholar 

  3. Greenberg, H., Pierskalla, W.: A review of quasi-convex functions. Oper. Res. 19(7), 1553–1570 (1971)

    Article  Google Scholar 

  4. Knopp, S., Dauzère-Pérès, S., Yugma, C.: Modeling maximum time lags in complex job-shops with batching in semiconductor manufacturing. In: Proceedings of the 15th International Conference on Project Management and Scheduling (PMS 2016), pp. 227–229 (2016)

    Google Scholar 

  5. Laborie, P., Godard, D.: Self-adapting large neighborhood search: application to single-mode scheduling problems. In: Baptiste, P., Kendall, G., Munier-Kordon, A., Sourd, F. (eds.) Proceedings of the 3rd Multidisciplinary International Conference on Scheduling: Theory and Applications (MISTA), Paris, France, pp. 276–284, 28–31 Aug 2007

    Google Scholar 

  6. Laborie, P., Rogerie, J., Shaw, P., Vilím, P.: IBM ILOG CP optimizer for scheduling. Constraints J. 23(2), 210–250 (2018)

    Article  MathSciNet  Google Scholar 

  7. Laborie, P., Rogerie, J.: Temporal linear relaxation in IBM ILOG CP optimizer. J. Sched. 19(4), 391–400 (2016)

    Article  MathSciNet  Google Scholar 

  8. Michel, L., Van Hentenryck, P.: Activity-based search for black-box constraint programming solvers. In: Beldiceanu, N., Jussien, N., Pinson, É. (eds.) CPAIOR 2012. LNCS, vol. 7298, pp. 228–243. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29828-8_15

    Chapter  Google Scholar 

  9. Monette, J., Deville, Y., Hentenryck, P.V.: Just-in-time scheduling with constraint programming. In: Proceedibgs of the 19th International Conference on Automated Planning and Scheduling (ICAPS 2009) (2009)

    Google Scholar 

  10. Morton, T., Pentico, D.: Heuristic Scheduling Systems. Wiley, New York (1993)

    Google Scholar 

  11. Pesant, G.: Counting-based search for constraint optimization problems. In: Proceedings of the 13th AAAI Conference on Artificial Intelligence (AAAI 2016), pp. 3441–3447 (2016)

    Google Scholar 

  12. Refalo, P.: Impact-based search strategies for constraint programming. In: Wallace, M. (ed.) CP 2004. LNCS, vol. 3258, pp. 557–571. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30201-8_41

    Chapter  MATH  Google Scholar 

  13. Vanhoucke, M.: A scatter search heuristic for maximising the net present value of a resource-constrained project with fixed activity cash flows. Int. J. Prod. Res. 48, 1983–2001 (2010)

    Article  Google Scholar 

  14. Vardi, M.Y.: Fundamentals of dependency theory. Technical report RJ4858, IBM Research (1985)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Philippe Laborie .

Editor information

Editors and Affiliations

Appendix: Proof of Proposition 3

Appendix: Proof of Proposition 3

Let \(v \in D_i\), we want to prove that \(L_i(v) = f^*_i(v)\). We distinguish 3 cases depending on the position of v with respect to \(X^L_i(Z^L)\) and \(X^U_i(Z^L)\).

Case 1: \(v \in [X^L_i(Z^L),X^U_i(Z^L)]\)

By definition of the landscape function we have \(L_i(v)=Z^L\).

We first note that by definition of \(Z^L\), for every objective value \(z < Z^L\) as the propagation of \(f(x)\le z\) fails, it means that \(Z^L\) is a lower bound on \(Z^*=\min _{x \in D} f(x)\).

As by definition of function \(f^*_i\) we have \(\forall v \in D_i, Z^* \le f^*_i(v)\). We can deduce: \(L_i(v) ( = Z^L ) \le f^*_i(v)\).

We will now use the bound-consistency property of propagation to show that \(f^*_i(X^L_i(Z^L)) \le Z^L\) and \(f^*_i(X^U_i(Z^L)) \le Z^L\). By definition \(X^L_i(Z^L)\) is the minimal value in the domain of \(x_i\) after propagation of \(f(x)\le Z^L\). Because propagation is bound-consistency on \(x_i\), it means that there exist some x with \(x_i=X^L_i(Z^L)\) such that \(f(x) \le Z^L\) (otherwise, this value would have been filtered from the domain). Furthermore, by definition of function \(f^*_i\), we have \(f^*_i(X^L_i(Z^L)) \le f(x)\), thus \(f^*_i(X^L_i(Z^L)) \le Z^L\). The proof that \(f^*_i(X^U_i(Z^L)) \le Z^L\) is symmetrical. Finally, the quasiconvexity of \(f^*_i\) implies that for all \(v \in [X^L_i(Z^L),X^U_i(Z^L)]\), \(f^*_i(v) \le Z^L (= L_i(v))\).

Case 2: \(v < X^L_i(Z^L)\)

By definition of the landscape we have \(L_i(v)= \min {\{z | X^L_i(z) \le v\}}\).

We first prove that \(f^*_i(v) \ge L_i(v)\). By contradiction, suppose that \(f^*_i(v) < L_i(v)\) and let \(z' = f^*_i(v)\). This would mean that there exist x with \(x_i=v\) such that \(f(x) = z'\). For such a \(z'\) we would have \(X^L_i(z') \le v\) because x supports objective value \(z'\) and thus value v cannot be removed from the domain of \(x_i\). Such a value \(z' < L_i(v)\) such that \(X^L_i(z') \le v\) contradict the fact \(L_i(v)\) is the smallest z satisfying \(X^L_i(z) \le v\). This proves \(f^*_i(v) \ge L_i(v)\).

For proving that \(f^*_i(v) \le L_i(v)\), we distinguish 2 sub-cases depending on whether or not there exist an objective value z such that \(X^L_i(z) = v\).

Case 2.1: There exist a value z such that \(X^L_i(z) = v\) so that \(L_i(v)=z\).

By definition of \(X^L_i\), this means that v is the minimal value in the domain of \(x_i\) after propagating \(f(x) \le z\). Because propagation is bound-consistent on \(x_i\), it means that there exist some x with \(x_i=v\) such that \(f(x) \le z\) (otherwise, this value would have been filtered from the domain). Furthermore, by definition of function \(f^*_i\), we have \(f^*_i(v) \le f(x)\), thus \(f^*_i(v) \le z (=L_i(v))\).

Case 2.2: There does not exist any value z such that \(X^L_i(z) = v\).

This is the case of a discontinuity of function \(X^L_i(z)\). Let \(v^+ = X^L_i(L_i(v))\) denote the value of \(X^L_i\) at the discontinuity. By definition of \(L_i\), we have \(L_i(v)=L_i(v^+)\). Furthermore, as \(v^+\) satisfies case 2.1 above, we also know that \(f^*_i(v^+) \le L_i(v^+)\). We have seen in case 1 that \(f^*_i(X^L_i(Z^L)) \le Z^L\) and, of course, \(Z^L \le L_i(v^+)\). To summarize: \(v \in [X^L_i(Z^L), v^+]\), \(f^*_i(X^L_i(Z^L)) \le L_i(v^+)\) and \(f(v^+) \le L_i(v^+)\). Thus, by quasiconvexity of \(f^*_i\): \(f(v) \le L_i(v^+) (=L_i(v))\).

Case 3: \(v > X^U_i(Z^L)\)

This case is the symmetrical of Case 2.    \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Laborie, P. (2018). Objective Landscapes for Constraint Programming. In: van Hoeve, WJ. (eds) Integration of Constraint Programming, Artificial Intelligence, and Operations Research. CPAIOR 2018. Lecture Notes in Computer Science(), vol 10848. Springer, Cham. https://doi.org/10.1007/978-3-319-93031-2_28

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-93031-2_28

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-93030-5

  • Online ISBN: 978-3-319-93031-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics