Takviye öğrenimi kullanılarak eğitilmiş ve TensorFlow Lite ile konuşlandırılmış bir aracıya karşı bir masa oyunu oynayın.
Başlamak
TensorFlow Lite'ta yeniyseniz ve Android ile çalışıyorsanız, başlamanıza yardımcı olabilecek aşağıdaki örnek uygulamayı keşfetmenizi öneririz.
Android dışında bir platform kullanıyorsanız veya TensorFlow Lite API'lerini zaten biliyorsanız, eğitimli modelimizi indirebilirsiniz.
Nasıl çalışır
Model, bir oyun aracısının 'Plane Strike' adlı küçük bir tahta oyunu oynaması için yapılmıştır. Bu oyunun ve kurallarının hızlı bir tanıtımı için lütfen bu BENİOKU'ya bakın.
Uygulamanın kullanıcı arayüzünün altında, insan oyuncuya karşı oynayan bir ajan oluşturduk. Aracı, kart durumunu girdi olarak alan ve 64 olası kart hücresinin her biri için tahmin edilen puanı veren 3 katmanlı bir MLP'dir. Model, politika gradyanı (REINFORCE) kullanılarak eğitilmiştir ve eğitim kodunu burada bulabilirsiniz. Aracıyı eğittikten sonra modeli TFLite'a dönüştürüyoruz ve Android uygulamasında dağıtıyoruz.
Android uygulamasında gerçek oyun sırasında, temsilcinin harekete geçme sırası geldiğinde, temsilci, önceki başarılı ve başarısız vuruşlar (isabetler ve ıskalar) hakkında bilgi içeren insan oyuncunun tahta durumuna (alttaki tahta) bakar. , ve insan oyuncu bitirmeden oyunu bitirebilmesi için bir sonraki vuruşu tahmin etmek için eğitilmiş modeli kullanır.
Performans karşılaştırmaları
Performans kıyaslama numaraları burada açıklanan araçla oluşturulur.
Model adı | Model boyutu | Cihaz | İşlemci |
---|---|---|---|
İlke Gradyanı | 84 Kb | Piksel 3 (Android 10) | 0,01 ms* |
Piksel 4 (Android 10) | 0,01 ms* |
* 1 konu kullanıldı.
girişler
Model, kart durumu olarak (1, 8, 8) bir 3-D float32
kabul eder.
çıktılar
Model, 64 olası vuruş pozisyonunun her biri için tahmin edilen puanlar olarak bir 2-D float32
Tensör (1,64) döndürür.
Kendi modelinizi eğitin
Eğitim kodundaki BOARD_SIZE
parametresini değiştirerek daha büyük/daha küçük bir tahta için kendi modelinizi eğitebilirsiniz.