Pull to refresh
39
0
Владимир Медведев @WinPooh73

Разработчик, C/C++

Send message

Стоит всё же уточнить, что обыгрывать профессионалов в Го нейросеть становится способной только после того, как к ней подключают достаточно изощрённый алгоритм поиска, в просторечии называемый Монте-Карло. Без перебора вариантов уровень игры получается вполне достойный по меркам любителей, но не выше средних данов.

В "Разностной машине" Стерлинга/Гибсона идея механических дисплеев хорошо развита, вплоть до показа на них видео.
Вспоминается ещё байка студенческих лет про игру в тетрис окнами какого-то многоэтажного общежития, а также попытки на 1-е апреля организовать таким образом бегущую строку…

Вспомнилась ещё аналоговая сортировка с помощью пучка макарон-спагетти, обрезанных до нужной длины. Там, кажется, вообще O(1) получается.

Прочитал сперва "на сервере" и некоторое время пребывал в задумчивости.

Распознавать идиотские треки — возможно, эта задача как раз подходит для машинного обучения.

Спасибо. Правда, комментариев у меня там маловато.
То ли дело Fruit или Murka — в них только по комментариям можно учиться шахматному программированию. А файл main.c из Crafty вообще читается как роман Толстого.
Предпочтения меняются от сетки к сетке. Некоторая статистика есть вот здесь: script.google.com/macros/s/AKfycbxxV3fudM352z5p_kTeAHLauO3KdnUpjSZffICfWQ/exec
Именно при игре без дебютной книги Leela как раз и имеет большее преимущество над другими программами и показывает лучшие результаты. Возможно, оттого, что она в каком-то роде создала собственную книгу, и запомнила её в нейросети (при всей условности такой терминологии — всё-таки механизм там совсем другой).
Посмотрите обзор Шипова на первые опубликованные партии AlphaZero — возможно, ваше мнение изменится.
www.youtube.com/watch?v=ba4_M7UINfo
Программа играет в активные, атакующие шахматы.
А вот образец игры Leela Chess Zero — выигрыш у Стокфиша, давая пешку форы:
www.youtube.com/watch?v=1z8yR2xveJw
Насколько я понимаю, Deep Stack чем-то подобным и занимается — находит равновесие Нэша.
habr.com/ru/post/400709
Так нейронная сеть и выдаёт на выходе список ходов с вероятностями, та её часть (голова), которая называется policy head. Приделать к ней простой фильтр для случайного выбора хода — задача тривиальная. В Го такая программа (вообще без перебора вариантов) уже играет на уровне дана, в покере, возможно, тоже будет сильна.

Миллисекунды на ход надо умножить на количество машин, которые параллельно мог запускать Гугл. Скажем, на тысячу. И получаем одну-две секунды на партию — для обучения уже вполне пригодный материал. Моя программа на таком контроле времени обучается до уровня 2700 CCRL, при том что партий играется всего порядка сотни тысяч, да и оценка не нейросетевая, а просто набор из нескольких десятков признаков с весами.

Чему она научилась — вполне проверяемо. Победа в Кубке TCEC, второе место в Суперфинале TCEC ("минус раз" в матче из 100 партий), победа в CCC-7 (+10-8=92 в личном матче со Стокфишем)… Все партии доступны, как и исходный код и весовые коэффициенты сетей.
Кстати, на тех "Кремлёвских звездах" я тоже был, и на стенды в фойе заглядывал. Помню беседу про Чессмастера — что из всех программ он самая "хитрая" в игре именно с человеком, в особенности его более ранние версии. Ещё помню, как сыграл лёгкую партию с Гениусом — как-то умудрился разменять все фигуры и получить ничейный разноцвет. Который доигрывать благоразумно не стал, считая, что для моего первого разряда это достижение уже вполне почётно :)) Сейчас этот же самый Гениус живёт в моём телефоне — шахматный код, насколько я знаю, в нём за четверть века не поменялся.

Leela Chess Zero примерно за год с нуля вышла на уровень Стокфиша. При этом тренировки проводились силами энтузиастов, в распределенном режиме. Если масштабировать имеющиеся ресурсы до уровня Гугла, один день на тренировку Alpha Zero не кажется чем-то нереальным.

Две песни о релятивистских эффектах: «Марш космических негодяев» Высоцкого и «39» одного английского астрофизика.

Я знаю, что ухищрения не помогают. Про мат конём и слоном то же самое сказать можно — поиграйте со Стокфишем, всё поймёте. Да и вообще про игру в шахматы.
Хотелось бы иметь простую мнемоническую схему для запоминания: на такое-то ухищрение — вот такое контр-ухищрение. Потому что типовых случаев там, по ощущениям, не меньше десятка.

Не в переменных типа void *, а по адресу, на который указывает void *. Что находится в самой переменной — достаточно чётко определено, это адрес ячейки памяти в формате, специфичном для данной платформы.

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

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity