From: AAAI-86 Proceedings. Copyright ©1986, AAAI (www.aaai.org). All rights reserved.
BACK TO BACKTRACKING:
CONTR.OLLING
THE ATMS
Johan
Intelligent
XEROX
Systems
Palo
3333
Palo
de Kleer
Alto
Coyote
Alto,
Laboratory
Research
Hill
Center
Road
94304
California
and
Brian
M.I.T.
Artificial
C. Williams
Intelligence
545 Technology
Cambridge,
Massachusetts,
tern) provides
(A ssumption-Based
that cl11of the possible
tions
or partial
lem solver.
solutions
solver
neously
and avoid
ing.
(usually
However,
for some
reasons
why backtracking
backtracking
necessary,
which
more
capability
form
of back-
some
of the
and presents
we have
eficiently
combining
than
imple-
other
ap-
proaches.
1. Introduction
an
engine
deduces
tion
of rules,
ciated
texts
considered
developed
tasks.
and
ing (DDB),
more
achieves
most
for problems
ecuted
to produce
problem-solver
first.
examined
problem-solver
/ ENGINEERING
types
of
the
backtrack-
a control
tends
all the solutions
by organizing
inferences
and contexts
DDB-controlled
910
dependency-directed
where
this efficiency
general
have been
For various
new data
each
strategy
antecedents
Thus,
the number
are significantly
tends
to be more
By
of both.
of two compoThe inference
by the applica-
in ATMS
A consumer
what
produced
to as
is invoked
on its
in the
current
from a consumer
using
the TMS
of the consumer.
data
Asso-
referred
are believed
resulting
the antecedents
terminology).
is a set of data,
as a justification
tion is recorded
Justification-based
focus
on a ;iingle
many
is believed
The
invoca=and must
TMS’s
task
in each context
given
thus far in the problem-solving
solver
the
I’he
ATMS
assvmption.
Unlike
in them
there
of rules exA
ATMS
identifies
datum
ultimately
can
force
data
at a time.
The
ATMS
[4,7]).
To achieve
TMS
data
introduces
other
data,
this,
the set(s)
depends.
assumptions
of assumptions
to
has
the
mutuaug-
in a several
of a primitive
are believed
justifications
Such
permits
the ATMS
the notion
to the contrary.
supporting
solver
This
in several
structures
which
be justified,
is evidence
the problem
base
simultaneously
contexts.
conventional
through
efficient
(see
to operate
ally inconsistent
belief
TMS’s
consistent
disadvantages
problem
wards
to be more
first.
consists
all of them
inference
unless
to find the
reduced.
solver
consumer
when
Every
of ways.
are needed. It
the search
by orga-
solution
and the TMS.
from old (usually
antecedents.
the consumer’s
ments
either.
An ATMS-controlled
efficient
of con-
we show how two such approaches,
can be combined
than
techniques
this complexity
conventional
efficient
Many
and number
specific
effort.
task is a function
executed
in the search.
to minimize
In this paper
ATMS
of rules
of the possible
efficiency
engine
or consumers
with
context.
problem
inference
the justifications
of a problem-solving
the number
this
ATMS
A TMS- based
nents:
include
The complexity
one of a number
It achieves
we get the advantages
The
is to determine
of both
only
to find a single
them
2.
the
of backtrack-
outlines
is still
the search
is
simulta-
this ATMS
algorithm
backtracks
which
expense
This paper first
is necessary.
nixing
where
arc required.
to the prob-
work on all solutions
applications
solutions
solu-
of the ATMS,
than a help and some
tracking
mented
of the ATMS
inconsistent)
available
the computational
of a hindrance
a powerful
advantages
mutually
this capability
can eficiently
Sys-
ior all types of default
are directly
By exploiting
problem
is more
Truth Maintenance
a very general futility
One of the principal
reasoning.
02139
for problems
ABSTRACT
The ATMS
Laboratory
Square
only if
are believed
By tracing
back-
for a datum
upon
the
which
the
a set of assumptions
is
called
an environment.
in a variety
riety
Typically
of environments.
from a which
set of data
text.
The
a datum
derivable
is inconsistent
and is called
and thus
minimal
good
reduce
its con-
data base
if a datum
to explicitly
follows
su-
store
and (c) recognizing
to set
still
ex;Lmine
operations
search
reached
the representation
that
may
may
its label. The
in all the environment’s
of a label,
operations
algorithms
of environments
The ATMS
it is only necessary
environments
all ATMS
the fact
it follows
a va-
false (-1) can be derived
a nogooil.
(b) exploiting
from
is called
by (a) optimizing
from an environment
persets
set
is called
from an environment
its efficiency
of nogoods,
complete
from which
can be derived
can follow
can be derived
Any environment
achieves
a datum
of ways and so a datum
the
that
for which
are available.
Consider
placed
which
Three
first
for Backtracking
of difficulties
require
related
that
only
they
often
are inherently
First,
fraction
than
the
Within
may
column
2) never
space
overall
(i.e.,
an example
a string
bit position
ith bit’s
solver
from
are created.
p, the parity
bi is 0).
that
as (-+ indicates
a justification):
[6] and [lo])
with
of ones).
Let
where
odd parity
For each
b, indicate
for all the bits
Parity
is defined
the
Third,
Most
involves
In our experience,
debugging
be inconsistent.
Thus,
are found
than
expected.
exist
problem
that
is failing
time.
discovers
(and
even)
If the
parity.
bit string,
done
all 2i bit
goal
then the simple
ILi more
work
than
was
to
ATMS-
hc failed
neces-
sary.
the user
even
if the
all solutions,
goal
the
of the
problem
ATMS-based
solving
problem
is
solver
has
diately
cannot
ATMS,
framed
based
solver
notices
solutions
within
a rea-
are explored
is
no solution
about
what
into his knowledge
base
and
related
such
amount
problem
that
one
is
of the
If so the
of data.
terminate.
difficulties
pose
on conventional
inadequate,
seems
far
of a prob-
at a time.
to take
In addition,
excess
111~ coiilputntion
can be interrupted
cxaillincd.
is dificult
where
When
the implementor
knowledge.
AUTOMATED
less
backtracking
resources,
This
of
can
solutions
rent
state
error
far more
information
a problem
the missing
solution
can
so mhny
prematurely,
finds one solution
appears
common
all solutions
little
an infinite
will never
solver
base and inference
terminate
A common
debugging
solution
debugging
to incorporate
cont,ains
solver
a particular
Second,
in
a problem
all the ways a context
is halted
engine.
problem
Commonly,
the user with
lem for a solver
first
during
the
If the solver
the problem
to specify
solving
With
leaving
These
to identify
Qz
3 and Qz in
of constructing
the knowledge
represents
recursively
users
knowledge
all solutions,
has
As
Qs.
for DDB.
by far the most
ATMS
at once.
finds
solver
one would
1 and
in column
an ATMS-based
solver
solutions
problem
in row
situation
of the effort
rules.
problem
based
solver
arises.
debugging
be difficult.
that
End only one odd-parity
(Qs
1 : Unreachable
or inference
odd
problem
a queen
with
lay on the same
Q2, and only then
situat,ion
up to and
* pi = 1
pi-1 = O,l&l
having
they
problem
found,
strings
it would
3 was consistent
the goal,
p-1 = 0
which
of queens
ex-
sonable
ATMS,
example,
be hopelessly
b; can be zero or one (I’b,I~i
the assumption
The
For
2 and find that
Qr , then
try the placc-
triples
identifies
of the
can
number
an odd number
bi. Each
including
(adapted
an n-bit
of bits with
and
would
then
depth-first,
satisfies
solver
two variables
value,
The
queens
are de-
exercising
goal
which
problem
is to construct
positions.
(c) they
Fig.
Consider
above
is
be
inefficient.
the task
solver
and
solution.
of placing
Qi
checks
rules.
a backtracking
is no way
‘2, the
queen
which
of the three
Qs in column
to place
coluinn
task
and
searches
Without
problem
If the
ATMS-based
the
search
these
pairs
Q2 in column
kinds
(For simplic-
and that
in attacking
problem
placing
solver
are never
to debug.
ATMS-based
at once.
three
all solutions
backtracking
is to find only one solution
then
(a)
necessary,
one at a time.
the
from
of the
where
more
difficult
solutions
all solutions
solver
search
more
control,
suffer
to backtracking:
a small
conventional
producing
ternal
solvers
(b) even for problems
explored,
sired,
problem
with
of a consistent
attempt
there
ATMS-based
are placed
ATMS-based
whether
placing
Reasons
Th-queens problem.
are 3 quccus
of all singletons,
in search
problem
which
backtracking.
to find all placements
are consistent
The
The
space
A set of rules is constructed
is then
diagonal.
3.
there
no two queens
problem
check
necessary.
the familiar
that
on row i.)
ment
than
0 f the search
by dependency-directed
ity assume
that
more
regions
the
immewhen
computational
and the cur-
in an ATMS-based
REASONING
/ 9 11
problem
resent
solver
pieces
because
of many
the intermediate
solutions,
states
any of which
always
rep-
could be caus-
ing a problem.
to problenrs
one
must
from
each
each
set,
take a finite
two sections
problem
then
propose
both
(without
we discuss
solving,
In Section
1) given
any superset
of it.
Thus
the ATMS
select
exactly
approach
by
for this
the
set
and
a subset
class of
and
the features
of
7.
a line,
AT&f
Problem
S-guided
environment
dividing
ronments
For
most
Therefore,
sumers
tasks,
a central
that
the
majority
are involved
must
with
of the
executing
goal is to minimize
be executed
problem
solv-
the c0nsumers.r
of con-
a particular
prob-
space
with
not
will be run (possibly
with environments
set
as
two parts;
and those
each consumer
Returning
three
indicates
all),
has
The
envi-
below
are
with the smallassociated
the line will be executed,
ciated
<an
(i.e.,
can be pictured
it runs in, then 1) all consumers
ments
2) some
inconsistent
environ-
and 3) any consumer
asso-
below the line are guaranteed
to the example,
inconsistencies
of
a min-
explore
minimal
into
with minimally
and
some
is also inconsistent).
search
above
then
explore
it will
is not
the line are consistent
associated
all the rules
may
environments
If we associate
est environment
(H
the number
to solve
which
the the
above
inconsistent.
to be run.
ing resources
row
environment
environments
which
inconsistent
with environments
Solving
the third
environment,
that
however,
environment
consumers
4.
of inconsistent
of assumptions;
of minimally
approaches,
in Section
imal
inconsistent
does
ATMS-guided
combining
the limitations)
the consequences
are made.
respectively,
6 we compare
a hybrid
exploring
and 4) the solution
choices
an inconsistent
stops
is confirmed
of time,
finds
solver
for inconsistencies
in which
and then
the problem
3) testing
amount
DDEguided
problems.
must
CY}, {A,P},...),
applied
2) a solution
on the order
In the next
constjraints:
solution
for inconsist,encies,
not depend
is typically
the following
of choices,
choice
checking
backtracking
satisfying
set
row ({A,
({A a, 1),-J.
If the ATMS
Dependency-directed
a finite
the second
assume
that
are ultimately
not
among
detected
a consumer):
lem.
The
ATMS
is typically
solutions
are required.
to ensure
that
There
making
it applied
sumer
execution
was superfluous.
consumers
Within
picks
executed
of the
{A, B},
of possibly
scheduler
first
the first row (iA},
where
consistent
executes
{h
in
must
/ ENGINEERING
7
directed
repeat-
with
pending
Fig.
The
2 : ATMS-controlled
search.
each
5.
2 illustrates
consumers
ad
all
For
through
one from
Fig
non-
until
search
pick
{I),
2)
the
conof
{2)), then
1 An ATMS-based problem solver only examines contexts
which
result in the execution of consun~ers. Thus the number of consumers
exfalted must be at least as large as the number of contexts exnminch As a result we o111y~~ccdto evaluate the systan’s pcrformnnce
with respect to rule invocations, not coutcxts cxnmined.
912
2:
first.
scheduler
environments.
{P},
in Fig.
.
but
are executed.
{1,2}.
any
is shown
each set of con-
environment
it must
and
lattice
in smaller
consumers
environments
{a,p},
{B},
a con-
datum
and runs one of its consumers
of possibilities
sets:
the same
consumers
solver
resulting
(unless
Second,
environment,
the consumer
the problem
The
to be contra-
are executed
consistent
of all consistent
the lattice
sumer
this framework
suppose
could
useless
first and within
inconsistencies
consumers
example,
that
a, 1 ++ 1.
the first consumer’s
environment,
the smallest
consumers
a space
are executed
detecting
deduce
therefore,
such
for a particular
towards
in some
is
be executed
To avoid such inefficiencies
are scheduled
environments
can
as well).
may later
environment;
approach
a consumer
discovered
datum
B t-+ I,
multiple
unnecessarily.
execution
environment
consumer
a more general
where
is later
some
the best
a consumer
consumer’s
to another
some other
edly
which
can deduce
sumers
First,
the
where
is ever executed
of situations
invoked.
in an environment
dictory,
for tasks
For such tasks,
no consumer
are two types
be uselessly
used
DDB-guided
As illustrated
small
number
in Section
of the
ATMS-controlled
set
some
form
ploited.
Even
in those
search
the
space
ATMS
which
Solving
3, for tasks
solutions
can
extremely
be
of backtracking
cases
may
requiring
of possible
approach
Instead,
explored,
Problem
where
have
DDI3 would
controI
the
avoid.
a
inefficient.
could
all solutions
to explore
only
simple
be ex-
are being
portions
of the
.
There
is a wide
variety
For the sake of discussion
general
we shall
dependency-directed
conventional
crucial
characteristic
of this
depends
ticular
context
tered.
Consumers
is that
for any
backtracker
not to contain
after
which
our
Each
a par-
advantngcs
encoun-
a context
any known
environment
has
inconsistency.
A Comparison
6.
The
can test
previously
only
in a
[9]).
upon
the backtracker
executed
as
run in every
above
this
line2.
the
embodied
(such
inconsistencies
are
determined
use one of the best:
TMS
have been
techniques.
backtracking
justification-based
argument
been
of backtracking
of the
The
which
the
primary
explored
is not
minimally
inferences
first.
search
ATMS
which
Thus
number
of pending
consumers
the ATMS
advantage
for those
the most
this
that
at least
problems
where
is
general
feature
contain
with
and a very
approaches
it
environment
one
a sparse
large
will have a significant
over those
own
below.
is that
has the additional
consumer.
its
To accomplish
to find
environments
pending
vironments
ATMS
inconsistent
inconsistent.
the
The
examines
any
has
are described
of the
to explore
organizes
above
These
advantage
not
ATMS
it only
approaches
and disadvantages.
guaranteed
Approaches
of the
set of en-
performance
every
environment
is examined.
The
Fig.
3 : DDB-controlled
Backtracking
pick
exactly
example,
exploits
one element
any solution
search.
the fact
from
must
that
each
any solution
must
from
simultaneously.
where
tions
is desired
the ATMS
cult
These,
the
ment
consumers
is reached
curs
from
the consumers
in any subset
tradiction
is placed
that
that
Section
example,
while
environment
{B,
that
as a justification
be executed
ronments
oc-
a con-
The
a previously
TMS
in a ter-
the terminal
(Y, 1).
every
(Note
that
inference
en-
here
in
as in
performed
and thus no consumer
given
tion
the
same
the search
we associate
ments
although
computed.
sumers
only
ronment.
as shown
tonsumers
without
plicitly
to running
consumers
space
The
in terminal
all consumers
Fig.
3 illustrates
as Section
in Fig.
with
the
their
ATMS
3.
in all subsets
DDB
these
environ-
cannot
search
which
be
runs
the
which
excon-
The
consumers
it can
are not
minimal.
environment,
If these
using
will
an example
lessly
which
servations:
First,
set of choices,
not
every
a solution.
are made
two sets
is irrelevant.
the
For
there
0)
is
was use5 but not
over the ATMS
there
must
select
any incomplete
Second,
of choices,
of section
order
any problem
using
DDB.
on two key obone assumption
set of choices
in which
are several
approach.
are environments
and depends
each solution
of
then
{B,
which
<are not explored
is subtle,
from
resources
4.
for all solutions
for this
to be
a number
example,
in the example
by the ATMS,
reason
placed
an envi-
is shown
environment
has <another advantage
when looking
because,
and the performance
For
in section
is
envi-
Thus
contain
needlessly
of an inconsistent
by DDB
happens
its subset
so-
of DDB
is no ordering
computational
are
additional
explored.
before
are invoked
(by the im-
inconsistent
This
there
environments
by the ATMS
DDB
exploring
explore
being
enormous
of depen-
on one solution
disadvantage
be clea~rly inferior.
explored
explored
effort
ATMS,
be explored
may
focuses
one or a few solutions
primary
ronment
inconsistent.
Even
it diffi-
with
orders
is
th ese choices
more
than
in which
the
is equivalent
of the terminal
the DDB-guided
ex-
For presenta-
minimal
DDB-controlled
environments
4.,
used.
a terminal
explored
twice.)
Given
does not waste
environments
is
need ever
drawbacks.
easy to follow
cases where
on the subset
The
plores
unlike
of DDB
determines
will ever be executed
DDB
the consumers
discovered
consumer
analyzing
this
as those
3, for
of solu-
makes
the advantages
DDB
its inferences
In those
never
that,
No ordering
invocation.
lutions
exactly
until
remains.
if some
no consumer
5 we presume
recorded
are invoked
contains
{cy, 1) is inconsistent
the terminal
as well
will ever be executed
which
{A, M, l},
When
environment,
of consumer
Tnviron-
contain
set of choices).
no consumer
For
vironment
which
environment,
order
environment
inconsistency.
a terminal
or no inconsistency
on the
ensures
minal
every
of that
of that
occurs
when
environments
(i.e.,
one assumption
only
significant
behavior
are exactly
backtracking.
making
executing
and
however,
at a time,
desired,
given
out in Section
can have
unfocused
it eson all
only a few of a large number
the ATMS’
dency-directed
from
order
is that
working
to debug.
sumption
in the
As pointed
problems
plementor).
set of choices
manner,
those
Backtracking
enumereach of {A B), (0, P>, and { 1,2}.
ates the space through depth-first
search, selecting
one aseach
of the ATMS
solutions
In our
one assumption
disadvantage
in a breadth-first
works
In addition,
set of choices.
contain
primary
sentially
search.
enviRules
’ As with the ATMS-guided
search, depending on the order in
which the rules are executed, few or many of the rules of an inconsistent environn:erit’lllny
be run.
AUTOMATED
REASONING
/ 9 13
choices
could
sponds
be made.
to a path
lattice
Each
moving
sequence
from the root
to one of the solutions.
that
ordering
is irrelevant
to a particular
choices
The
plores
all paths
to the
clearly
wasteful.
Thus
stumbles
using
across
(based
same
environments
which
of section
which
that
This
is
the ATMS
by DDB
in the example
in section
Given
features
Assumption-based
the analysis
of each
5.
A control
disadvantages.
tween
the
nores
Figs.
ideally
environments
we would
like to construct
Fig.
two approaches
4.
More
explores
precisely
environment
explored
To accomplish
this
and embeds
explore
the
smallest
first
strategy
task
within
it.
environment,
of the
only
examining
a coarse
Thus
focus,
When
DDB
decides
while
the ATMS
ATMS
control
5. E’ 1 {a}
first
guaranteed
that
to the munbcr
914
by DDB
its worst
of consumer
/ ENGINEERING
case
and
the
performance
invocations
with
of the
we are
respect
will be at least
environment
The
backtracker
bncktrack(E,
S):
disjunction
of S,
S the
in D, return.
assumptions
control
<as
of D, D the
assumption
u E.
Schedule(E)
an
search.
ATMS,
current
backtrack(E’,S).
return.
8. Go to 3.
executes
first.
consumers
the
in the following
correct
order:
operation
all problem-solving
sumers,
assumptions,
The
create
reason
new
examined
{rl},
the
contexts
by the
data,
is that
which
the
have
backtracking
{l},
solver
to
scheme.
are performed
not
envi-
executes
{A, a),
{a},
backtracking
user may
justifications,
for this
a? 1))
on the problem
of this
operations
In particular,
in the smallest
scheduZe({A,
For example,
search.
could
explored
finds
and return.
control
7. If E is now inconsistent,
which
plicitly
environments
is consistent.”
environment
S.
schedule(E),
6. If E’ is consistent,
First,
controlled
A con-
remainder.
the search
the intersection
clisjunction.
order)
disjunctions
a be the first
consumers.
DDB
of a set
the scheduler
by the procedure
D be the
Let
ronments
explores
also
consisting
environment
with the empty
3. If no remaining
ensure
this approach
are handled
scheduler
of one of its antecedent
{A, I>, {a, 11, {A Q, 1).
We must place two conditions
4 : Assumption-based
in-
which
contradiction.
1. If S is empty,
Let
pairwise
these
The
backtracking
of control
can be implemented
2.
each
set of assumpare
disjunction;
current
we start
E and a stack
sched-
level of discrimination.
Because
main-
to as a control
assumptions
is encountered,
any known
Initially
supports
the union
(in chronological
free from
which
environment
one from
and the
the consumers
Fig.
follows,
DDB
of an ordered
mechanism.
current
a contradiction
4.
to
provides
of any control
a single
the next
environment,
provides
is
Cz, . ..}
also
is not run unless
When
called
algorithm
environments
solver
remainder.
DDB
terminal
sepa-
nulnber
of the algorithm
assumptions,
system
traditional
environments
a consis-
environment.
the
DDB
sumer
of a terminal
we use the ATMS
subsets
in
which
an algorithm
ATMS
ex-
if the problem
each referred
consists
control
of assumptions,
explored
is depicted
inconsistent
takes
the
Thus
which
and 2) it is either
we construct
ig-
other.
like an approach
which
consumers).
with
additional
by DDB,
(again
pending
This
be-
approach
environments
DDB
a terminal
to explore
each
if 1) it is a subset
or a minimally
assumption-based
have
we would
an environment
tent environment
the differences
an approach
alone.
the
any of their
by the
of the
taken
set of choices,
The
maintains
that
explored
only the intersection
by the
uler
Note
two approaches.
certain
plores
2 and 3 highlight
Even
for assumption-based
disjunction
called
by the
inheriting
taken
of the
disjunction:
consistent.
our goal is to combine
without
approaches
independent
description
scheduler
an ordered
tions,
DDB
above,
approach
explored.
detailed
are not part
7.
two
in one solution!3
consumer
tains
the
is true
control(C1,
{p, 2) is an envi-
by the ATMS
not explored
ex-
being
A more
The
than
statement
need not be explored
backtracking.
was explored
4 but
in parallel.
it is not surprising
dependency-directed
ronment
solution
hand,
better
This
only interested
in which
on the other
if not
of solutions
only one path
ordering
good
rately.
the observation
explores
on the
ATMS,
corre-
of the environment
makes
and thus
solution,
are supplied).
DDB
of choices
by the
add new con-
etc.
during
the
new
information
already
been
mechanism.
im-
Thus,
3 In addition, the same claim holds for the number of environments explored, since cnvironmcnts arc only explored if they have
consumers associated with them.
4 The set of assumptions in an environment can be broken into
two sets: control assumptions and non-control assumptions.
The
environment will be consistent with the current environment only
if 1) the set of control assumptions I‘s a subset of the current anvironmrnt, and 2) the addition of the non-control assumptions does
not cause the current cnvironmcnt to become inconsistent with the
current environment.
if new knowledge
solving
space
is added
activity,
from
relatively
the
the beginning.
inexpensive
uler guarantees
of a consumer
stipulation
during
must
In the ATMS
(but not fret)
itself
already
If a consumer
depend
imposed
framework
as adding
control{A,
control(C,
sched-
every
external
Prior
Minimizing
itself).
to running
the backtracker
consistencies.
executed
limit
first
is of primary
Yw2=1.
knowledge.
tested
bilities
importance,
do not reduce
they
do reduce
must
examine.
Unlike
ATMS
number
(which
only
using
ample,
the number
the
identify
of
two capaexecuted,
directed
backtracking
ronments
{A, D,X},
In each
case
is a superset
ning
any consumers.
ing to each
able
the
identifies
A conventional
nogood
it comes
the
current
environment
a conventional
would
identified
we already
have
A,z
the
which
first
which
explicitly
TMS,
TMS
excluded
ATMS.
by the
For
ex-
may
be explicitly
{A, a}
ventional
TMS
tests
siders
it.
ately,
so {A, p, 1},
the
the assumption-based
The
ATMS
set, of choices
Consider
also
will
backtracker
takes
in each
the example
say {(u, 1) while
As
pro-
never
never
nogood
be
a concon-
immedi-
considered
by
either.
advantage
control
of the fact
disjunction
( H indicates
is also a nogood.
contains
further.
the
(of which
following
control
dis-
@ cq for all i
infers:
Y}
A, X)
Y}
the ATMS-controlled
nogoods
that
the
is exhaustive.
a consumer):
at the
choices
Generalized
beginning
become
of interest
to reason
scheme
of problem
During
solver
all the
itself
from
neces-
in its northe nogoods
independent.
problem
some
solving
solving
in addition
choice
these
about
sets
make
DDB
outlined
the set of control
is completely
Together
that
Assumption-based
backtracking
presumes
Furthermore,
the
to note
by consumers.
practice.
others.
is unchanged:
by the ATMS
and are indistinguishable
The ATMS
ous section
considers
It is important
algorithm
are detected
explicitly
9.
backtracker
next.
C, X}
{B,
backtracking
sary
an ATMS
a result
the ATMS
is marked
{A, ,B, 2)
{A}
{A;}]
the ATMS
environment
as well.
{p}
the exhaustivity
nogood
Therefore,
{A, a, 2) while
In addition,
-
nogood{A,
{A, cy, 1) a consumer
noted,
is
the backtracker
plus
and Ajf-i
control{X,
only one of the two contradic-
immediately
run-
switch-
AZ, . ..}
at where A, E q
case,
detected
detects
,....
before
is wasted
is considered
rule for disjunctions
mal operation
TMS
the ATMS
nogood{
duces:
In a conventional
this
=+ I,
environment
that
envi-
the cnviron-
nogoods
of {A}
the
{A, E,Y}
that
time
ATMS
disjunction
the justifications:
P =$ L
and in the current
the
environment
nogoodUi[a;
In this
try exploring
{A, E,X},
will realize
Using
dependent;
are an instance).
nogood
may have
have been
then
{A, C,
the context
Traditional
the two nogoods,
control
control(A1,
as
1,z =+ I,
tions
would
Nevertheless,
from
hyperresolution
across
as well.
of one of t,he explicit
no superset
junctions
and the correspond-
it explores
{A, D,Y},
context.
to infer
Thus
Next
the backtracker
ment
{A, C, X}.
the environment
is inconsistent
{A, Y} is nogood
of the third
backtracker
allnogoods
set of justifications.
identify
As a result,
suppose
to
justification-based
environments
nogoods
is
Intrinsic
of consumers
to explicitly
necessarily
to consider
procedure
these
of contexts
a conventional
inconsistent).
Although
to
explores
is recorded.
Y} noticing
To accomplish
follow from the current
will
which reduce
the number
the
is guaranteed
TMS
it is also important
inconsistencies.
for consistency.
in-
first
{A, X}
that
ing nogood
of consumers
the backtracking
for possible
are two capabilities
contexts
discovered
the number
backtracker
It is found
:
in an environment,
it for previously
limiting
of contexts
to examine
the ATMS
consumers
checks
Although
the number
forced
any
Y},
X+-vc=l,
actions,
Checks
Consistency
{X,
A-x=2,
(a
The
8.
D, E, . ..}.
control
action
scheduler
arbitrary
B},
is
on all its antecedents
to perform
this would be the same
the
this
and remembers
Second,
by the ATMS
were permitted
searching
as the consumer
ever encountered.
must
the problem-
start
no work is ever done twice
all contradictions
then
externally
backtracker
in the previ-
disjunctions
and that
Neither
set of
is the case
a new set of choices
to the ones already
are logically
it diihcult
it#s own control.
AUTOMATED
is lixed
each
known.
dependent
for the
We follow
REASONING
in
may
on
problem
the ideas
1 915
of PI and
well.
allow
control
For example,
decisions
to have
to state
that if 5 holds,
disjunction
disjunction.
tion,
a control
they
appear
part
of the current
which
solely
cution
condition
control
which
will be executed.
disjunction
is the same
antecedents.
exe-
for the
following
also depends
cl first,
be
to be used within
For example,
u2,... hold, explore
The
as that
any inferences
assumptions
never
no consumer
7.
is designed
that
(unless
will
on them
ensures
one of its control
disjunction’s
disjunctions),
of Section
When
assumptions
and hence
DDB
The
completely.
its
for consumers
a schema
al,
control
con-
control
has no valid justifica-
environment
depends
assumption-based
of a normal
is ignored
is passive,
in other
B} is an active
full force
and
disjunction
B)
disjunction
it is pnssive
does
not
then
al A a2 A . . . --) Cl v
is inconsistent.
change,
than
from
on the control
the proposition
(if
tions
can be sorted,
each in turn.
space
is explored
by the control
The
passive
case
unwind
and
C2, . ..}.
control
in which
assumption
lieved
ensures
being
in some
This
that
text.
ing
After
with
ing is extremely
to dynamically
requiring
tation.
The
the current
powerful
heavily
on the nogood
tracker
maintains
becomes
the
it that
by the
chosen
the search
problem
consistent
complex
whose
only reexamine
the current
assumption
Such a scheme
twice.
records
thus it is almost
first
those
(i.e.,
the en-
environment)
of the newly
would
Fortunately,
all pending
active
their
context).
was blocked
with
some.environments
still
(selecting
a control
disjunction.
explicitly
would
con-
the remain-
for the current
strategy
assump-
the current
disjunctions
stack
exploration
containing
control
from
is removed
control
was inconsistent
stack up to
As each
disjunction.
disjunction
strate-
is to temporarily
the active
assumption
A more
becoming
on the active
control
on the control
environments
control
technique
is removed
removed
control
disjunction
far more complex
avoid exthe ATMS
consumers
free to reexamine
with en-
an environ-
of its
algorithm
is,
outline
it here.
search
space
or represenThe
version
of the ATMS.
significant
becomes
active,
rather
general-
by depending
The
of the currently
back-
active
events:
an active
cand the current
control
disjunction
select
the
and make
the resulting
If no such
first
cona pas-
control
environment
added
/ ENGINEERING
assump-
to the
environment
assumption
rule will have determined
active
becomes
control
that
current
stack
context
is unchanged,
becomes
inconsistent,
the backtracking
as in the simple
assumption-based
DDB
one of these
three
conditions
operations
must
be interleaved
taneously,
needless
these
but
proceeds
when more than
scheme.
However,
occurs
simul-
to avoid
thrashing.
current
the new
exists,
the
the current
Related
10.
solver
however,
are three
stack,
the
active
it must
problem
of terminology
can be consistently
environment.
hyperresolution
si-
disjunc-
intended
control
is removed,
back
backtrack-
the
shape
the simpler
passive,
a passive
environment,
916
may be be-
inconsistent.
When
current
allows
data-base
There
add it to the active
from
and
a single stack
disjunction
disjunction
becomes
active
that
Although
disjunction
temporarily
environment.
any change
follows
control
to be active
of dependency-directed
backtracking
trol disjunctions.
disjunction
in order
and we briefly
ized backtracker
tion
but
manipulate
without
sive control
active
the affected
are pushed
the
some c; will hold only in a con-
A control
active.
context,
formulation
complicated
c;.
~22, . . . hold as well as the specified
al,
be consistent
become
the control
and an assumption
order
affected
disjunction
When
text
stack
order.
ment.
a1,a2, "', ci 3
encoding
active
guarantees
disjunctions
the
tion for that
vironments,
This
first,
the simplest
the control
scheduler
and justifications,
of an
including
passive
control(C1,
can
if desired
sorting
in the
gies are possible,
amining
a1,a2, -** *
oldest
The
is more complex.
vironment
disjunction,
disjunction
cases
as the
in chronological
solver.
by nogoods
is encoded
As long
continues
control
In such
from
~a,...),
c2 v ..*
search
one
multaneously.
control{A,
then
environment
More
and has the
If a control
then
as
we write:
x =+- control(A,
trol
justifications
Our
approach
[4,5,6]
ATMS
but
Work
to
backtracking
exploits
[8] and previous
reasoning
Our approach
telligent
disjunctions
are fixed
to [11’s value
generators).
tered,
the stack
When
is unwound
the reasons
This
The
which
corresponds
basic
is that
goods
trackers
to
difference
the
is used
the
throw
a generator
while
backtrackthe control
correspond
is encoun-
ATMS’
use
the
PROLOG
away contradiction
to form
backtracking.
of hyperresolution.
backtracker
the
contribut-
is exhausted,
are combined
to guide
(as far as backtracking
assumption-based
permanently
The
where
disjunctions
value
of
[9,12].
to the use of in-
[ 1,2,3].
to the first generator
for each eliminated
a contradiction
related
a contradiction
When
ing to the contradiction.
control
to backtracking
to the case
(our control
on the
of explicit
approaches
in PROLOG
of [l] is similar
is dependent
ideas
is also strongly
backtracking
ing scheme
the
records
is concerned)
records
all no-
intelligent
when
back-
the stack
is unwound.
As a consequence
be continually
Becording
worth
some
[l]
rediscovered.
<and checking
contradictions
argues
for possible
the computational
that
must
the
cost
contradictions
overhead
8. de Kleer,
of
G.J.,
is not
J.,
telligence:
incurred.
ston
Doyle,
Explicit
and
An MIT
R.H.
Problem
ficult
solvers
to control.
to the ATMS,
built
Some
control
culties.
paper
This
scheme
which
worst
superior
problems
of the
case performance
to the two approaches
single
solution
to all solutions.
Non-control
assumptions
ATMS
from
problems
assumptions,
like DDB
the system
to model
choices.
The result
of both
is an overall
of
algorithm
This
are treated
TMS.
control
“not quite
McAllester,
tem,
11.
1977,
maintenance
and
computer-aided
9 (1977)
Steele,
computer
Proceedings
of
and Program-
Readings
R.J.
Win-
in Knowl-
Brachman
and
1985).
Artificial
system,
In-
used truth
maintenance
sys-
1985.
Sussman,
and dependency-directed
12.
in:
by
In-
by P.H.
in:
Kaufman,
D., A widely
R.
edited
Also
Also
Sussman,
(1979).
unpublished,
Stallman,
and
in Artificial
Intelligence
edited
(Morgan
A truth
24
G.L.
G.J.,
Forward
backtracking
circuit
analysis,
reasoning
in a system
Artificial
for
Intelligence
135-196.
G.L.,
The
definition
programming
AI Technical
Report
and implementation
language
595, MIT,
based
of a
on constraints,
Cambridge,
MA,
1979.
In addition,
disjunctions
problem
a
as conventional
assumptions
10.
is
from
Levesque,
J.,
1979.
on Artificial
Languages,
telligence
perfor-
anywhere
are treated
between
an ATMS
properties
individually.
conditional
diffr-
on rule invocations
in a justification-based
the interactions
vantages
unique
demanding
while control
supports
of the
backtracking
in a hybrid
based
holds
many
H.J.
P erspective,
Representation,
9. Doyle,
of a simple
a simple
resulting
mance
much
resolves
some
and DDB,
ill-suited
the addition
presented
edge
are often very dif-
are inherently
others
structure
has
exploits
the ATMS
whose
on the ATMS
but for many
backtracking
both
ming
Conclusions
Steele,
of reasoning,
Brown,
the Symposium
11.
J.,
control
used
independent”
solver
with the ad-
and dependency-directed
back-
tracking.
ACKNOWLEDGMENTS
Ken
Forbus,
Morris,
Bob
cussion,
insights,
David
Nado
McAllester,
and Leah
Phil
Williams
and comments
McBride,
provided
Paul
lively
dis-
on the topic.
BIBLIOGRAPHY
1. Bruynooghe,
Solving
M.,
lems by intelligent
ing Letters
M.
and
by intelligent
(Ed.),
search
Information
prob-
Process-
12 (1981) 36-39.
2. Bruynooghe,
sion
combinatorial
backtracking,
Current
Pereira,
L.M.,
backtracking,
Issues
Deduction
in:
in Prolog
J.A.
revi-
Campbell
Implementation,
(Wi-
ley, New York, 1984) 194-215.
3. Clocksin,
W.F.
and C.S.
log, (Springer-Verlag,
4. de Kleer,
5. de Kleer,
gence
28
6. dc Kleer,
J.,
Extending
(1986)
J.,
J.,
Austin,
the ATMS,
solving
28 (1986)
Choices
ings of the National
gence,
truth
maintenance
28 (1986)
127-162.
Artificial
Intelli-
163-196.
Problem
cial Intelligence
7. de Kleer,
Intelligence
in Pro-
1981).
J., .4n assumption-based
Artificial
system,
Programming
Mellish,
New York,
TX
with
without
ATMS,
backtracking,
Conference
(August
the
Art+
197-224.
1984),
on Artificial
ProceedIntelli-
79-85.
AUTOMATED
REASONING
/ 9 17