Comments 30
Тетрис не осилил, импортному железному мозгу не совладать с сумрачным российским гением)
artmoney — не не слышал…
Понравилось в конце — «And only winning move is to pause game»
Правильно я понимаю, что это брутфорс — грубо говоря, программа сыграет миллион раз в Марио, и один раз пройдёт уровень до конца — это и будет тот случай, когда «программа научилась играть в игры», а стальные 999999 раз не учитываем?
Нет, не так. Программа анализирует свое поведение на несколько шагов вперед. Т.к. игра полностью детерминированна, то она может рассчитать, что будет, если она нажмет те или иные клавиши, и выбрать такой вариант развития событий, который ей наиболее выгоден. Автор пишет что уровень 1-1 и 1-2, например, проходится программой в 100% случаев, дальше есть некоторые проблемы.
Про жадные алгоритмы почитайте. Да, она играет миллион раз, но каждый раз продвигается дальше, учитывает особенности, что повлияло на прогресс, как повлияло, и старается максимизировать выгоду на каждом отдельном этапе. Так что от неразумного тыканья во все кнопки подряд программа переходит к осознанному прохождению игры так, чтобы получить максимальный результат.
Считайте, что ребенок с годовалого возраста растёт с этой консолью и игрушкой, только очень быстро. Поначалу — неэффективно, но с каждым разом — всё лучше и дальше.
Считайте, что ребенок с годовалого возраста растёт с этой консолью и игрушкой, только очень быстро. Поначалу — неэффективно, но с каждым разом — всё лучше и дальше.
а чем эта схема отличается от того, как работает мозг? Мы анализируем ближайшую ситуацию и выбираем наилучший вариант развития события. Так и тут, порграмма наперед делает анализ и выбирает лучший вариант.
Тем, что в мозгу строится модель мира (игры), выделяются абстракции, законы функционирования объекта (игры) и аналитически строится тактика игры.
ну и? именно это и делает программа. что не так? Просчитывает алгоритмы на пару ходов вперед, как и ваш мозг, по сути.
Может быть я неправильно понял, но вроде бы программа просто «подбирает» подходящую последовательность команд чтобы пройти игру. Там ведь есть целевая функция. Т.е. она не занимается аналитикой как таковой, а просто методом проб и ошибок находит оптимальное решение.
Брутфорс игр с современными мощностями, строго говоря, вообще неразрешимая задача. В секунду ваша NES проверяет состояние кнопок джойстика 60 раз. Состояние кнопок в каждый момент кодируется 1 байтом. То есть имеется 8 битов, каждый из которых сигнализирует нажатость той или иной клавиши. Итого полный брутфорс одной секунды игрового времени потребует (2^8)^60 итераций. Такая алгоритмическая сложность подразумевает невозможность brute-force даже с учётом дальнейшего развития ЭВМ, так как каждый сгенерированный кадр умножает число попыток, необходимых для полного перебора, на 2^8. Собственно, если бы полноценный brute-force был возможен, не существовало бы такого явления, как tool-assisted speedrunning, который обязательно подразумевает применение человеческого интеллекта.
хы, боты для марио. Никогда бы не подумал.
Это просто мега круто!
Впечатляюще.
Интересно, а если попробовать генетические алгоритмы туда как-нибудь прикрутить.
Интересно, а если попробовать генетические алгоритмы туда как-нибудь прикрутить.
*facepalm* народ реально повелся
Сможете повторить самостоятельно перебежки пакмана между дырками в монстрах, как на 14:18?
www.youtube.com/watch?v=DlkMs4ZHHr8 — написать конкретного бота под конкретную игру: Да.
Прочитать память и брутфорсом «обучить» непонятно что, непонятно чему… сами закончите мысль?
Прочитать память и брутфорсом «обучить» непонятно что, непонятно чему… сами закончите мысль?
UFO just landed and posted this here
А ничего что видео 1 апреля опубликовано?
Sign up to leave a comment.
Создана программа, умеющая играть в NES-игры