Artificial intelligence algorithm

© Telnov Victor, 2015-2020

English
English
Russian

Как играются и выигрываются игры.

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

​

Для начала, как выглядит постановка задачи. Постановка задачи для конкретного хода в игре выглядит так:

​

Какое действие из множества возможных нужно осуществить в текущей ситуации, такое что приведет к выигрышу с максимальной вероятностью?

​

Всякие прочие постановки, которые не содержат формулировок выборки из возможных или указания свойства максимизации вероятности выигрыша, это будут постановки не полные, но когда и если их выполнял бы человек, то он будет подразумевать такие вещи. Т.е. подразумевать, и внутри себя приводить их к такому виду. Не прямо таки конвертировать, а скорее как синонимы слов, что и краткая формулировка и полная соответствуют одинаковой цели.

​

Подобным же образом можно сформулировать постановку для всей игровой партии: Осуществлять последовательно выбор действия из множества возможных на момент выбора, и выбор осуществлять каждый раз такой, который с максимальной вероятностью приведет к выигрышу игры, и выбирать пока не будет достигнут конец игры.

​

Соответствует ли текущее состояние состоянию окончания игры?

​

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

​

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

​

При этом в этом расчете прогноза будет задействован расчет, какое состояние игры соответствует определению выигрыша для такой игры. Несмотря на сложность всех затребованных условий, это просто множество условий, и их не так уже много. И в момент игры, это не процесс изучения игрового процесса, а уже применение известных системе правил. Да и еще есть куча возможных оптимизаций, в которые сейчас не хочется углубляться.

​

Чуть разверну, какие свойства прогнозирования потребуются в расчете.

​

Синонимы в постановках задачи - это соответствия с соотношением много к одному.

​

Определения "пока не выполнится", или "пока выполняется" очередной шаг прогноза, одного символа или целого блока.

​

это обычные квантификаторы в регулярных выражениях. На структурах подобных регулярным выражениям я основываю разбор прошедшей истории.

​

Это квантифицируемые зависимости. Регулярные выражения имеют оператор квантификатора - перебирать последовательно шаблоны текста, пока не будет выполнено условие, или пока выполняется условие, или как либо по другому.

​

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

​

​

​

Phone:

+7 (961) 801-10-34

E-mail (preferably):

v-telnov@yandex.ru

  • Facebook
  • The essence of AI
    • The prediction
      • Ending station
        • Project author