Issue521

Title M&S refactoring: introduce a class or struct to represent label groups and addition information
Priority wish Status resolved
Superseder Nosy List malte, silvan
Assigned To silvan Keywords
Optional summary

Created on 2015-03-29.16:24:27 by silvan, last changed by silvan.

Messages
msg4134 (view) Author: silvan Date: 2015-04-02.14:28:46
After some more small refactoring, version 5 is the final one:
http://ai.cs.unibas.ch/_tmp_files/sieverss/2015-04-01-issue521-v5-v2-comp.html
http://ai.cs.unibas.ch/_tmp_files/sieverss/2015-04-01-issue521-v5-base-comp.html

Merged and pushed.
msg4133 (view) Author: silvan Date: 2015-04-01.16:53:57
Versions 3 and 4 did not improve performance, but rather decreased it. Version 3
tested not keeping the transitions vector at maximum size, but increasing it
whenever needed, which slowed everything down quite a lot. Version 4 tested
storing transitions directly in the label group, which resulted in higher memory
usage.
http://ai.cs.unibas.ch/_tmp_files/sieverss/2015-03-31-issue521-v3-v2-comp.html
http://ai.cs.unibas.ch/_tmp_files/sieverss/2015-04-01-issue521-v4-v2-comp.html
msg4132 (view) Author: silvan Date: 2015-03-31.22:24:05
Version 1 introduced a new class "LabelGroup" as a wrapper for list<int> which
also stores the minimal cost of the included labels, as well as an id used for
indexing the vector of all transitions. The id used is the smallest label number
when creating a new label group for a (set of) labels. The id never changes.

In version 2, I replaced the id by a direct pointer to the transitions of the
group, which still live in a separate place, indexed the same way as before. I
now hash label groups not by their id anymore, but by the address of the group
object itself. This can change the order in which labels are added to groups in
the constructor of composites and this influences bisimulation in the
pracprinter domains (see also issue516). The results look good otherwise:
http://ai.cs.unibas.ch/_tmp_files/sieverss/2015-03-31-v2-v1-comp.html
msg4123 (view) Author: silvan Date: 2015-03-30.11:06:09
Version 1 looks favorable w.r.t. memory usage:
http://ai.cs.unibas.ch/_tmp_files/sieverss/2015-03-29-base-v1-comp.html
msg4122 (view) Author: silvan Date: 2015-03-29.16:24:27
This is part of meta issue432.

I'd like to try around a bit with making the representation of label groups and
the information associated with them more compact by adding an own class for them.
History
Date User Action Args
2015-04-02 14:28:46silvansetstatus: chatting -> resolved
messages: + msg4134
2015-04-01 16:53:57silvansetmessages: + msg4133
2015-03-31 22:24:05silvansetmessages: + msg4132
2015-03-30 11:06:09silvansetmessages: + msg4123
2015-03-29 16:24:27silvancreate