Ищем новые подходы.

Discussion in 'Машинное отделение' started by MS, 31 Aug 2006.

  1. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    WildCat, волшебной пилюли у меня нет. Обещаю подумать и что-то выдать.
    Чтобы Вы тем временен не простаивали, поделитесь мнением о формализации крепости.

    http://kasparovchess.crestbook.com/viewtopic.php?id=215&p=1 пост 43

    Готовы ли Вы (лично и как представитель "класса") рассматривать возможность включения подобных "понятий" в программу. Если нет, то и суда, как говорится, нет: движение мне представляется возможным именно в этом направлении - формализация и работа с "человеческими" понятиями.
  2. WildCat Коршунов Игорь

    • Команда форума
    Member Since:
    04.05.2006
    Message Count:
    3.599
    Likes Received:
    4
    Репутация:
    0
    Location:
    Гомель
    Оффлайн
    Рассматривать готов. Но включать в программу нет, т.к. не понимаю зачем это нужно. Программа вместо того, чтобы играть в шахматы, будет искать крепости.

    Включить в программу "человеческие" понятия очень сложно. Но если удастся формализовать что-нибудь, то готов попробовать.
  3. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    Хм. Первый блин комом. Для меня крепость - не крепость - важная часть игры.
    Я ищу ее для соскока и пытаюсь упредить соскок соперника, когда реализую перевес.
    Полный перебор здесь не информативен.
    Крепость, если понимать что это такое, встречается нередко. В моей практике была крепость против мастера, без пешки.
    С большой вероятностью тот же трюк мог пройти и против программы.
    Наверное, мои последующие формализации ждет аналогичная судьба, но еще разок на досуге попробую.
  4. WildCat Коршунов Игорь

    • Команда форума
    Member Since:
    04.05.2006
    Message Count:
    3.599
    Likes Received:
    4
    Репутация:
    0
    Location:
    Гомель
    Оффлайн
    Тут нужно менять всю идеологию программы. Так чтобы крепости можно было обнаруживать по ходу основного процесса. Отвлекаться от основного процесса, ради призрачной надежды, что может быть обнаружена крепость, может стоить слишком дорого.
  5. Binary Учаcтник

    • Участник
    Member Since:
    27.08.2006
    Message Count:
    135
    Likes Received:
    0
    Репутация:
    0
    Location:
    Мытищи
    Оффлайн
    крепость характеризуется большой степенью защищенности фигур ...
    соответственно , чтоб прога стремилась её построить в защите , нужно
    повысить коэффициент защищенности собственных фигур
  6. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    Да, пожалуй. Если бы проблему можно было решить "в струе", это было бы уже сделано.
  7. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    И полей вторжения. Все это еще во флаконе с обобщенной оппозицией - нужну успевать перебегать от бойницы к бойнице когда соперник пытается вторгнуться через разные точки.
  8. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    Как, например такая модификация?

    Перед запуском перебора считаем
    "эндшпильность позиции" = f(?)
    if ("эндшпильность позиции" == false) {
    традиционный алгоритм;
    }
    else {
    "человеческий модуль"
    }

    По этой схеме "человеческий модуль" можно включать, постепенно его усложняя и подкручивая
    "эндшпильность позиции" под это усложнение.
  9. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    02.05.2006
    Message Count:
    6.811
    Likes Received:
    96
    Репутация:
    3
    Location:
    Санкт-Петербург
    Оффлайн
    Думаешь, что по другому оценка делается? В большинстве программ так и есть - отдельно миттельшпильная оценка, отдельно эндшпильная.
  10. WildCat Коршунов Игорь

    • Команда форума
    Member Since:
    04.05.2006
    Message Count:
    3.599
    Likes Received:
    4
    Репутация:
    0
    Location:
    Гомель
    Оффлайн
    А что "человеческий модуль" в эндшпиле играет лучше, чем традиционный алгоритм?
    Вначале нужно придумать этот "человеческий модуль". Для начала, хотя бы для простых эндшпилей.
  11. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    02.05.2006
    Message Count:
    6.811
    Likes Received:
    96
    Репутация:
    3
    Location:
    Санкт-Петербург
    Оффлайн
    Для Конь+Слон Очень простой, есть - но ничего в нем человеческого нет...
    Для Двух коней против пешки,
    Для ладьи против пешки, Ферзя против пешки, Ладья и пешка против Ферзя и т.д. - пишется отдельная оценка - но к человеку она не имеет никакого отношения. :)
  12. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    Начну с какого-нибудь узкого класса, хорошо?
    Для разогрева.

    NS, кажется все человеческое тебе чуждо :)
    Ладно, поищу другие слова.

    Суд удаляется на совещание.
  13. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Member Since:
    12.02.2006
    Message Count:
    2.201
    Likes Received:
    64
    Репутация:
    3
    Оффлайн
    А нельзя ли дать описание всех признаков крепости, а затем уж отталкиваться от этого? В узких переулках можно совсем увязнуть.:)
    Я попробую:
    1 Слабейшая строна может ходить "туда-сюда"(или даже делать серию ходов), не ухудшая своей позиции.
    2 Это порою препятствует вторжению сильнейшей стороны.
    3 Нигде не может прорваться король сильнейшей стороны
    4 При попытке сильнейшей строны что-то пожертвовать(если возможно), получается ничья.
    5 Слабейшая сторона может использовать патовые идеи (типо, вечного преследования)

    Кстати, можно ли, с большой долей уверенности утвержать, что на доске крепость, если оценка программы более 2(можно меньше) пешек в чью-то пользу и, за последние 10 ходов, колебания в оценке не превысили 0,1пешки?

    Напоследок самая крутая крепость из тех, что я видел:
    Чеховер
    7r/p3k3/2p5/1pPp4/3P4/6P1/PP1P1PB1/2K5 w - - 0 1
    1Krd1 Rh2 2Kre1!! R:g2 3Krf1 Rh2 4Krg1 Rh3 5Krg2 Rh6 6f3 и чёрным не выиграть.
  14. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    Fruit, в первом посте была ссылка :)
  15. Fruit Александр

    • Заслуженный
    • Участник
    • Старожил
    Member Since:
    12.02.2006
    Message Count:
    2.201
    Likes Received:
    64
    Репутация:
    3
    Оффлайн
    Пардон инет с сотового - экономлю:)
  16. bankuss Александр

    • Заслуженный
    • Участник
    • Старожил
    Member Since:
    24.05.2006
    Message Count:
    1.084
    Likes Received:
    38
    Репутация:
    6
    Оффлайн
    Fruit а что последует на 6... b4 ? в этой крепости
  17. Crest Админ, МГ

    • Команда форума
    Member Since:
    05.02.2006
    Message Count:
    57.245
    Likes Received:
    21.136
    Репутация:
    628
    Location:
    Москва, Россия
    Оффлайн
    И действительно! Я видел этот этюд и верил...
    Но теперь мне кажется, что черные выигрывают.

    http://kasparovchess.crestbook.com/chessboard/?pos=———--p---k-—--p-—-r-pPp-——--P-———--PP-PP-P--K-————

    Есть такой изящный выигрыш: После b5-b4-b3 (встречать пешку путем b2-b3 нельзя ввиду прорыва по вертикали "а") белые вынуждены ответить а2-а3. Тогда черные доводят пешку на а4, после чего бросают ладью на b4!. Брать ее будет нельзя ввиду а4-а3. Если защитить пешку d4 королем, то черная ладья пройдет через с4 на с2. А сыграть заранее d2-d3 белые не имеют права ввиду того, что после появления черной ладьи на вертикали "е" они попадают в цугцванг - не могут удержать контроль над полем е3.
  18. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    02.05.2006
    Message Count:
    6.811
    Likes Received:
    96
    Репутация:
    3
    Location:
    Санкт-Петербург
    Оффлайн
    Определение крепости занимает много времени, а прибавка к силе очень маленькая (редки такие позиции)
    Но в некоторых движках это есть, в Крафти, например, убрано совсем недавно - раньше былО...
    Вроде есть в Шреддере.
  19. bankuss Александр

    • Заслуженный
    • Участник
    • Старожил
    Member Since:
    24.05.2006
    Message Count:
    1.084
    Likes Received:
    38
    Репутация:
    6
    Оффлайн
    Crest вот и смотрю, что дыра у белых, и на b5 ладья идет h8-b8-b5-a5 если трогать пешки а2-b2 то никакой крепости не получается, а пока ладья там "гуляет" свои пешки f3 g3 до ферзя явно не довести :)

    сорри за оффтоп
  20. Crest Админ, МГ

    • Команда форума
    Member Since:
    05.02.2006
    Message Count:
    57.245
    Likes Received:
    21.136
    Репутация:
    628
    Location:
    Москва, Россия
    Оффлайн
    Да, Bankuss, ваш план еще проще. А мой будет приведен в исполнение, если в исходной позиции переставить черную пешеку с а7 на а5. Это будет этюдное опровержение этюда!
    А лечится этюд очень просто! Сейчас покажу...

    http://kasparovchess.crestbook.com/chessboard/?pos=———-r-—-k-—--p-—--ppPp-——--P-—-PP-—-P-—-P-PB---K-——

    И далее по тексту решения - белые действительно строят крепость.
    В данной редакции и при пешке на а7 выигрыша у черных нет.
  21. bankuss Александр

    • Заслуженный
    • Участник
    • Старожил
    Member Since:
    24.05.2006
    Message Count:
    1.084
    Likes Received:
    38
    Репутация:
    6
    Оффлайн
    Crest вот здесь уже точно не пробьешь :)
  22. bankuss Александр

    • Заслуженный
    • Участник
    • Старожил
    Member Since:
    24.05.2006
    Message Count:
    1.084
    Likes Received:
    38
    Репутация:
    6
    Оффлайн
    этот вид крепости можно добавить в программу без особых трат - оценка в течение нескольких ходов практически не меняется - и одна из сторон повторяет ходы... соответсвенно оцениваем ближе к 0. но вот другие виды крепостей уже замечены не будут :)
  23. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    По моим наблюдениям, в структурах, где проходных "по-простому" не получается, (а иногда и при одной проходной) в пешечных и легкофигурных эндшпилях крепости нужно рассматривать всегда.
    Ладейными я не занимался, но позиция Филидора, например, это тоже частный вид крепости.
    Ферзь с пешкой против ферзя, конечно, уже в таблицах, но техника выигрыша-защиты - это упреждение-создание крепости.
    Грубо говоря, все эндшпили деляться на выиграные и крепости.
    Мне кажется, если сделать вложения, это весьма стоящая вещь. Другое дело, что с наскока предложить что-то, что серьезно заинтересует программистов, не так просто.
  24. WildCat Коршунов Игорь

    • Команда форума
    Member Since:
    04.05.2006
    Message Count:
    3.599
    Likes Received:
    4
    Репутация:
    0
    Location:
    Гомель
    Оффлайн
    Если бы было просто - уже бы сделали :)
  25. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    Конечно, WildCat. Но я не оставляю стараний. Пусть и в фоновом режиме. Поскольку в этой компании есть надежда, что действительно толковая масль пойдет в дело. А не стол или корзину. Да, в столе и корзине надо покопаться, почитать себя, любимого. Большое спасибо за толчок к мысли. Достоевский верно подметил, что люди напрасно робщут на свои повседневные обязанности, "отвлекающие" от великих дел. Но иметь хоть маленький стимул за пределами этих обязанностей - дорогого, мне кажется, стоит.
    Не прощаюсь.
  26. TopicStarter Overlay

    MS Михаил Семионенков

    • Команда форума
    Member Since:
    11.02.2006
    Message Count:
    6.542
    Likes Received:
    3.361
    Репутация:
    175
    Оффлайн
    Корзина оказалась не пуста. ;)
    Класс позиций узок и вырожден (полный перебор здесь справляется), но достаточен, чтобы показать принцип.

    Пешечный эндшпиль.
    Допускаются только взаимноблокированные пешечные пары (типа белая а4-черная а5)
    Одна пара на вертикаль. Пары на соседних вертикалях не допускаются.
    Сдвиг между соседними парамами не более одной горизонтали.
    Короли находятся внутри своих пешечных цепей.
    Не более одного участка прорыва на позицию.
    (прорыв между краем доски и соседней парой возможен, если промежуток между ними - более одной вертикали,
    прорыв между соседними парами возможен, если сумма сдвигов по вертикали и горизонтали одной пары относительно другой больше 2).

    Алгоритм

    Если пар меньше 3, то это табличный эндшпиль (число фигур не больше 6)
    Если участков прорыва 0, то это абсолютная крепость
    // Остался случай полей соответствия
    Определяем поля соответствия.
    Играем по алгоритму полей соответствия, пока одна из сторон не прорвется, или будет зафиксирована ничья.

    Конец

    Наверное, если, условно скажем, мне потратить год свободного времени, то можно довести до ума пешечные и легкофигурные эндшпили с сформировавшейся пешечной структурой. А на подвижную пешечную цепь, ладейные, ферзевые, многофигурные и в корзине ничего нет - слабо.
    WildCat, если идея нравится - дарю: ищите энтузиастов.
  27. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    02.05.2006
    Message Count:
    6.811
    Likes Received:
    96
    Репутация:
    3
    Location:
    Санкт-Петербург
    Оффлайн
    Перебор совместно с Хеш таблицами - как раз некоторым образом строит поля соответствия...
  28. atoku Модератор

    • Команда форума
    Member Since:
    05.02.2006
    Message Count:
    2.949
    Likes Received:
    9
    Репутация:
    0
    Location:
    USA
    Оффлайн
    Миша, а есть ли возможность дать ссылки или самому привести как можно больше примеров крепостей. Может какие-то мысли придут у наших мастеров в смысле систематизации. Надо примеров 100, а лучше 1000. Было бы классно иметь книжку на эту тему.
  29. e271 Старожил

    • Ветеран
    • Старожил
    Member Since:
    11.02.2006
    Message Count:
    6.512
    Likes Received:
    4
    Репутация:
    1
    Оффлайн
    Миша, если есть объемные материалы - шли на мыло. Все будет в наилучшем виде поставлено на сайте :)
  30. WildCat Коршунов Игорь

    • Команда форума
    Member Since:
    04.05.2006
    Message Count:
    3.599
    Likes Received:
    4
    Репутация:
    0
    Location:
    Гомель
    Оффлайн
    Для начала непонятно как найти поля соответсвия. К тому же, часто бывает так, что тот кто прорвется, из-за того, что ради прорыва обычно чем-то жертвуют, проигрывает. Партий с польностью блокированными пешками настолько мало, что уделять вниманию такому эндшпилю можно только ради развлечения (это никак не поможет лучше играть в шахматы).
  31. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    02.05.2006
    Message Count:
    6.811
    Likes Received:
    96
    Репутация:
    3
    Location:
    Санкт-Петербург
    Оффлайн
    Как ищутся поля соответствия - Сначала при каждом возможном положении королей запускается перебор, находим выигранные/проигранные позиции, затем ретроспективный анализ (аналог постоения ЭБ). перебор + Хеш таблицы не должен быть хуже...
  32. WildCat Коршунов Игорь

    • Команда форума
    Member Since:
    04.05.2006
    Message Count:
    3.599
    Likes Received:
    4
    Репутация:
    0
    Location:
    Гомель
    Оффлайн
    Такой метод построения полей соответствия совсем не годится.
  33. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    02.05.2006
    Message Count:
    6.811
    Likes Received:
    96
    Репутация:
    3
    Location:
    Санкт-Петербург
    Оффлайн
    А есть другой? Человек определяет именно так - находит положения королей с выигрышем, и дальше ретроспективный анализ.
  34. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Member Since:
    02.05.2006
    Message Count:
    6.811
    Likes Received:
    96
    Репутация:
    3
    Location:
    Санкт-Петербург
    Оффлайн
    Если для определения выигрыша достаточно глубины в 5 полуходов - то получается на самом деле быстрее перебора...
    2000 легальных положений 2-ух королей (случай неполностью запертой пешечной структуры - иначе достаточно смотреть положения королей при которых возможны взятия, а в данном случае - первым ходов должно быть взятие, либо ход пешкой). Определений выигранных позиций по затраченному времени равносильно расчету на 16 полуходов (бранчинг фактор взят равный двум, не учитывается работа хеша при расчете на 5 полуходов из разных позиций)
    Сам ретроспективный анализ займет времени меньше, чем определение выигранных позиций на первом этапе.
  35. WildCat Коршунов Игорь

    • Команда форума
    Member Since:
    04.05.2006
    Message Count:
    3.599
    Likes Received:
    4
    Репутация:
    0
    Location:
    Гомель
    Оффлайн
    Если перебор может определить выигрыш/проигрыш, то зачем нам поля соответствия?

Share This Page