Monte Carlo Ağacı Arama: Ne tür hareketler kolayca bulunabilir ve ne tür sorunlar çıkarır?


10

MCTS'nin ne kadar iyi performans gösterebileceğimi düşündüren bir senaryo ile başlamak istiyorum: Diyelim ki arama ağacına henüz eklenmemiş bir hareket var. Bazı katmanlar / çok derin hareketler. Ancak bu hamleyi oynarsak oyun temel olarak kazanılır. Bununla birlikte , verilen oyun durumunda bunun yerine yapılabilecek tüm hareketlerin çok çok kötü olduğunu varsayalım . Tartışma uğruna diyelim ki 1000 olası hamle var ve bunlardan sadece biri iyi (ama çok iyi) ve geri kalanı çok kötü. Bunun farkına başarısız ve MCTS olmaz değilbu hamle doğru arama ağacı büyümek ve aynı zamanda bu alt ağacı çok kötü derecelendirmek? MCTS sonunda minimax yakınsama (ve sonunda yeterli bellek varsa tüm ağacı inşa edecek) biliyorum. O zaman birçok kötü olasılık olsa bile hareketin iyi olduğunu bilmelidir. Ama sanırım pratikte bu bir kişinin güvenebileceği bir şey değil. Belki birisi bana bunun doğru bir değerlendirme olup olmadığını söyleyebilir.

Bu özel senaryo dışında MCTS'nin kötü (veya olağanüstü iyi) performans göstereceği başka senaryolar olup olmadığını da bilmek istiyorum.


MCTS olasılıklıdır. Bu nedenle ipuçlarına ihtiyaç duyar veya hiçbir şey bulamaz. Örneğin: samanlıkta iğne aramak. Bunu deneyin ve başarısız olacaksınız. Daha gerçekçi bir örnek bulabilirseniz ve bu örnek için en uygun stratejinin ne olacağını sorarsanız iyi olur. Bu, samanlıkta iğnelerin nasıl daha iyi bulunacağına dair bir ipucu verebilir.
Trilarion

Yanıtlar:


2

Hareketin bulunup bulunmadığı ve ne kadar hızlı bulunacağı birkaç şeye bağlıdır. Doğru anlarsam, "büyük kazanç" hareketine yol açan birçok "kötü" hamle sırası vardır ve MCTS algoritmasının "büyük kazanç" hamlesine ulaşmayacağından korkuyorsunuz çünkü daha umut verici olacaktır ağacın yukarısına ilerler. Düşünülmesi gereken bazı şeyler (Wikipedia MCTS makalesini de okuyun ):

  • oyun oynarken, oyununuzu sadece birkaç hamle veya oyun sonuna kadar oynayabilirsiniz. Sadece birkaç hamle daha oynamak daha hızlıdır, ancak aşırı durumda en iyi seçim olacağını açıklamışsınızdır. Bu tür senaryoların varlığını biliyorsanız, oyunlarda oyunların sonuna kadar oynamayı unutmayın.

  • oynatma yaparken, hamlelerinizi / eylemlerinizi rastgele veya probleminize göre uyarlanmış basit, açgözlü (hızlı) buluşsal yöntemlere göre seçebilirsiniz. Oyununuz / probleminiz için bu tür senaryoları bulmak veya dikkate almak için tasarlanmış açgözlü buluşsal yöntemler var mı? Evet ise, uygulayın. Daha sonra buna "ağır playout" denir. Sonuçları rasgele hareketlerle çalmalarla karşılaştırın.

  • UCT'yi (Ağaçlara uygulanan Üst Güven Sınırı) kullanarak eylemleri seçerseniz, ifadenin ilk kısmı sömürüden sorumludur. Ortalama kazanç oranı yüksek olan hamleler tercih edilir. İkinci bölüm ise keşfe karşılık gelir. Keşif parametresi yeterince yüksek ayarlanmışsa (probleminiz için ampirik olarak test edin), birkaç simülasyon ile hareketler tercih edilecektir. Yüksek keşif, sömürü zararı içinde altın hareketinizi bulmanın başka bir yolu olacaktır (keşif / sömürü ikilemini okuyun).

Gerçekçi bir oyun veya sorun senaryosu tanımlarsanız, uygun bir strateji bulmanıza yardımcı olabiliriz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.