本論文では、tinygarden Javaパッケージについて説明している。
グラフ理論の基本概念として、グラフ、部分グラフ、パス、サイクル、連結グラフ、木、張る木などが紹介されている。
張る木は最適化、ネットワーク設計、VLSI相互接続、クラスタリング、複雑性理論、グラフ不変量、基本サイクル基底などの分野で重要な役割を果たす。
しかし、任意のグラフの張る木集合のサイズは非常に大きいため、その全体を探索することは困難である。そこで、小さなグラフインスタンスに対して、Matsui アルゴリズムを用いて張る木集合を生成し、その性質を検証するツールとしてtinygarden Javaパッケージが開発された。
パッケージの構造は単純で、SpanningTreesMatsui クラスが全体のプロセスを管理し、Collectors と Processors のクラス階層を使って、各張る木に対する分析を行う。
また、Graphや SparseMatrix、UnionFind などのヘルパークラスも実装されており、nauty ソフトウェアとの連携も可能である。
現時点での主な制限は、処理可能なグラフのサイズが9ノード以下に限られることである。今後の改善点としては、Matsui アルゴリズムの分散実装や、グラフの張る木集合のサイズ計算機能の追加などが考えられる。
Till ett annat språk
från källinnehåll
arxiv.org
Djupare frågor