Gim pada beberapa grafik

13

Pertimbangkan permainan berikut pada grafik tertimbang G diarahkan dengan chip di beberapa node.

Semua node G ditandai dengan A atau B.

Ada dua pemain, Alice dan Bob. Tujuan dari Alice (Bob) adalah untuk menggeser chip ke node yang ditandai oleh A (B).

Awalnya Alice dan Bob memiliki mSEBUAH dan mB dolar masing-masing.

Jika seorang pemain dalam posisi kalah (yaitu, posisi chip saat ini ditandai dengan huruf yang berlawanan) ia dapat memindahkan chip ke node tetangga. Langkah tersebut membutuhkan biaya beberapa dolar (berat tepi yang sesuai).

Pemain kalah jika dia dalam posisi kalah dan tidak punya uang untuk memperbaikinya.

Sekarang perhatikan bahasa GAME yang terdiri dari semua graf berbobot terarah G (semua bobot bilangan bulat positif), posisi awal chip, dan ibukota Alice dan Bob yang diberikan dalam representasi unary

sedemikian rupa sehingga Alice memiliki strategi kemenangan di game ini.

GAME bahasa milik P . Memang, posisi saat ini dari permainan ditentukan oleh posisi chip dan ibukota saat ini dari Alice dan Bob, sehingga pemrograman dinamis bekerja (di sini penting bahwa modal awal diberikan dalam representasi unary).

Sekarang perhatikan generalisasi berikut dari game ini. Mempertimbangkan beberapa diarahkan grafik tertimbang G1,...Gn dengan chip pada setiap grafik. Semua node dari semua grafik ditandai oleh A dan B. Sekarang Bob menang jika semua chip ditandai oleh B dan Alice menang jika setidaknya satu chip ditandai oleh A.

Pertimbangkan bahasa MULTI-PERTANDINGAN yang terdiri dari semua grafik G1,...,Gn , posisi awal dan ibukota mSEBUAH dan mB (dalam representasi unary) sehingga Alice menang di pertandingan yang sesuai. Di sini penting bahwa huruf kapital adalah umum untuk semua grafik, jadi, bukan hanya beberapa GAME independen.

Pertanyaan Apa kompleksitas bahasa MULTI-GAMES? (Apakah itu juga milik P atau ada beberapa alasan mengapa masalah ini sulit?)

UPD1 Neal Young menyarankan untuk menggunakan teori Conway. Namun saya tidak tahu apakah mungkin menggunakan teori ini untuk beberapa game dengan modal bersama.

UPD2 Saya ingin menunjukkan contoh yang menunjukkan bahwa MULTI-GAME tidak terlalu sederhana. Biarkan Alice membagi nya modal mSEBUAH untuk beberapa n istilah mSEBUAH=Sebuah1+Sebuah2+...Sebuahn (Dia akan menggunakan Sebuahsaya dolar untuk saya grafik th). Tentukan bsaya sebagai jumlah minimal seperti yang di saya permainan -th Bob menang jika Alice dan Bob memiliki Sebuahsaya dan bsaya dolar masing-masing. Jika b1+...bn>mB (untuk beberapa pembagianmSEBUAH=Sebuah1+Sebuah2+...Sebuahn ) maka Alice menang. Namun, yang terjadi adalah sebaliknya. Pertimbangkan dua salinan grafik berikut (awalnya chip ada di sebelah kiri atas A): masukkan deskripsi gambar di sini

Untuk satu grafik, Bob menang jika mSEBUAH=0 dan mB=2 atau jika mSEBUAH=1 dan mB=3 . Namun untuk permainan dengan dua salinan grafik ini Bob kehilangan jika mSEBUAH=1 dan mB=5 . Memang, Bob harus menghabiskan 4 atau 5 dolar untuk menggeser kedua chip ke node ditandai dengan B . Kemudian Alice dapat menggeser setidaknya satu chip ke simpul yang ditandai oleh A. Setelah itu Bob tidak punya uang untuk menyelamatkan posisinya.

UPD3 Karena pertanyaan untuk grafik sewenang-wenang tampaknya sulit, pertimbangkan grafik tertentu. Nyatakan simpul dari beberapa grafik Gsaya sebagai 1,...k . Batasan saya adalah sebagai berikut: untuk setiap pasangan saya<j terdapat tepi dari saya ke j dan tidak ada tepi terbalik. Juga ada batasan untuk biaya edge: untuk saya<j<k edge j ke k tidak lebih besar dari dari saya ke k .

Alexey Milovanov
sumber
4
di MULTI-GAME, apa yang dimaksud dengan langkah? Pemain membuat satu gerakan di setiap grafik? Atau memilih satu grafik untuk membuat satu gerakan? Sudahkah Anda melihat apakah teori permainan Conway (pemanasan dan pendinginan) berlaku di sini? (Beberapa referensi dapat ditemukan di sini: en.wikipedia.org/wiki/… )
Neal Young
@Neal Young Pemain memilih satu grafik untuk membuat satu gerakan.
Alexey Milovanov
FWIW, Jika saya ingat, teori permainan Conway memang mempertimbangkan bagaimana cara memainkan permainan yang terdiri dari permainan lain dengan cara itu (dalam setiap gerakan, pemain memilih salah satu sub-permainan untuk pindah). Saya tidak tahu apa relevansi teorinya dengan kompleksitas komputasi.
Neal Young
1
@NealYoung Terima kasih, tapi seperti yang saya pahami masalahnya adalah para pemain memiliki modal yang sama untuk semua game. Saya tidak menemukan bagaimana hal itu dapat diperbaiki oleh teori Conway ...
Alexey Milovanov
Apakah Alice (Bob) dipaksa untuk memindahkan chip jika berada pada simpul A (B)? Bagaimana kondisi kemenangan multi-game? Apakah B menang juga ketika semua chip ada pada B node, tetapi A masih punya uang? Anda mengatakan bahwa A menang jika setidaknya satu chip berada pada A, jadi A dapat dengan mudah mencoba menyimpan dua chip ke dalam simpul yang ditandai dengan A dalam dua grafik "lebih murah"; segera setelah B memindahkan salah satu dari dua chip dari node A, Alice membawanya kembali (dan mengabaikan grafik lainnya)
Marzio De Biasi

Jawaban:

2

Karena jawaban Steven Stadnicki tampaknya tidak diterima oleh penanya, saya pikir mungkin masih bermanfaat untuk memberikan pembaruan: Saya memiliki pengurangan dari 3SAT menjadi MULTI-GAME. Saya belum melihat jawaban Steven dengan hati-hati atau mengikuti tautan yang dia berikan, tetapi berdasarkan pengurangan berikut ini saya tidak akan terkejut jika MULTI-GAME benar-benar menyelesaikan PSPACE. Saya mungkin tidak repot-repot memperluas hasil ini di luar kekerasan NP.

Sebuah 3SAT contoh terdiri dari klausa C1,...,Cm , masing-masing klausa menjadi bentuk Csaya=L.saya1L.saya2L.saya3 dimana setiap L.sayak adalah salah satu dari variabel x1,...,xn atau negasi dari salah satu variabel.

Dengan instance 3SAT yang demikian, pengurangan menciptakan instance MULTI-GAME yang terdiri dari n+1 game - satu untuk setiap variabel dan game lain yang digunakan sebagai capital sink berlebih. Pertama kita akan menentukan struktur grafik untuk setiap game, kemudian melihat contoh dan mendiskusikan ide inti, dan kemudian kita akan mencari tahu berapa biaya yang tepat untuk menentukan tepi agar pengurangan reduksi bertahan.

Pertama, grafik permainan variabel Gj untuk setiap variabel xj :

  1. Buat titik berlabel xj ditandai dengan A (yaitu titik menang untuk Alice). Chip untuk Gj dimulai pada simpul xj .
  2. Buat simpul bertanda T dan simpul bertanda F , masing-masing ditandai dengan B (yaitu keduanya memenangkan posisi untuk Bob). Buat tepi diarahkan dari xj untuk kedua T dan F , baik dengan biaya 1 .
  3. Untuk setiap literal L.sayak dari klausa Csaya , jika L.sayak=xj atau L.sayak=¬xj , membuat simpul berlabel CsayaTSEBUAH dan CsayaFSEBUAH ditandai dengan A dan simpul berlabel CsayaTB dan CsayaFB ditandai dengan B. Tambahkan tepi (T,CsayaTSEBUAH) dan(F,CsayaFSEBUAH) dengan biaya yang ditetapkan kelsayak . (Kami akan mendefinisikanlsayak nanti.)

    Tambahkan tepi (CsayaTSEBUAH,CsayaTB) dan (CsayaTSEBUAH,CsayaTB) . Jika L.sayak=xj , maka set (CsayaTSEBUAH,CsayaTB) biaya ke lsayak-1 dan (CsayaTSEBUAH,CsayaTB) biaya untuklsayak . Kalau tidak, setel biaya(CsayaTSEBUAH,CsayaTB) kelsayak dan(CsayaTSEBUAH,CsayaTB) biaya kelsayak-1 .

Permainan capital sink:

  1. Buat simpul bertanda C , ditandai dengan B.
  2. Untuk setiap klausa Csaya , buat simpul bertanda CsayaSEBUAH ditandai dengan A, dan simpul bertanda CsayaB ditandai dengan B. Buat tepi (C,CsayaSEBUAH) dengan biaya tepi csaya (lagi ditentukan di bawah) , dan edge (CsayaSEBUAH,CsayaB) juga dengan biaya edge csaya .

Ini banyak yang perlu dipertimbangkan, jadi semoga contoh membuat ini lebih mudah dicerna. Contoh 3SAT kami adalah sebagai berikut:

C1=x1x2¬x3

C2=x2x3¬x4

C3=¬x1¬x3x4

Reduksi mengubah instance ini menjadi 4 grafik game variabel dan 1 grafik capital sink. Dalam diagram di bawah ini, simpul merah ditandai dengan A (yaitu posisi menang untuk Alice), dan simpul cyan ditandai dengan B (posisi menang untuk Bob).

Grafik untuk x1 :

masukkan deskripsi gambar di sini

Grafik untuk x2 :

masukkan deskripsi gambar di sini

Grafik untuk x3 :

masukkan deskripsi gambar di sini

Grafik untuk x4 :

masukkan deskripsi gambar di sini

Grafik untuk capital sink:

masukkan deskripsi gambar di sini

Idenya adalah sebagai berikut:

Bob dipaksa untuk membuat pertama n bergerak untuk keluar dari kehilangan posisi di n game variabel. Setiap langkah tersebut mengkodekan penugasan benar atau salah ke variabel terkait.

Alice kemudian akan memiliki modal yang cukup untuk membuat tepat 4 langkah, yang masing-masingnya Bob harus memiliki modal yang cukup untuk mencocokkan agar Bob menang. The csaya nilai-nilai dan lsayak nilai-nilai yang harus dipilih sehingga hanya mungkin strategi memenangkan Alice adalah sebagai berikut, untuk beberapa klausul Csaya :

Strategi Alice clause Csaya : biarkan Csaya=L.saya1L.saya2L.saya3 . Untuk setiap k{1,2,3} , jika L.sayak=xj atau ¬xj , pindah ke Csaya?SEBUAH dalam game variabel untuk xj . Juga pindah ke CsayaSEBUAH di permainan capital sink.

( Csaya?SEBUAH menunjukkan CiTA atau CiFA , hanya satu yang dapat dicapai dalam permainan variabel tertentu setelah gerakan pembukaan Bob.)

Jika pembukaan bersesuaian Bob untuk tugas kebenaran bahwa daun beberapa klausul Ci tidak puas, maka Alice memilih Ci dan menerapkan strategi di atas biaya Alice li1+li2+li3+ci modal untuk melaksanakan, dan Bob sama untuk mengalahkan; jika di sisi lain Ci puas, maka lawan main Bob mendapat diskon minimal 1 . Tujuan kami dalam mengatur ci dan lik nilai dan modal awal Alice dan Bob adalah untuk memastikan bahwa diskon tersebut adalah faktor penentu apakah Alice atau Bob menang.

Untuk itu, atur b=m+1 , dan atur

lik=2b10+ib2k untuk setiapk{1,2,3} ,

ci=3b10+b8k=13ib2k ,

Modal awal Alice ke 9b10+b8 ,

dan modal awal Bob ke 9b10+b8+n1.

Perhatikan bahwa semua nilai ini polinomial dalam m , sehingga turunan MULTI-GAME yang dihasilkan oleh reduksi memiliki ukuran polinomial dalam ukuran instance 3SAT bahkan jika biaya ini dikodekan dalam unary.

Perhatikan juga bahwa untuk setiap klausa Ci , li1+li2+li3+ci=9b10+b8 adalah modal awal Alice. (Yang juga 1 lebih besar dari modal Bob setelah membuat n pertama bergerak.)

Pertama-tama, segera jelas bahwa jika pembukaan Bob mendefinisikan penugasan kebenaran yang membuat klausa Ci tidak puas, maka Alice menang menggunakan strategi klausa Ci yang diberikan di atas.

Jika Bob yang membuka memuaskan semua klausa, kita bisa memperdebatkan batasan pada opsi Alice yang mengesampingkan kemungkinan lain dari kemenangan Alice. Perhatikan bahwa urutan Alice membuat gerakannya tidak relevan, karena respons Bob dipaksakan dan total modal yang diperlukan Bob untuk merespons langkah Alice tidak berubah oleh urutan gerakan Alice.

  • Alice tidak dapat melakukan lebih dari 4 gerakan: jika Alice membuat 5 atau lebih gerakan, maka gerakannya memiliki total biaya 5b10 , yang melebihi anggarannya.
  • Alice harus membuat 4 gerakan: jika Alice memilih 3 gerakan dari permainan capital sink maka total biaya nya adalah 9b10+3b83b7>9b10+2b8 yang melebihi anggaran. Jika dia memilih satu gerakan 3 saja dari permainan variabel, maka total biaya nya adalah 8b10+2b8+b7 yang secara substansial lebih kecil dari modal pasca pembukaan Bob, sehingga Bob dapat dengan mudah membayar lawan mainnya.
  • Alice harus memilih langkah dari permainan capital sink: jika dia tidak, maka dia memilih 4 langkah dari game variabel, dengan total biaya 8b10+4b7 , dan sekali lagi Bob dapat dengan mudah membayar lawan mainnya. (Perhatikan bahwa jika ada permainan capital sink terpisah per klausa, kami bahkan dapat menunjukkan bahwa Alice harus bermain tepat dalam satu game seperti itu.)

Dari tahap ini kita dapat mengabaikan persyaratan b10 dan b8 dalam biaya perpindahan yang dipilih, karena mereka akan selalu berjumlah 9b10+b8 . Sejak Alice harus memilih tepat satu langkah di wastafel ibukota permainan, menganggap bahwa langkah adalah untuk CiA . Kemudian Alice memiliki (mengabaikan istilah b10 dan b8 ) k=13ib2k modal yang tersisa, dan Bob memiliki 1 kurang dari jumlah ini yang tersisa.

  • Alice harus memilih setidaknya satu gerakan dengan biaya lj3 untuk beberapa klausa Cj : jika tidak, maka biaya perpindahannya (lagi-lagi syarat pesanan lebih rendah) 3b5 , dan Bob memiliki modal lebih dari cukup untuk bermain balik.
  • Perpindahan ini mengatakan lj3 harus menjadi pemindahan biaya li3 : itu tidak bisa menjadi perpindahan dengan biaya lj3 untuk j>i , jika tidak, biaya perpindahan ini saja (i+1)b6 yang lebih besar dari sisa Alice anggaran. Jika lj3 untuk j<i , maka biaya l(ij)3 juga harus dipilih oleh Alice untuk menghabiskan b6Istilah -terima dalam sisa anggaran Bob. Tapi kemudian Entah b2 istilah orde kedua di sisa anggaran Bob atau b2 istilah orde kedua tidak mendapatkan kelelahan, sehingga Bob menang dgn mudah.

Argumen serupa harus menetapkan bahwa Alice harus memilih gerakan dengan biaya li2 dan li1 . Jika penugasan kebenaran Bob memuaskan Ci , maka bahkan strategi ini tidak berhasil, karena diskon yang didapat Bob pada salah satu dari biaya berbasis lik membuat modal kurang dari 1 ia miliki setelah pembukaannya.


Sebuah komentar pada jawaban saya sebelumnya: jelas di belakang bahwa, untuk varian TABEL-GAME dari MULTI-GAME yang saya definisikan dalam komentar dari jawaban itu, DP gaya ransel cukup untuk menentukan pemain mana yang memiliki strategi kemenangan. Anda dapat berargumen bahwa strategi terbaik Bob adalah selalu merespons keadaan yang hilang dalam tabel permainan tertentu dengan investasi seminimal mungkin (ini tidak dapat memotong langkah selanjutnya untuk Bob yang seharusnya ia lakukan sebaliknya), dan dari sana urutan tersebut pergerakan Alice tidak masalah. Ini kemudian menjadi masalah memilih pemisahan modal Alice di antara permainan sedemikian rupa sehingga jumlah respons kemenangan minimal Bob atas game-game tersebut melebihi anggarannya, yang dapat dibingkai ulang sebagai masalah gaya ransel, yang memiliki DP polinomial waktu ke representasi biaya unary. (Perulangan saya sebenarnya akan '

Ternyata bahkan struktur pohon sederhana untuk setiap game, dengan kedalaman konstan dan benar-benar hanya satu garpu bermakna per game (yaitu yang di awal yang memaksa Bob untuk memilih tugas kebenaran) sudah cukup untuk mendapatkan kekerasan NP. Saya punya beberapa ide untuk menyingkirkan garpu awal itu, yang terhenti karena entah bagaimana memaksa Bob untuk menginvestasikan sejumlah besar modal tetap dalam n game tanpa Alice harus terlebih dahulu berkomitmen untuk game-game sebelumnya, tetapi jelas karena TABLE-GAME ada di P ini tidak mungkin tanpa garpu.

Saya belum terlalu memikirkan case khusus Anda dari UPD3 . Saya menduga itu juga NP-hard, karena alasan variabel gadget saya sekilas sepertinya mereka dapat beradaptasi dengan kendala tersebut, tetapi saya mungkin tidak akan memeriksanya lebih jauh.

gdmclellan
sumber
0

Pembaruan: mungkin salah, tersisa untuk saat ini sebagai catatan telah menjelajahi jalan. Lihat komentar.

Pembaruan 2: pasti salah.

Pertimbangkan grafik bentuk (B) -1-> (A) -1-> (B), yaitu G=(V,E) , di mana V={1,2,3} , E={(1,2),(2,3)} , simpul 1, 2, 3 masing-masing diberi label B, A, B, dan edge adalah semua biaya yang ditetapkan sebesar 1.

Tetapkan instance 3-game MULTI-GAME dengan menetapkan mA=mB=2 , G1=G2=G3=G , dengan ketiga game dimulai dari vertex 1. Jelas Alice tidak dapat memenangkan game ini.

Namun, pengulangan di bawah ini gagal untuk M[3,2,2] : tidak ada pemisahan dana Bob 2u,u antara dua game pertama dan game ketiga sehingga untuk semua pembagian dana Alice v,2v , baik M[2,2u,2v]=B dan W[3,u,v]=B . Jikau=1 atauu=2 , laluM[2,2u,2]=A ; dan jikau=0 makaW[3,u,2]=SEBUAH .

Saya tidak melihat cara langsung untuk menyelamatkan pendekatan ini. Membalik urutan kuantifikasi pada kamu dan v membuat perulangan gagal pada contoh di pembaruan 2 dari posting pertanyaan.


mSEBUAH,mB,G1,...,Gn,

Precompute

W[k,x,y]={SEBUAHjika Alice memenangkan GAME pada Gk dengan dana awal x untuk Alice dan y untuk Bob,Bjika tidak

xmSEBUAHymB

M.[k,x,y]kxmAymBM[k,x,y]=BA

M[1,x,y]=W[1,x,y]

dan

M[k+1,x,y]=Bif and only ifvu,W[k+1,u,v]=BandM[k,xu,yv]=B.

M[n,mA,mB]=A

gdmclellan
sumber
Algoritme Anda salah. Perhatikan grafik pada gambar di posting saya. Pertimbangkan MULTI-GAME dengan dua grafik seperti itu. Di sini W [1,0,2] = W [2,0,2] = B dan W [1,1,3] = W [2,1,3] = B. Namun, untuk MULTI-GAME dengan m_A = 1 dan m_B = 5 Alice menang
Alexey Milovanov
u
@AlexeyMilovanov dengan perubahan pada quantifiers yang harus diulang sebagai contoh. Tapi Anda menaruh keraguan dalam pikiran saya tentang pendekatan ini. Sepertinya Bob mungkin perlu mengeluarkan satu distribusi dana yang mengalahkan semua distribusi yang bisa dibayangkan Alice. Yang mengatakan, saya tidak yakin bahwa saya telah dibujuk oleh ide inti di sini: bahwa masalah ini sebenarnya bukan tentang GAME. Adakah yang diketahui tentang masalah terkait di mana setiap instance GAME digantikan oleh tabel sederhana seperti yang disebutkan di atas?
gdmclellan
Tabel W tidak menentukan pemenang. Saya tidak tahu apakah itu benar untuk beberapa meja lain ...
Alexey Milovanov
@AlexeyMilovanov Tabel W menurut definisi menentukan pemenang instance GAME yang diisolasi untuk grafik input tertentu. Saya tidak yakin mengapa Anda mengatakan sebaliknya. Saya telah memperbarui jawaban saya dengan contoh tandingan, kalau-kalau ada keraguan bahwa itu salah.
gdmclellan
0

[n]n+1n0i+1i0i<n00n[n]n00

Gαβα[i]ββ[j][k]j<kαββ[j][k][k][i]{i{jk}}

Steven Stadnicki
sumber
1
Buktinya dalam tesis ini tampaknya menggunakan nilai i, j dan k yang besar dalam game. Perhatikan bahwa di sini semua bobot dapat dianggap paling banyak dari modal para pemain, yang diwakili dalam unary.
Antti Röyskö
@ AnttiRöyskö Saya harus melihat lebih dekat buktinya, lalu; Saya percaya hasil pada PSPACE-kelengkapan Go endgames menggunakan hasil tesis dan mengasumsikan penghitungan unary juga (karena ada, i / j / k berasal dari ukuran daerah papan).
Steven Stadnicki
αβ0
αβα[i]>[j]j+1[i][j]
αβn