<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">ellibs</journal-id><journal-title-group><journal-title xml:lang="ru">Электронные библиотеки</journal-title><trans-title-group xml:lang="en"><trans-title>Russian Digital Libraries Journal</trans-title></trans-title-group></journal-title-group><issn pub-type="epub">1562-5419</issn><publisher><publisher-name>Казанский (Приволжский) федеральный университет</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.26907/1562-5419-2020-23-5-1044-1057</article-id><article-id custom-type="elpub" pub-id-type="custom">ellibs-247</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Статьи</subject></subj-group></article-categories><title-group><article-title>Разработка плагина поведения NPC для игрового движка Unity</article-title><trans-title-group xml:lang="en"><trans-title>Npc Behavior Plugin Development for Game Engine Unity</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Паренюк</surname><given-names>Л. Н.</given-names></name><name name-style="western" xml:lang="en"><surname>Parenyuk</surname><given-names>L. N.</given-names></name></name-alternatives><email xlink:type="simple">parenyukln@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Кугуракова</surname><given-names>В. В.</given-names></name><name name-style="western" xml:lang="en"><surname>Kugurakova</surname><given-names>V. V.</given-names></name></name-alternatives><email xlink:type="simple">vlada.kugurakova@gmail.com.</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Казанский (Приволжский) федеральный университет</institution></aff><aff xml:lang="en"><institution>Higher School ITIS. Kazan Federal University</institution></aff></aff-alternatives><pub-date pub-type="collection"><year>2020</year></pub-date><pub-date pub-type="epub"><day>28</day><month>10</month><year>2020</year></pub-date><volume>23</volume><issue>5</issue><fpage>1044</fpage><lpage>1057</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Паренюк Л.Н., Кугуракова В.В., 2020</copyright-statement><copyright-year>2020</copyright-year><copyright-holder xml:lang="ru">Паренюк Л.Н., Кугуракова В.В.</copyright-holder><copyright-holder xml:lang="en">Parenyuk L.N., Kugurakova V.V.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://ellibs.elpub.ru/jour/article/view/247">https://ellibs.elpub.ru/jour/article/view/247</self-uri><abstract><p>Существуют различные подходы для создания искусственного интеллекта в играх, и каждый имеет как и плюсы, так и недостатки. В настоящем исследовании описана собственная реализация задания поведения NPC с использованием алгоритмов машинного обучения, которые будут связаны со средой Unity в режиме реального времени. Такой подход может быть применен при разработке игр. </p></abstract><trans-abstract xml:lang="en"><p>There are various approaches for creating artificial intelligence in games, and each has both advantages and disadvantages. This study describes an authoring implementation of the NPC behavior task using machine learning algorithms that will be associated with the Unity environment in real time. This approach can be used in game development.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>искусственный интеллект в играх</kwd><kwd>поведение агентов</kwd><kwd>разработка игр</kwd></kwd-group><kwd-group xml:lang="en"><kwd>Unity</kwd><kwd>python</kwd><kwd>machine learning</kwd><kwd>AI</kwd><kwd>NPC</kwd><kwd>scikit-learn</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Бакиров А.Р., Костюк Д.И., Лазарев Е.Н., Хафизова А.Р. Опыт создания неигровых персонажей в виртуальных мирах // Электронные библиотеки. 2016. T. 19. № 6. C. 502&amp;ndash;520.</mixed-citation><mixed-citation xml:lang="en">Бакиров А.Р., Костюк Д.И., Лазарев Е.Н., Хафизова А.Р. Опыт создания неигровых персонажей в виртуальных мирах // Электронные библиотеки. 2016. T. 19. № 6. C. 502&amp;ndash;520.</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Juliani A., Berges V., Vckay E., Gao Y., Henry H., Mattar M., Lange D. Unity: A General Platform for Intelligent Agents / Open-source library // 2018. URL: https://github.com/Unity-Technologies/ml-agents</mixed-citation><mixed-citation xml:lang="en">Juliani A., Berges V., Vckay E., Gao Y., Henry H., Mattar M., Lange D. Unity: A General Platform for Intelligent Agents / Open-source library // 2018. URL: https://github.com/Unity-Technologies/ml-agents</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Juliani A. Introducing: Unity Machine Learning Agents Toolkit // 2017. URL: https://blogs.unity3d.com/2017/09/19/introducing-unity-machine- learning-agents/</mixed-citation><mixed-citation xml:lang="en">Juliani A. Introducing: Unity Machine Learning Agents Toolkit // 2017. URL: https://blogs.unity3d.com/2017/09/19/introducing-unity-machine- learning-agents/</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Tang W., Lai J. Enhancing Agent Intelligence with Behavior Duplication // Advanced Materials Research. 2012. Vols. 403&amp;ndash;408. P. 1266&amp;ndash;1269.</mixed-citation><mixed-citation xml:lang="en">Tang W., Lai J. Enhancing Agent Intelligence with Behavior Duplication // Advanced Materials Research. 2012. Vols. 403&amp;ndash;408. P. 1266&amp;ndash;1269.</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Hugunin J. IronPython / Open-source library // 1st ver. 2006: last ver. 2018. URL: https://ironpython.net</mixed-citation><mixed-citation xml:lang="en">Hugunin J. IronPython / Open-source library // 1st ver. 2006: last ver. 2018. URL: https://ironpython.net</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Scikit-learn / Open source library // 1st ver. 2007: last ver. 2020. URL: https://scikit-learn.org</mixed-citation><mixed-citation xml:lang="en">Scikit-learn / Open source library // 1st ver. 2007: last ver. 2020. URL: https://scikit-learn.org</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Pedregosa F. et al. Scikit-learn: Machine Learning in Python // Journal of Machine Learning Research (JMLR 12). 2011. P. 2825&amp;ndash;2830.</mixed-citation><mixed-citation xml:lang="en">Pedregosa F. et al. Scikit-learn: Machine Learning in Python // Journal of Machine Learning Research (JMLR 12). 2011. P. 2825&amp;ndash;2830.</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Li Y., Xu D.-W. A Game AI based on ID3 Algorithm // Conference: 2016 2nd International Conference on Contemporary Computing and Informatics. 2016. P. 681&amp;ndash;687.</mixed-citation><mixed-citation xml:lang="en">Li Y., Xu D.-W. A Game AI based on ID3 Algorithm // Conference: 2016 2nd International Conference on Contemporary Computing and Informatics. 2016. P. 681&amp;ndash;687.</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">De Freitas J.M., De Souza F.R., Bernardino H.S. Evolving Controllers for Mario AI Using Grammar-based Genetic Programming // IEEE Congress on Evolutionary Computation (CEC). 2018. P. 1&amp;ndash;8.</mixed-citation><mixed-citation xml:lang="en">De Freitas J.M., De Souza F.R., Bernardino H.S. Evolving Controllers for Mario AI Using Grammar-based Genetic Programming // IEEE Congress on Evolutionary Computation (CEC). 2018. P. 1&amp;ndash;8.</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">ITIS-DML-M2020-ParenyukLN. (2020) Python Unity Research [демонстрационная видеозапись] // YouTube. 9 марта 2020. &amp;ndash; (https://www.youtube.com/watch?v=4AqrpTxCXYk).</mixed-citation><mixed-citation xml:lang="en">ITIS-DML-M2020-ParenyukLN. (2020) Python Unity Research [демонстрационная видеозапись] // YouTube. 9 марта 2020. &amp;ndash; (https://www.youtube.com/watch?v=4AqrpTxCXYk).</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Плагин поведения NPC для игрового движка UNITY / Project repository // 2020. &amp;ndash; URL: https://github.com/parenyukln/pyton-unity-research</mixed-citation><mixed-citation xml:lang="en">Плагин поведения NPC для игрового движка UNITY / Project repository // 2020. &amp;ndash; URL: https://github.com/parenyukln/pyton-unity-research</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">C.-U. Lim, R. Baumgarten, S. Colton, C. Di Chio, S. Cagnoni, C. Cotta, M. Ebner, A. Ek&amp;aacute;rt, A.I. Esparcia-Alcazar, C.-K. Goh, J.J. Merelo, F. Neri, M. Preu&amp;szlig;, J. Togelius, G.N. Yannakakis. Evolving behaviour trees for the commercial game defcon // Applications of Evolutionary Computation, Berlin, Heidelberg: Springer Berlin Heidelberg. 2010. P.&amp;nbsp;100&amp;ndash;110.</mixed-citation><mixed-citation xml:lang="en">C.-U. Lim, R. Baumgarten, S. Colton, C. Di Chio, S. Cagnoni, C. Cotta, M. Ebner, A. Ek&amp;aacute;rt, A.I. Esparcia-Alcazar, C.-K. Goh, J.J. Merelo, F. Neri, M. Preu&amp;szlig;, J. Togelius, G.N. Yannakakis. Evolving behaviour trees for the commercial game defcon // Applications of Evolutionary Computation, Berlin, Heidelberg: Springer Berlin Heidelberg. 2010. P.&amp;nbsp;100&amp;ndash;110.</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">D Roguelike tutorial // Unity Technologies. 2015. URL: https://learn.unity.com/project/2d-roguelike-tutorial</mixed-citation><mixed-citation xml:lang="en">D Roguelike tutorial // Unity Technologies. 2015. URL: https://learn.unity.com/project/2d-roguelike-tutorial</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
