Saya mencari algoritma yang efisien yang memungkinkan saya memproses pohon pencarian minimax untuk catur dengan pemangkasan alpha-beta pada arsitektur terdistribusi. Algoritma yang saya temukan (PVS, YBWC, DTS lihat di bawah) semuanya cukup tua (1990 adalah yang terbaru). Saya berasumsi ada banyak kemajuan besar sejak itu. Apa standar saat ini di bidang ini?
Juga tolong tunjukkan saya pada penjelasan idiot tentang DTS karena saya tidak dapat memahaminya dari makalah penelitian yang telah saya baca.
Algoritma yang disebutkan di atas:
- PVS: Pemisahan Variasi Prinsip
- YBWC: Young Brothers Wait Concept
- DTS: Dynamic Tree Splitting
semua dibahas di sini .
Jawaban:
ya teorinya telah maju secara signifikan dan agak karena literatur analisis catur dan teknik pemrograman paralel umum. berikut adalah beberapa referensi terbaru tentang (catur) pemangkasan alpha beta atas cluster / paralelisme yang didistribusikan. juga beberapa literatur catur komputasi terdistribusi awal mendahului banyak pola desain paralel dasar dan dapat dikonseptualisasikan dalam kerangka itu.
Algoritma Paralel-Beta Paralel pada GPU / Strnad, Guid (2011)
Pencarian Paralel Alfa-Beta pada Memori Bersama Multiprosesor / Manohararajah (2001) 98pp!
Paralelisasi Program Catur Sederhana / Greskamp, 2003
Pemangkasan Alpha-Beta Paralel dari Pohon Keputusan Game: Implementasi Catur / Steele 1999
Apakah mungkin menjalankan pencarian Minimax dengan Alpha-Beta Pruning secara paralel dengan OpenMP? (stackoverflow)
Algoritma pencarian pohon paralel kinerja tinggi DTS (Hyatt 1994)
ide dasar di balik DTS adalah bahwa pohon pencarian didistribusikan di antara node komputasi berdasarkan kompleksitas pindah / tata letak. prosesor yang tidak digunakan yang "selesai lebih awal" dapat melakukan pekerjaan tambahan di luar alokasi awal yang dapat didistribusikan secara merata pada awalnya tetapi akan berubah menjadi tidak merata. karenanya pada dasarnya semacam antrian "load balancing" dan "produsen / konsumen" , atau juga mirip dengan penjadwalan pekerjaan.
sumber