Issue632

Title CEGAR: use faster data structures for search
Priority feature Status resolved
Superseder Nosy List florian, jendrik, malte
Assigned To jendrik Keywords
Optional summary

Created on 2016-02-03.18:25:53 by jendrik, last changed by jendrik.

Messages
msg5180 (view) Author: jendrik Date: 2016-02-18.14:35:25
Merged and pushed. Thanks, Florian! I created issue637 for the refactoring work.
msg5178 (view) Author: florian Date: 2016-02-18.12:23:41
I didn't have too much time to look into this, but the code looks ok, and the
results are almost completely positive. I still think the design is too tightly
coupled and the classes AbstractSearch and AbstractState would need some
refactoring. But this is a general point that I already mentioned in issue600
and is unrelated to this issue. From my side, we could merge this and create a
follow up issue for refactoring.
msg5177 (view) Author: jendrik Date: 2016-02-17.02:12:18
I already ran some experiments and the results look quite good:

http://ai.cs.unibas.ch/_tmp_files/seipp/issue632-v1-issue632-base-issue632-v1-compare.html
http://ai.cs.unibas.ch/_tmp_files/seipp/issue632-v1-landmarks-goals-issue632-base-issue632-v1-compare.html

(In the second report the new version uses more memory, since it can produce bigger abstractions in the same 
amount of time.)
msg5165 (view) Author: jendrik Date: 2016-02-08.17:34:34
Yay, Florian agreed to have a look :)
msg5164 (view) Author: jendrik Date: 2016-02-08.17:03:28
I opened a pull request at https://bitbucket.org/jendrikseipp/downward/pull-requests/44 and 
will ask Florian if he can have a look.
msg5152 (view) Author: jendrik Date: 2016-02-03.18:25:53
Currently, the AbstractSearch class uses two unordered maps for mapping 
AbstractStates to g-values and incoming shortest path arcs. Updating these 
unordered maps takes a lot of time and we want to find better data structures 
for this information.

My current plan is to add the information to the AbstractStates themselves in a 
single struct. The struct should contain the g-value and the incoming arc. This 
allows us to query g-values and arcs efficiently given an abstract state.
History
Date User Action Args
2016-02-18 14:35:25jendriksetstatus: reviewing -> resolved
messages: + msg5180
2016-02-18 12:23:41floriansetmessages: + msg5178
2016-02-17 02:12:18jendriksetmessages: + msg5177
2016-02-08 17:34:34jendriksetstatus: chatting -> reviewing
nosy: + florian
messages: + msg5165
2016-02-08 17:03:28jendriksetstatus: unread -> chatting
messages: + msg5164
2016-02-03 18:25:53jendrikcreate