387 research outputs found
Solving Linux Upgradeability Problems Using Boolean Optimization
Managing the software complexity of package-based systems can be regarded as
one of the main challenges in software architectures. Upgrades are required on
a short time basis and systems are expected to be reliable and consistent after
that. For each package in the system, a set of dependencies and a set of
conflicts have to be taken into account. Although this problem is
computationally hard to solve, efficient tools are required. In the best
scenario, the solutions provided should also be optimal in order to better
fulfill users requirements and expectations. This paper describes two different
tools, both based on Boolean satisfiability (SAT), for solving Linux
upgradeability problems. The problem instances used in the evaluation of these
tools were mainly obtained from real environments, and are subject to two
different lexicographic optimization criteria. The developed tools can provide
optimal solutions for many of the instances, but a few challenges remain.
Moreover, it is our understanding that this problem has many similarities with
other configuration problems, and therefore the same techniques can be used in
other domains.Comment: In Proceedings LoCoCo 2010, arXiv:1007.083
Description of the CUDF Format
This document contains several related specifications, together they describe
the document formats related to the solver competition which will be organized
by Mancoosi. In particular, this document describes: - DUDF (Distribution
Upgradeability Description Format), the document format to be used to submit
upgrade problem instances from user machines to a (distribution-specific)
database of upgrade problems; - CUDF (Common Upgradeability Description
Format), the document format used to encode upgrade problems, abstracting over
distribution-specific details. Solvers taking part in the competition will be
fed with input in CUDF format
Fuzzy Maximum Satisfiability
In this paper, we extend the Maximum Satisfiability (MaxSAT) problem to
{\L}ukasiewicz logic. The MaxSAT problem for a set of formulae {\Phi} is the
problem of finding an assignment to the variables in {\Phi} that satisfies the
maximum number of formulae. Three possible solutions (encodings) are proposed
to the new problem: (1) Disjunctive Linear Relations (DLRs), (2) Mixed Integer
Linear Programming (MILP) and (3) Weighted Constraint Satisfaction Problem
(WCSP). Like its Boolean counterpart, the extended fuzzy MaxSAT will have
numerous applications in optimization problems that involve vagueness.Comment: 10 page
Handling software upgradeability problems with MILP solvers
Upgradeability problems are a critical issue in modern operating systems. The
problem consists in finding the "best" solution according to some criteria, to
install, remove or upgrade packages in a given installation. This is a
difficult problem: the complexity of the upgradeability problem is NP complete
and modern OS contain a huge number of packages (often more than 20 000
packages in a Linux distribution). Moreover, several optimisation criteria have
to be considered, e.g., stability, memory efficiency, network efficiency. In
this paper we investigate the capabilities of MILP solvers to handle this
problem. We show that MILP solvers are very efficient when the resolution is
based on a linear combination of the criteria. Experiments done on real
benchmarks show that the best MILP solvers outperform CP solvers and that they
are significantly better than Pseudo Boolean solvers.Comment: In Proceedings LoCoCo 2010, arXiv:1007.083
Applying Package Management To Mod Installation
Package management automates the discovery and installation of software that can coexist within an operating system. The methods used by package management can also address other instances where the installation of software needs to be automated. One example of this is the environment produced by third party video game modifications. An adapted application of package management practices can help to solve the difficult problem of finding and installing a set of video game modifications that do not conflict with each other. This greatly benefits the environment by allowing third party contributions to be easily installed which fosters growth in both the developer and user community surrounding the environment. This thesis presents the theory and complexities behind package management and shows how it can be effectively applied to managing video game modifications by presenting examples of software that can extract relevant metadata from video game modifications and discover conflict free installation solutions
On the van der Waerden numbers w(2;3,t)
We present results and conjectures on the van der Waerden numbers w(2;3,t)
and on the new palindromic van der Waerden numbers pdw(2;3,t). We have computed
the new number w(2;3,19) = 349, and we provide lower bounds for 20 <= t <= 39,
where for t <= 30 we conjecture these lower bounds to be exact. The lower
bounds for 24 <= t <= 30 refute the conjecture that w(2;3,t) <= t^2, and we
present an improved conjecture. We also investigate regularities in the good
partitions (certificates) to better understand the lower bounds.
Motivated by such reglarities, we introduce *palindromic van der Waerden
numbers* pdw(k; t_0,...,t_{k-1}), defined as ordinary van der Waerden numbers
w(k; t_0,...,t_{k-1}), however only allowing palindromic solutions (good
partitions), defined as reading the same from both ends. Different from the
situation for ordinary van der Waerden numbers, these "numbers" need actually
to be pairs of numbers. We compute pdw(2;3,t) for 3 <= t <= 27, and we provide
lower bounds, which we conjecture to be exact, for t <= 35.
All computations are based on SAT solving, and we discuss the various
relations between SAT solving and Ramsey theory. Especially we introduce a
novel (open-source) SAT solver, the tawSolver, which performs best on the SAT
instances studied here, and which is actually the original DLL-solver, but with
an efficient implementation and a modern heuristic typical for look-ahead
solvers (applying the theory developed in the SAT handbook article of the
second author).Comment: Second version 25 pages, updates of numerical data, improved
formulations, and extended discussions on SAT. Third version 42 pages, with
SAT solver data (especially for new SAT solver) and improved representation.
Fourth version 47 pages, with updates and added explanation
SAT instance analysis
The objective is to develop a tool for extracting structural features of SAT instances; and use them to understand, and measure, state-of-the-art SAT solvers' performance
- …