5 research outputs found

    Using Restarts in Constraint Programming over Finite Domains - An Experimental Evaluation

    Get PDF
    The use of restart techniques in complete Satisfiability (SAT) algorithms has made solving hard real world instances possible. Without restarts such algorithms could not solve those instances, in practice. State of the art algorithms for SAT use restart techniques, conflict clause recording (nogoods), heuristics based on activity variable in conflict clauses, among others. Algorithms for SAT and Constraint problems share many techniques; however, the use of restart techniques in constraint programming with finite domains (CP(FD)) is not widely used as it is in SAT. We believe that the use of restarts in CP(FD) algorithms could also be the key to efficiently solve hard combinatorial problems. In this PhD thesis we study restarts and associated techniques in CP(FD) solvers. In particular, we propose to including in a CP(FD) solver restarts, nogoods and heuristics based in nogoods as this should improve search algorithms, and, consequently, efficiently solve hard combinatorial problems. We thus intend to: a) implement restart techniques (successfully used in SAT) to solve constraint problems with finite domains; b) implement nogoods (learning) and heuristics based on nogoods, already in use in SAT and associated with restarts; and c) evaluate the use of restarts and the interplay with the other implemented techniques. We have conducted the study in the context of domain splitting backtrack search algorithms with restarts. We have defined domain splitting nogoods that are extracted from the last branch of the search algorithm before the restart. And, inspired by SAT solvers, we were able to use information within those nogoods to successfully help the variable selection heuristics. A frequent restart strategy is also necessary, since our approach learns from restarts

    Améliorer l'efficacité de l'algorithme CDCL : décompositions arborescentes de grandes instances, CDCL sans saut arrière et CDCL à ordre partiel

    Get PDF
    Cette thèse s'intéresse à l'amélioration des performances pratiques de l'algorithme CDCL (Conftict-Driven Clause Learning) pour la résolution du problème de satisfaisabilité des formules propositionnelles, ou problème SAT. Plus particulièrement, nous cherchons à diminuer la destruction de l'instanciation courante lors des étapes de saut arrière, qui peuvent occasionner la désinstanciation de nombreuses variables n'ayant aucun rapport direct avec le conflit à résoudre. Dans ce but, nous proposons trois approches différentes. La première est une amélioration de l'utilisabilité de la méthode déjà existante de décomposition implicite d'une instance SAT. Notre but principal est de permettre son application à des instances de plus grande taille possible, après avoir montré les limitations des implémentations existantes. Nous développons également deux variations de l'algorithme CDCL, le CDCL sans saut arrière et le CDCL à ordre partiel. Si le premier supprime totalement la notion de saut arrière en permettant la propagation des clauses unitaires à des niveaux de décision quelconques, le second rend le saut arrière plus sélectif, en désinstanciant uniquement les niveaux de décision qui dépendent du niveau de retour du saut arrière. Notre analyse est à la fois théorique, notamment par une analyse détaillée des propriétés de différentes variations des CDCL sans saut arrière et à ordre partiel, et pratique, puisque l'efficacité de nos contributions est évaluée en les implémentant comme modifications de solveurs SAT de l'état de l'art et en se servant de ces implémentations sur des instances SAT difficiles utilisées lors de compétitions internationales de solveurs.\ud ______________________________________________________________________________ \ud MOTS-CLÉS DE L’AUTEUR : problème SAT, satisfaisabilité, formules propositionnelles, CDCL, décomposition arborescente, retour arrière, ordre partiel

    Managing Complex Scheduling Problems with Dynamic and Hybrid Constraints.

    Full text link
    The task of scheduling can often be a difficult one because of the inherent complexity of real-world problems. In the field of Artificial Intelligence, many representations and algorithms have been developed to automate the scheduling process. Many state of the art scheduling systems deal with this complexity by making assumptions that simplify the algorithms, but in doing so, miss some opportunities to improve performance. Scheduling problems are temporal in nature, and so they often contain constraints that change over time. Many scheduling systems assume that the problems they are solving are all independent, and so they ignore the similarities between subsequent sets of scheduling constraints. Additionally, scheduling problems often contain a mixture of finite-domain and temporal constraints. Many of the systems that can solve problems of this type do so by creating finite-domain variables to represent the constraints, but then ignore the distinction between the different types of variables when searching for a solution. In this dissertation, I identify opportunities to improve performance by exploiting structure where it has previously been overlooked. Following this approach, I develop a set of techniques that apply to a wide variety of situations that can arise in real-world scheduling problems. First, I consider dynamic scheduling problems with constraints that change over time. To address such problems, I introduce a new representation called the Dynamic Disjunctive Temporal Problem, along with several techniques to improve both efficiency and stability when solving one. Second, I consider scheduling problems in which a mixture of finite-domain and temporal variables can interact through hybrid constraints. I introduce the Hybrid Scheduling Problem to represent such problems, and I present a set of techniques that capitalize on the distinction between variable types to improve efficiency across the problem space. Finally, I conclude by proposing several ways that the dynamic and hybrid representations and techniques can be combined. To compare many of the techniques presented throughout this dissertation in the context of structured, real-world problems, I use them to solve scheduling problems based on actual air traffic control constraints recorded from the Dallas/Fort Worth International Airport.Ph.D.Computer Science & EngineeringUniversity of Michigan, Horace H. Rackham School of Graduate Studieshttp://deepblue.lib.umich.edu/bitstream/2027.42/57625/2/pschwart_1.pd
    corecore