Профессорский гамбит
Шрифт:
Лекция шла своим чередом, Окунев с присущей ему пылкостью и остротой рассказывал нам про класс PSPACE и различные задачи за пределами класса NP. Мы привычно не стали делать перерыв, договорившись, что преподаватель отпустит нас пораньше.
– Как мы уже обсудили, PSPACE-задачи напрямую связаны с играми для двух игроков. Поэтому невозможно не обсудить шахматы, – продолжал Алексей Николаевич. – Кто может назвать мне два основных подхода к разработке шахматной стратегии?
В аудитории повисла тишина, и я понимаю почему. Все как один подумали об одном конкретном подходе: перебор
– Саша, ваши предположения, – кивнул мне Окунев и пришлось напрячь мозги.
– Основной подход – это однозначно перебор вариантов, оценка позиций на какое-то фиксированное количество ходов вперед.
– Совершенно верно, а второй? – преподаватель хитро улыбнулся, даже не пытаясь скрыть, что вопрос с подвохом.
Я скромно пожала плечами. Опрос одногруппников также ничего не дал. Прозвучали, конечно, разные глупые предположения о рандомизации ходов, искусственном интеллекте, но все они сводились к оценке текущей позиции.
– Давайте, напрягитесь, это вторая пара, а не пятая, ваши извилины на пике активности. Что можно анализировать в шахматах помимо расстановки фигур?
– Ну, если доску уже оценили, нужно оценивать игрока, – негромко выдала я единственное посетившее меня умозаключение.
– Именно, – Окунев щелкнул пальцами и указал на меня, как бы подхватывая фразу. – Второй подход моделирует поведение живого игрока, анализируя только несколько наиболее удачных ходов и просматривая дерево поиска на большую глубину. А теперь подумайте вот над каким вопросом: вариант с моделированием поведения игрока не используется аж с семидесятых годов, есть идеи, почему?
Тут уже улыбнулась я. Неужели, потому что это будет работать только с логичными, априори успешными ходами? То есть стоит игроку сходить не очень удачно, и система сломается?
Мысль эта меня посетила по той простой причине, что я не умею играть в шахматы. Нет, я знаю примерные правила, как ходят фигуры и всё такое, но удерживать всю эту информацию в голове, да еще и просчитывать ходы и варианты, я не в состоянии. Мой мозг просто отказывается так сильно напрягаться и посылает мне в ответ обезьянку, бьющую друг о друга тарелки.
В аудитории вновь звучали варианты ответов, но ни один из них не был правильным. Решила и я высказать своё предположение, вдруг угадаю, может, Окунев расщедрится и от доброты душевной мне дополнительный балл поставит.
– Защита от дурака? – не очень уверенно спросила я.
– Что вы имеете в виду, Саша? – преподаватель подобрался и скрестил руки на груди, демонстрируя интерес.
– Вы сказали, что второй подход анализирует лишь несколько наиболее удачных ходов игрока. Но что, если игрок не так предсказуем, как того ожидает программа? Я, например, не умею играть в шахматы. Конечно, если посадить меня играть, я буду делать какие-то ходы, иногда даже обоснованные, но вряд ли они будут из числа наиболее успешных. То есть я изначально буду делать те ходы, которые компьютер не просчитывает и лишь потому могу выиграть?
– Вы не умеете играть в шахматы? – задумчиво спросил мужчина.
Серьезно? Я ему по полочкам разложила, чем может быть плох подход, а он
– Саша, вы же, кажется, делали мне в том году лабораторную по шахматам, когда мы проходили алгоритм Минимакс?
Лабораторные у Алексея Николаевича вещь вовсе необязательная, я стараюсь делать их, чтобы заработать баллы и получить автомат. Тоже самое касается и дополнительных задач.
– Чтобы запрограммировать поведение шести фигур, не нужно уметь играть, достаточно иметь перед глазами инструкцию для чайников, – огрызнулась я.
Окунев как-то изучающе на меня посмотрел, так, словно впервые увидел.
– По вторникам и четвергам на шестой паре есть шахматный кружок. Там, правда, большинство с разрядами, но я приглашаю вас прийти попробовать. Поверьте, очень полезно для алгоритмического мышления.
Делать мне больше нечего, кроме как после пяти пар ещё идти смотреть, как ботаники всея университета фигурки по дощечке переставляют.
– А вы тоже его посещаете? – спросила Лиза, с весьма корыстным интересом.
Алексей Николаевич, кажется, уловив намерения моей подруги, хмуро кивнул. Он молодец, никогда не даёт студенткам мнимых надежд: всегда сосредоточен, только на «вы» и никакого флирта.
– Спасибо, – поблагодарила я за приглашение. – А что насчет подхода, я права?
Окунев улыбнулся, как довольный кот, урвавший банку сметаны. И было в этой улыбке что-то… сексуальное что ли. Хотя, чему я удивляюсь? Есть такие мужчины, которые всегда умеют заинтересовать, блеснуть остротой ума, разжечь интригу; так вот он как раз из таких.
– Нет, Саша, вы ошиблись, всё гораздо прозаичней. Брутфорс, он же полный перебор, пускай и модифицированный, плох временем работы и количеством используемой памяти. Но в семьдесят третьем году этот алгоритм уже работал лучше других компьютерных аналогов. Ученые пришли к единому мнению: какой смысл анализировать игрока и пытаться изобрести сложные аналитические цепи, если перебор прекрасно работает.
Дальше преподаватель принялся рассказывать про переломную игру Каспарова в девяносто седьмом, после проигрыша которого интерес к шахматам в мире сильно упал. Зато (как неожиданно!) этот самый интерес стали проявлять к игре Го, но и та спустя двадцать лет сдалась под натиском машин.
– Делай что хочешь, в эти вторник и четверг мы с тобой идем на шахматы, – прошептала Лиза.
Вот, чёрт!
Глава 2
Окунев
На первый этаж я спускался в общем потоке, вот только если студенты семенили в столовую, то я спешил на парковку, где, согласно уведомлению, меня ожидал обед.
Забрав заказ у курьера, направился в свой кабинет, попутно проверяя телефон. На почте ничего интересного, лишь пара новых файлов с решениями от магистрантов, в мессенджерах чуть лучше – около десятка сообщений от студентов, но среди них ничего срочного. А вот сообщение от Никиты с приглашением на дачу не прошло мимо моего внимания.