Готов поспорить, что из 10 партий не проиграю ни одной, если там будет N (10,100,1000,10000) компьютеров.
Осталось только их найти. :-)
Суть в том, что оценка одного движка позиции A не влияет на поиск другого движка. Из-за этого этот движок будет играть в фиксированную силу (хотя я думаю, усиление будет, но с асимптотикой логарифма).
ну я еще с первого курса помню, что распараллеливание задач прохождения графов дает логарифмический прирост производительности :)
так что 10000 может и обыграете а 1000010000 уже на вряд ли :)
Просчитать все ходы в шахматах на данном уровне развития невозможно.
Люди еще даже не сгенерировали все позиции в шахматах, содержащие лишь 7 фигур (включая королей).
ну фолдинг@хоум тоже считает что то, что видимо полностью просчитать на данном этапе невозможно (судя по тому что столько лет прошло, а конца края не видно), но дорогу осилит идущий. возможно десятки (сотни) лет расчета на сотнях тысяч компов и дадут результат.
Встаёт вопрос хранения. В данный момент одна семифигурная база занимает около терабайта с наилучшим сжатием. А таких баз более двух тысяч.
Восьмифигурные базы будут занимать ещё на порядок больше. Где мы будем хранить накопленное-то?
Извиняюсь за весьма вероятное дилетанство такого варианта, но ведь хранить ВСЕ ходы и положения может быть и незачем. Имея такую базу достаточно рассчитать и сохранить лишь возможные оптимальные (в смысле выигрыша) стратегии, а затем явно тупиковые, проигрышные, или примитивные ветки деревьев хода убить. Примитивные ветки — это те которые ИИ решает всегда правильно не по базе, а по имеющимся алгоритмам (т.е. в силу слабости хода соперника). Получившееся дерево ходов по идее будет на порядки меньше всей базы.
Есть разные метрики хранения. Самая точная — DTM — Distance To Mate — Расстояние До мата.
Мы храним для каждой позиции число ходов, за которое достигается мат. ВСЕ ходы никто и не хранит.
Да, наверняка как-то это можно оптимизировать, думаю есть множество методов для этого. Как jpeg оптимизирует картинку, и позволяет не хранить точную информацию о каждом пикселе.
Но суть в том, чтобы избежать каких-либо сложных расчетов во время игры.
С другой стороны, имея матрицу вообще всех позиций и переходов между ними, вообще не нужно ничего считать во время игры — мы всегда знаем лучший возможный ход из любой позиции.
jpeg — сжатие с потерями, уж тогда png. И то, профит в том, что хранится информация не о каждом пикселе, а лишь о некоторых, а остальные высчитываются.
Господа, а ведь это идея — коммуниздить вычислительные ресурсы чужих компов мелкими порциями с помощью яваскрипта! Так можно даже попробовать монетизировать сайты: зашел юзер на ресурс — обработал жабу для платного аналога F@h, получил очки, оплатил ими дополнительные сервисы. Это если ресурс легальный. А для всякого сомнительного контента можно и принудительно грузить юзверю скриптовую числодробилку, либо не давать без нее доступа к очередной порции клубнички.
Не такая уж плохая идея, только вот реализовывать что-то надежное с такой штукой замучиться можно… а для юзверя сказка, получает что-то платное за то, что оставил компьютер включенным…
Уже были попытки биткоин зарабатывать на посетителях сайтов — когда-то на Хабре про это писали.
А в целом — неплохая идея, особенно — для сайтов, где пользователь может проводить достаточно много времени в онлайне.
А что делать юзерам, которые любят иметь массу одновременно открытых окон (используя их фактически как закладки)?
У меня в среднем открыто по 70-100 окон в FF, некоторые открыты по несколько месяцев в режиме «будет время — посмотрю» ну или просто мониторю интересные темы.
фильтровать вкладки)
А в целом, те же флеш-игры во вконтактике каком-нибудь тоже ресурсы кушают только так, проц почти под завязку. Так что пользователю обычно разница небольшая, чем именно занят процессор, лишь бы картинки красивые на сайте показывали )
Я думал, что они с помощью проекта вычисляют оптимальную evaluation (оценочную) функцию.
Было бы здорово расставить коэффициенты и с помощью генетического алгоритма подбирать наиболее оптимальную.
А так — любой stand-alone суперкомпьютер обыграет сколько угодно большое число нодов из-за чисто технических проблем: пингов, слабой производительности JS и т.п.
Это называется — имхо…
Я вот не строю иллюзий из того, что кто-то бросит заниматься своими делами или изменит свое мнение, ради того, чтобы считаться с моим, а вы?
Chess@home: создаем крупнейший шахматный ИИ