ix.test
Class BlockStacker

java.lang.Object
  extended by ix.test.BlockStacker
Direct Known Subclasses:
BlockStackingTest.Stacker

public class BlockStacker
extends java.lang.Object

Used for running block-stacking planning problems.


Field Summary
protected  java.util.List finalTowers
           
protected  java.util.List initialTowers
           
(package private) static Symbol S_ACHIEVE
           
(package private) static Symbol S_BLOCK
           
(package private) static Symbol S_CLEARTOP
           
(package private) static Symbol S_FALSE
           
(package private) static Symbol S_ON
           
(package private) static Symbol S_TABLE
           
(package private) static Symbol S_TRUE
           
protected  Slip slip
           
 
Constructor Summary
BlockStacker(java.lang.String problem)
           
 
Method Summary
(package private)  java.util.Set allBlocks(java.util.List towerLists)
           
(package private)  void checkPattern(java.util.Map state, LList pattern, Symbol expectedValue, java.util.List incorrectPatterns)
           
 void checkPlan()
           
 void checkTowerState(java.util.Map state, java.util.List towers)
           
 void findPlan()
           
 Plan getPlan()
           
(package private)  Refinement goalStateRefinement(java.util.List finalTowers)
           
 java.util.List incorrectTowerPatterns(java.util.Map state, java.util.List towers)
           
 Plan initialPlan(java.util.List initialTowers, java.util.List finalTowers)
           
(package private)  Refinement initialStateRefinement(java.util.List initialTowers)
           
static void main(java.lang.String[] argv)
           
 void parseTowers(java.lang.String problem)
           
(package private)  LList pattern(java.lang.String pat)
           
 Domain problemDomain(java.util.List initialTowers, java.util.List finalTowers)
           
(package private)  Refinement problemTaskRefinement()
           
 void replan()
           
protected  void setup(java.lang.String problem)
           
(package private)  java.util.List towerBlocks(java.lang.String towerDescription)
          Returns a list of symbols representing the blocks in a tower.
(package private)  java.util.List towerPatterns(java.util.List tower)
           
(package private)  java.util.List towers(java.lang.String towerDescriptions)
          Returns a list of lists, one list per tower.
(package private)  Constraint worldEffect(LList pattern)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

slip

protected Slip slip

initialTowers

protected java.util.List initialTowers

finalTowers

protected java.util.List finalTowers

S_ACHIEVE

static final Symbol S_ACHIEVE

S_ON

static final Symbol S_ON

S_BLOCK

static final Symbol S_BLOCK

S_CLEARTOP

static final Symbol S_CLEARTOP

S_TABLE

static final Symbol S_TABLE

S_TRUE

static final Symbol S_TRUE

S_FALSE

static final Symbol S_FALSE
Constructor Detail

BlockStacker

public BlockStacker(java.lang.String problem)
Method Detail

main

public static void main(java.lang.String[] argv)

setup

protected void setup(java.lang.String problem)

findPlan

public void findPlan()

replan

public void replan()

getPlan

public Plan getPlan()

checkPlan

public void checkPlan()

parseTowers

public void parseTowers(java.lang.String problem)

towers

java.util.List towers(java.lang.String towerDescriptions)
Returns a list of lists, one list per tower.


towerBlocks

java.util.List towerBlocks(java.lang.String towerDescription)
Returns a list of symbols representing the blocks in a tower.


initialPlan

public Plan initialPlan(java.util.List initialTowers,
                        java.util.List finalTowers)

problemDomain

public Domain problemDomain(java.util.List initialTowers,
                            java.util.List finalTowers)

problemTaskRefinement

Refinement problemTaskRefinement()

initialStateRefinement

Refinement initialStateRefinement(java.util.List initialTowers)

goalStateRefinement

Refinement goalStateRefinement(java.util.List finalTowers)

pattern

LList pattern(java.lang.String pat)

allBlocks

java.util.Set allBlocks(java.util.List towerLists)

worldEffect

Constraint worldEffect(LList pattern)

towerPatterns

java.util.List towerPatterns(java.util.List tower)

checkTowerState

public void checkTowerState(java.util.Map state,
                            java.util.List towers)

incorrectTowerPatterns

public java.util.List incorrectTowerPatterns(java.util.Map state,
                                             java.util.List towers)

checkPattern

void checkPattern(java.util.Map state,
                  LList pattern,
                  Symbol expectedValue,
                  java.util.List incorrectPatterns)