Skip to main content
Log in

Automatically configuring constraint satisfaction programs: A case study

  • Published:
Constraints Aims and scope Submit manuscript

Abstract

Multi-tac is a learning system that synthesizes heuristic constraint satisfaction programs. The system takes a library of generic algorithms and heuristics and specializes them for a particular application. We present a detailed case study with three different distributions of a single combinatorial problem, “Minimum Maximal Matching”, and show that Muti-tac can synthesize programs for these different distributions that perform on par with hand-coded programs and that exceed the performance of some well-known satisfiability algorithms. In synthesizing a program, Multi-tac bases its choice of heuristics on an instance distribution, and we demonstrate that this capability has a significant impact on the results.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Allen, J. & Minton, S. (1996). Selecting the right heuristic algorithm: Runtime performance predictors. In Proceedings of the Canadian AI Conference.

  • Barstow, D. (1991). Automatic programming for device-control software. In M.R. Lowry and R.D. McCartney, editors, Automating Software Design. AAAI Press.

  • Bitner, J. & Reingold, E.M. (1975). Backtrack programming techniques. Communications of the ACM, 18:651–655.

    Google Scholar 

  • Braudaway, W. & Tong, C. (1989). Automated synthesis of constrained generators. In Proceedings of the Eleventh International Joint Conference on Artificial Intelligence.

  • Brelaz, D. (1979). New methods to color the vertices of a graph. Communications of the ACM, 22:251–256.

    Google Scholar 

  • Carbonell, J., Etzioni, O., Gil, Y., Joseph, R., Knoblock, C., Minton, S. & Veloso, M. (1995). Planning and learning in Prodigy: Overview of an integrated architecture. In A. Ram and D.B. Leake (Eds.), editors, Goal Driven Learning. MIT Press, 1995.

  • Cohen, P.R. & Feigenbaum, E.A. editors. (1982). The Handbook of Artificial Intelligence, Volume III, volume Volume 3. William Kaufmann, Inc., Los Altos, California.

    Google Scholar 

  • Ellman, T. (1993). Abstraction via approximate symmetry. In Proceedings of the Thirteenth International Joint Conference on Artificial Intelligence.

  • Etzioni, O. & Etzioni, R. (1993). Statistical methods for analyzing speedup learning experiments. Machine Learning, 14(3):333–347.

    Google Scholar 

  • Fisher, D., Subramanian, D. & Tadepalli, P. editors. (1993). Proceedings of the Third International Workshop on Knowledge Compilation and Speedup Learning.

  • Galil, Z. (1986). Efficient algorithms for finding maximum matchings in graphs. Computing Surveys, 18(1).

  • Garey, M.R. & Johnson, D.S. (1979). Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman and Co.

  • Gratch, J. (1995). On efficient approaches to the utility problem in adaptive problem solving.Technical Report 1916, Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, Illinois.

    Google Scholar 

  • Gratch, J. & DeJong, G. (1991). A hybrid approach to guaranteed effective control strategies. In Proceedings of the Eighth International Machine Learning Workshop.

  • Kahn, K. (1984). Partial evaluation as an example of the relationship between programming methodology and AI. AI Magazine, 5(1).

  • Kant, E., Daube, F., MacGregor, W. & Wald, J. (1991). Automatic programming for device-control software. In M.R. Lowry and R.D. McCartney, editors, Automating Software Design. AAAI Press.

  • Kumar, V. (1992). Algorithms for constraint satisfaction problems. AI Magazine, 13.

  • Lassila, O. & Smith, S.F. (1994). Flexible, constraint-based tools for complex scheduling applications. In Proceedings of the 4th Annual Dual-Use Technologies and Applications Conference, pages 131–138.

  • Lauriere, J.L. (1978). A language and a program for stating and solving combinatorial problems. Artificial Intelligence, 10:29–127.

    Google Scholar 

  • Minton, S. (1988). Learning Search Control Knowledge: An Explanation-based Approach. Kluwer Academic Publishers, Boston, Massachusetts.

    Google Scholar 

  • Minton, S. (1990). Quantitative results concerning the utility of explanation-based learning. Artificial Intelligence, 42.

  • Minton, S. (1993). An analytic learning system for specializing heuristics. In Proceedings of the Thirteenth International Joint Conference on Artificial Intelligence.

  • Minton, S. (1993). Integrating heuristics for constraint satisfaction problems: A case study. In Proceedings of the Eleventh National Conference on Artificial Intelligence.

  • Minton, S., Johnston, M., Philips, A.B. & Laird, P. (1992). Minimizing conflicts: A heuristic repair method for constraint satisfaction and scheduling problems. Artificial Intelligence, 58:161–205.

    Google Scholar 

  • Minton, S. & Underwood, I. (1994). Small is beautiful: A brute-force approach to learning first-order formulas. In Proceedings of the Twelfth National Conference on Artificial Intelligence.

  • Mitchell, T., Keller, R. & Kedar-Cabelli, S. (1986). Explanation-based generalization: A unifying view. Machine Learning, 1(1):47–80.

    Google Scholar 

  • Mitchell, T.M. (1980). The need for biases in learning generalizations. Technical Report CBM-TR-117, Rutgers University.

  • Mostow, D.J. (1983). Machine transformation of advice into a heuristic search procedure. In Machine Learning, An Artificial Intelligence Approach, pages 367–403. Tioga Press, Palo Alto, CA.

    Google Scholar 

  • Mostow, J. (1991). A transformational approach to knowledge compilation. In M.R. Lowry and R.D. McCartney, editors, Automating Software Design. AAAI Press.

  • Purdom Jr., P.W. (1983). Search rearrangement backtracking and polynomial average time. Artificial Intelligence, 21:117–133.

    Google Scholar 

  • Selman, B., Levesque, H. & Mitchell, D. (1992). A new method for solving hard satisfiability problems. In Proceedings of the Tenth National Conference on Artificial Intelligence, San Jose, CA.

  • Setliff, D.E. (1991). On the automatic selection of data structure and algorithms. In M.R. Lowry and R.D. McCartney, editors, Automating Software Design. AAAI Press.

  • Smith, D.R. & Parra, E.A. (1993). Transformational approach to transportation scheduling. In Proceedings of the Eighth Conference on Knowledge-Based Software Engineering.

  • Smith, D.R. (1991). KIDS: A knowledge-based software development system. In M.R. Lowry and R.D. McCartney, editors, Automating Software Design. AAAI Press.

  • Smith, T.E. & Setliff, D.E. (1992). Knowledge-based constraint-driven software synthesis. In Proceedings of the Seventh Conference on Knowledge-Based Software Engineering.

  • Smullyan, R.M. (1968). First Order Logic. Springer Verlag New York Inc.

  • Srinivasan, V. & Sterling, L. (1993). A knowledge based framework for developing and customizing schedulers. In Proceedings of the Eighth Conference on Knowledge-Based Software Engineering.

  • Tong, C. (1991). A divide and conquer approach to knowledge compilation. In M.R. Lowry and R.D. McCartney, editors, Automating Software Design. AAAI Press.

  • Turner, J.S. (1988). Almost all k-colorable graphs are easy to color. Journal of Algorithms, 9:63–82.

    Google Scholar 

  • Van Hentenryk, P.,Deville, Y, & Teng, C.M. (1992). A generic arc-consistency algorithm and its specializations. Artificial Intelligence, 57:291–321.

    Google Scholar 

  • Yoshikawa, M., Kaneko, K., Nomura, Y. & Watanabe, M. (1994). A constraint-based approach to high school timetabling problems: A case study. In Proceedings of the Twelfth National Conference on Artificial Intelligence.

  • Yoshikawa, M. & Wada, S. (1992). Constraint satisfaction with multi-dimensional domain. In Proceedings of the First International Conference on Planning Systems.

  • Zweben, M., Davis, E., Daun, B., Drascher, E., Deale, M. & Eskey, M. (1992). Learning to improve constraint-based scheduling. Artificial Intelligence, 58:271–296.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Minton, S. Automatically configuring constraint satisfaction programs: A case study. Constraints 1, 7–43 (1996). https://doi.org/10.1007/BF00143877

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00143877

Keywords

Navigation