11,823 research outputs found
Enhancing a Search Algorithm to Perform Intelligent Backtracking
This paper illustrates how a Prolog program, using chronological backtracking
to find a solution in some search space, can be enhanced to perform intelligent
backtracking. The enhancement crucially relies on the impurity of Prolog that
allows a program to store information when a dead end is reached. To illustrate
the technique, a simple search program is enhanced.
To appear in Theory and Practice of Logic Programming.
Keywords: intelligent backtracking, dependency-directed backtracking,
backjumping, conflict-directed backjumping, nogood sets, look-back.Comment: To appear in Theory and Practice of Logic Programmin
Intelligent search strategies based on adaptive Constraint Handling Rules
The most advanced implementation of adaptive constraint processing with
Constraint Handling Rules (CHR) allows the application of intelligent search
strategies to solve Constraint Satisfaction Problems (CSP). This presentation
compares an improved version of conflict-directed backjumping and two variants
of dynamic backtracking with respect to chronological backtracking on some of
the AIM instances which are a benchmark set of random 3-SAT problems. A CHR
implementation of a Boolean constraint solver combined with these different
search strategies in Java is thus being compared with a CHR implementation of
the same Boolean constraint solver combined with chronological backtracking in
SICStus Prolog. This comparison shows that the addition of ``intelligence'' to
the search process may reduce the number of search steps dramatically.
Furthermore, the runtime of their Java implementations is in most cases faster
than the implementations of chronological backtracking. More specifically,
conflict-directed backjumping is even faster than the SICStus Prolog
implementation of chronological backtracking, although our Java implementation
of CHR lacks the optimisations made in the SICStus Prolog system. To appear in
Theory and Practice of Logic Programming (TPLP).Comment: Number of pages: 27 Number of figures: 14 Number of Tables:
Analyzing Catastrophic Backtracking Behavior in Practical Regular Expression Matching
We develop a formal perspective on how regular expression matching works in
Java, a popular representative of the category of regex-directed matching
engines. In particular, we define an automata model which captures all the
aspects needed to study such matching engines in a formal way. Based on this,
we propose two types of static analysis, which take a regular expression and
tell whether there exists a family of strings which makes Java-style matching
run in exponential time.Comment: In Proceedings AFL 2014, arXiv:1405.527
The Difficulties of Learning Logic Programs with Cut
As real logic programmers normally use cut (!), an effective learning
procedure for logic programs should be able to deal with it. Because the cut
predicate has only a procedural meaning, clauses containing cut cannot be
learned using an extensional evaluation method, as is done in most learning
systems. On the other hand, searching a space of possible programs (instead of
a space of independent clauses) is unfeasible. An alternative solution is to
generate first a candidate base program which covers the positive examples, and
then make it consistent by inserting cut where appropriate. The problem of
learning programs with cut has not been investigated before and this seems to
be a natural and reasonable approach. We generalize this scheme and investigate
the difficulties that arise. Some of the major shortcomings are actually
caused, in general, by the need for intensional evaluation. As a conclusion,
the analysis of this paper suggests, on precise and technical grounds, that
learning cut is difficult, and current induction techniques should probably be
restricted to purely declarative logic languages.Comment: See http://www.jair.org/ for any accompanying file
Cutoff for non-backtracking random walks on sparse random graphs
A finite ergodic Markov chain is said to exhibit cutoff if its distance to
stationarity remains close to 1 over a certain number of iterations and then
abruptly drops to near 0 on a much shorter time scale. Discovered in the
context of card shuffling (Aldous-Diaconis, 1986), this phenomenon is now
believed to be rather typical among fast mixing Markov chains. Yet,
establishing it rigorously often requires a challengingly detailed
understanding of the underlying chain. Here we consider non-backtracking random
walks on random graphs with a given degree sequence. Under a general sparsity
condition, we establish the cutoff phenomenon, determine its precise window,
and prove that the (suitably rescaled) cutoff profile approaches a remarkably
simple, universal shape
The Zeta Function of a Hypergraph
We generalize the Ihara-Selberg zeta function to hypergraphs in a natural
way. Hashimoto's factorization results for biregular bipartite graphs apply,
leading to exact factorizations. For -regular hypergraphs, we show that
a modified Riemann hypothesis is true if and only if the hypergraph is
Ramanujan in the sense of Winnie Li and Patrick Sol\'e. Finally, we give an
example to show how the generalized zeta function can be applied to graphs to
distinguish non-isomorphic graphs with the same Ihara-Selberg zeta function.Comment: 24 pages, 6 figure
- …