avva: (moose)
avva ([personal profile] avva) wrote2013-04-10 09:47 pm

мимоходом об играх и автоматике

Computer program that learns to play classic NES games



Очень интересное видео о программе, которая учится играть в классические Нинтендо-игры следующим забавным образом: во время тренировки, когда играет человек, она все время записывает полные снимки рабочей памяти консоли (всего 2KB), и потом ищет в них растущие лексикографически последовательности байтов, потому что они скорее всего соответствуют кол-ву очков, номеру уровня итд. Потом она играет сама, стремясь увеличить эти самые байты в памяти.

Если 15-минутное видео слишком длинно и неудобно, то во-первых демки начинаются на 06:20, а во-вторых, вот статья автора. Она написана в веселом стиле ("The NES is based around an 8-bit processor running at 1.79 MHz, the Ricoh 2A03. 8 bits is really small. You can see them all right here: 00001111."), и была послана на первоапрельскую конференцию, где обычно пишут о выдуманных исследованиях, но тут вроде бы все честно.

Кстати, я помню, что похожим образом в свое время (а может и сейчас) ломали игры: анализом памяти находили места, где записан номер уровня или кол-во денег или ресурсов, и писали программку, которая позволяла менять это все. Возможно, оттуда автор почерпнул идею. Но играть автоматически, не "зная" ничего ни о смысле сигналов ввода, ни о том, что на экране, а только ради увеличения байтов в памяти - это следующий уровень, остроумно.

[identity profile] enraze.livejournal.com 2013-04-10 06:53 pm (UTC)(link)
наглядно http://www.youtube.com/watch?v=tjcvR5McmSg

[identity profile] avva.livejournal.com 2013-04-10 06:58 pm (UTC)(link)
ага, спасибо.

[identity profile] karajel.livejournal.com 2013-04-10 07:01 pm (UTC)(link)
артмани до сих пор используется
последняя версия вышла в феврале.

[identity profile] amarao-san.livejournal.com 2013-04-10 08:07 pm (UTC)(link)
Божественно! Поставить тетрис на паузу перед мгновением проигрыша, чтобы не проигрывать - это восхитительно. Это реальный AI.

[identity profile] spamsink.livejournal.com 2013-04-11 01:40 am (UTC)(link)
Принципом настоящего программиста является "вы этого хотели, вот вам".

[identity profile] dimammoth.livejournal.com 2013-04-10 09:59 pm (UTC)(link)
Реализация "китайской комнаты". )

[identity profile] avva.livejournal.com 2013-04-10 10:00 pm (UTC)(link)
:)

[identity profile] aintlion.livejournal.com 2013-04-11 05:02 am (UTC)(link)
Ага. А еще так возникают обряды и ритуалы. :)
Edited 2013-04-11 05:03 (UTC)

[identity profile] dimammoth.livejournal.com 2013-04-11 10:23 am (UTC)(link)
В принципе да, но это уже называется "карго-культ". )

[identity profile] aintlion.livejournal.com 2013-04-11 04:16 pm (UTC)(link)
Нет.Карго-культ не приносит результатов.Это чисто подражательная методика.В основе же многих ритуально-сакральных действий лежит четкое понимание причинно-следственной связи между действием и результатом.Только вот механизмы абсолютно непонятны.

[identity profile] dimammoth.livejournal.com 2013-04-12 12:58 am (UTC)(link)
"...в основе же многих ритуально-сакральных действий..." "ритуально-сакральных..."

"...четкое понимание причинно-следственной связи..."

Ага, мы помолились и пошел дождь. Причинно-следственная связь... )

[identity profile] aintlion.livejournal.com 2013-04-13 11:22 am (UTC)(link)
...четкое понимание причинно-следственной связи... не понимание конечно, а уверенность в ее наличии.

[identity profile] bolk.livejournal.com 2013-04-11 04:31 am (UTC)(link)
Да, такие программы (которые позволяют искать значения в памяти, потом в тех же ячейках изменённое значение) существуют до сих пор. По «Мак», например, есть iHaxGamez.

[identity profile] silugram.livejournal.com 2013-04-11 07:50 am (UTC)(link)
Ага, ломали :-) Вот Спектрум, например. В юности мне для этого в его "БИОС" пришлось "до-прошить" простенький мониторчик с дизассемблером (на пару килобайт, благо там было место), вход в который осуществлялся по сбросу с нажатым шифтом (или что там у спектрума было). Ну сломал таким образом все, что было у меня тогда интересного, сэкономил кучу времени и нервов :-)

Потом, в эпоху ПЦ, было уже не то. Помню, в первой Цивилизации - в сохраненной игре добавляешь денег по мере необходимости, и Апполо программ готов примерно к 100-му году до нашей эры :-)

Ну а по теме - повеселили, спасибо :-)