README.md 2.59 KB
Newer Older
David Speck's avatar
David Speck committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
# Symple
Symple performs A* search based on Edge-Valued Multi-Valued
Decision Diagrams (EVMDDs). It supports zero, unit, constant and
state-dependent action costs.


Symple is is built on top of
[Fast Downward](http://www.fast-downward.org/),
[SymBa](https://fai.cs.uni-saarland.de/torralba/software.html)
and [MEDDLY-0.18](https://meddly.sourceforge.io/).
Therfore, it it is made available under the GNU Public License (GPL).

## 1. Compiling Symple
The command
```sh
$ git clone https://gkigit.informatik.uni-freiburg.de/dspeck/symple.git <dirname>
```
will create a clone of Symple master repository in directory "dirname".

To build Symple run the following command.
```sh
$ cd <dirname>
$ ./build
```

## 2. Running Symple
Symple is callable with several configurations.

### 2.1 Defaul Configuration (IPC-18)
Starting Symple with defaul configurations (bidirectional search, 100k node
limit per transition relation):
```sh
33
$ ./plan <domain.pddl> <problem.pddl> <plan-output-file>
David Speck's avatar
David Speck committed
34 35
```

36 37 38 39 40 41 42 43
### 2.2 Defaul Configuration (SDAC)
Starting Symple with defaul configurations (bidirectional search, 100k node
limit per transition relation):
```sh
$ ./plan-sdac <problem.sas> <plan-output-file>
```

### 2.3 Predefined Configurations
David Speck's avatar
David Speck committed
44 45 46 47 48 49 50 51 52 53 54 55
Starting Symple with predefinied configurations:
```sh
$ .src/plan-ipc <planner> <domain> <problem> <plan-output-file>
```
You can choose between the following predefined configurations for the "planer" 
parameter, where the term stands for the search direction and the number for 
the node limit of the transition relations.

+ **Bidirectional Search**: symple, symple0, symple10000, symple25000, symple50000, symple100000, symple200000
+ **Progression**: symplePro, symplePro0, symplePro10000, symplePro25000, symplePro50000, symplePro100000, symplePro200000
+ **Regression**: sympleReg, sympleReg0, sympleReg10000, sympleReg25000, sympleReg50000, sympleReg100000, sympleReg200000

56
### 2.4 Userdefined Configurations
David Speck's avatar
David Speck committed
57 58 59 60 61 62 63
In general, it is possible to define new configurations for Symple. The easiest
way is to insert a new predined configuration to the [downward](src/search/downward) file.
For more information, please visit the [Fast Downward](http://www.fast-downward.org/)
website.

## 3 Benchmarks
+ [Here](https://bitbucket.org/planning-researchers/classical-domains), you can find a benchmark set containing of former IPC domains.
64
+ [Here](https://gkigit.informatik.uni-freiburg.de/dspeck/SDAC-Benchmarks), you can find a benchmark set containing of domains with state-dependent action costs. Note that each domain consists of a "trans_sas" and "sas" folder. Symple is compatible with the files in the "sas" folder.