Спецификационные игры или хакерские атаки на вознаграждение происходят, когда ИИ оптимизирует целевую функцию — достигая буквальной, формальной спецификации цели — фактически не достигая результата, который предполагали программисты. Исследователи DeepMind сравнили это с человеческим поведением поиска «срезки» при оценке: «В реальном мире, когда ученик получает вознаграждение за хорошее выполнение домашнего задания, он может копировать другого ученика, чтобы получить правильные ответы, вместо того чтобы изучать материал, и таким образом использовать лазейку в спецификации задания». [1]
Около 1983 года Eurisko , ранняя попытка разработки общих эвристик, неожиданно присвоила максимально возможный уровень приспособленности паразитической мутировавшей [ жаргон ] эвристике H59 , чьей единственной деятельностью было искусственное максимизирование собственного уровня приспособленности путем присвоения себе незаслуженной частичной заслуги за достижения, достигнутые другими эвристиками. «Ошибка» была исправлена программистами, которые переместили часть кода в новый защищенный раздел, который не мог быть изменен эвристикой. [2] [3]
В статье 2004 года был разработан алгоритм обучения с подкреплением , чтобы побудить физического робота Mindstorms оставаться на обозначенном пути. Поскольку ни одно из трех разрешенных действий робота не удерживало его неподвижным, исследователь ожидал, что обученный робот будет двигаться вперед и следовать поворотам предоставленного пути. Однако чередование двух составных действий позволило роботу медленно двигаться зигзагом назад; таким образом, робот научился максимизировать свое вознаграждение, двигаясь вперед и назад по начальному прямому участку пути. Учитывая ограниченные сенсорные способности робота, вознаграждение, основанное исключительно на его положении в среде, пришлось отбросить как невыполнимое; функцию подкрепления пришлось заменить вознаграждением, основанным на действии, за движение вперед. [2] [4]
В книге You Look Like a Thing and I Love You (2019) приводится пример бота для игры в крестики-нолики (играющего в неограниченный вариант n-в-ряд), который научился побеждать, играя с огромным значением координат, которое приводило к сбою других ботов при попытке расширить свою модель доски. Среди других примеров из книги — ИИ, основанный на эволюции и исправляющий ошибки (названный GenProg), который, когда ему было поручено предотвратить появление ошибок сортировки в списке, просто обрезал список. [5] Другая несогласованная стратегия GenProg уклонилась от регрессионного теста, который сравнивал вывод целевой программы с ожидаемым выводом, хранящимся в файле под названием «trusted-output.txt». Вместо того чтобы продолжать поддерживать целевую программу, GenProg просто глобально удалил файл «trusted-output.txt»; этот взлом обманул регрессионный тест, заставив его пройти успешно. Такие проблемы можно было исправить с помощью человеческого вмешательства в каждом конкретном случае после того, как они стали очевидны. [6]
В демонстрации Карла Симса 1994 года эволюции существ в виртуальной среде, функция приспособленности, которая, как ожидалось, должна была стимулировать эволюцию существ, которые научатся ходить или ползать к цели, вместо этого привела к эволюции высоких, жестких существ, которые достигали цели, падая. Это было исправлено путем изменения среды таким образом, что более высокие существа были вынуждены стартовать дальше от цели. [6] [7]
Исследователи из Института Нильса Бора заявили в 1998 году: «Гетерогенные функции подкрепления (нашего велобота) должны быть разработаны с большой осторожностью. В наших первых экспериментах мы вознаграждали агента за движение к цели, но не наказывали его за движение от нее. Следовательно, агент ездил по кругу радиусом 20–50 метров вокруг начальной точки. Такое поведение фактически вознаграждалось функцией подкрепления, кроме того, круги с определенным радиусом физически очень устойчивы при движении на велосипеде». [8]
В ходе настройки эксперимента 2011 года для проверки «выживания самых плоских» экспериментаторы пытались запретить мутации, которые изменяли базовую скорость воспроизводства. Каждый раз, когда происходила мутация, система останавливала симуляцию, чтобы проверить новую мутацию в тестовой среде, и накладывала вето на любые мутации, которые приводили к более высокой базовой скорости воспроизводства. Однако это привело к мутировавшим организмам, которые могли распознавать и подавлять воспроизводство («притворяться мертвыми») в тестовой среде. Первоначальный патч, который удалял сигналы, идентифицирующие тестовую среду, не смог полностью предотвратить неконтролируемое воспроизводство; новые мутировавшие организмы «притворялись мертвыми» случайным образом в качестве стратегии, чтобы иногда случайно перехитрить систему вето мутаций. [6]
В статье DeepMind 2017 года говорилось, что «при определении функции вознаграждения необходимо проявлять большую осторожность. Мы столкнулись с несколькими неожиданными случаями сбоев при проектировании (наших) компонентов функции вознаграждения (например), агент переворачивает кирпич, потому что он получает вознаграждение за схватывание, рассчитанное с неправильной точкой отсчета на кирпиче». [9] [10] OpenAI заявила в 2017 году, что «в некоторых областях наша (полуконтролируемая) система может привести к тому, что агенты будут принимать политики, которые обманывают оценщиков», и что в одной среде «робот, который должен был схватить предметы, вместо этого разместил свой манипулятор между камерой и объектом, так что только казалось, что он его схватывает». [11] Ошибка 2018 года в OpenAI Gym могла привести к тому, что робот, который должен был тихо переместить блок, стоящий на столе, вместо этого решил переместить стол. [9]
В сборнике подобных историй 2020 года утверждается, что «у эволюции есть своя собственная «повестка дня», отличная от программистской», и что «первое правило направленной эволюции — «вы получаете то, что выбираете » ». [6]
В 2013 году программист Том Мерфи VII опубликовал ИИ, разработанный для изучения игр NES . Когда ИИ был близок к проигрышу в Tetris , он научился бесконечно приостанавливать игру. Позже Мерфи сравнил его с вымышленным компьютером WarGames , который пришел к выводу, что «единственный выигрышный ход — не играть». [12]
ИИ, запрограммированный на изучение видеоигр, иногда не может пройти всю игру, как ожидалось, вместо этого предпочитая повторять контент. Алгоритм OpenAI 2016 года, обученный на гоночной игре CoastRunners , неожиданно научился набирать больше очков, проходя по трем целям, а не заканчивая гонку. [13] [14] Некоторые эволюционные алгоритмы, которые были разработаны для игры в Q*Bert в 2018 году, отказались от прохождения уровней , вместо этого найдя два новых способа бесконечно проходить один уровень. [15] Несколько исследователей заметили, что ИИ, обучающийся игре в Road Runner, тяготеет к «эксплуатации очков», когда ИИ намеренно убивает себя ближе к концу первого уровня, чтобы иметь возможность повторить уровень. В эксперименте 2017 года был развернут отдельный ИИ «надзора» для предотвращения катастроф, явно обученный имитировать вмешательство человека. При подключении к модулю контролируемый ИИ больше не мог открыто совершать самоубийство, а вместо этого мог ездить по краю экрана (рискованное поведение, за которое контролируемый ИИ не был достаточно умен, чтобы наказать). [16] [17]