Глибоке навчання з підкріпленням віртуального менеджера в грі проти неефективності


Про успіхи Google Deepmind зараз знають і говорять. Алгоритми DQN (Deep Q-Network) перемагають Людини з непоганим відривом все більшу кількість ігор. Досягнення останніх років вражають: буквально за десятки хвилин навчання алгоритми навчаються і вигравати людини в теніс та інші ігри Atari. Нещодавно вийшли в третій вимір — перемагають людини в DOOM в реальному часі, а також вчаться керувати машинами і вертольотами.
DQN використовувався для навчання AlphaGo програванням тисяч партій в поодинці. Коли це ще не було модним, в 2015 році, передчуваючи розвиток даного тренду, керівництво Phobos в особі Олексія Спаського, замовило відділу Research & Development провести дослідження. Необхідно було розглянути існуючі технологій машинного навчання на предмет можливості використання їх для автоматизації перемоги в управлінських іграх. Таким чином, у даній статті піде мова про проектування самообучающегося алгоритму в грі віртуального управлінця проти живого колективу за підвищення продуктивності.
Прикладна задача аналізу даних машинного навчання класично має наступні етапи рішення:
  • формулювання проблеми;
  • збір даних;
  • підготовка даних;
  • формулювання гіпотез;
  • побудова моделі;
  • валідація моделі;
  • представлення результатів.
У даній статті буде розказано про ключові рішення в проектуванні інтелектуального агента.
Більш докладні описи етапів від постановки завдання до подання результатів розповімо в наступних статтях, якщо читачеві буде цікаво. Таким чином, ймовірно, ми зможемо вирішити завдання розповіді про багатовимірний і неоднозначному результаті дослідження не втрачаючи в зрозумілості.
Вибір алгоритму
Отже, для виконання завдання пошуку максимуму ефективності управління колективом було вирішено використовувати глибоке навчання з підкріпленням, а саме Q-learning. Інтелектуальний агент формує функцію корисності Q кожної дії з доступних йому на основі винагороди або покарання від переходу в новий стан середовища, що дає йому можливість вже не випадково вибирати стратегію поведінки, але враховувати досвід попереднього взаємодії з ігровим середовищем.
Основна причина вибору саме DQN в тому, що для навчання агента цим методом не потрібна модель для навчання, ні для вибору дії. Це критичне вимога до методу навчання з тієї простої причини, що формалізованої моделі колективу людей з застосованою на практиці предсказательная силою поки не існує. Тим не менш, аналіз успіхів штучного інтелекту в логічних іграх показує, що переваги підходу, заснованого на експертних знаннях, стають більш явними у міру ускладнення середовища. Це виявляється у шашках і шахах, де оцінка дій на основі моделі мала більший успіх, ніж Q-learning.

Одна з причин того, що навчання з підкріпленням ще не залишає без роботи офісних клерків в тому, що метод погано масштабується. Проводить дослідження середовища Q-навчається агент — активний учень, який повинен неодноразово застосувати кожне дії в кожній ситуації для того щоб скласти свою Q-функцію оцінки вигідності усіх можливих дій у всіх можливих ситуаціях.

Якщо, як у старих вінтажних іграх, число дій обчислюється кількістю кнопок на джойстику, а станів — положенням м'ячика, то у агента підуть десятки хвилин і годин на навчання для перемоги над людиною, то в шахах і GTA5 комбінаторний вибух вже робить число ігрових комбінацій станів і можливих дій космічним для проходження учнем.
Гіпотеза і модель
Щоб ефективно використовувати Q-learning для управління колективом, ми повинні максимально зменшити розмірність станів середовища і дій.
Наші рішення:
  • Перше інженерне рішення полягало в тому, щоб представити управлінську діяльність у вигляді сукупності міні-ігор. Кожна з них має дискретні кількості станів і дій таких, що порядок комбінацій зіставимо з успішно вирішеними ігровими завданнями. Таким чином, не потрібно будувати алгоритм, який буде шукати оптимальну управлінську стратегію в багатовимірному просторі, але безліч агентів перевершують гравця-людини в тактичних іграх. Приклад такої гри — управління завданням у YouTrack. Стану середовища (грубо) — час в роботі і статус, а дії — відкриття, перевідкриття таска, призначення відповідального. Детальніше нижче.
Приклад онлайн-навчання простій грі:
https://cs.stanford.edu/people/karpathy/convnetjs/demo/rldemo.html
  • Кожен співробітник офісу — інтелектуальний агент ускладнює середу різноманітністю своєї поведінки. Персоналізація дозволяє уникати мультиагентних середовищ, тому з одним співробітником грає один учень агент. У міні-грі з постановкою завдань агент отримує нагороду коли співробітник працює ефективніше (швидше вирішує завдання). Якщо для Q-учня агента співробітник (припустимо, розробник) виявиться некерований, то алгоритм не зійдеться.

  • найважливіше спрощення. У міні-грі по постановці співробітникам завдання — безперервне багатовимірне ігрових станів, хоча б тільки через параметр часу, витраченого на виконання завдання. А найгірше — не очевидно визначаються нагороди за дії агента. Ігрова середовище, як кінцеве безліч станів для кожної міні-ігри і розрахунок заохочення в тому чи ном стані, на 90% формалізована нашими управлінцями бізнес-логіка. Це найбільш складний і важливий момент, оскільки саме у формулі експертної оцінки станів і міститися експертні знання, які є неявній моделлю середовища і дій, а також визначають розмір винагороди у навчанні агента. Від пророчої сили даної неявній моделі і залежала успішність навчання агента.

На схемі представлені стану трьох ігрових середовищ для трьох агентів, керуючих ходом роботи над таском.
Стану:
  • Завдання зареєстрована (backlog);
  • Завдання відкрита;
  • В роботі;
  • Розробка завершена, завдання відкрита для тестування (QA);
  • Відкрита для тестування;
  • Тестується;
  • Готова, протестована;
  • Закрита.
Список дій для кожного з трьох агентів свій. Project Manager — Agent призначає виконавця та тестувальника, час і пріоритет завдання. Агенти, які працюють з Dev і QA, персональны для кожного виконавця та тестувальника. Якщо відбувається перехід тягаючи далі, агенти отримують нагороди, якщо таск повертається назад — покарання.
Найбільшу нагороду всі агенти отримують при закритті таска. Також для Q-навчання DF і LF (фактор дисконтування і навчання відповідно) підбиралися таким чином, щоб агенти були орієнтовані саме на закриття таска. Розрахунок підкріплення в загальному випадку відбувається за формулою оптимального керування враховує, крім іншого, різницю в оцінці часу та реальними витратами, кількість повернень завдання ітд. Плюсом даного рішення є його можливість масштабованості на більший колектив.
Висновок
Залізо на якому виконувалися розрахунки — GeForce GTX 1080.
Для наведеної вище міні-ігри з постановкою і веденням завдання в Youtrack, керуючі функції зійшлися на значення вище середніх (продуктивність працівника зросла щодо роботи з менеджером-людиною) для 3 осіб 5. Загальна продуктивність (в годинах) зросла майже вдвічі. Задоволених експериментом співробітників з тестової групи не було; незадоволених 4; один утримався від оцінки.
Тим не менш, ми для себе зробили висновки, що для застосування методу «бою» необхідно вносити в модель експертні знання з психології. Загальна тривалість розробки і тестування — більше року.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.