Когда 24-летний программист из Сан-Франциско Макс Дойч решил победить чемпиона мира по шахматам, он совершенно не разбирался в этой игре. Это не остановило его и даже не вызывало особого беспокойства. У него был целый месяц для того, чтобы подготовиться к встрече с самым сильным шахматистом мира. «Лента.ру» выяснила, что можно достичь за это время.
Год назад Макс Дойч составил список умений, которыми он хочет овладеть. Он желал знать, как рисовать портреты и без подготовки читать фристайл; как импровизировать на электрогитаре и собирать кубик Рубика за 20 секунд; как делать сальто назад с места и как разработать искусственный интеллект для автоматического управления автомобилем.
Чтобы научиться таким вещам, нужны месяцы, а то и годы, но Макс отвел на каждое умение ровно 30 дней. Причем неполных: он собирался учиться только после работы и в дороге. Если не жертвовать сном и общением с друзьями, то на хобби оставалось пара часов в день, не больше. Он полагал, что этого хватит.
Победа над шахматным чемпионом была самым амбициозным пунктом плана. Макс оставил ее напоследок и для начала занялся кое-чем попроще.
Ноябрь 2016 года Макс посвятил тренировке памяти. Он решил научиться запоминать порядок игральных карт в колоде за две минуты. Победитель Международного чемпионата памяти Александр Муллен справляется с этим за 16 секунд, но для дилетанта и две минуты — отличный результат. Макс запоминал порядок в десять раз дольше.
Он взялся за тренировки. Популярная книга о памяти советовала использовать специальные очки, через которые видно только одну карту — так проще сосредоточиться. Макс соорудил нечто подобное из сломанных 3D-очков из кинотеатра, надевал их по дороге на работу и начинал перебирать карты. В поезде на него косились другие пассажиры, зато результаты на глазах становились лучше. К 21 ноября он достиг цели — на девять дней быстрее графика.
В декабре Макс учился рисовать. Он вооружился видеокурсами для начинающих художников и спустя 14 с половиной часов изобразил на бумаге лицо британского иллюзиониста Деррена Брауна. Потом немного потренировался на фотографиях знаменитостей и на 15-й день взялся за автопортрет. Результат превзошел ожидания. Трудно поверить, что всего несколько дней назад этот человек рисовал не лучше ребенка.
Затем пришла очередь кубика Рубика. Собирать его Макс научился еще в школе. Цель состояла в том, чтобы делать это быстро — за 20 секунд, а то и меньше. В течение месяца он собрал головоломку больше 900 раз и выучил различные комбинации клеток. На одиннадцатый день тренировки понял, что его тормозит сам кубик: для нужной скорости он туговат. Пришлось купить смазку. Потом оказалось, что быстрая сборка — физически тяжелое занятие. От напряжения у Макса ныли мышцы. Но в итоге он справился и на 22-й день собрал кубик за 19 секунд.
В мае Макс разрабатывал искусственный интеллект для управления автомобилем. Он написал программу, которая анализирует видео с камеры на лобовом стекле машины и решает, куда крутить руль и на какие педали жать. Общие идеи подсмотрел в научной работе nVidia, распознавание образов свалил на готовую библиотеку OpenCV, а нейросеть реализовал на базе технологии Tensorflow, которую разработали в Google. Полноценная программа для управления автомобилем куда сложнее, но Макс и не рассчитывал, что получит готовый продукт — он лишь хотел разобраться в том, как устроены такие системы. И достиг этой цели.
Труднее всего оказалось с кроссвордами из The New York Times. Макс учился их решать почти весь июль. Для этого он зазубрил десятки тысяч вопросов и ответов, которые встречались в кроссвордах этой газеты с 2009 года. Понадобилось 46 часов — столько времени не требовала ни одна другая задача.
Один за другим Макс вычеркнул из плана почти все пункты. Он достиг всего, что задумал. Остался только матч с чемпионом.
Макс знал правила шахмат с детства, но играл от силы пару раз в год. Его рейтинг ELO не превышал 1100 — это уровень новичка. Чтобы быть гроссмейстером, нужно не менее 2500. Шансы на чемпионат мира появляются у шахматистов с рейтингом не менее 2700. А планку 2800 преодолели только четыре игрока на планете. Рейтинг самого сильного шахматиста планеты, 27-летнего норвежца Магнуса Карлсена, составляет 2837. Макс хотел победить именно его.
Магнус — редкий талант. Ему было всего 13 лет, когда он выстоял против Гарри Каспарова, который в тот момент считался шахматистом номером один. Спустя десять лет Магнус стал чемпионом мира сначала по классическим шахматам, а через год — по рапиду и блицу. До него никто не получал все три короны сразу.
Макс не рассчитывал, что шахматная знаменитость снизойдет до дилетанта вроде него. Поначалу он собирался играть не с живым Магнусом, а с компьютерной программой, которая имитирует его стиль. Но затея заинтересовала The Wall Street Journal. Журналисты предложили помочь с организацией настоящего матча. Макс, разумеется, был не против, но и чемпион не отказался. Партию назначили на девятое ноября.
Профессионалы тратят на тренировки тысячи часов, а у Макса оставалось чуть больше месяца. За такой срок невозможно стать сильным шахматистом — во всяком случае, в обычном понимании этого слова. Но Макс надеялся, что существует обходной путь. «Если я не могу выучиться играть в шахматы по-человечески, мне остается делать это как компьютер», — решил он.
Шахматные программы пользуются тем, что машина работает куда быстрее человеческого мозга. Они просчитывают все возможные варианты развития партии на несколько ходов вперед, выстраивая разветвленное дерево решений, оценивают каждую ветвь, а затем выбирают ход, который ведет к самым выгодным позициям в будущем.
Человек не способен удержать в голове все ходы, как это делает компьютер. А вот в алгоритме, который с приличной точностью оценивает перспективность хода без анализа всего дерева решений, нет ничего невозможного. По прикидкам Макса, чтобы вести такие вычисления в уме, нужно запомнить чуть больше 12 тысяч параметров. Если владеть мнемоническими приемами — вполне посильная задача.
Макс создал нейросеть и скормил ей записи тысяч партий, в которых участвовал Магнус Карлсен. Он надеялся, что сеть научится отличать перспективные ходы и даст ему параметры, которые нужны для вычислений в уме. Поначалу точность алгоритма стабильно росла. Так продолжалось, пока она не достигла 70 процентов. Преодолеть этот потолок никак не получалось. Макс добавил данных для обучения, но это лишь замедлило обработку данных. Вычислительных мощностей катастрофически не хватало.
Время кончалось, а у Макса по-прежнему не было чисел для заучивания. Когда он вылетел в Гамбург на встречу с Магнусом, компьютер продолжал перерабатывать данные. «Я не ожидал, что моему компьютеру понадобится столько времени, чтобы найти этот алгоритм», — признался он перед партией корреспонденту The Wall Street Journal. — Вот мы сейчас разговариваем, а машина все еще пыхтит над ним».
Отказываться от игры было поздно. Без алгоритма Максу предстояло играть только своими силами.
Прибыл Магнус. Казалось бы, чемпиону бояться нечего, однако он не расслабляется. «В прошлом бывали сюрпризы», — поясняет он.
Начинается игра. Три года назад Магнус к девятому ходу поставил мат Биллу Гейтсу. Макс на восьмом ходу не только не проигрывает — у него легкий перевес. Он ходит куда лучше, чем можно было ожидать от любителя.
Но удача не могла быть вечной. На 12-м ходу Макс двигает ферзя, не замечая, что ставит под удар коня. Это роковая ошибка. Дальше его позиция становится только хуже. На 39-м ходу партия завершается победой чемпиона.
Когда все было кончено, Магнус улыбнулся в первый раз за партию и протянул проигравшему руку. «Первые ходов десять были хорошими», — похвалил он. Когда Макс признался, что так и не доделал свой алгоритм, шахматист был немного разочарован: «Может, в следующий раз?»
Обучение нейросети закончилось лишь через неделю. Макс тут же проверил алгоритм на неудачном ходе королевой, который стоил ему партии. «Плохой ход», — запоздало выдала нейросеть. Будь она готова чуть раньше, ошибки можно было избежать.
Годовой план выполнен, но Макс не намерен завязывать с самообучением. В августе он открыл образовательный стартап и теперь подумывает о повторении эксперимента — нужно только изобрести 12 новых задач. Быть может, в следующем году?