DAGサブセットの合計は近似可能ですか?


13

各頂点に関連付けられた数値()とターゲット数値有向非巡回グラフが与えられます。G :V → N T ∈ NG=(V、E)g:V→NT∈N

DAGサブセット和問題(別の名前で存在する可能性があり、参照が素晴らしい)は頂点が存在するかどうかを尋ねたとえば、およびはパスです。ΣのV I G (V 、I)= T V 1 → 。。→ v k Gv1、v2、。。。、vkΣv私g(v私)=Tv1→。。→vkG

完全な推移的グラフは古典的なサブセット和問題を生成するため、この問題は簡単にNP完全です。

DAGサブセット和問題の近似アルゴリズムは、次の特性を持つアルゴリズムです。

  1. 合計Tのパスが存在する場合、アルゴリズムはTRUEを返します。
  2. 何らかのに対してと間の数までの合計パスがない場合、アルゴリズムはFALSEを返します。T C ∈ (0 、1 )(1−c)TTc∈(0、1)
  3. と間の数に合計するパスがある場合、アルゴリズムは任意の回答を出力する場合があります。T(1−c)TT

サブセット和は、すべてのについて多項式時間で近似可能であることが知られています。c>0

同じことがDAG-Subset-Sumにも当てはまりますか?

回答:


14

サブセット和問題の擬似多項式時間動的計画法アルゴリズムは、この問題でも機能するようです。各頂点について、我々は、設定された計算L 私はで終了パスのすべての可能な値からなるV Iを。その後、我々は漸化式を有する: Lを私は = { G (V I)} ∪ { X + G (V I)| X ∈ ⋃ J ∈ P R E C (I ) Lv私L私v私。トポロジカル順序に従って、すべての L iは O (K m )時間で計算できます。ここで、 Kは総重みで、 mはエッジの数です。L私={g(v私)}∪{バツ+g(v私)∣バツ∈⋃j∈prec(私)Lj}L私O(Km)Km

標準のスケーリングと丸めは、FPTASの導出にも適用できると思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.