与えられたグラフの最適解を、平均辺の重み X を持つサイクルにします。
のようなエッジを持ついくつかの最適なサイクルがe_1
ありe_2
ます。e_n
avg(e_i) = X
私の証明のために、私はすべてのインデックスをモジュロ n と仮定しe_(n + 1)
ますe_1
。
私たちのヒューリスティックがこの解を見つけることができないとしましょう。つまり、各i
(最初に取得したエッジが何であれ) に対して、シーケンス内のエッジの平均重み...が X より大きい(これまでに からまでj
のすべてのエッジをたどった) ようなものが存在します。 (ヒューリスティックはこのソリューションを削除します)。i
j
e_i
e_j
次に、平均辺の重みが X に等しくなり得ないことを示すことができます。ヒューリスティックによって枝刈りされていない最長の連続部分列を取ります (各要素の平均辺の重みが X より大きくない)。少なくとも 1 つe_i <= X
、そのようなサブシーケンスが存在します。e_k
そのようなサブシーケンスの最初の要素には、p
そのようなものがありavg(e_k ... e_p) > X
ます。そのような を最初に取りp
ます。次にk' = p + 1
、別の を取得してみましょうp'
。再びイニシャルに到達するまで、このプロセスを繰り返しますk
。Finalp
は initialk
を超えることはありません。これは、 final サブシーケンスに initial が含まれていることを意味します。[e_k, e_p - 1]
これは、 の構築と矛盾しますe_k
。これで、シーケンスe_1
...e_n
は重複しないサブシーケンスによって完全に覆われましたe_k ... e_p
。e_k'...e_p'
など、それぞれが X より大きい平均エッジ ウェイトを持っています。したがって、矛盾がありavg(e_i) = X
ます。
あなたの質問について:
サイクルの途中で、重みが見つかった最良の平均よりも大きい場合、重みのエッジが小さいと、現在のサイクルが見つかった最良の平均よりも低くなる状況に到達する可能性はありませんか?
もちろん。しかし、このソリューションは安全に刈り込むことができます。後で、刈り込まれない別のエッジから始まる同じサイクルを発見するからです。私の証明は、グラフのすべての可能なサイクルを考慮すれば、遅かれ早かれ最適なサイクルが見つかることを示しています。