Нужен алгоритм определния мата

Тема в разделе "Машинное отделение", создана пользователем Vital72, 9 фев 2008.

  1. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.122
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Полно вам! Мой не слишком оптимизированный под это дело движок в режиме проверки на легальность (aka perft) легко выдаёт 10 миллионов позиций в секунду. Для проверки на мат сначала надо проверить, что король не под шахом - это разом отсекает где-то 99% позиций, вот вам ускорение ещё в 100 раз...
  2. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.492
    Симпатии:
    3.122
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Короче, это не то место, где нужно оптимизировать.
    Сравните время проверки на легальность позиции сервером хотя бы с временем сетевого пинга от клиента :)

    ПРЕЖДЕВРЕМЕННАЯ ОПТИМИЗАЦИЯ - КОРЕНЬ ВСЕХ ЗОЛ! (Кнут/Хоар)
  3. Mustitz Заслуженный

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    30.09.2006
    Сообщения:
    3.546
    Симпатии:
    1.265
    Репутация:
    36
    Адрес:
    Киев
    Оффлайн
    Я брал оценку сверху. Естественно, что движок рассматривает позиции с учетом оценочной функции. Ну а проверка на мат идет рядом с проверкой на шах. В любом случае, если генерацию ходов начинать с короля... :)
  4. kostik Учаcтник

    • Участник
    Рег.:
    11.02.2008
    Сообщения:
    57
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Угу, получаем. Однако здесь проблема параллельных процессов, т. е. запусти ка свой движок тысячу раз, тогда посмотрим, что они там получают.

    На той странице фишка в том, что клиента нет.
  5. kostik Учаcтник

    • Участник
    Рег.:
    11.02.2008
    Сообщения:
    57
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Хм, хотя с параллельными процессами, может, и вру. В любом случае зелёная кнопочка — самое простое решение, на мой взгляд.
  6. Mustitz Заслуженный

    • Заслуженный
    • Участник
    • Старожил
    Рег.:
    30.09.2006
    Сообщения:
    3.546
    Симпатии:
    1.265
    Репутация:
    36
    Адрес:
    Киев
    Оффлайн
    Для программиста может и простое. Но мне, как пользователю, это неудобно.
  7. дуп Учаcтник

    • Участник
    Рег.:
    11.09.2007
    Сообщения:
    113
    Симпатии:
    0
    Репутация:
    0
    Адрес:
    Великий Новгород
    Оффлайн
    Вы ссылочку то дайте на ту страничку, на всякий случай.
  8. kostik Учаcтник

    • Участник
    Рег.:
    11.02.2008
    Сообщения:
    57
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Эт точно, немножко раздражает.


    Страничка не русскоязычная, буржуйская. И сам я буржуй наполовину, каюсь. Но вот на всякий случай:

    schacharena.de

Поделиться этой страницей