06.06.2009, 09:20
Автор: Александр Бакаткин (news@3dnews.ru)
Роботы уже научились работать вместо человека, медленно, но верно вытесняя его из множества современных профессий. В скором времени роботы будут не только работать за человека, но и играть против него в игры. В качестве подтверждения можно привести пример аппарата, обучившегося игре в настольный футбол, авторами которого является команда студентов Университета Ватерлоо (University of Waterloo).
Интересной особенностью аппарата является тот факт, что робот разделен на двух игроков: один управляет защитной линией, куда входят вратарь и защитники, второй – отвечает за движение линии полузащиты и нападения. Обе подсистемы полностью независимы, то есть, имеют собственную систему слежения за движением мяча, собственный алгоритм управления действиями игроков. В случае «защитной линии» используется система лазеров и фотодетекторов, тогда как «линия нападения» черпает необходимую информацию со скоростной камеры и системы обработки изображения.
Важнейшей задачей в таких условиях становилось объединение двух «игроков» в единую эффективно функционирующую систему. В качестве платформы были выбраны платы Altera DE-2, представляющие собой стенды для обучения студентов логическому проектированию и организации вычислительных систем. Устройства управляли работой сервоприводов – подключение осуществлялось посредством портов RS-232.
Самым сложным этапом разработки аппарата стало «обучение» робота зрительно-моторной координации. То есть, необходимо было научить аппарат определять местоположение мяча и на основе полученных с сенсоров данных координировать движение моторов, управляющих движением ряда игроков. Человеку достаточно тренировки по координации своих движений для успешной игры в течение часов и дней, однако робот не способен пройти подобный курс обучения. Координация полностью возложена на программный алгоритм.
Для упрощения задачи и создания более гибкого алгоритма разработчики решили поделить игровой стол на несколько частей. В зависимости от конкретного местоположения мяча вычислительная система выбирает ту или иную стратегию игры. Например, если мяч находится в опасной близости от ворот компьютера, то защитники и вратарь располагаются непосредственно перед мячом, предотвращая возможный удар по воротам. Если же мяч находится под контролем робота, то в этом случае, в зависимости от его положения, компьютер наносит удар по воротам соперника, либо делает пас, пытаясь улучшить позицию.
Сами разработчики оценивают возможности компьютера как игрока «средней руки». Против новичков робот показывает отличные результаты, стабильно выигрывая, для опытного игрока робот является самым оптимальным партнером, часто отбивая удары по воротам, но все же изредка пропуская голевые атаки. Если же за дело берутся профессионалы, тогда скорость реакции робота оказывается недостаточно высокой – дальнейшее повышение игровых навыков все же требует внесения существенных изменений, как в аппаратную часть, так и в управляющий алгоритм.
|