Каспаров. Шахматы как модель жизни.

Тема в разделе "Машинное отделение", создана пользователем Осипов Юрий, 19 май 2008.

  1. Осипов Юрий
    Оффлайн

    Осипов Юрий Учаcтник

    Репутация:
    11
    Мысли Каспарова из книги «Шахматы как модель жизни», полезные для шахматного программирования.

    Сначала несколько цитат из книги:

    «Стратег начинает с постановки отдаленной цели и вырабатывает стратегию ее достижения, продвигаясь от этой цели В ОБРАТНОМ НАПРАВЛЕНИИ».
    «Гроссмейстер делает лучшие ходы, основываясь не на переборе тысяч многоходовых вариантов, а на желании прийти через десять-пятнадцать ходов к определенной позиции».
    «Постановка долговременных и промежуточных целей – это первый шаг на пути к успеху. Затем необходимо наметить маршрут и придерживаться избранного курса, не упуская из виду главной цели».

    Это, конечно, о людях, но давайте попробуем применить это к шахматной программе.
    По сути, Каспаров предлагает для шахматной программы ретро-анализ, который уже давно и успешно используется для малофигурных эндшпилей.

    Но разве можно использовать его для миттельшпиля, где количество различных позиций необозримо велико? Казалось бы – нет. Но вот еще одна подсказка от Каспарова:

    «Все исследования типовых позиций миттельшпиля, которых НЕ ТАК УЖ МНОГО, основаны на его связи с дебютной стадией».

    Оказывается, разных позиций в миттельшпиле, по мнению Каспарова, не так уж много. Значит, их можно загнать в таблицу и использовать как конечные позиции для ретро-анализа?

    На первый взгляд – полный бред, как скажет наверняка NS. А если все-таки подумать?
     
  2. WinPooh
    Оффлайн

    WinPooh В.М. Команда форума

    Репутация:
    95
    Не будем ещё забывать, что Каспаров - ученик Ботвинника!
     
  3. Осипов Юрий
    Оффлайн

    Осипов Юрий Учаcтник

    Репутация:
    11
    Но здесь речь не о знаменитых "траекториях" Ботвинника, а совсем о другом.
     
  4. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    "Загнать позиции" - для этого и предназначен миттельшпильный самобуч.
    Мало наигранных партий - прогнали самообуч по базе позиций.
    Только это ничего не дает... На тестах миттельшпильный самообуч начинает сказываться через тысячи партий, наигранных одинаковым дебютом.

    Это говорит от том что Каспаров насчет "НЕ ТАК УЖ МНОГО" немного ошибается.

    Но метод имеет право жить, так как шашечным программам (русские шашки - "Тундра") Это дает реальную прибавку силы. Но у них немного другой метод - в шашках мало малошашечных позиций из 10 ЭБ (и больше) которые реально могут возникнуть в практической партии, и загоняя их с точными оценками повышаем силу игры.
     
  5. Mustitz
    Оффлайн

    Mustitz баннер

    Репутация:
    36
    Вообще-то слова "типовая позиция" подразумевает не одну позицию, а целый класс позиций с характерными особенностями. Классифицировать позиции можно по разному. Можно выделить каждую позицию в отдельный класс и загонять их с точной оценкой. А можно просто довольствоваться следующим: эта позиция может возникнуть из варианта Дракона в сицилианке, эта позиция может возникнуть из закрытого варианта защиты Каро-Канн. Конечно, при такой классификации одна и та же позиция может попасть в несколько классов.

    Проверить можно, например, так. Играть партии одним дебютным вариантом и настроить параметры оценку позиции под него. Потом в зависимости от дебюта выбирать оценку позиции.
     
  6. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    И откуда взять точную оценку? В шашках понятно, там десятишашечные позиции пробиваются до результата. А в шахматах?
     
  7. Хайдук
    Оффлайн

    Хайдук Учаcтник

    Репутация:
    0
    Всегда будут масса исключений. От хаоса вариантов и стало быть исчерпывающего перебора, видимо, не убежать :( Силу игры программ будут медленно, но неуклонно повышать, конечно, хотя - по крупному счету - неизвестно будет за счет чего, собственно... :)
     
  8. WildCat
    Оффлайн

    WildCat Коршунов Игорь Команда форума

    Репутация:
    0
    Такой подход хорош для человека, т.к. позволяет скрыть недостатки и использовать лучшие качества человеческого мозга. Для программ такой путь тупиковый.
     
  9. Хайдук
    Оффлайн

    Хайдук Учаcтник

    Репутация:
    0
    Выходит, что для движков все пути тупиковы ;) , если не могут осилить даже перебор...
     
  10. WildCat
    Оффлайн

    WildCat Коршунов Игорь Команда форума

    Репутация:
    0
    Не выходит.
     
  11. Хайдук
    Оффлайн

    Хайдук Учаcтник

    Репутация:
    0
    На ответ вроде не похоже, значит ждём-с...
     
  12. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Кто не может осилить перебор? Программы считают значительно лучше человека.
     
  13. дуп
    Оффлайн

    дуп Учаcтник

    Репутация:
    0
    Как-то непонятно вы выразились. Что значит "даже"? Вообще все позиции рассмотреть, что-ли ? Я где-то читал, что число возможных позиций в шахматной партии превышает количество атомов во Вселенной. Ничего себе пустячок какой.
     
  14. Хайдук
    Оффлайн

    Хайдук Учаcтник

    Репутация:
    0
    Прикидывали, что пока у шашек (которые уже полностью решили) приблизительно 10^18 позиций, в шахматах ~ 10^(45 -50). Это меньше, чем атомов во Вселенной, ~ 10^80, но все-же немало :) В шашках удалось расставить все позиции по классам, обсчитать классы или свести классы к обсчитанным классам. Имхо, шахматы являются намного более "разнообразной" игрой из-за разных типов "фишек" и ходов. Еще предстоит посмотреть, насколько можно будет применить "классовый" подход, чтобы облегчить незамысловатый счёт :rolleyes:
     
  15. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Это какие шашки полностью решили?
    Вы выдаете желаемое за действительное :)
     
  16. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Кто вам такое сказал? :/
     
  17. Хайдук
    Оффлайн

    Хайдук Учаcтник

    Репутация:
    0
    Может быть, имею ввиду draughts или checkers, и заявки об их решении.
     
  18. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    И где сказано что Чинук полностью решил чеккерс?
    http://www.cs.ualberta.ca/~chinook/news/
    Они посчитали результат в 19 дебютах. И всё.
    Есно Чинук не умеет играть из любой позиции, и не знает результат в любой позиции.
     
  19. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    То есть посчитали результат в 19-ти дебютах (из 174 которые используются в официальных соревнованиях), и достижением века называют то что они посчитали ОДНУ позицию, классическую, то есть их программа не проигрывает в классику, GAYP. И не более того.
     
  20. WildCat
    Оффлайн

    WildCat Коршунов Игорь Команда форума

    Репутация:
    0
    Наверно, потому что не играет?
     
  21. Хайдук
    Оффлайн

    Хайдук Учаcтник

    Репутация:
    0
    Вы ссылаетесь на положение дел к 29 Апрелю 2007. К Декабрю они наконец осилили всю игру, на той же самой странице:

    December, 2007
    Solving checkers named by Science Magazine as one of the top 10 breakthroughs for 2007.

    Nature names Solving Checkers as one of the 10 big stories of 2007.

    New York Times featured in the 2007 Year End in Ideas special issue.
     
  22. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Нет, к декабрю им всего-лишь нарисовали нимб. Ничего нового они не посчитали.
     
  23. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Но нужно различать умение играть оптимально по Цермело в любой позиции, и умение делать ничью в Чеккерс с жеребьевкой трех ходов. Через 10-15 лет пограмма научится непроигрывать во всех дебютах, но при этом она даже не научится делать ничью в любой ничейной позиции. Всех позиций она знать не будет. И даже играть оптимально из 174-ех начальных дебютов она не научится тоже (в случае проигрывающего хода соперника, в общем случае программа будет знать как не проиграть, а не как выигрывать)
     
  24. WildCat
    Оффлайн

    WildCat Коршунов Игорь Команда форума

    Репутация:
    0
    Ты думаешь они смогут сохранить дерево перебора?
     
  25. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Ну да. Еще надо доказать что они действительно решили начальную позицию. А как проверить это непонятно. Соревноваться они отказываются...
     
  26. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Да, скорей всего смогут. Через 15 лет объемы и оперативной, и дисковой памяти значительно вырастут.
     
  27. WildCat
    Оффлайн

    WildCat Коршунов Игорь Команда форума

    Репутация:
    0
    А примерно сколько позиций будет в дереве?
     
  28. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    Какое будет дерево не знаю. Но ИМХО миллиарда сохраненных позиций с оценками и лучшим ходом достаточно чтоб не проигрывать... У них же еще вдобавок и 10ЭБ. Может посчитают 11ЭБ и 12ЭБ.
     
  29. Mustitz
    Оффлайн

    Mustitz баннер

    Репутация:
    36
    Конечно от перебора не убежать. Просто моя ключевая мысль была в том, чтобы таблицы для оценочных функций выбирать в зависимости от разыгранного дебютного варианта. Если это усилит игру программы, тоже хлеб.
     
  30. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    К вариантам привязываться неправильно. Правильней привязываться к материалу и пешечной структуре.
     
  31. WildCat
    Оффлайн

    WildCat Коршунов Игорь Команда форума

    Репутация:
    0
    Миллиард это - капля в море. Это может помочь только хорошему движку. И то вероятность проигрыша останется.
     
  32. 17
    Оффлайн

    17 Учаcтник

    Репутация:
    0
  33. ##DOOM13##
    Оффлайн

    ##DOOM13## Илья баннер

    Репутация:
    0
    Вроде бы не количество возможных позиций, а кол-во неповторяющихся шахматных партий превышает число атомов во вселенной. Об этом в википедии написано, не знаю, правда это или нет.
     
  34. NS
    Оффлайн

    NS Нефёдов Сергей баннер

    Репутация:
    3
    И позиций больше чем 10^50
     
  35. 17
    Оффлайн

    17 Учаcтник

    Репутация:
    0