ましょう上の単純無向グラフである頂点とエッジ。
Gのランダムスパニングツリーを生成するためのウィルソンアルゴリズムの予想実行時間を決定しようとしています。、それがあることが示されているO (τ )ここで、τは、ある平均打撃時間:τ = Σ V ∈ V π (V )⋅ H (U 、V )、ここで:
- は定常分布です 、
- は任意の頂点であり、
- は、ヒット時間(AKAアクセス時間)です。つまり、頂点 uから始まり、頂点アクセスするまでの予想ステップ数です。
平均打撃時間の一般的な上限は何ですか?そして、平均打撃時間を最大化する最悪の場合のグラフは何ですか?
私の質問を明確にするために、私は計算や詳細な証明を必要としません(将来的にこの質問に遭遇する他の人々にとって役立つかもしれませんが)。個人的には、引用で十分です。
この論文では、予想されるカバー時間(すべての頂点を訪れた最初の時間)で機能するBroderの別のアルゴリズムについて言及しています。そして、平均打撃時間は常にカバータイムよりも短いと言われています。しかし、それだけで拘束さ漸近与えΘ (n個)のための最もグラフ(すなわち、エクスパンダグラフでそれを対比する)Θ (nはログN )(幾分より包括的な定義に最もグラフのブローダーによってほとんどを)。
これは、平均打撃時間が、カバー時間がΘ (n 3)であるグラフの例を示しています。これは後者の最悪のケースであることが知られているが、彼は前者の最悪のケースについて特に何も述べていません。これは、ウィルソンのアルゴリズムの最悪のケースがO (n 2)とO (n 3)の間のどこかに入る可能性があることを意味します。
私が知っているウィルソンのアルゴリズムの2つの公的に利用可能な実装があります。1つはBoost Graph Libraryにあり、もう1つはgraph-toolにあります。前者のドキュメンテーションは実行時間について言及していませんが、後者は述べています:
ランダムグラフの一般的な実行時間はです。
これは質問に答えず、実際にはウィルソンの論文と矛盾しているようです。しかし、念のため、実装ドキュメントを参照するという同じアイデアを持つ人の時間を節約するために、これを報告します。
Lovászが原因でパスをクリークに接続することによって構築されたグラフによって最悪のケースが達成されることを最初に望んでいました。Lovászの場合、ヒット時間がもなる可能性があります。ただし、このイベントの確率は約1です。定常分布から頂点を選択する場合は n。その結果、このグラフの平均打撃時間の範囲であるO(n2)が得られます。
論文ブライトとウィンクラーの一部ことを示しているロリポップグラフ到達予想打撃時間を最大。Lovászによるグラフもロリポップグラフですが、この場合、クリークサイズは2です。半分ではなく 3 n。ただし、予想打撃時間と平均打撃時間を混同しないように注意する必要があります。この結果は、前の結果と同様に、事前に選択された2つの特定の頂点の予想打撃時間を示しています。