Apakah kerumitan masalah jalur ini diketahui?

9

Instance: Grafik tidak berarah Gdengan dua simpul dibedakan st , dan integer k0 .

Pertanyaan: Apakah terdapat sebuah st jalan di G , sehingga berpotongan jalan paling k segitiga? (Untuk masalah ini, sebuah jalur dikatakan memotong segitiga jika jalur tersebut mengandung setidaknya satu sisi dari segitiga.)

Andras Farago
sumber
3
Apakah ini salah? Kami menetapkan bobot untuk setiap sisi dan kemudian kami menemukan jalur st terpendek. Berat setiap tepi adalah jumlah segitiga yang termasuk tepi itu. Berat jalur ini tidak sama dengan jumlah segitiga yang bertemu tetapi itu adalah jalur st dengan jumlah segitiga minimum. (Masalah yang mungkin adalah bahwa kita dapat menghitung satu atau lebih segitiga dua kali karena kita mengunjungi dua sisi segitiga itu tetapi alasan mengapa kita memilihnya adalah bahwa mereka lebih kecil daripada melalui sisi lain dari segitiga dan juga kita memiliki cara jalur sederhana dua sisi segitiga bersebelahan).
Saeed
3
@ Saeed Saya tidak mengerti: apa argumen bahwa penghitungan yang berlebihan tidak membuat Anda memilih jalur yang tidak optimal? Algoritme Anda tentu merupakan 2 perkiraan Mungkin perbaikannya adalah menambahkan tepi untuk setiap jalur u v w dengan bobot sama dengan jumlah segitiga yang mengandung keduanya ( u , v ) dan ( v , w )(u,w)uvw(u,v)(v,w)
Sasho Nikolov
2
Benar, kita dapat pergi dari u ke v dan kemudian kita memilih x (beberapa simpul lain tidak dalam segitiga uvw) maka kita pergi ke w yang salah (kesalahan saya adalah bahwa saya terjawab di antara simpul yang tidak ada di segitiga uvw) , tetapi dengan perbaikan Anda itu benar karena untuk setiap jalur st dengan segitiga dalam grafik asli ada jalur bobot α dalam grafik tambahan. Lebih lanjut, berat lintasan dalam grafik baru selalu paling tidak sebagai jumlah segitiga dalam lintasan yang sesuai dalam grafik asli. αα
Saeed
1
Saya memberikan sedikit lebih banyak pemikiran tentang hal itu, bahkan setelah memperbaikinya tidak berhasil. Maaf Andras jika saya membawa harapan yang salah. Untuk melihat mengapa memperbaiki yang salah menganggap simpul di jalan P dan kami memiliki segitiga u , v ,u>v>w>xP dan v , w , x dan misalkan tepian v x dan u w adalah kebetulan juga banyak segitiga. Jika kita menggunakan tepi baru buatan yang menghubungkan u - > w maka kita menghitung segitiga vu,v,wv,w,xvxuwu>w dua kali. PS: Alasan saya lagi salah karena saya pikir kita cukup mengganti u - > v dan v - > w dengan baru (multi) edge u - > w . Jika kita menambahkan tepi buatan itu untuk setiap jalur, itu akan bekerja sepele. Sepertinya itu NPC. v,w,xu>vv>wu>w
Saeed
1
Gagasan saya tidak akan berfungsi - saya harus mempertahankan beberapa set, dan saya pikir akan ada terlalu banyak.
reinierpost

Jawaban:

1

Menganggap tidak ada self-tepi di .G

Untuk setiap tepi antara simpul dan v j di G , misalkan E [ i , j ] = 1 , dan E [ i , j ] = 0 jika tidak ada tepi. Hitung n × n matriks C [ i , j ] = Σ nvivjGE[i,j]=1E[i,j]=0n×n , yang memberikan jumlah jalur dua-hop antara masing-masing pasangan node v i dan v j . Kemudian untuk edge antara v i dan v j dalam G menghitung D [ i , j ] = E [ i , j ] C [ i , j ] jika tidak maka set D [ i , j ] = C[i,j]=k=1nE[i,k]E[k,j]vivjvivjGD[i,j]=E[i,j]C[i,j]D[i,j]=, Yang memberi jumlah segitiga tepi adalah bagian dari (atau tak terhingga jika tidak ada tepi). Penggandaan matriks yang diperlukan untuk menghitung biaya O ( n 3 ) (dapat dihitung lebih cepat tergantung pada tingkat G ).CO(n3)G

Sekarang hitung matriks A , sedemikian sehingga A [ i , j ] = min ( D [ i , j ] , min k ( D [ i , k ] + D [ k ,n×nA . A adalah semua jalur terpendek di DA[i,j]=min(D[i,j],mink(D[i,k]+D[k,j]E[i,j]))AD panjang hingga dua ditambah untuk menjelaskan jalur yang melewati dua sisi beberapa segitiga.

Sekarang cukup hitung lintasan terpendek antara dan v j dalam G pada grafik baru yang A adalah matriks adjacency (tertimbang) menggunakan Dijkstra (karena semua bobot tepi positif) yaitu dan tentukan apakah A vivjGA , di mana A adalah penutupan semiring tropis (yang memberikan matriks jarak).A[i,j]kA

Edgar
sumber