Методика обучения программированию через проектирование интеллектуальных игр с роботизированным исполнением
Журнал Научные высказывания

Методика обучения программированию через проектирование интеллектуальных игр с роботизированным исполнением

В статье представлена методика обучения программированию с применением проектного подхода. Рассматривается создание интеллектуальной игры «Крестики-нолики» с визуализацией ходов с помощью манипулятора Dobot Magician. Показано, как проект объединяет элементы Python-программирования, алгоритмизации и мехатроники. Раскрыт методический потенциал проекта, его использование на уроках информатики, технологии и физики. Описаны этапы модернизации кода, развитие логики ИИ и реализация автоматического исполнения ходов с помощью робота.

интеллектуальные игры
проектное обучение
методика преподавания
программирование
робототехника
Dobot Magician
Python

Проект по созданию игры «Крестики-нолики» с визуализацией ходов посредством робота-манипулятора Dobot Magician и программной реализацией на языке Python продолжает своё развитие как в техническом, так и в педагогическом аспектах. Первоначальная версия проекта, описанная ранее, позволяла отрисовывать ходы игроков на листе бумаги, однако логика игры и пользовательский интерфейс были относительно простыми. Новая итерация направлена на внедрение более сложной игровой логики, повышение визуальной и функциональной выразительности, а также усиление методического потенциала системы.

Центральным новшеством стало внедрение многоступенчатого алгоритма принятия решений искусственным интеллектом. Это особенно ценно в образовательном контексте, поскольку позволяет учащимся видеть реальные примеры приоритетного принятия решений и логических конструкций. Алгоритм ИИ был переработан: в первую очередь он проверяет возможность завершить игру победным ходом; если такового нет — блокирует потенциальную победу соперника; затем стремится занять центр поля; только в случае невозможности всех вышеуказанных шагов производится случайный выбор. Такая иерархия действий является иллюстрацией принципов программной логики и разработки ИИ. На Рис. 1 представлена структура этого алгоритма, встроенная в общий цикл обновления состояния игры, с чётким приоритетным порядком анализа ходов.

Рис. 1. Фрагмент кода с приоритетной логикой принятия решений ИИ.

Методически, данный подход позволяет преподавателю организовать обсуждение алгоритмов с учениками: что делает компьютер в каждой ситуации, почему именно так, какие приоритеты заданы явно, а какие могли бы быть альтернативными. Учащиеся могут даже предлагать свои версии стратегии, что стимулирует развитие критического и системного мышления.

Не менее важным элементом стала реализация автоматической записи результатов партий. Теперь в процессе игры данные о победителе или ничьей, а также временная метка, сохраняются в отдельный файл. Это реализовано через функцию save_game_result_to_file (winner) (см. Рис. 2). Такая функция имеет методическую значимость: учащиеся видят, как можно сохранять игровые данные для дальнейшего анализа или статистики, а преподаватель — как это можно использовать для мониторинга успеваемости в практических занятиях.

Рис. 2. Фрагмент кода записи результатов игры в файл с фиксацией имени победителя и времени.

Далее представлен внешний вид таблицы результатов, которой представлена статистика по игрокам (Рис. 3).

Рис. 3. Таблица результатов

Программа была дополнена вводом имён игроков. При выборе режима «игрок против игрока» программа предлагает пользователю ввести оба имени, в то время как при игре против компьютера запрашивается только одно, а имя ИИ присваивается автоматически. Для режимов полной автоматизации (compvs и dobotonly) имена фиксированы. Это отражено в пользовательском интерфейсе, где ввод имён реализован в рамках диалога выбора режима.

С педагогической точки зрения, такая реализация помогает учащимся лучше ориентироваться в логике пользовательского взаимодействия, знакомит их с понятием параметризации и динамической настройки, что соответствует основам проектирования интерфейсов и дизайна пользовательского взаимодействия.

Важным этапом модернизации стало разделение логики по игровым режимам. Вместо одной универсальной функции были созданы отдельные модули для каждого типа взаимодействия: player_vs_player, player_vs_computer, computer_vs_computer, dobot_only. Это облегчает читаемость кода, способствует модульности и масштабируемости, а главное — демонстрирует обучающимся принцип декомпозиции задачи. Подобная архитектура может быть представлена на уроке как основа принципа «одна функция — одна задача».

Кроме логических улучшений, была значительно обновлена визуальная часть интерфейса. Поле теперь оформлено в едином стиле Tile.TButton: крупный читаемый шрифт, серый фон, визуальные эффекты при наведении курсора. Символы X и O окрашены в разные цвета: белый и оранжевый соответственно (см. Рис. 4). Это не только повышает эстетическое восприятие, но и делает игру более доступной для детей с разной степенью восприятия визуальной информации.

Рис. 4. Внешний вид игрового поля с разными цветами символов и стилизованными кнопками.

В логике игры была исправлена критически важная ошибка, связанная с определением победных комбинаций. Ранее некорректная индексация массива могла привести к неправильному определению исхода партии. В новой версии функция win_arrays() переписана таким образом, чтобы анализировать только допустимые комбинации символов и гарантировать честность игры (см. рис. 5). Эта модификация представляет собой хороший пример работы с массивами и условиями, и может быть вынесена на отдельное занятие как кейс анализа и отладки.

Рис. 5. Функция определения победных комбинаций после устранения логических ошибок.

Для документирования и анализа всех ходов была реализована система ведения логов. Каждое действие фиксируется в списке listbox_statistic с указанием номера хода, символа и координат (например: Ход 3: X → (2, 1)). Список автоматически прокручивается вниз при каждом новом ходе, что видно на рис. 4. Это позволяет учащимся отслеживать ход игры, а также использовать лог для последующего анализа, например — в виде самостоятельного задания: разработать функцию анализа наиболее часто выбираемых клеток или стратегий ИИ.

Одним из наиболее наглядных и демонстрационных нововведений стало расширение режимов игры: теперь каждый режим может быть запущен как полностью на компьютере, так и с отрисовкой с помощью Dobot Magician. Введён специальный режим «Добот против Добота», в котором оба ИИ поочерёдно делают ходы и визуализируют их на бумаге.

Рис. 6. Меню игры.

Этот режим имеет огромный потенциал как для методического сопровождения, так и для демонстрации возможностей интеграции аппаратных и программных средств. Он особенно эффектен на открытых уроках, конференциях, выставках или в рамках итоговой проектной работы.

Применение данного проекта на уроках позволяет реализовать межпредметные связи между физикой и математикой (принцип действия манипулятора, координатные системы, сервомеханизмы), информатикой (структуры данных, логика, ИИ), технологией (моделирование, автоматизация), а также формирует у обучающихся важные навыки XXI века: алгоритмическое мышление, проектное мышление, командную работу, цифровую грамотность. Занятия, построенные на таких проектах, получают статус исследовательских и побуждают учащихся к инициативе и самостоятельному освоению материала, формируют у учащихся навыки инженерного мышления и проектирования.

Таким образом, продолжающаяся разработка программного комплекса на Python с визуализацией Dobot Magician представляет собой не только интересный технический проект, но и полноценную педагогическую технологию, направленную на формирование у обучающихся гибких компетенций и интереса к техническому творчеству.

Список литературы
  1. Программирование манипулятора в срeде DOBOT BLOCKLY: DOBOT MAGICIAN: Образовательная инженерная платформа/ О.А. Горнов. – М.: Издательство «Экзамен», 2021. – 188[1] с.
  2. Заяц А. В., Журавский Г. В. Интерактивная робототехника: создание игры "Крестики-нолики" на Dobot Magician // Научные высказывания. 2024. №9 (56). С. 33-37.
  3. Заяц А. В., Зубиков А. А. Использование Dobot Magician для формирования инженерного мышления у учащихся 7-8 классов // Научные высказывания. 2023. №10 (34). С. 40-43.
  4. Заяц А. В. Манипулятор Dobot Magician как средство профессионального самоопределения учащихся 5-8 классов // Научные высказывания. 2023. №7 (31). С. 26-28.
международный научный журнал

Научные высказывания #81

Предоставляем бесплатную справку о публикации, препринт статьи — сразу после оплаты.
Прием материалов
с 31 июля по 15 августа
Осталось 7 дней до окончания
Размещение электронной версии
29 августа