Refine
Document Type
- In Proceedings (6)
- ZIB-Report (2)
- Article (1)
- Bachelor's Thesis (1)
Language
- English (10)
Is part of the Bibliography
- no (10)
Keywords
Institute
The aim of this thesis is to deepen our understand of how
IDA* heuristics influence the number of nodes expanded during
search. To this end, we develop Korf's formula for the number
of expanded nodes into a heuristic quality η which
expresses the quality of a heuristic function as a constant factor
on the number of expanded nodes, independent of a particular problem
instance.
We proceed to show how to compute η for some common kinds of
heuristics and how to estimate η by means of a random sample for
arbitrary heuristics. Using the value of η for some concrete
examples, we then inspect for which parts of the search space the
values of h(v) are particularly critical to the performance of the
heuristic, allowing us to build better heuristics for future problems.
This report originally appeared as a master thesis at Humboldt
University of Berlin.
This report aims to explain and extend pattern databases as a tool in finding optimal solutions to combination puzzles. Using sliding tile puzzles as an example, an overview over techniques to construct and use pattern databases is given, analysed, and extended. As novel results, zero aware additive pattern databases and PDB catalogues are introduced. This report originally appeared as a bachelor thesis at Humboldt University of Berlin under the title Notes on the Construction of Tablebases.
Sliding Tile Puzzles
(2021)
CleanMaple
(2021)
Intel includes in its recent processors a powerful set of instructions capable of processing 512-bit registers with a single instruction (AVX-512). Some of these instructions have no equivalent in earlier instruction sets. We leverage these instructions to efficiently transcode strings between the most common formats: UTF-8 and UTF-16. With our novel algorithms, we are often twice as fast as the previous best solutions. For example, we transcode Chinese text from UTF-8 to UTF-16 at more than 5 GiB s−1 using fewer than 2 CPU instructions per character. To ensure reproducibility, we make our software freely available as an open-source library. Our library is part of the popular Node.js JavaScript runtime.
Conflict Driven Clause Learning (CDCL) SAT solvers spend most of their execution time iterating through clauses in unit propagation. Efficient implementations of unit propagation mostly rely on the two watched literals (TWL) scheme, a specialised data structure watching two literals per clause to prevent as many clause lookups as possible. In this paper, we present Priority Propagation (PriPro)—a minimally invasive method to adapt unit propagation in existing SAT solvers. With PriPro the traditional TWL scheme is partitioned to allow for rearranging the order in which clauses are examined. This is used to achieve a prioritisation of certain clauses. Using PriPro in combination with a dynamic heuristic to prioritise resolvents from recent conflicts, the effectiveness of unit propagation can be increased. In the state-of-the-art CDCL SAT solver CaDiCaL modified to use PriPro, we obtained a 5–10 % speedup on the SAT Competition 2021 benchmark set in a fair comparison with the unmodified CaDiCaL.