Я большой поклонник телешоу Jeopardy!, поэтому я с нетерпением ждал, когда компьютер IBM, Watson, сразился с давними чемпионами Кеном Дженнингсом и Брэдом Раттером в феврале 2011 года. Результат - Уотсон в роли беглого чемпиона - неудивительно, но наблюдать за этим было забавно. IBM должна была продемонстрировать, как далеко продвинулся искусственный интеллект, но на это ушло более нескольких десятилетий. Корни триумфа Уотсона лежат в гораздо более скромной машине, играющей в древнюю игру: шахматы.
Первые упоминания о шахматах относятся примерно к 600 году нашей эры на территории нынешней северной Индии, а торговые пути распространили игру по всему миру. К 1800-м годам появились официальные шахматные организации и чемпионаты. А до этого была самая первая шахматная машина - вроде. Изобретатель по имени Вольфганг фон Кемпелен создал «Турка» для императрицы Австро-Венгрии, и машина много лет гастролировала по Европе. Но Турок был фальшивкой; внутри был спрятан человек.
Тем не менее, это показало, что мы заинтересованы в том, чтобы машина проиграла в нашей собственной игре. Поначалу может показаться глупым тратить время и силы на то, чтобы компьютер играл в шахматы. Но идея заключалась в том, что если компьютер сможет «думать» достаточно хорошо, чтобы играть в шахматы, возможно, он поможет решить еще более сложные задачи. Еще до того, как мы построили компьютеры для выполнения этой задачи, уже существовала компьютерная программа, предназначенная для игры. Алан Тьюринг, считающийся отцом искусственного интеллекта и информатики, написал программу и играл в шахматы сам с собой на бумаге в 1947 году. сыграть полную партию в шахматы.
Уметь играть в шахматы - это одно. Способность действительно побеждать - и побеждать мастеров шахмат - это совсем другое. Читайте дальше, чтобы узнать, как компьютер, наконец, стал мастером шахмат.
Я, мастер шахмат
Чтобы запрограммировать компьютер для игры в шахматы, вам необходимо знать шахматные приемы и стратегии - недостаточно просто знать, как ходят фигуры. Люди играют в шахматы, разрабатывая стратегии и распознавая модели игры. Компьютеры используют какалгоритмы(пошаговые инструкции), так иэвристику (метод проб и ошибок). В частности, система, которая включает в себя минимаксный алгоритм и технику альфа-бета сокращения.
Алгоритмминимакспозволяет компьютеру перебирать все возможные ходы, а также возможные ответы противника. «Минимаксная» часть возникает из-за того, что компьютеру необходимо вычислять лучшие и худшие ходы (как свои, так и противника) после каждого хода. Альфа-бета-обрезка означает, что компьютер создает два «дерева». Дерево A в той или иной мере рассматривает все возможные шахматные ходы. Затем он «обрезает» дерево A, чтобы создать дерево B, в котором далее исследуются ходы, которые выглядят лучше всего. Как вы понимаете, современные компьютеры могут делать это с поразительной скоростью - намного быстрее, чем это когда-либо делал человек.
К 1960-м годам компьютерные шахматные программы были достаточно хороши, чтобы побеждать любителей. В 1967 году профессор Массачусетского технологического института и шахматист Ричард Гринблатт создал шахматную программу Mac Hack IV, и использующий ее компьютер стал первым, кто обыграл человека в шахматном турнире. Но это был не мастер шахмат. В 1968 году международный гроссмейстер Дэвид Леви поспорил, что ни один компьютер не сможет победить его в шахматы через 10 лет, а если он и выиграет, то пройдет еще десять лет, прежде чем компьютер победит его.
Леви выиграл пари, но в 1989 году это, наконец, произошло. Deep Thought, изначально созданный программистами из Университета Карнеги-Меллона, превзошел Леви. В 1997 году Deep Blue - предшественник Deep Thought - победил Гэри Каспарова, гроссмейстера по шахматам (высший уровень, которого можно достичь в ФИДЕ, всемирной шахматной организации) и действующего чемпиона мира. С тех пор было больше компьютерных побед, но, как выразился один профессор компьютерных наук, «наука сделана». Мы зашли так далеко, насколько это возможно, в шахматах между компьютерами и людьми, но есть много других игр, в которых нужно доминировать.
Примечание автора
Должен признаться, я не очень хорошо играю в шахматы. На самом деле, я так давно не играл, что не знаю, смогу ли я даже рассказать вам, как должна двигаться каждая фигура. Но я восхищаюсь мастерством, которое для этого требуется, и поражаюсь способности предвидеть, что собирается сделать противник. Некоторым, возможно, не нравилось, когда компьютеры побеждали чемпионов по шахматам или когда Уотсон выигрывал «Jeopardy!», но я думаю, что они забывают, кто создал компьютеры. Тот факт, что компьютер может «думать» и принимать решения, как человек, также свидетельствует о человеческих способностях.