العب لعبة لوحية ضد وكيل ، يتم تدريبه باستخدام التعلم المعزز ونشره باستخدام TensorFlow Lite.
البدء
إذا كنت مستخدمًا جديدًا لـ TensorFlow Lite وتعمل بنظام Android ، فإننا نوصي باستكشاف التطبيق المثال التالي الذي يمكن أن يساعدك على البدء.
إذا كنت تستخدم نظامًا أساسيًا بخلاف Android ، أو كنت معتادًا بالفعل على TensorFlow Lite APIs ، فيمكنك تنزيل نموذجنا المُدرب.
كيف تعمل
تم تصميم النموذج لوكيل اللعبة للعب لعبة لوحية صغيرة تسمى "Plane Strike". للحصول على مقدمة سريعة لهذه اللعبة وقواعدها ، يرجى الرجوع إلى هذا الملف التمهيدي .
تحت واجهة المستخدم الخاصة بالتطبيق ، قمنا ببناء وكيل يلعب ضد اللاعب البشري. العامل عبارة عن MLP ثلاثي الطبقات يأخذ حالة اللوحة كمدخلات ويخرج النتيجة المتوقعة لكل خلية من خلايا اللوحة الـ 64 الممكنة. يتم تدريب النموذج باستخدام تدرج السياسة (REINFORCE) ويمكنك العثور على رمز التدريب هنا . بعد تدريب الوكيل ، قمنا بتحويل النموذج إلى TFLite ونشره في تطبيق Android.
أثناء اللعب الفعلي للعبة في تطبيق Android ، عندما يحين دور الوكيل لاتخاذ إجراء ، ينظر الوكيل إلى حالة لوحة اللاعب البشري (اللوحة الموجودة في الأسفل) ، والتي تحتوي على معلومات حول الضربات الناجحة وغير الناجحة السابقة (النتائج والأخطاء) ، ويستخدم النموذج المدرب للتنبؤ بمكان الضربة التالية ، بحيث يمكنه إنهاء اللعبة قبل أن يفعلها اللاعب البشري.
معايير الأداء
يتم إنشاء أرقام قياس الأداء باستخدام الأداة الموضحة هنا .
اسم النموذج | حجم النموذج | جهاز | وحدة المعالجة المركزية |
---|---|---|---|
تدرج السياسة | 84 كيلو بايت | Pixel 3 (Android 10) | 0.01 مللي ثانية * |
Pixel 4 (Android 10) | 0.01 مللي ثانية * |
* 1 الخيوط المستخدمة.
المدخلات
يقبل النموذج float32
ثلاثية الأبعاد 32 Tensor (1 ، 8 ، 8) كحالة اللوحة.
النواتج
يُرجع النموذج عوامة ثنائية الأبعاد 32 Tensor للشكل (1،64) float32
المتوقعة لكل من 64 موقعًا ممكنًا للضربة.
تدريب النموذج الخاص بك
يمكنك تدريب النموذج الخاص بك على لوحة أكبر / أصغر عن طريق تغيير معلمة BOARD_SIZE
في كود التدريب .