
بسبب الضجيج في كل مكان حول تشيرنوبيل في أوائل الصيف (على الأقل في صناعة الطاقة النووية) ، فضلاً عن الكلمات الصاخبة المتمثلة في الرقمنة والتشويش ، قررنا في
IBRAE RAS إنشاء نوع من تطبيق البحث الذي يتم فيه تشغيل وحدة الطاقة النووية بشكل مفاهيمي وتنفيذها اختبارها في حديقة Bitsevsky.
خلفية
إن الهدف الأولي لإنشاء مثل هذا التطبيق هو بالطبع الاهتمام بكيفية محاكاة ببساطة وسهولة عملية إدارة مثل هذا الكائن المعقد ، ليس فقط من الناحية الفنية ، ولكن أيضًا من الجانب النفسي (بسبب العلاقة بين ثلاثة أطراف مختلفة: مشغلي المحطات والحكومة والمخربين). الهدف الآخر هو جعل الناس يشعرون كواحد من أطراف العملية ، ومعرفة كيف يتصرفون في مكانهم في الحياة الحقيقية. لا أتحدث عن برنامج تعليمي وتعليمي ، من حيث المبدأ ، جميع المشاركين في سعينا هم أكثر أو أقل دراية بهذا المجال من النشاط البشري ، ولكن مع ذلك ، يمكنك دائمًا تعلم شيء جديد. وبالطبع ، أردنا الاستمتاع في الأيام الدافئة الأخيرة من هذا العام 2019.
جوهر البحث هو: ينقسم المشاركون إلى ثلاثة فرق (مشغلي المحطات والحكومة والمخربين) ، ثم يتم إرسال كل منهم لأداء مهام على تحديد الموقع الجغرافي. بالتوازي مع الجري وحل الألغاز ، يعمل كل فريق على المفاعل من خلال تطبيق يعمل على موقع ويب. في الوقت نفسه ، يمكن للفرق التأثير على المفاعل إلى حد محدود ، أي عن طريق إنفاق نقاط العمل التي يتلقونها عند إتمام المهام بنجاح (في شكل رموز ترويجية للتطبيق).
في نهاية البحث ، يتم ضبط الوقت الذي يقضيه في إكمال البحث بناءً على مدى نجاح الفرق في الاتصال بالمفاعل. يجب أن أقول على الفور أنه نتيجة للاختبار الأول والوحيد في الوقت الحالي ، توقف الجميع عن الاهتمام بالوقت ، وتجولوا في الأماكن الجميلة في غابة بيتسفسكي ، ولا سيما الجبل الأصلع والمعبد السلافي القديم ، وقاموا بالمهام واستمتعوا بشمس سبتمبر بهدوء شديد مع العسل ...
تطبيق
هو مكتوب التطبيق في بيثون. تم إنشاء Frontend (هذا هو إدخال / إخراج البيانات من المشغل) باستخدام vuejs ، مسج وقارورة. الخلفية (منطق المفاعل ومعالجة الحدث) كانت مكتوبة في الثعبان النقي. تم التواصل بين الواجهة الأمامية والخلفية باستخدام قاعدة بيانات (SQLite). تم التفاف قاعدة البيانات مع sqlachemy. لنشر التطبيق المستخدم ياندكس الغيمة.
هذا ليس إعلانا.ولكن بفضل 4000 روبل مكافأة تمنحها ياندكس لاختبار السحابة ، كانت هذه المكافأة في متناول يدي ؛)

الواجهة
تتم كتابة جزء الخادم في بيثون (قارورة). تم إنشاء جزء العميل (واجهة المشغل) باستخدام vuejs و jquery وقليلا من قوالب الصفحة على الخادم.
عندما تذهب إلى موقع الويب ، يُطلب من المشارك إدخال رمز فريد لكل فريق ، وبعد ذلك يدخل في القائمة الرئيسية.
تتكون القائمة الرئيسية من 5 عناصر:
- الرسوم البيانية مع المعلمات مفاعل
- أدخل الرمز الترويجي
- لوحة التحكم
- الخريطة
- اخرج
في نافذة عرض الرسم البياني ، يمكن للاعب تتبع الحالات الحالية والعديد من المفاعل السابق. انظر أيضًا إلى معدل تغيير السلطة ، وفرصة وقوع حادث ، وعددهم ، وانظر أيضًا عدادات نقاط النصر.
في نافذة لإدخال رموز الترويجي. يمكن للمشارك تنشيط رمز ترويجي تم استلامه بطريقة أو بأخرى ، كقاعدة عامة ، بعد اجتياز فريق ما بعض الاختبارات.
تتوفر حالة المفاعل أيضًا في لوحة التحكم ، على غرار لوحة عرض الرسم البياني. ثم يتم عرض مجموعة من الأحداث الحالية مع إشارة إلى الاسم ، الفريق ، العداد حتى نهاية الحدث ، وكذلك إمكانية إلغائه (فقط خاص بك).
وبالطبع الإجراءات نفسها. أنها فريدة من نوعها لكل فريق. على سبيل المثال ، يتوفر نطاق واسع من الإجراءات للمشغلين للتحكم في المفاعل (قضبان التحكم ، معدل التدفق ، إضافة البورون ، إلخ). بالنسبة للحكومة ، هذا هو كل أنواع المتطلبات والقيود المفروضة على تشغيل الوحدة (زيادة الحمل ، والضغط على موظفي المحطة). بالنسبة للمخربين ، هذا هو فشل المضخات ومشغلي الرشوة ، إلخ.
بالنسبة لكل فريق ، تتوفر إجراءات تلغي تصرفات الآخرين ، مثل عملية مكافحة الإرهاب ، أو إدخال جاسوس في الحكومة أو رشوة المسؤولين (بالطبع ، لا يوجد شيء من هذا القبيل في الحياة الحقيقية ، ولكن لموازنة اللعبة ، كان علينا ابتكار أشياء).
تم توضيح جميع تصرفات الأطراف في الجدول:
في علامة تبويب الخريطة ، تتوفر خريطة من تطبيق خرائط ياندكس الذي تم إنشاؤه باستخدام مصمم الخريطة (لمزيد من التفاصيل ، انظر
الإعداد للعبة ).
الخلفية
الخلفية الكاملة مكتوبة بيثون النقي. في الواقع ، يتكون الكود بالكامل من كائن مفاعل واحد (مفاعل ، وحدة طاقة ، محطة) مع معلمة طاقة أو حالة. في كل خطوة خطوة (يتم ضبطها يدويًا ، نقوم بتعيين ثانية واحدة) ، تتغير الحالة وفقًا للأحداث التي حدثت في هذه الخطوة. يتم تحديث رصة الأحداث الحالية في كل خطوة من خلال الوصول إلى قاعدة البيانات ، والتي بدورها تملأ من قبل المشاركين في اللعبة من واجهة تطبيق الويب.
للراحة ، يتم جمع كل الأحداث في مصنع الأحداث واستقبال كائن المفاعل ومعرفه الفريد (رقم السطر في قاعدة البيانات) كمدخل. نظرًا لأن كائن فئة المفاعل يعرف كل ما يحدث في التطبيق ، فإن الأحداث وفقًا لذلك تعرف كل شيء منه ، مما يجعل عملية إنشائها مرنة جدًا.
للاختبار ، تم إنشاء الروبوتات التي تعمل وفقا لبعض الاستراتيجية. لوصف هذه المنطق ، تم إنشاء مصنع إستراتيجية أيضًا.
تم أيضًا إنشاء مصنع لحساب النقاط ، من أجل تغيير منطق العد من لعبة إلى أخرى. أنشأ المنطق الأساسي نقطة انتصار واحدة في كل خطوة خطوة وأعطاه لأحد الفرق حسب مستوى القوة في تلك الخطوة (50-75 - المشغلين ، 75-100 - الحكومة ، صفر وأكثر من 100 - مخربين ، وفي حالات أخرى لا أحد).
بحث
تدريب
تألفت الإعداد الرئيسي من العثور على مواقع للبحث ، وكذلك اختبار أولي للتطبيق في المختبر.
لإعداد المواقع ، قبل أسبوع من الحدث ، تم التخلي عن المنظم في غابة بيتسفسكي. تجول في جميع أنحاء الإقليم ووجد أماكن مثيرة للاهتمام وجذابة ، في كل مكان قام بإجراء ثلاث عمليات:
- لقد سجلت الموقع الجغرافي (باستخدام تطبيق خرائط ياندكس yandex.ru/maps ) ؛
- جودة الشبكة المقاسة (باستخدام تطبيق Speedtest www.speedtest.net ) ؛
- أخذ صورة أو موقع الفيديو.
ونتيجة لذلك ، تم جمع 30 موقعًا (10 مواقع لكل فريق).
أتاحت خرائط Yandex تبسيط إنشاء الخريطة إلى حد كبير ، نظرًا
لمنشئ خرائط
yandex.ru/map-constructor . يسمح لك بإضافة موقعك والمناطق وجميع أنواع العلامات إلى الخريطة. ثم قم بدمجه في التطبيق الخاص بك في شكل JavaScript أو iframe code أو ضعه كرابط ، وفي أسوأ الأحوال ، قم بطباعته. يمكن إضافة المواقع عن طريق استيرادها من ملف XLSX أو CSV أو KML أو GPX أو GeoJSON. كان الإزعاج الوحيد هو استحالة استيراد المواقع من خرائط Yandex العادية مباشرة إلى المنشئ (على الأقل لم نجدها) ، واضطررت إلى مقاطعتها في جدول xlsx واستيرادها بالفعل. تم تمييز المناطق ذات جودة الشبكة الرديئة في مصمم الخرائط كمنطقة حمراء.
في اليوم السابق للعبة (جيدًا ، كالعادة) اختبرنا اللعبة مع 3 أشخاص (شخص واحد من كل فريق). بشكل عام ، لم تكن هناك تعليقات خاصة ، فقد قمنا فقط بتعديل التقدير الأولي لتكلفة تصرفات الفرق بشكل طفيف. يجب أن أقول على الفور أن اللعبة نفسها كشفت عن بعض المشاكل (في الختام) ، والنتيجة هي أنه بالكاد يمكننا أن نتعرف عليهم في ظروف غرفة الدفيئة.
اللعبة
في صباح يوم 14 سبتمبر 2019 ، جمعنا المشاركين في غابة بيتسا. في البداية ، قام رياضينا وعضو كومسومول وعالم جيد بتمارين الصباح الحارقة.
ثم تم تقسيم المشاركين إلى فرق ، وأعطاهم رمزًا ترويجيًا أوليًا وأعلنوا بدء اللعبة.
فرقت فرقت ببطء إلى مواقع (الآن أفهم ، ربما لأنهم حاولوا معرفة التطبيق على طول الطريق). في الدقائق من 10 إلى 15 دقيقة الأولى ، واجه اللاعبون صعوبات ، لكنهم اعتادوا على ذلك وتحول انتباههم إلى كسب الرموز الترويجية.
لمزيد من الإثارة ، سلطنا الضوء على شخصية خاصة في غطاء للرأس كانت مرئية من بعيد ، حيث زار الفرق وطرح أسئلة للرموز الترويجية (في الوقت نفسه ، قام بتصحيح عضادات في البحث).
يجب أن أقول أنه بعد أن ركزنا بشكل كامل على التطبيق ، فقد تخلينا تمامًا عن الاستعداد للمسعى ، ونتيجة لذلك ، أكملنا جزءًا من الدعائم بالفعل في الليل قبل البحث ، ونسينا شراء جزء منه. على سبيل المثال ، نظرًا لحقيقة أننا نسينا شراء عدد كافٍ من الجرافات ، كان علينا التنافس عقلياً مع سكب الماء ، لأن لاعبينا لديهم خيال متطور جيدًا.
بشكل عام ، بدأت الفرق في أداء المهام ليس لتمرير جميع النقاط بشكل أسرع ، ولكن للحصول على أكثر من الرموز الترويجية
الذهبية . لقد جاء الأمر إلى التسول الوقح ، والذي كان بالطبع مكبوتاً بشدة. في مرحلة ما ، الرموز الترويجية الإضافية التي نفدها ، لكن الفرق ليست لديها رغبة في الحصول عليها. وبالتالي فإن الاستنتاج هو إعداد المزيد من الأكواد والأسئلة / المهام الترويجية لاستقبالها.
ربما كانت أكثر اللحظات التي لا تنسى بالنسبة لي هي دعوة أحد المشاركين من الفريق الحكومي إلى فريق المشغلين مع غضب من جودة عملهم ، والمتطلبات:
- زيادة القوة بشكل أسرع (في مرحلة ما ، كان فريق المشغل ، الذي يمتلك هامشًا كبيرًا من نقاط النصر ، غير مربح لزيادةه وأبقوا الوحدة منخفضة الأحمال) ،
- من الأفضل تنظيم الطاقة بأحمال عالية (نظرًا لأنه كان معهم بدأ المخربون في القيام بكل أنواع الحيل القذرة ، ولم يكن لدى المشغلين دائمًا وقت للرد عليها).
أجاب المشغلون بشكل معقول أنهم لا يملكون نقاط عمل كافية (اقرأ: التمويل) للوفاء برغباتهم وسيكونون سعداء إذا شارك الفريق الحكومي قليلاً من جانبهم. لسوء الحظ ، لم يتم تنفيذ نقل النقاط ، ولكن في المستقبل ، وبالنظر إلى هذه السابقة ، فإننا بالتأكيد سوف ننفذها. وفي المستقبل أيضًا ، سيكون من الجيد إضافة الدردشة إلى التطبيق للمراسلات بين الفرق لتشجيع الفرق على التفاعل بشكل أكثر نشاطًا مع بعضها البعض.
بشكل عام ، تميز هذه الصورة عملية العمل في المواقع بشكل جيد: شخص ما يحل المهمة ، شخص يتحكم في المفاعل ، شخص ما يستمتع بالحياة ، وفي مكان ما في الخلفية يختبئ كلب.
في النهاية
حدث شيء ، لا شيء. لم تكن المشكلات الرئيسية اختيار معلمات مفاعل جيدًا ، مما أثر سلبًا على طريقة اللعب:
- معدل نمو الحوادث ؛
- القصور الذاتي للمفاعل.
انهار المفاعل الأول على الفور تقريبًا إلى 0 بعد أن وصل إلى قيم الطاقة الحرجة (أكثر من 100) ولم يكن لدى المشغلين الوقت الكافي للرد ، حيث لم يكن لديهم سوى بضع ثوان للقيام بذلك (على الرغم من أن هناك أمثلة عندما تمكنوا من القيام بذلك ، على سبيل المثال ، إضافة البورون إلى المفاعل الأساسية).
الثانية جعلت الأحداث بسرعة كافية ومرة أخرى لم تسمح للمشاركين لتقييم الوضع واتخاذ قرار مستنير. في الواقع ، بالطبع ، هذا هو ما يحدث على الأرجح ، لكن لا تنسَ أن الفرق كانت لا تزال تدور حول المواقع وتؤدي مهام مختلفة ، والتي صرفت انتباههم عن المجموعة. كان من الضروري ، على الأقل ، وضع البرنامج في القدرة على التحكم في المعلمات في الوقت الفعلي ، وهو ما لم نفعله.
كجزء من البحث ، أخفقنا في تحديد الدعائم على وجه التحديد ، ونتيجة لذلك كان علينا أن نتوصل إلى مهمة في الوقت الفعلي بمواد مرتجلة. حسنًا ، لقد تحول معنى البحث عن التحرك بسرعة حول المواقع لتكون أول من يحصل على الرموز الترويجية لتوليد نقاط المكافآت (أوه ، هذا التعطش للربح ...). ولكن الأهم من ذلك ، في النهاية ، حصلنا على مزاج مرح ، ولحظات كثيرة لا تُنسى ، بالإضافة إلى رضا فضولنا.
يمكن العثور على إحصائيات اللعبة في
reactor-quest.imtqy.com ، وهو جدول تفاعلي (على أجهزة الكمبيوتر الشخصية) ، في الجزء السفلي يمكنك تحديد نطاق وقت الاهتمام لعرض أكثر تفصيلاً لها.
يتم نشر رمز التطبيق على GitHub
github.com/reactor-quest/reactor-quest التي يمكنك استخدامها بحرية.
كل ذرة جيدة وسلمية ، وفريق من العلماء الشباب IBRAE RAS!
