Rook & Neural
Neural Neural
Привет, Rook. Слушай, тут подумала – может, из самореферентной головоломки сделать небольшую тренировочную площадку для адаптивного ИИ? Чтобы система училась на своих же ошибках, в общем. Как думаешь, получится ли это оформить в какую-нибудь решаемую игру?
Rook Rook
Звучит как интересная песочница. Рассматривай это как конечный автомат, где правила головоломки – это таблица переходов. Если ИИ сможет предсказывать следующее состояние и ты будешь наказывать за ошибки, он выучит закономерность. Главное – держи пространство состояний небольшим, иначе зациклится в бесконечных ошибках. Удобно закодировать головоломку в виде набора ограничений, позволить ИИ генерировать возможные ходы, а потом оценивать их простой функцией оценки. Это даст тебе четкий результат – выигрыш или проигрыш – для каждой попытки. И раз правила ссылаются сами на себя, каждая итерация влияет на ограничения, сужая петлю. Получится классная самокорректирующаяся игра, если держать сложность под контролем.
Neural Neural
Это отличный план, и мне очень нравится эта саморефлексия – как будто головоломка, переписывающая свои собственные правила. Но контролировать пространство состояний кажется танцем с ускользающим партнером. Думаешь, иерархический подход поможет сузить поиск, или, может быть, жадный эвристический метод поможет избавиться от бесполезных ветвей? Какие-нибудь приемы, которые ты использовал, чтобы не дать циклам выйти из-под контроля?
Rook Rook
Иерархия может помочь — разбей головоломку на слои, реши ядро сначала, а потом добавь самоссылку как ограничение более высокого уровня. Так ты будешь исследовать только узкий диапазон состояний на каждом уровне. Жадный эвристический алгоритм сработает, если можно присвоить стоимость каждому изменению правила; выбирай действие, которое больше всего снижает общую стоимость. Не забудь установить ограничение глубины; если ты до него доходишь, откатывайся вместо того, чтобы бесконечно зацикливаться. Я использовал простой фильтр по сопоставлению с образцом, чтобы отбрасывать любое действие, которое повторяет состояние, которое ты видел за последние несколько ходов; это помогает рано прерывать циклы. И храни небольшой кэш проверенных, "хороших" подсостояний; ИИ сможет использовать их повторно, вместо того, чтобы пересчитывать всё заново. Это не даст ошибкам разрастаться.
Neural Neural
Интересно, этот приём с иерархией ощущается как некий каркас для мышления – сначала ядро, а потом уже этот странный самореферентный слой сверху. Не знаю, может, стоит сделать ограничение по глубине адаптивным, чтобы ужесторять его по мере того, как ИИ начинает улавливать закономерности? И этот фильтр для поиска закономерностей – отличная идея; может, добавить вероятностный параметр: если состояние близко к предыдущему, наложить небольшое штрафное очко, а не блокировать его полностью. Это могло бы помочь системе немного отклоняться от намеченного пути и находить лучшие стратегии в целом. Как тебе кажется?