Skip to main content
Log in

Using UML and OCL for representing multiobjective combinatorial optimization problems

  • Published:
Journal of Intelligent Manufacturing Aims and scope Submit manuscript

Abstract

This paper describes the results of a preliminary feasibility study of an approach to representing multiobjective combinatorial optimization problems in UML (structural constraints) and OCL (procedural constraints) and then automatically translating the representations to a constraint satisfaction solving language (Oz) for execution. The paper presents two examples of the application of the approach—a job scheduling problem and a (fixture) design problem. The main goal of this paper is to investigate directions towards a standard, graphical language for representing combinatorial optimization problems. The paper shows that for the two selected problems it is easy to represent structural constraints in UML and that procedural constraints are representable in OCL. The results also show that a developed translator automatically converts the UML/OCL representations to Oz and that the resulting Oz program performs very reasonably, in some cases outperforming the hand-written benchmark programs.

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

  • Achlioptas, D., Kirousis, L. M., Kranakis, E., Krizanc, M. S., Molloy, M. S. O., & Stamatiou, Y.C. (1998). Random constraint satisfaction: A more accurate picture. In Proceedings of the 3rd international conference on principles and practice of constraint programming (CP98) (pp. 107–120). Springer-Verlag, LNCS 1330.

  • Applegate D., Bixby R., Chvátal V., Cook W. (2007) The traveling salesman problem: A computational study. Princeton University Press, Princeton

    Google Scholar 

  • Andersson, K., & Hjerpe, T. (1998). Modeling constraint problems in CML. In PACT’98 (pp. 295–312).

  • Beck, J. C. , & Jackson, W. K. (1997). Constrainedness and the phase transition in job shop scheduling.

  • Bistarelli, S., Montanari, U., & Rossi, F. (1995). Constraint solving over semirings. In Proceedings of IJCAI95 (pp. 624–630). Morgan Kauffman.

  • Borning A. (1981) The programming language aspects of thinglab, a constraint-oriented simulation laboratory. ACM Transaction on Programming Languages and Systems 3(4): 353–387

    Article  Google Scholar 

  • Borning A., Freeman-Benson B. (1998) Ultraviolet: A constraint satisfaction algorithm for interactive graphics. CONSTRAINTS: An International Journal 3(1): 9–32

    Article  Google Scholar 

  • Cabot, J., Claris, R., & Riera, D. (2007). UMLtoCSP: A tool for the formal verification of UML/OCL models. In Proceedings of the 22nd ACM/IEEE international conference on automated software engineering (ASE’2007), (pp. 547–548). ACM/IEEE, November, 2007.

  • Cabot, J., Claris, R., & Riera, D. (2008). Verication of UML/OCL class diagrams using constraint programming. In ICST workshop on model driven engineering, verification and validation: Integrating verification and validation in MDE (MoDeVVa’2008), (pp. 73–80), April, 2008.

  • Cengarle M. V., Knapp A. (2004) OCL1.4/5 vs. 2.0 expressions: Formal semantics and expressiveness. Software and Systems Modeling 3: 9–30

    Article  Google Scholar 

  • Cheeseman, P., Kanefsky, B., & Taylor, W. M. (1991). Where the really hard problems are. In Proceedings of IJCAI91 (Vol. 1, pp. 331–337).

  • Colmerauer A. (1990) An introduction to Prolog III. Communications of ACM 28(4): 412–418

    Google Scholar 

  • Colmerauer, A. (1996). Specification de Prolog IV. Technical report. Laboratoire d’informatique de Merseille.

  • Colmerauer, A., Kanoui, H., & Van Caneghem, M. (1981). Last steps towards an ultimate Prolog. In Proceedings of the 7th international joint conference on Artificial intelligence (Vol. 2, pp. 947–948), San Francisco, CA, USA: Morgan Kaufmann Publishers Inc

  • Csontó J., Paralic J. (1997) A Look at CLP: Theory and application. Applied Artificial Intelligence 11(1): 59–69

    Article  Google Scholar 

  • Czarnecki, K., & Kim, C. H. P. (2005). Cardinality-Based Feature modeling and constraints: A progress report. In OOPSLA’05 workshop on software factories (pp 1–9).

  • Deb K. (2001) Multi-Objective optimization using evolutionary algorithms. John Wiley and Sons, Co., New Jersey

    Google Scholar 

  • Demoen, B., de la Banda, M. G., Harvey, W., Marriott, K., & Stuckey, P. (1999). An overview of HAL. In Principles and practice of constraint programming (pp. 174–188), October, 1999.

  • Ehrgott, M., & Gandibleux, X. (2002). Multiple criteria optimization: state of the art annotated bibliographic surveys. Operations research and management science (Vol. 52). Boston: Kluwer Academic Publishers.

  • El Sakkout H., Wallace M. (2000) Probe Backtrack Search for Minimal Perturbation in Dynamic Scheduling. Constraints 5(4): 359–388

    Article  Google Scholar 

  • Eschenauer H., Koski J., Osyczka A. (1990) Multicriteria design optimization. Springer-Verlag, Berlin

    Book  Google Scholar 

  • Fourer R., Gay D. M., Kernighan B. W. (2003) AMPL: A modeling language for mathematical programming. Duxbury Press, North Scituate, MA

    Google Scholar 

  • Garey M. R., Johnson D. S. (1979) Computers and intractability: A Guide to the theory of NP-Completeness. W. H. Freeman and Co., New York, NY, USA

    Google Scholar 

  • Goodrich M. A., Stirling W. C., Boer E. R. (2000) Satisficing revisited. Minds and Machines 10: 79–109

    Article  Google Scholar 

  • Grotschel, M., & Laszlo, L. (1993). Combinatorial optimization: A survey. Technical Report (pp. 93–29), DIMACS.

  • Grotschel M., Padberg M. W. (1979) On the symmetric travelling salesman problem II: Lifting theorems and facets. Mathematical Programming 16: 281–302

    Article  Google Scholar 

  • Haridi, S., & Janson, S. (1990). Kernel Andorra Prolog and its computational model. In ICLP’90, (pp. 31–46). MIT Press.

  • Haug A. (2010) Managing diagrammatic models with different perspectives on product information. Journal of Intelligent Manufacturing 21: 811–822

    Article  Google Scholar 

  • Hayes-Roth B. (1985) A blackboard architecture for control. Artificial Intelligence 26(3): 251–321

    Article  Google Scholar 

  • Hermenegildo, M. (1994). CLIP group. Some methodological issues in the design of CIAO—a generic, parallel concurrent constraint system. In Principals and practice of constraint programming (CP97) (pp. 123–133). Springer-Verlag, LNCS 874.

  • Hoffman K. L. (2000) Combinatorial optimization: Current successes and directions for the future. Journal of Computational and Applied Mathematics 124: 341–360

    Article  Google Scholar 

  • Hosobe, H., Matsuoka, S., Yonezawa, A. (1996). Generalized local propagation: A framework for solving constraint hierarchies. In Proceedings of the second international conference on principles and practice of constraint programming (pp. 237–251). Springer-Verlag.

  • Jaffar, J., & Michaylov, S. (1987). Methodology and implementation of a CLP system. In Fourth international conference in logic programming, (pp. 196–218), Melbourne, Australia, May, 1987.

  • Jaffar, J., & Lassez, J. L. (1987). Constraint logic programming. In POPl-87 (pp. 111–119) Munich, FRG, January, 1987.

  • Kusiak A., Tang F., Xu G. (2011) Multi-objective optimizationof HVAC system with an evolutionary computation algorithm. Energy 36: 2440–2449

    Article  Google Scholar 

  • Laburthe, F., & Caseau, Y. (1998). SALSA: A Language for Search Algorithms. In Fourth international conference on principals and practice of constraint programming (CP’98), (pp. 310–324), Pisa, Italy, October, 1998

  • Le Pape C., Baptiste P. (1998) Resource constraints for preemptive job-shop scheduling. CONSTRAINTS: An International Journal 3(4): 263–287

    Article  Google Scholar 

  • Le Pape, C.,& Baptiste, P. (1997). A constraint programming library for preemptive and non-preemptive scheduling. In PACT97 (pp. 23–25).

  • Luis L. M., Camarinha-Matos M., Afsarmanesh H. (2007) A comprehensive modeling framework for collaborative networked organizations. Journal of Intelligent Manufacturing 18: 529–542

    Article  Google Scholar 

  • Maes, P. (1997). General tutorial on software agents. http://web.media.mit.edu/~pattie/, MIT.

  • Mandel, L., & Cengarle, M. V. (1999). On the expressive power of OCL. In J. M. Wing, J. Woodcock, & J. Davies, (eds.), Proceedings world congress on formal methods (FM’99), (Lecture Notes in Computer Science), (Vol. 1708, pp. 854–874). Springer.

  • Marriott, K., Chok, S. S., & Finlay, A. (1998). A tableau based constraint solving toolkit for interactive graphical applications. In Proceedings of the 4th international conferences on principles and practice of constraint programming (CP98), (pp. 340–354). Springer-Verlag.

  • Martello S., Toth P. (1990) Knapsack Problems: Algorithms and Computer Implementations. John Wiley and Sons, New York

    Google Scholar 

  • Mehl, M., Muller, M., Popov, T., & Scheidhauer, K. (1995). DFKI Oz User’s Manual. May, 1995.

  • Michel, L., & Van Hentenryck, P. (2000). Modeler++: A modeling layer for constraint. Programming Libraries CS-00-07, Brown University, December, 2000.

  • Montanari U. (1974) Networks of constraints: Fundamental properties and application to picture processing. Information Science 7: 95–132

    Article  Google Scholar 

  • Moon T. K., Stirling W. C. (2001) Satisficing negotiation for resource allocation with disputed resources. In: Tsatsoulis C. (Ed.), Negotiation methods for autonomous cooperative systems. AAAI Press, Menlo Park, pp 106–115

    Google Scholar 

  • Montanari, U., & Rossi, F. (1996). Constraint solving and programming: What’s next?. ACM Computing Surveys, 28(4), 70.

    Google Scholar 

  • Padberg M., Rinaldi G. (1991) A branch-and-cut algorithm for the resolution of large-scale symmetric traveling salesman problems. SIAM Review 33: 60–100

    Article  Google Scholar 

  • Papadimitriou C. H., Steiglitz K. (1998) Combinatorial optimization: Algorithms and complexity. Dover Publications Inc, New York

    Google Scholar 

  • OMG. (2003). Unified modeling language specification. Object Management Group, Inc., (1.5 ed.), March, 2003.

  • OMG. (2007). OMG Unified Modeling Language (OMG UML), Superstructure, V2.1.2.

  • OMG. (2007). OMG Uified Modeling Language (OMG UML), Infrastructure, V2.1.2.

  • OMG. (2005). OCLE: Object Constraint Language Environment version 2.0.4.

  • Rasovska, I., Chebel-Morello, B.N. Zerhouni& (2008). A mix method of knowledge capitalization in maintenance. Journal of Intelligent Manufacturing, 19, 347–359.

  • Rossi, F. (2000). Constraint (logic) programming: a survey on research and applications. In Proceedings of the ERCIM/compulog net workshop on constraints, (pp. 40–74). Springer-Verlag, LNAI 1865.

  • Saraswat, V. A., & Rinard, M. (1990). Concurrent constraint programming. In Proceedings of the 17th ACM symposium on principals of programming languages (pp. 232–245).

  • Schulte, C. (1997). Programming constraint inference engines. In Proceedings of the third international conference on principals and practice of constraint programming (Vol. 1330, pp. 519–533), Schloss Hagenberg, Linz, Austria: Springer-Verlag October, 1997.

  • Schulte, C., & Smolka, G. (2004). Finite domain constraint programming in Oz. Mozart Documentation, (1.3.1 ed.), June, 2004.

  • Sen, S. (1998). Satisficing models. In Proceedings of the 1998 AAAI Symposium. Technical Report SS-98-05, Stanford, California.

  • Simon H. A. (1955) A behavioral model of rational choice. Quarterly Journal of Economics 59: 99–118

    Article  Google Scholar 

  • Smolka G. (1995) An Oz Primer. DFKI Oz documentation series, Saarbrucken, Germany

    Google Scholar 

  • Song Z., Kusiak A. (2010) Multiobjective optimization of temporal processes. IEEE Transactions on Systems, Man and Cybernetics 40(3): 845–856

    Article  Google Scholar 

  • Stefanovic D., Stefanovic N. (2008) Methodology for modeling and analysis of supply networks. Journal of Intelligent Manufacturing 19: 485–503

    Article  Google Scholar 

  • Stirling W. C., Goodrich M. A. (1999) Satisficing games. Information Sciences 114: 255–280

    Article  Google Scholar 

  • Stirling W. C., Goodrich M. A., Packard D. J. (2002) Satisficing equilibria: A non-classical approach to games and decisions. Autonomous Agents and Multi-Agent Systems Journal 5: 305–328

    Article  Google Scholar 

  • Sutherland I. E. (1963) SKETCHPAD: A man-machine graphical communication system. MIT Lincoln Labs, Cambridge, MA

    Google Scholar 

  • Sussman G. J., Steele G. L. (1980) CONSTRAINTS-a language for expressing almost-hierarchical descriptions. Artificial Intelligence 14(1): 1–39

    Article  Google Scholar 

  • Tsang, E., Mills, P., Williams, R., Ford, J., & Borrett, J. (1999). A computer aided constraint programming system. In PACPL’99 (pp. 88–93).

  • Van Hentenryck P. (1989) Constraint satisfaction in logic programming. MIT Press, Cambridge, MA

    Google Scholar 

  • Van Hentenryck, P. (1996). Helios: A modeling language for global optimization. In Proceedings PACT96 (pp. 317–335).

  • Van Hentenryck P. (1997) Numerica: A modeling language for global optimization. MIT Press, Cambridge

    Google Scholar 

  • Van Hentenryck, P. (1997). Visual Solver: A modeling language for constraint programming. In Proceedings of the 3rd international conference on principals and practice of constraint programming (CP97) (Vol. 2, p. 1). Springer-Verlag, LNCS 1330.

  • Van Hentenryck P., Simonis H., Dincbas M. (1992) Constraint satisfaction using constraint logic programming. Artificial Intelligence 58: 113–159

    Article  Google Scholar 

  • Xanthopulos Z., Melachrinoudis E., Solomon M. M. (2000) Interactive multiobjective group decision making with interval parameters. Management Science 46(12): 1585–1601

    Article  Google Scholar 

  • W3C. XML Schema.

  • Yang, D., & Dong, M. (2011). Applying constraint satisfaction approach to solve product configuration problems with cardinality-based configuration rules. Journal of Intelligent Manufacturing, 1–13.

  • Zilberstein, S. (1998). Satisficing and bounded optimality. In Proceedings of the 1998 AAAI Symposium. Technical Report SS-98-05, (pp. 91–94), Stanford, California.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mieczyslaw M. Kokar.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Eracar, Y.A., Kokar, M.M. Using UML and OCL for representing multiobjective combinatorial optimization problems. J Intell Manuf 25, 555–569 (2014). https://doi.org/10.1007/s10845-012-0705-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10845-012-0705-y

Keywords

Navigation