163 research outputs found

    SUNNY-CP and the MiniZinc Challenge

    Get PDF
    In Constraint Programming (CP) a portfolio solver combines a variety of different constraint solvers for solving a given problem. This fairly recent approach enables to significantly boost the performance of single solvers, especially when multicore architectures are exploited. In this work we give a brief overview of the portfolio solver sunny-cp, and we discuss its performance in the MiniZinc Challenge---the annual international competition for CP solvers---where it won two gold medals in 2015 and 2016. Under consideration in Theory and Practice of Logic Programming (TPLP)Comment: Under consideration in Theory and Practice of Logic Programming (TPLP

    Counterexample Guided Abstraction Refinement with Non-Refined Abstractions for Multi-Agent Path Finding

    Full text link
    Counterexample guided abstraction refinement (CEGAR) represents a powerful symbolic technique for various tasks such as model checking and reachability analysis. Recently, CEGAR combined with Boolean satisfiability (SAT) has been applied for multi-agent path finding (MAPF), a problem where the task is to navigate agents from their start positions to given individual goal positions so that the agents do not collide with each other. The recent CEGAR approach used the initial abstraction of the MAPF problem where collisions between agents were omitted and were eliminated in subsequent abstraction refinements. We propose in this work a novel CEGAR-style solver for MAPF based on SAT in which some abstractions are deliberately left non-refined. This adds the necessity to post-process the answers obtained from the underlying SAT solver as these answers slightly differ from the correct MAPF solutions. Non-refining however yields order-of-magnitude smaller SAT encodings than those of the previous approach and speeds up the overall solving process making the SAT-based solver for MAPF competitive again in relevant benchmarks

    Dynamically weakened constraints in bounded search for constraint optimisation problems

    Get PDF
    Combinatorial optimisation problems, where the goal is to an optimal solution from the set of solutions of a problem involving resources, constraints on how these resources can be used, and a ranking of solutions are of both theoretical and practical interest. Many real world problems (such as routing vehicles or planning timetables) can be modelled as constraint optimisation problems, and solved via a variety of solver technologies which rely on differing algorithms for search and inference. The starting point for the work presented in this thesis is two existing approaches to solving constraint optimisation problems: constraint programming and decision diagram branch and bound search. Constraint programming models problems using variables which have domains of values and valid value assignments to variables are restricted by constraints. Constraint programming is a mature approach to solving optimisation problems, and typically relies on backtracking search algorithms combined with constraint propagators (which infer from incomplete solutions which values can be removed from the domains of variables which are yet to be assigned a value). Decision diagram branch and bound search is a less mature approach which solves problems modelled as dynamic programming models using width restricted decision diagrams to provide bounds during search. The main contribution of this thesis is adapting decision diagram branch and bound to be the search scheme in a general purpose constraint solver. To achieve this we propose a method in which we introduce a new algorithm for each constraint that we wish to include in our solver and these new algorithms weaken individual constraints, so that they respect the problem relaxations introduced while using decision diagram branch and bound as the search algorithm in our solver. Constraints are weakened during search based on the problem relaxations imposed by the search algorithm: before search begins there is no way of telling which relaxations will be introduced. We attempt to provide weakening algorithms which require little to no changes to existing propagation algorithms. We provide weakening algorithms for a number of built-in constraints in the Flatzinc specifi- cation, as well as for global constraints and symmetry reduction constraints. We implement a solver in Go and empirically verify the competitiveness of our approach. We show that our solver can be parallelised using Goroutines and channels and that our approach scales well. Finally, we also provide an implementation of our approach in a solver which is tailored towards solving extremal graph problems. We use the forbidden subgraph problem to show that our approach of using decision diagram branch and bound as a search scheme in a constraint solver can be paired with canonical search. Canonical search is a technique for graph search which ensures that no two isomorphic graphs are returned during search. We pair our solver with the Nauty graph isomorphism algorithm to achieve this, and explore the relationship between branch and bound and canonical search

    The hybrid flexible flowshop with transportation times

    Get PDF
    This paper presents the hybrid, flexible flowshop problem with transportation times between stages, which is an extension of an existing scheduling problem that is well-studied in the literature. We explore different models for the problem with Constraint Programming, MILP, and local search, and compare them on generated benchmark problems that reflect the problem of the industrial partner. We then study two different factory layout design problems, and use the optimization tool to understand the impact of the design choices on the solution quality

    Minimum-width graph layering revisited

    Get PDF
    The minimum-width layering problem tackles one step of a layout pipeline to create top-down drawings of directed acyclic graphs. Thereby, it aims at keeping the overall width of the drawing small. We study layering heuristics for this problem as presented by Nikolov et al. as well as traditional layering methods with respect to the questions how close they are to the true minimal width and how well they perform in practice, especially, if a particular drawing area is prescribed. We find that when applied carefully and at the right moment the layering heuristics can, compared to traditional layering methods, produce better layerings for prescribed drawing areas and for graphs with varying node dimensions. Still, we also find that there is room for improvement

    Certifying Correctness for Combinatorial Algorithms : by Using Pseudo-Boolean Reasoning

    Get PDF
    Over the last decades, dramatic improvements in combinatorialoptimisation algorithms have significantly impacted artificialintelligence, operations research, and other areas. These advances,however, are achieved through highly sophisticated algorithms that aredifficult to verify and prone to implementation errors that can causeincorrect results. A promising approach to detect wrong results is touse certifying algorithms that produce not only the desired output butalso a certificate or proof of correctness of the output. An externaltool can then verify the proof to determine that the given answer isvalid. In the Boolean satisfiability (SAT) community, this concept iswell established in the form of proof logging, which has become thestandard solution for generating trustworthy outputs. The problem isthat there are still some SAT solving techniques for which prooflogging is challenging and not yet used in practice. Additionally,there are many formalisms more expressive than SAT, such as constraintprogramming, various graph problems and maximum satisfiability(MaxSAT), for which efficient proof logging is out of reach forstate-of-the-art techniques.This work develops a new proof system building on the cutting planesproof system and operating on pseudo-Boolean constraints (0-1 linearinequalities). We explain how such machine-verifiable proofs can becreated for various problems, including parity reasoning, symmetry anddominance breaking, constraint programming, subgraph isomorphism andmaximum common subgraph problems, and pseudo-Boolean problems. Weimplement and evaluate the resulting algorithms and a verifier for theproof format, demonstrating that the approach is practical for a widerange of problems. We are optimistic that the proposed proof system issuitable for designing certifying variants of algorithms inpseudo-Boolean optimisation, MaxSAT and beyond

    Models and methods for the modelling of forest managing

    Get PDF
    A gestão florestal é uma actividade de grande valor económico e importância ecológica. As áreas florestais geridas podem abranger regiões muito grandes e a sua gestão adequada é muito importante para um desenvolvimento eficaz, tanto em termos de planeamento económico como de recursos naturais, e gerir uma floresta implica tipicamente a aplicação de escolhas políticas em diferentes parcelas de terra, aqui referidas como Stands ou Management Units (Unidades de Gestão). Este documento analisa vários métodos de gestão florestal, juntamente com as suas variações disponíveis na literatura ao longo de 4 capítulos, sendo esses métodos o Unit Restriction Model and Area Restriction Model por Alan T. Murray, the Area Restriction Model with Stand-Clear-Cut variables por Constantino et al, the Path Algorithm and the Generalized Management Unit formulation por McDill et al and the Full Adjacent Unit formulation por Gharbi et al. Os resultados apresentados nos artigos originais são discutidos nas conclusões de cada capítulo. Os 2 últimos capítulos apresentam uma formulação de Constraint Programming do problema e a sua implementação utilizando a biblioteca Choco da linguagem de programação Java e apresentam também os resultados, um capítulo relacionado com a primeira implementação que trata apenas da optimização do Madeira Total Obtida e o outro alargando o problema, juntamente com um novo conjunto de dados, para lidar com a optimização multicritério. Para o fazer, os princípios de Constraint Programming são primeiro enumerados juntamente com uma breve história da tecnologia de Constraint Programming. Finalmente, outros possíveis desenvolvimentos são discutidos numa secção de Trabalho Futuro; Abstract: Forest management is an activity of prime economic and ecological importance. Managed forest areas can span very large regions and their proper management is paramount to an effective development, in terms both of economic and natural resources planning and managing a forest typically implies applying policy choices to different patches of land, here referred to as Stands or Management Units. This paper reviews several methods of forest management alongside their variations available in the literature throughout 4 chapters, those methods being the Unit Restriction Model and Area Restriction Model by Alan T. Murray, the Area Restriction Model with Stand-Clear-Cut variables by Constantino et al, the Path Algorithm and the Generalized Management Unit formulation by McDill et al and the Full Adjacent Unit formulation by Gharbi et al. The results as presented in the original papers are discussed in the conclusions of each chapter. The final 2 chapters present a Constraint Programming formulation of the problem and its implementation using the Choco framework of the Java programming language and showcases the results, one chapter relating to the first implementation that deals only with the optimization of total Wood Yield and the other broadening the problem, alongside a new dataset, to deal with multi-criteria optimization. In order to do this the principles of Constraint Programming are first enumerated along with a short history of Constraint Programming technology

    Combining mathematical programming and SysML for component sizing as applied to hydraulic systems

    Get PDF
    In this research, the focus is on improving a designer's capability to determine near-optimal sizes of components for a given system architecture. Component sizing is a hard problem to solve because of the presence of competing objectives, requirements from multiple disciplines, and the need for finding a solution quickly for the architecture being considered. In current approaches, designers rely on heuristics and iterate over the multiple objectives and requirements until a satisfactory solution is found. To improve on this state of practice, this research introduces advances in the following two areas: a.) Formulating a component sizing problem in a manner that is convenient to designers and b.) Solving the component sizing problem in an efficient manner so that all of the imposed requirements are satisfied simultaneously and the solution obtained is mathematically optimal. In particular, an acausal, algebraic, equation-based, declarative modeling approach is taken to solve component sizing problems efficiently. This is because global optimization algorithms exist for algebraic models and the computation time is considerably less as compared to the optimization of dynamic simulations. In this thesis, the mathematical programming language known as GAMS (General Algebraic Modeling System) and its associated global optimization solvers are used to solve component sizing problems efficiently. Mathematical programming languages such as GAMS are not convenient for formulating component sizing problems and therefore the Systems Modeling Language developed by the Object Management Group (OMG SysML ) is used to formally capture and organize models related to component sizing into libraries that can be reused to compose new models quickly by connecting them together. Model-transformations are then used to generate low-level mathematical programming models in GAMS that can be solved using commercial off-the-shelf solvers such as BARON (Branch and Reduce Optimization Navigator) to determine the component sizes that satisfy the requirements and objectives imposed on the system. This framework is illustrated by applying it to an example application for sizing a hydraulic log splitter.M.S.Committee Co-Chair: Paredis, Chris ; Committee Co-Chair: Schaefer, Dirk; Committee Member: Goel, Asho
    corecore