44 research outputs found
A comparison of three heuristics to choose the variable ordering for CAD
Cylindrical algebraic decomposition (CAD) is a key tool for problems in real
algebraic geometry and beyond. When using CAD there is often a choice over the
variable ordering to use, with some problems infeasible in one ordering but
simple in another. Here we discuss a recent experiment comparing three
heuristics for making this choice on thousands of examples
Formulating problems for real algebraic geometry
We discuss issues of problem formulation for algorithms in real algebraic
geometry, focussing on quantifier elimination by cylindrical algebraic
decomposition. We recall how the variable ordering used can have a profound
effect on both performance and output and summarise what may be done to assist
with this choice. We then survey other questions of problem formulation and
algorithm optimisation that have become pertinent following advances in CAD
theory, including both work that is already published and work that is
currently underway. With implementations now in reach of real world
applications and new theory meaning algorithms are far more sensitive to the
input, our thesis is that intelligently formulating problems for algorithms,
and indeed choosing the correct algorithm variant for a problem, is key to
improving the practical use of both quantifier elimination and symbolic real
algebraic geometry in general.Comment: To be presented at The "Encuentros de \'Algebra Computacional y
Aplicaciones, EACA 2014" (Meetings on Computer Algebra and Applications) in
Barcelon
An implementation of Sub-CAD in Maple
Cylindrical algebraic decomposition (CAD) is an important tool for the
investigation of semi-algebraic sets, with applications in algebraic geometry
and beyond. We have previously reported on an implementation of CAD in Maple
which offers the original projection and lifting algorithm of Collins along
with subsequent improvements.
Here we report on new functionality: specifically the ability to build
cylindrical algebraic sub-decompositions (sub-CADs) where only certain cells
are returned. We have implemented algorithms to return cells of a prescribed
dimensions or higher (layered {\scad}s), and an algorithm to return only those
cells on which given polynomials are zero (variety {\scad}s). These offer
substantial savings in output size and computation time.
The code described and an introductory Maple worksheet / pdf demonstrating
the full functionality of the package are freely available online at
http://opus.bath.ac.uk/43911/.Comment: 9 page
Choosing a variable ordering for truth-table invariant cylindrical algebraic decomposition by incremental triangular decomposition
Cylindrical algebraic decomposition (CAD) is a key tool for solving problems
in real algebraic geometry and beyond. In recent years a new approach has been
developed, where regular chains technology is used to first build a
decomposition in complex space. We consider the latest variant of this which
builds the complex decomposition incrementally by polynomial and produces CADs
on whose cells a sequence of formulae are truth-invariant. Like all CAD
algorithms the user must provide a variable ordering which can have a profound
impact on the tractability of a problem. We evaluate existing heuristics to
help with the choice for this algorithm, suggest improvements and then derive a
new heuristic more closely aligned with the mechanics of the new algorithm
Speeding up Cylindrical Algebraic Decomposition by Gr\"obner Bases
Gr\"obner Bases and Cylindrical Algebraic Decomposition are generally thought
of as two, rather different, methods of looking at systems of equations and, in
the case of Cylindrical Algebraic Decomposition, inequalities. However, even
for a mixed system of equalities and inequalities, it is possible to apply
Gr\"obner bases to the (conjoined) equalities before invoking CAD. We see that
this is, quite often but not always, a beneficial preconditioning of the CAD
problem.
It is also possible to precondition the (conjoined) inequalities with respect
to the equalities, and this can also be useful in many cases.Comment: To appear in Proc. CICM 2012, LNCS 736
Using the distribution of cells by dimension in a cylindrical algebraic decomposition
We investigate the distribution of cells by dimension in cylindrical
algebraic decompositions (CADs). We find that they follow a standard
distribution which seems largely independent of the underlying problem or CAD
algorithm used. Rather, the distribution is inherent to the cylindrical
structure and determined mostly by the number of variables.
This insight is then combined with an algorithm that produces only
full-dimensional cells to give an accurate method of predicting the number of
cells in a complete CAD. Since constructing only full-dimensional cells is
relatively inexpensive (involving no costly algebraic number calculations) this
leads to heuristics for helping with various questions of problem formulation
for CAD, such as choosing an optimal variable ordering. Our experiments
demonstrate that this approach can be highly effective.Comment: 8 page
Truth Table Invariant Cylindrical Algebraic Decomposition by Regular Chains
A new algorithm to compute cylindrical algebraic decompositions (CADs) is
presented, building on two recent advances. Firstly, the output is truth table
invariant (a TTICAD) meaning given formulae have constant truth value on each
cell of the decomposition. Secondly, the computation uses regular chains theory
to first build a cylindrical decomposition of complex space (CCD) incrementally
by polynomial. Significant modification of the regular chains technology was
used to achieve the more sophisticated invariance criteria. Experimental
results on an implementation in the RegularChains Library for Maple verify that
combining these advances gives an algorithm superior to its individual
components and competitive with the state of the art
An implementation of CAD in Maple utilising problem formulation, equational constraints and truth-table invariance
Cylindrical algebraic decomposition (CAD) is an important tool for the
investigation of semi-algebraic sets, with applications within algebraic
geometry and beyond. We recently reported on a new implementation of CAD in
Maple which implemented the original algorithm of Collins and the subsequent
improvement to projection by McCallum. Our implementation was in contrast to
Maple's in-built CAD command, based on a quite separate theory. Although
initially developed as an investigative tool to compare the algorithms, we
found and reported that our code offered functionality not currently available
in any other existing implementations. One particularly important piece of
functionality is the ability to produce order-invariant CADs. This has allowed
us to extend the implementation to produce CADs invariant with respect to
either equational constraints (ECCADs) or the truth-tables of sequences of
formulae (TTICADs). This new functionality is contained in the second release
of our code, along with commands to consider problem formulation which can be a
major factor in the tractability of a CAD. In the report we describe the new
functionality and some theoretical discoveries it prompted. We describe how the
CADs produced using equational constraints are able to take advantage of not
just improved projection but also improvements in the lifting phase. We also
present an extension to the original TTICAD algorithm which increases both the
applicability of TTICAD and its relative benefit over other algorithms. The
code and an introductory Maple worksheet / pdf demonstrating the full
functionality of the package are freely available online.Comment: 12 pages; University of Bath, Dept. Computer Science Technical Report
Series, 2013-02, 201
Applying machine learning to the problem of choosing a heuristic to select the variable ordering for cylindrical algebraic decomposition
Cylindrical algebraic decomposition(CAD) is a key tool in computational
algebraic geometry, particularly for quantifier elimination over real-closed
fields. When using CAD, there is often a choice for the ordering placed on the
variables. This can be important, with some problems infeasible with one
variable ordering but easy with another. Machine learning is the process of
fitting a computer model to a complex function based on properties learned from
measured data. In this paper we use machine learning (specifically a support
vector machine) to select between heuristics for choosing a variable ordering,
outperforming each of the separate heuristics.Comment: 16 page
A "Piano Movers" Problem Reformulated
It has long been known that cylindrical algebraic decompositions (CADs) can
in theory be used for robot motion planning. However, in practice even the
simplest examples can be too complicated to tackle. We consider in detail a
"Piano Mover's Problem" which considers moving an infinitesimally thin piano
(or ladder) through a right-angled corridor.
Producing a CAD for the original formulation of this problem is still
infeasible after 25 years of improvements in both CAD theory and computer
hardware. We review some alternative formulations in the literature which use
differing levels of geometric analysis before input to a CAD algorithm. Simpler
formulations allow CAD to easily address the question of the existence of a
path. We provide a new formulation for which both a CAD can be constructed and
from which an actual path could be determined if one exists, and analyse the
CADs produced using this approach for variations of the problem.
This emphasises the importance of the precise formulation of such problems
for CAD. We analyse the formulations and their CADs considering a variety of
heuristics and general criteria, leading to conclusions about tackling other
problems of this form.Comment: 8 pages. Copyright IEEE 201