Logo eprints

SAT-based branch & bound and optimal control of hybrid dynamical systems

Bemporad, Alberto and Giorgetti, Nicolò SAT-based branch & bound and optimal control of hybrid dynamical systems. In: Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems. Lecture Notes in Computer Science, 3011 . Springer-Verlag, pp. 96-111. ISBN 978-3-540-21836-4 (2004)

Full text not available from this repository.

Abstract

A classical hybrid MIP-CSP approach for solving problems having a logical part and a mixed integer programming part is presented. A Branch and Bound procedure combines an MIP and a SAT solver to determine the optimal solution of a general class of optimization problems. The procedure explores the search tree, by solving at each node a linear relaxation and a satisfiability problem, until all integer variables of the linear relaxation are set to an integer value in the optimal solution. When all integer variables are fixed the procedure switches to the SAT solver which tries to extend the solution taking into account logical constraints. If this is impossible, a ldquono-goodrdquo cut is generated and added to the linear relaxation. We show that the class of problems we consider turns out to be very useful for solving complex optimal control problems for linear hybrid dynamical systems formulated in discrete-time. We describe how to model the ldquohybridrdquo dynamics so that the optimal control problem can be solved by the hybrid MIP+SAT solver, and show that the achieved performance is superior to the one achieved by commercial MIP solvers.

Item Type: Book Section
Identification Number: https://doi.org/10.1007/978-3-540-24664-0_7
Subjects: Q Science > QA Mathematics
Q Science > QA Mathematics > QA75 Electronic computers. Computer science
Research Area: Computer Science and Applications
Depositing User: Professor Alberto Bemporad
Date Deposited: 27 Jul 2011 08:53
Last Modified: 04 Aug 2011 07:29
URI: http://eprints.imtlucca.it/id/eprint/525

Actions (login required)

Edit Item Edit Item