Ticket #37 (closed enhancement: wontfix)
Implement red-black trees for Lumping (bisimulation)
| Reported by: | ivan.zapreev | Owned by: | ivan.zapreev |
|---|---|---|---|
| Priority: | major | Milestone: | MRMC future |
| Component: | Bisimulation Engine | Version: | 1.3 |
| Keywords: | Cc: | nguyen, christinajansen |
Description
Implement red-black trees for Lumping (bisimulation) and integrate them along with the splay-trees.
Holger Hermanns wrote:
I have some results in my thesis in which I compare the O(m lg n) algorithm (that uses splay tree), the O(m lg2 n) algorithm (that uses red-black tree), and Peter Buchholz's implementation of an O(mn) algorithm. For large state spaces the difference between the red-black and the O(mn) algorithm was about a factor of 500 while the different between red-black and splay was around 7% (red-black is faster). Buchholz reference is P. Buchholz. Efficient computation of equivalent and reduced representations for stochastic automaton. International Journal of Computer Systems Science & Engineering, 15(2):93–103, 2000.
David Jansen's letter:
Derisavi describes in section 3.4 an experiment where he compared the lumping algorithms for an example system with up to 2 million states and 30 million transitions. It turns out that the lumping algorithm with splay trees is about 6% to 9% slower than the algorithm with red-black trees. Derisavi gives as reason that most trees are very small, so the constant factors are dominating the time complexity. Derisavi concludes: "Therefore, it is preferable to use the red-black tree implementation in practice." So, we might add another task to the optimizations to be done: namely change the implementation from splay trees to red-black trees.
Change History
Note: See
TracTickets for help on using
tickets.

