Bir kelime oyunu için sınırlı AI kelime dağarcığını nasıl simüle edebilirim?


14

Küçük bir avuç rekabetçi kelime oyunum var ve tercih diğer insan rakiplere karşı (çoğunlukla asenkron) oyun oynamak olsa da, oyunculara yapay zekaya karşı oynama seçeneği sunmak istiyorum. Sözlüğüm var ve oynarken AI'ya tam sözlük bilgisini kolayca verebilirim, ancak endişem, AI'nın düzenli olarak oynadıkları kelimeleri oynaması oyuncular için sinir bozucu bir deneyim olacak: 'Bu oyunu kazanırdım eğer bildiğim kelimeleri kullanırsa! ' - yapay zekanın genel yetenek seviyesi azalsa bile.

Ayarlanmış oyun parametreleri ve daha zayıf bir kelime dağarcığı kombinasyonu ile daha zayıf bir yapay zeka oluşturmayı tercih ederim - ancak bu kelimeleri 'yaygın' kelimelerle nasıl sınırlayacağımdan emin değilim. Birkaç kelime frekans listesine baktım (örneğin, Project Gutenberg kitaplarında görünen tüm kelimelerin, olay sayısına göre sıralanmış) listesi var, ancak hepsinin yanlış negatifleri var: herkesin bildiğini t Herhangi bir gerçek frekans ile ortaya çıkar (örneğin, CHEETAH PG metinlerinde VOCATIVE veya SUTTEE'den daha az görülür). Bir kelimenin popülerliğini tahmin etmek için arama sonuçlarını kullanmayı denedim, ancak sahte yanlış tahminlere eğilimli olma eğilimindedirler ve elbette '

Herkes kelime kullanımı kaba bir sıklığını belirlemek için diğer iyi araçlar veya oyuncular için doğal hissedecek kelime oyunu AI sınırlamak için başka yolları hakkında önerileri var mı?


6
öğrenmesine izin verebilirsin! Oyuncu "bilmediği" bir kelimeyi her kullandığında, onu öğrenme şansı 6/10 olabilir, aksi halde yeni bir rastgele kelime öğrenir! (Bu yüzden genellikle oyuncunun bildiği kelimeleri öğrenir, ancak oyuncunun yapamayacağı kelimeleri yavaş yavaş ortaya çıkarır (eğitim !!)) Tabii ki, bu her oyuncu için bir "AI sözlüğüne" ihtiyacınız olacağı anlamına gelir.
Joel

Yanıtlar:


6

Bence çözümünüz hala bazı kelime sıklığı listesiyle devam etmek olacaktır. Gutenberg Projesi, sizin için geçerli olmayabilir, çünkü çoğunlukla telif hakkının sona erdiği eski metinleri içerir ve modern İngilizce konuşanlar için garip frekanslar verir. Sanırım "vokatif" aslında "çita" dan daha sık kullanılan bir kelimeydi ...

Dolayısıyla çözümün doğru frekans listesini bulmak olduğunu düşünüyorum . Biraz araştırmak beni tüm Simpsons bölümlerinde en çok kullanılan 5000 kelimeyi tökezletti, bu biraz daha güncel olabilir. Örneğin "krabappel" gibi kelimeleri sıralamak için bu listeye gerçek bir sözlükle çapraz referans yapmak isteyebilirsiniz :)

Umarım yardımcı olur, hangi çözümü kullandığınızı duyduğum için heyecanlıyım!


1
Benim güçlü izlenimim, 'herkesin bildiği, ancak hiç kimsenin kullanmadığı kelimeler' ile ilgili sorunların hala herhangi bir sözlükle devam edeceği, ancak yapabileceğim en iyi şey olabilir - ve elbette oyuncuların yapamayacağı iyi bir şans var hatta yapay zekanın bilmediği kolay kelimeleri, sadece zor kelimeleri fark eder.
Steven Stadnicki

+1 Haklı olabilirsin ama neden böyle? Genel olarak bana öyle geliyor ki insanlar duydukları kelimeleri sık sık öğrenmeli. Doğruysanız sebebini bilmek ilginç olurdu ... :) Hipotezim, Gutenberg projesinde olduğu gibi, kullanılan korpusta bir önyargıdan kaynaklanıyor olması nedeniyle, çözüme bağlı kalıyorum sadece doğru frekans listesine ihtiyacınız var.
Mikael Högström

5

Kalabalık kaynak. Kelime sıklığı tablosu oluşturmak için oyuncularınızın oynadığı tüm çok oyunculu oyunları kullanın. Herhangi bir analitik hizmetinin bu verilerin toplanmasına ve düzenlenmesine yardımcı olabileceğini düşünüyorum. Hatta kelimeyi kullanan oyuncunun ne kadar "iyi" olduğuna göre girişleri ağırlıklandırabilirsiniz.


Bunu beğendim, ancak yine de 'başlangıç' probleminden ziyade 'güncelleme' problemini çözüyor gibi geliyor (elbette, çok oyunculu ve solo oyunları yan yana başlatmak istediğimi varsayarak, farklı bir soru Baştan sona).
Steven Stadnicki

2

AI seviyenize göre temel kelime dağarcığı ile başlayın. Örneğin AI düzeyi listeniz aşağıda olsun.

  • temel: 1000 kelimelik kelime hazinesi
  • ortalama: 2000 kelime dağarcığı
  • zor: 5000 kelime dağarcığı

Bu kelimeleri, google arama ile görebileceğiniz aşağıdaki web sitelerinden seçebilirsiniz .

Bu siteler başlangıç ​​kelimelerinizi verecektir ama bence google n-grams daha iyi bir seçim olabilir. Zaten başlangıç ​​kelimeleriniz hakkında çok fazla endişelenmeyin, AI sözlüğünüzün altında açıklanan güncelleme / ekleme mekanizması oyuncularınıza göre kendini düzeltmelidir.

oyuncularınız bu oyunu oynarken öğrenir, çünkü AI da öğrenmelidir. Rakipleri tarafından en çok kullanılan kelimeleri öğrenmesine izin verin.

Örneğin, AI temelinize karşı oynanan 10 kişi, 100 bilinmeyen kelime kullandılar, yani AI sözlüğünüzde olmayan kelimeler. En çok kullanılan kelimeleri seçin ve bunları temel AI sözlüğünüze, ayrıca ortalama ve sabit sözlüğünüze ekleyin. Ayrıca, sözlükte kullanılmayan bazı kelimeleri insanların kullandığı kelimelerle güncellemeyi de seçmelisin. Bu şekilde başlangıç ​​sözlüğünüz oyuncularınızın bilgisi için daha uygun olacaktır. Daha az kelime / farklı kelime grubu ile başlayabilirsiniz, ancak AI'niz insanlara karşı oynarken öğrenecektir.

Ayrıca yapay zekanızı temel seviyeyle başlatmayı ve sadece yeterli kelime öğrendiğinde diğer seviyelere yükseltmeyi de düşünebilirsiniz.


Bu, kelime dağarcığını güncellemek için iyi bir yol sağlar, ancak yine de başlangıç ​​sorusunu bırakır - bu ilk kelime dağarcığı nereden geliyor?
Steven Stadnicki
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.