eggman

+87
с 2025

Любитель рассуждать. Читаете на свой страх и риск .

7 подписчиков
1 подписка

Если рассматривать то, как устроены боты для игр из предыдущих постов, очевидно, что цели, которые им даны, — это и есть их смысл жизни: сделать так, чтобы было какое-то нужное им будущее. Выиграть в шахматы или Доту, приготовить ужин, если это робот, готовящий ужин.

Само собой, эти цели могут быть взломаны или заменены другими ботами или вне…

1

Вообще довольно интересно, что обычное устройство искусственного интеллекта предполагает наличие у него целей. Цель — это некое желаемое будущее состояние мира.

С точки зрения физики, с определенными вероятностями и в некоторых масштабах можно предсказывать, каким мир будет в будущем. Например, если дать искусственному интеллекту цель, чтобы…

1

В предыдущих постах я описал алгоритм искусственного интеллекта, который теоретически может играть в разные игры и даже выигрывать в них. По сути, этот алгоритм — программа. Эта программа может жить в процессе обычного компьютера среди других таких же программ. Возникает вопрос: а как в этой программе внутри её модели может возникнуть утверждение «…

Давайте перейдем к псевдокоду с точки зрения определения «я» и «кто управляет кем».

Для этого распишем модуль создания модели подробнее. Он будет простоватым, грубоватым и глуповатым (в отличие от точного перебора) — но для размышлений пойдет.

2

Если подумать о том, как в общем устроен искусственный интеллект ботов, которых я рассматривал, то и задачу определения того, «я» это или не «я», можно связать с парадоксом корабля Тесея.

Само наличие истории входов в коде бота предполагает, что для бота существует время, и с помощью этого времени бот и создаёт модель мира и себя (не полную)…

1

В этом посте я задаюсь вопросом, можно ли собрать бота для игр из подботов и что для этого нужно. Мы определяли бота через этот псевдокод из прошлых постов:

цель = "сохранить состояние оперативной памяти этого алгоритма во времени, но оперативная память модели и истории входов может меняться — однако они должны меняться только самим этим алгоритмом" // Опишем модель мира в нашем псевдостиле, словесно модель_мира = "в процессе, где находится этот алгоритм, окружающая среда может переписать его код, получив доступ к ячейкам его оперативной памяти, и цель этого алгоритма — этому сопротивляться (выживать)" повторяем() { уникальный_номер_бота = уникальный_номер_бота() вход_сейчас = вход_сейчас() история_входов.добавляем(вход_сейчас) модель = создаём_модель(история_входов, уникальный_номер_бота) if ( исследуем_мир ) действия = исследовательские_действия() else действия = модель.предсказываем_лучший_набор_действий_до_цели(цель) выход_сейчас(действия) }

В прошлых постах я разделил понятие «я» на четыре понятия с точки зрения алгоритмов. Они взаимосвязаны.

Первое. «Я» — это алгоритм, порождающий искусственный интеллект в игре, который виден ему самому. Например, бот, играющий в шахматы, может, кроме шахматной доски, видеть своё собственное устройство в памяти процесса, где эти алгоритмы живут…

Давайте продолжим мысленный эксперимент с компьютерной программой (процессом), эмулирующей муравейник. Каждому из «муравьёв» (подпроцессов) при этом транслируют в голову картину с одной и той же камеры над муравейником (состояние памяти всего процесса). Каждый муравей, соответственно, может видеть состояние памяти внутри головы каждого другого мура…

1

В предыдущем посте, кроме существования «я», связанного с единством модели мира, я вывел ещё существование «я», связанное с логическими частями модели мира. Однако, если вдуматься, то «я» не связано с целью защиты какой-то части мира от изменений. Например, цель «буду защищать своё основное строение и свою цель от изменений» мало чем отличается от…

В предыдущих рассуждениях я остановился на том, что представил алгоритм простого агента в играх и задался некоторыми вопросами о его структуре.

Давайте попробуем расширить понятие «я» для этого самого алгоритма. Мы попробуем раздробить «я» внутри модели другим способом, чем в прошлый раз.

Когда мы задаём вопрос, кто кем управляет, с точки зрения алгоритмов и игр неплохо было бы определить это самое «кто». Определение возьмём из определения некоторой формы ИИ, и я уже о ней писал — но в целом это «кто» выглядит так (не буду чрезмерно усложнять код):

while(true) { input = input() input_history.append(input) model = create_model(input_history) if ( exploration ) action = exploration_action() else action = model.predict_best_action_for_goal(goal) make_action(action) }
1

Если мы возьмём пример игры из поста, связанного с доказательством того, что абсолютное управление невозможно, и добавим к нему определённые условия, то мы можем сказать, что игрок может обладать «сильным» управлением над средой вокруг себя.

Эти условия будут такими. Мы скажем, что бот и игра — это просто одна компьютерная программа. И скажем…

1