Message1437

Author moritz
Recipients malte, moritz
Date 2011-08-03.20:16:06
Content
The following will produce an assertion fail:
$ ./translate/translate.py ../benchmarks/parcprinter-08-strips/p27.pddl
$ ./preprocess/preprocess < output.sas
$ ./search/downward-1-debug --search
'astar(mas(max_states=200000,merge_strategy=5,shrink_strategy=SHRINK_DFP_ENABLE_GREEDY_BISIMULATION))'
< output
[...]
next variable: #64
shrink by 183334 nodes (from 200000 to 16666)
Size of collapsed groups =25524
Simplification was not f-preserving -- must recompute distances.
size of abstraction after shrink: 25524, Threshold: 16666
downward-1-debug: raz_abstraction.cc:1993: void Abstraction::shrink(int,
ShrinkStrategy, bool): Assertion `size() <= threshold || threshold == 1' failed.
Peak memory: 521876 KB
caught signal 6 -- exiting


When not running in debug mode, a segfault will occur.


The reason for this failure:
See the first lines of the method
compute_abstraction_dfp_action_cost_support(...) in raz_abstraction.cc. 
num_groups is at least as big as num_used_h. But num_used_h may be greater than
the target size already. So especially if max_states is small, this
implementation will fail on many tasks.
History
Date User Action Args
2011-08-03 20:16:06moritzsetmessageid: <1312395366.99.0.540794341927.issue250@gmail.com>
2011-08-03 20:16:06moritzsetrecipients: + moritz, malte
2011-08-03 20:16:06moritzlinkissue250 messages
2011-08-03 20:16:06moritzcreate