Шашки в России
Шашечные программы - Оценка дамочных эндшпилей
Kallisto - Сен 15, 2006 - 08:48 AM
Тема сообщения: Оценка дамочных эндшпилей
Может кто-нибудь помочь с оценкой дамочных эндшпилей. Во всех книгах, которые я читал, этот вопрос опускался.
Какие факторы важны в таких эндшпилях?
Видимо самый важный фактор это отрезание дамкой простых противника от полей превращения. Но как это четко сформулировать?
Очень часто бывает, что в таких эндшпилях перевеса в шашку недостаточно. Очень хочется чтобы программа правильно оценивала такие позиции.
MiG - Сен 15, 2006 - 10:32 AM
Тема сообщения:
Общая оценка дамочных эндшпилей — вопрос очень сложный. И в литературе он опускается неспроста
ИМХО, формализация такой оценки для игровой программы сопряжена, в первую очередь, с огромным объёмом экспериментальной работы (в т. ч. тестовые партии и т. п.). Кроме того, можно с большой долей уверенности предположить, что создать универсальную эндшпильную ОФ на практике будет невозможно.
Но решать эту проблему сегодня не имеет смысла. Уже созданы полные 8-ми фигурные базы, неполные 9-ка и 10-ка. На очереди полная девятка.
Лучше уж потратить время и усилия на разработку алгоритмов генерации ЭБ.
Kallisto - Сен 15, 2006 - 02:11 PM
Тема сообщения:
Дамки могут появиться еще когда будет много шашек.
К большим ЭБ у меня отрицательное отношение. Они очень мешают играть в шашки. Каллисто с ЭБ6 почти всегда наберет больше очков в турнире, чем программа с ЭБ10. Т.к. ЭБ10 будет убеждать программу, что выиграть не стоит и пытаться т.к. у соперника есть ничья. И прога будет делать первый попавшийся ход.
А имея ЭБ6 мы не будем знать, что у соперника есть ничья и победим, если соперник ошибется. А для того, чтобы он ошибся мы будем ему создавать все условия, т.к. будем играть сильными позиционными ходами.
Я раньше уже писал, что даже ЭБ6 уже мешают обыгрывать слабых соперников. А имея большую базу обыграть сильного соперника становится практически невозможно.
Kallisto - Сен 15, 2006 - 02:15 PM
Тема сообщения:
Кроме того, для нас не явл. критическим достигнуть идеальной ОФ.
Достаточно сделать ОФ которая чаще будет права, чем ошибаться. Например, ОФ на 75% позиций выдающая адекватную оценку будет уже полезна.
MiG - Сен 15, 2006 - 03:05 PM
Тема сообщения:
Kallisto писал(а):
Дамки могут появиться еще когда будет много шашек.
Это тогда не эндшпиль, а дамочный миттельшпиль. И здесь уже другие задачи.
Kallisto писал(а):
К большим ЭБ у меня отрицательное отношение. Они очень мешают играть в шашки. Каллисто с ЭБ6 почти всегда наберет больше очков в турнире, чем программа с ЭБ10. Т.к. ЭБ10 будет убеждать программу, что выиграть не стоит и пытаться т.к. у соперника есть ничья. И прога будет делать первый попавшийся ход.
А имея ЭБ6 мы не будем знать, что у соперника есть ничья и победим, если соперник ошибется. А для того, чтобы он ошибся мы будем ему создавать все условия, т.к. будем играть сильными позиционными ходами.
Я раньше уже писал, что даже ЭБ6 уже мешают обыгрывать слабых соперников. А имея большую базу обыграть сильного соперника становится практически невозможно.
В общем, это не совсем так. Всё зависит от того, как мы будем оценивать ничью из ЭБ. Можно очень гибко подстраивать эту оценку в зависимости от того, что нужно в данный момент. В определённых ситуациях ничью из ЭБ можно вообще не использовать и играть по ОФ.
Кроме того, защиту худших позиций еще никто не отменял
, например, в тех же партиях между программами. Вы, например, уверены, что не найдется другой программы, играющей позиционно круче?
Так что лучше всё же иметь многофигурные ЭБ. Другое дело, что их сделать не так-то просто. Например, чтобы сгенерить семерку, надо уже приложить определённые усилия
А 8-ка и выше на сегодняшний день и вовсе нетривиальная задача.
Kallisto писал(а):
Например, ОФ на 75% позиций выдающая адекватную оценку будет уже полезна.
Вряд ли это реально...
NS - Сен 15, 2006 - 04:34 PM
Тема сообщения:
Несколько признаков я описывал на другом форуме.
Для выигрыша нужно иметь на две шашки (суммарно) больше, чем количество дамок у соперника (Иначе практически гарантирована ничья), в случае если соперник не владеет главной, и на три больше если владеет главной. (в противном случае оценку можно ограничить нулевой - проиграть соперник не может)
И наоборот - если количество наших дамок на две больше, чем суммарное количество шашек соперника (если он не владеет главной), и на три больше если соперник владеет главной - то победа нам практически гарантирована.
MiG - Сен 15, 2006 - 06:57 PM
Тема сообщения:
NS
То, что Вы написали — это не позиционный признак, а просто подсчет материала. Мы же говорим о том, как формализовать позиционную игру в эндшпиле.
Но даже подсчет материала далеко не всегда дает точную оценку. И почему преимущество должно быть именно в две или три шашки? Иногда можно выиграть и с одной лишней шашкой, но может не хватить и пяти лишних шашек. Например, попробуйте выиграть чёрными эту позицию:
NS - Сен 15, 2006 - 07:03 PM
Тема сообщения:
Причем тут эта позиция? Она ни под один из перечисленных мною типов пизиций не попадает!
MiG - Сен 15, 2006 - 07:13 PM
Тема сообщения:
NS писал(а):
Причем тут эта позиция? Она ни под один из перечисленных мною типов пизиций не попадает!
NS писал(а):
Для выигрыша нужно иметь на две шашки (суммарно) больше, чем количество дамок у соперника
NS - Сен 15, 2006 - 07:21 PM
Тема сообщения:
"Необходимо" (нужно) и "достаточно" - эта два абсолютно разных слова.
"Необходимо" - значит что если у нас материала меньше - значит выигрыш невозможен, если его больше - это ни о чем не говорит.
MiG - Сен 15, 2006 - 07:34 PM
Тема сообщения:
NS писал(а):
"Необходимо" (нужно) и "достаточно" - эта два абсолютно разных слова.
"Необходимо" - значит что если у нас материала меньше - значит выигрыш невозможен, если его больше - это ни о чем не говорит.
Не совсем Вас понял. Вы написали: "Для выигрыша нужно иметь на две шашки (суммарно) больше, чем количество дамок у соперника...". Если мы будем оценивать позицию, которую я привел, по этому признаку, то черные должны выиграть. Но выигрыша там нет.
NS - Сен 15, 2006 - 07:42 PM
Тема сообщения:
Для выигрыша нужно иметь на две шашки (суммарно) больше, чем количество дамок у соперника (Иначе практически гарантирована ничья), в случае если соперник не владеет главной, и на три больше если владеет главной. (в противном случае оценку можно ограничить нулевой - проиграть соперник не может)
В скобках написано что если нет такого перевеса в материале - то сопернику практически гарантирована ничья (если есть такой перевес - то это ни о чем не говорит)
И наоборот - если количество наших дамок на две больше, чем суммарное количество шашек соперника (если он не владеет главной), и на три больше если соперник владеет главной - то победа нам практически гарантирована.
Тут имеется в виду, если есть такой перевес - то практически гарантирован выигрыш (если такого перевеса в материале нет - это не говорит о том что выигрыша нет)
MiG - Сен 15, 2006 - 07:54 PM
Тема сообщения:
NS писал(а):
В скобках написано что если нет такого перевеса в материале - то сопернику практически гарантирована ничья (если есть такой перевес - то это ни о чем не говорит).
В скобках написано только это: "...если нет такого перевеса в материале". А "если есть такой перевес - то это ни о чем не говорит" не написано нигде, да и не совсем понятно, как эта фраза состыкуется с формализованным Вами признаком возможности выигрыша.
Kallisto - Сен 15, 2006 - 08:11 PM
Тема сообщения:
NS писал(а):
Для выигрыша нужно иметь на две шашки (суммарно) больше, чем количество дамок у соперника (Иначе практически гарантирована ничья), в случае если соперник не владеет главной, и на три больше если владеет главной. (в противном случае оценку можно ограничить нулевой - проиграть соперник не может)
Какую практическую ценность может представлять это правило? Оно выполняется почти всегда. ЭБ4 достаточно, чтобы это правило было совсем не нужно.
Kallisto - Сен 15, 2006 - 08:14 PM
Тема сообщения:
NS писал(а):
И наоборот - если количество наших дамок на две больше, чем суммарное количество шашек соперника (если он не владеет главной), и на три больше если соперник владеет главной - то победа нам практически гарантирована.
Какая нам от этого польза?
Я предлагаю здесь обсуждать случай когда у нас одна дамка + n простых, а у соперника одна дамка и n+1 простая. Насколько реален перевес противника?
NS - Сен 15, 2006 - 08:22 PM
Тема сообщения:
MiG писал(а):
NS писал(а):
В скобках написано что если нет такого перевеса в материале - то сопернику практически гарантирована ничья (если есть такой перевес - то это ни о чем не говорит).
В скобках написано только это: "...если нет такого перевеса в материале". А "если есть такой перевес - то это ни о чем не говорит" не написано нигде, да и не совсем понятно, как эта фраза состыкуется с формализованным Вами признаком возможности выигрыша.
Там Сравнивается количество дамок с суммарным количеством шашек (дамки+простые) - поэтому никакого противоречия нет.
Глюк форума - не могу корректно вставить модуль!
NS - Сен 15, 2006 - 08:23 PM
Тема сообщения:
Kallisto писал(а):
NS писал(а):
И наоборот - если количество наших дамок на две больше, чем суммарное количество шашек соперника (если он не владеет главной), и на три больше если соперник владеет главной - то победа нам практически гарантирована.
Какая нам от этого польза?
Я предлагаю здесь обсуждать случай когда у нас одна дамка + n простых, а у соперника одна дамка и n+1 простая. Насколько реален перевес противника?
Нужно смотреть статистику по ЭБ...
MiG - Сен 15, 2006 - 09:02 PM
Тема сообщения:
Kallisto писал(а):
Я предлагаю здесь обсуждать случай когда у нас одна дамка + n простых, а у соперника одна дамка и n+1 простая. Насколько реален перевес противника?
NS писал(а):
Нужно смотреть статистику по ЭБ...
Для начала надо определиться, что обсуждать: дамочный эндшпиль или дамочный миттельшпиль. Собственно, дамочный эндшпиль обсуждать ИМХО не имеет смысла. Почему — я уже написал.
Проблема дамочного миттельшпиля очень сложна. В человеческих партиях такие позиции играются очень редко, в литературе никакой формализации нет (во всяком случае, я не встречал).
Kallisto - Сен 16, 2006 - 05:59 AM
Тема сообщения:
Я думаю нужно рассматривать случай когда всех шашек около 9 - 11. Если их будет больше, то дамку будет не трудно разменять (в большинстве случаев).
NS - Янв 29, 2007 - 01:19 PM
Тема сообщения:
Я сейчас сделал проще.
Если у черных есть дамка. и оценка не в их пользу, То Score:=Score/4;
Тоже самое за белых.
Коэффициент (4) можно изменить (подобрать опытным путем)
Соместно с простейшие эндшпильной оценкой (Если есть дамка, у соперника суммарно не больше трех шашек, либо если есть Дамка на главной диагонали, а у соперника не больше четырех шашек, и при этом оценка не в пользу того у кого есть дамка - то оценку делим еще на 5- то есть суммарно оценка делится на 20, так как в этом случае предыдущее сокращение оценкитоже пройдет)
Программа просто очень ловко удирает на ничью в сложных ситуациях.
NS - Авг 21, 2007 - 07:28 AM
Тема сообщения:
Запущу расчет дамочных миттельшпилей.
Тат как в них большая ничейная грань - ОФ будет иметь немного нестандартный вид.
W-вероятность выигрыша белых.
L - вероятность выигрыша черных.
D - вероятность ничьи.
При этом понятно что W,D,L больше нуля.
В качестве оценки можно взять W-L.
То есть оценка получается такой:
Score:=max(ScoreW,0)-Max(ScoreB,0)Например Если взять оценку для эндшпильных позиций где есть дамки у обеих сторон:
ScoreW=(WD-BD+WP*0.8+WGL*0.7-2.2),
Где
WD - количество белых дамок,
BD - количество черных дамок,
WP - количество белых простых.
WGL - белые владеют главной.
То программа понимает что две дамки не выигрывают у одной и т.д.
Для начала посчитаю линейную формулу, с отдельными PST для данного класса позиций.
plus600 - Авг 21, 2007 - 07:29 AM
Тема сообщения:
А кому Вы это все пишите?
NS - Авг 21, 2007 - 07:32 AM
Тема сообщения:
Ветка Коршунова, соответственно ему и пишу.
plus600 - Авг 21, 2007 - 07:34 AM
Тема сообщения:
А я то думал, что форумы предназначены для общения достаточно больших групп людей, а для двоих хватает почты. Отстаю от жизни 
NS - Авг 21, 2007 - 07:38 AM
Тема сообщения:
Я не виноват что некоторым шашечным программистам не нужны обсуждения алгоритмов и методов шашечного AI.
Главное ведь не сила игры (c)
То что это неинтересно вам - не значит что это неинтересно никому кроме меня и Каллисто.
plus600 - Авг 21, 2007 - 08:17 AM
Тема сообщения:
Что за манера все передергивать? Сами же написали, что пишите Коршунову, а в ответ на мое замечание о наличии почты для таких случаев, в ответ я получил что-то типа "сам дурак и не лезь".
Писал то я, в общем о том, что это не специализированный сайт программистов, и обсуждать "на двоих" такие узкие темы не очень этично. Хотя, все это достаточно условно - но грубить при этом не нужно.
Кстати, воспитанные люди, слово "вы" при обращении к конкретному человеку пишут с большой буквы 
NS - Авг 21, 2007 - 08:26 AM
Тема сообщения:
На многих форумах Вы с большой буквы считают за оскорбление.
Насчет шашечных программистов - вы считаете что тут не место для их общения? Узкие специалисты должны общаться где-то в другом месте?
plus600 - Авг 21, 2007 - 08:44 AM
Тема сообщения:
Здесь явно не тот форум, где это сочтут за оскорбление.
Не совсем так. Не корректно общаться только на крайне узкоспециализированные темы. Но, это мое личное мнение.
Kallisto - Авг 21, 2007 - 09:52 AM
Тема сообщения:
NS писал(а):
ScoreW=(WD-BD+WP*0.8+WGL*0.7-2.2),
Так получается, что лишняя простая совсем не считается преимуществом. В подавляющем числе случаев ее достаточно для победы (если рассматривать многофигурные эндшпили).
NS - Авг 21, 2007 - 10:17 AM
Тема сообщения:
Это без посчитанных коэффициентов.
Реальный вид k1*WD-k2*BD+k3*WP-k4*BP+k5*WGL-k6
Значения буду считать.
С приведенным мной значениями конечно простая дает перевес.
У белых одна дамка и три простые, у черных одна дамка и две простые.
Оценка за белых 1-1+3*0.8-2.2=0.2
Оценка за черных 1-1+2*0.8-2.2=-0.6 (приводим к нулю - веротность победы черных равна нулю)
По формуле max(0.2,0)-max(-0.6,0)=0.2
Теперь по дамке и четыре против трех простых.
Оценка уже равна 0.8
alemo - Авг 21, 2007 - 02:33 PM
Тема сообщения:
Navernoye nado kak-to otzenivat vozmohnost prostoi prevratitsya v damku. Togda koeffitienti budut druhiye.
ALEMO
Kallisto - Авг 21, 2007 - 03:45 PM
Тема сообщения:
А как это можно сделать?
Kvadrat - Авг 21, 2007 - 06:04 PM
Тема сообщения:
Сергей (NS), использует ли Скифи 0.06 ЭБ? Или пронормировал оценку поделив ее на 4? В эндшпиле 3д+большак против 1д Скифи 0.14.13 показывает >4000, а 0.06 чуть больше 1000.
Запустил несколько матчей в т.ч. 0.06 против 0.4.13
NS - Авг 21, 2007 - 06:26 PM
Тема сообщения:
Нет, не использует. в Скифи 0.06 ED_Scifi.dll должна лежать в папке Engines! Поменялся путь к dll-ке.
А какой счет в матче 0.4.13 с ЭБ против 0.06 без ЭБ? 
Kvadrat - Авг 21, 2007 - 07:24 PM
Тема сообщения:
NS писал(а):
Нет, не использует. в Скифи 0.06 ED_Scifi.dll должна лежать в папке Engines! Поменялся путь к dll-ке.
А какой счет в матче 0.4.13 с ЭБ против 0.06 без ЭБ?
Все матчи запускаю на работе, в серверной. Следить за ними редко получается. Сейчас не вспомню, кажется счет равный. Завтра перенастрою и перезапущу.
А вот в матче ЭБ5 Скифи 0.4.13 - Каллисто3.23 пока счет +1 в пользу Скифи. Надо проверить использует ли Каллисто ЭБ.
Совсем вы меня запутали новыми GUI и дополнительными dll-ками 
NS - Авг 21, 2007 - 07:47 PM
Тема сообщения:
Если Скифи ЭБ использует - то каллисто и подавно.
Не может быть ситуации что Scifi играет с ЭБ а Каллисто без ЭБ.
Возможно что версия 0.04.13 играет сильнее чем 0.06.
Kvadrat - Авг 21, 2007 - 07:53 PM
Тема сообщения:
NS писал(а):
Возможно что версия 0.04.13 играет сильнее чем 0.06.
У меня тоже так кажется, но подождем хотя бы денька два. А вообще матч примерно на 2 недели!
Касательно матча Скифи 0.04.13- Скифи 0.06. Я вспомнил, что 0.06 версия долго думает в позициях из ЭБ, собственно это и навело на мысль о неиспользовании ЭБ. Завтра перезапущу.
Kvadrat - Авг 21, 2007 - 08:04 PM
Тема сообщения:
NS писал(а):
Не может быть ситуации что Scifi играет с ЭБ а Каллисто без ЭБ.
какая Каллисто? Каллисто3 будет использовать?
NS - Авг 21, 2007 - 10:45 PM
Тема сообщения:
Третья Каллисто берет базы напрямую из папки, Скифи делает тоже самое, только через драйвер. Если Каллисто3 не использует базы, то Скифи тем более их использовать не может.
NS - Авг 22, 2007 - 05:50 AM
Тема сообщения:
Цитата:
Я вспомнил, что 0.06 версия долго думает в позициях из ЭБ, собственно это и навело на мысль о неиспользовании ЭБ.
Если долго думает в ничейных позициях из ЭБ - значит ЭБ отключена, а если в выигранных - то я всего-лишь убрал LMR(отсечения) в позициях из ЭБ. На силу это не влияет.
NS - Авг 22, 2007 - 08:15 AM
Тема сообщения:
Цитата:
Так получается, что лишняя простая совсем не считается преимуществом. В подавляющем числе случаев ее достаточно для победы (если рассматривать многофигурные эндшпили).
Если слабейшая сторона владеет главной, то двух лишних шашек легко может не хватить. (недавно смотрел партию движков - дамка и две против дамки и четырех - ничья)
Одной лишней шашки очень часто не хватает даже без владения главной.
Если бы была семифигурная ЭБ можно было-бы посмотреть статистику по лишней шашке.
Время в формате GMT - 12
PNphpBB2 © 2003-2007