19 research outputs found
SCIP-Jack - A solver for STP and variants with parallelization extensions
The Steiner tree problem in graphs is a classical problem that commonly arises in practical applications as one of many variants. While often a strong relationship between different Steiner tree problem variants can be observed, solution approaches employed so far have been prevalently problem-specific. In contrast, this paper introduces a general-purpose solver that can be used to solve both the classical Steiner tree problem and many of its variants without modification. This versatility is achieved by transforming various problem variants into a general form and solving them by using a state-of-the-art MIP-framework. The result is a high-performance solver that can be employed in massively parallel environments and is capable of solving previously unsolved instances
Verbesserte Vorhersagen und Strukturausnutzung im Branch-and-Bound-Verfahren
Mixed-integer linear programming (MIP) is an extremely successful tool to solve real-world optimization problems to optimality. The core algorithm used by state-of-the-art MIP solvers is the branch-and-bound method. It consists of two primary operations: branching splits a problem into smaller subproblems, and bounding uses upper and lower bounds to eliminate subproblems that can be proven not to contain improved solutions. In this thesis, we present methods that improve the branch-and-bound algorithm in both regards.
Most branching rules base their decisions on the predicted effect of the split of the subproblems. Since a good prediction can substantially reduce the number of subproblems that need to be processed, the first methods we discuss are focusing on the prediction quality. In order to perform a thorough computational analysis of the newly presented branching rules, we introduce the fair node number, a new measure for the quality of branching decisions. We present strong branching with domain propagation, which improves the dual bound predictions of strong branching by taking implications of the branching decision into account. Additionally, we propose different variants of lookahead branching, which not only consider the effects of the split on the created subproblems, but also regard how those subproblems can be split further.
Besides prediction quality, we focus on ways to improve the branch-and-bound method by exploiting structures in MIP instances. We present improvements of common MIP branching rules that exploit dual degeneracy, i.e., the presence of multiple LP optima, to improve prediction quality and reduce branching effort. We introduce cloud diameter branching, a branching rule based solely on degeneracy information, and degeneracy-aware hybrid branching, a rule that adjusts the importance of different measures based on the current degeneracy. Our novel branching on multi-aggregated variables rule splits the problem by branching on a general disjunction corresponding to multi-aggregation structures. To improve the bounding step, we present three structure-driven fix-and-propagate heuristics, which exploit structures present in many MIP instances to predict the impact of variable fixings and construct feasible solutions before the branch-and-bound process starts.
Implementations of the methods presented in this thesis are available in source code in the MIP solver SCIP 7.0. We present the results of extensive computational experiments that we conducted to demonstrate their effectiveness.Gemischt-ganzzahlige lineare Programmierung (MIP) ist ein erfolgreiches Mittel, um praktische Optimierungsprobleme zu lösen. Moderne MIP-Löser basieren auf dem Branch-and-Bound-Verfahren. Hierbei unterteilt der Branching-Schritt das Problem in Teilprobleme, während der Bounding-Schritt obere und untere Schranken an das Optimum nutzt, um Teilprobleme zu eliminieren, welche bewiesenermaßen keine verbessernde Lösung enthalten. Diese Arbeit behandelt Methoden, die diese beiden Hauptschritte des Branch-and-Bound-Verfahrens verbessern.
Die meisten Branching-Regeln treffen ihre Entscheidung basierend auf Vorhersagen, wie verschiedene Entscheidungen die Teilprobleme beeinflussen. Wir untersuchen Möglichkeiten, diese Vorhersagen zu verbessern, um bessere Branching-Entscheidungen zu treffen und somit die Anzahl der bearbeiteten Teilprobleme zu reduzieren. Hierfür definieren wir ein neues Maß, die faire Knotenzahl, welches wir nutzen, um die Qualität der getroffenen Entscheidungen mit Hilfe von Vergleichsrechnungen zu bewerten. Als Methoden präsentieren wir Strong Branching mit Domain Propagation und verschiedene Varianten des Lookahead Branching. Ersteres verbessert die Vorhersagen durch Anwendung von Reduktionen, welche aus der Branching-Entscheidung folgen, Letzteres betrachtet nicht nur den Effekt auf die erzeugten Teilprobleme, sondern auch mögliche nachgelagerte Teilungsoptionen.
Ein weiterer Fokus dieser Arbeit liegt auf dem Ausnutzen von Strukturen in MIP-Instanzen zur Verbesserung des Branch-and-Bound-Verfahrens. Wir untersuchen das Vorkommen alternativer Relaxierungsoptima, genannt duale Degeneriertheit, in praktischen Problemen und nutzen Degeneriertheit, um Vorhersagen zu verbessern und den Aufwand zu verringern. Wir präsentieren Cloud Diameter Branching, welches vollständig auf Degeneriertheitsinformationen basiert, während Degeneracy-aware Hybrid Branching diese Informationen nutzt, um die Gewichtung verschiedener Bewertungsfunktionen anzupassen. Außerdem stellen wir Branching auf multiaggregierten Variablen vor, welches aus Multiaggregationsstrukturen abgeleitete allgemeine Disjunktionen nutzt, um das Problem zu zerlegen. Die Anwendung des Bounding-Schritts schon zu Beginn des Lösungsprozesses ermöglichen die drei präsentierten strukturbasierten Startheuristiken, die häufig auftretende Strukturen nutzen, um Variablenfixierungen zu bestimmen und Lösungen zu konstruieren.
Implementierungen der präsentierten Methoden sind im Quelltext in Version 7.0 des MIP-Lösers SCIP verfügbar. Ihre Effektivität wird durch umfangreiche Rechenexperimente demonstriert.BMBF, 05M14ZAM, Forschungscampus MODAL - Mathematical Optimization and Data Analysis Laboratorie
MIPLIB 2010 - Mixed Integer Programming Library version 5
This paper reports on the fifth version of the Mixed Integer Programming Library. The MIPLIB 2010 is the first MIPLIB release that has been assembled by a large group from academia and from industry, all of whom work in integer programming. There was mutual consent that the concept of the library had to be expanded in order to fulfill the needs of the community. The new version comprises 361 instances sorted into several groups. This includes the main benchmark test set of 87 instances, which are all solvable by today\u2019s codes, and also the challenge test set with 164 instances, many of which are currently unsolved. For the first time, we include scripts to run automated tests in a predefined way. Further, there is a solution checker to test the accuracy of provided solutions using exact arithmetic
MIPLIB 2017: data-driven compilation of the 6th mixed-integer programming library
We report on the selection process leading to the sixth version of the Mixed Integer Programming Library, MIPLIB 2017. Selected from an initial pool of 5721 instances, the new MIPLIB 2017 collection consists of 1065 instances. A subset of 240 instances was specially selected for benchmarking solver performance. For the first time, these sets were compiled using a data-driven selection process supported by the solution of a sequence of mixed integer optimization problems, which encode requirements on diversity and balancedness with respect to instance features and performance data