Model-driven Self-optimization Using Integer Linear Programming and Pseudo-Boolean Optimization

The development of self-optimizing software systems usually requires developers to apply optimization techniques manually, which is time consuming and prone to error. The application of model-driven software development combined with models at runtime takes this burden from developers by generating optimization problems using model transformations. In this paper, we present two such approaches applying integer linear programming and pseudoboolean optimization. Furthermore, we provide a scalability analysis of both approaches showing their feasibility for pipeand-filter applications. Keywords—self-adaptive systems; integer linear programming; pseudo-boolean optimization; MDSD

[1]  Daniel Jackson,et al.  Software Abstractions - Logic, Language, and Analysis , 2006 .

[2]  Joaquin Miller,et al.  MDA Guide Version 1.0.1 , 2003 .

[3]  Uwe Aßmann,et al.  Towards Energy Auto Tuning , 2010 .

[4]  Endre Boros,et al.  Pseudo-Boolean optimization , 2002, Discret. Appl. Math..

[5]  Brice Morin,et al.  Models@ Run.time to Support Dynamic Adaptation , 2009, Computer.

[6]  Christian Prehofer,et al.  Towards Self-Adaptation in Real-Time, Networked Systems: Efficient Solving of System Constraints for Automotive Embedded Systems , 2011, 2011 IEEE Fifth International Conference on Self-Adaptive and Self-Organizing Systems.

[7]  Jeff Magee,et al.  Self-Managed Systems: an Architectural Challenge , 2007, Future of Software Engineering (FOSE '07).

[8]  Franck Fleurey,et al.  A Domain Specific Modeling Language Supporting Specification, Simulation and Execution of Dynamic Adaptive Systems , 2009, MoDELS.

[9]  J. A. Robinson,et al.  Review: Martin Davis, George Logemann, Donald Loveland, A Machine Program for Theorem-Proving , 1967 .

[10]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[11]  Mary Shaw,et al.  Software Engineering for Self-Adaptive Systems: A Research Roadmap , 2009, Software Engineering for Self-Adaptive Systems.

[12]  P. Barth A Davis-Putnam based enumeration algorithm for linear pseudo-Boolean optimization , 1995 .

[13]  Uwe Aßmann,et al.  Approximating quality contracts for energy auto-tuning software , 2012, 2012 First International Workshop on Green and Sustainable Software (GREENS).