Программирование Го

Тема в разделе "Машинное отделение", создана пользователем WildCat, 11 май 2006.

  1. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Сказано было 19 мая. Сегодня уже 14 июня. Осталось 5 дней. Хе-хе :)
  2. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Играющая была давно уже выложена :)
    Тактическая версия отложилась - исправлял очередной глюк в шахматной программе. Скоро WBEC начнется.
    Очень хочется войти в пятерку в третьей лиге :)
    Исправил ошибку, и вчера опять начал дописывать программу в ГО.
  3. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Про портирование PC-Каиссы под UCI боюсь даже спрашивать :)
  4. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Мучаю потихоньку я и Каиссу... :)
    Кстати, очень интересно - а живые исходники куда сгинули?
  5. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    В каком смысле - живые?
    Я получил их через Битмана от Донского - но нет уверенности, что под PC портировал лично Донской, так что реального автора найти проблематично...
  6. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    В этих исходников кое-чего не хватает :)
    Живые - в смысле полные.
  7. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    В результате у NS получится некий монстр, который базируясь на идеях из Каиссы обыграет всех участников WBEC в Го :)
  8. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Ну, можно попробовать вторую итерацию прокрутить. Напиши, чего именно не хватает - попробуем к Донскому обратиться за уточнениями...
  9. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Да я пытаюсь по-порядку всё делать, вроде переключился на ГО, но возникли сомнения, что войду в пятерку в WBEC - сначала Хистори прикрутил, теперь глюк этот жуткий обнаружился (правда стоит он всего пунктов 20 - редко слоны назад едят :) )
    Да и Работы на работе навалом. Поэтому делаю всё неспеша.
    В ГО тактическая версия была практически написана - то что выложил - это я её порезал до рандомной :))
    Но начал переделывать структуру хранения позиции. Поэтому еще не готова.

    На неделе выложу список того, чего не хватает в Каиссе.
    В первую очередь не хватает, как уже сказал Коршунов, библиотеки facelib.h
    Но вообще можно восстановить и так - нужно только время.
  10. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    А ты не реализовывал разве функцию perft? Подсчёт всех узлов в легальном дереве на заданное число полуходов. Полезнейшая вещь для проверки корректности генератора ходов. Пишется за 5 минут, зато потом можно быть на 99.9999% уверенным, что в генераторе глюков нет...
  11. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Нет, не реализовывал.
    А каким образом с помощью него можно обнаружить этот глюк?
    Позиции, где слон белых может взять по диагонали вправо/вниз очень редки... (именно взятия!!!)
  12. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    1. e4 h6 2. Ba6 b5 3. Bxb5

    Глюк обнаруживается уже на глубине 5.
    Это 4865609 узлов, секунды счета.
  13. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Белые внизу :)
    Пример глючного взятия - Bc4xd3
    Глюк только за белых, и только в одном направлении.
  14. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
  15. dees Учаcтник

    • Участник
    Рег.:
    09.05.2006
    Сообщения:
    17
    Симпатии:
    0
    Репутация:
    0
    Оффлайн
    Действительно, очень интересно...
  16. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Решил пока сам в Го поиграть. В Igowin дошел до того, что пришлось ему фору давать.
    Aya 5.53 была вынесена мной во ворой партии. Эта была всего втораю партия в моей жизни на большой доске.

    С GO++ дела похуже. С ней трудно играть т.к. доска мигает при каждом ходе.

    Появились новые идеи по поводу определения мертвых, на основе потенциального количества глаз. Но все еще очень туманно.
  17. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Это уже хороший уровень. Мне как-то раз удалось на трёх или четырёх камнях у него выиграть. Учтите только, что разряды Иговина весьма завышенные. Так, я доходил до второго дана - а в реальном мире я 5-й кю.

    Ещё совет, не задерживайтесь на игре с программами, если действительно хотите познакомиться с настоящим Го. Попробуйте поиграть на http://www.kiseido.com Люди играют совсем по-другому...
  18. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    А теория на русском есть? Пока с людьми рано тягаться. Никакого понимания игры у меня нет.
  19. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Вот классическое введение для начинающих Асташкина-Нилова:
    http://kido.com.ru/school/
  20. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Мне бы про стратегию, чтобы понимание игры появилось. Там одни банальности, которые и так понятны, стоит несколько партий сыграть.

    Например, никак не пойму когда захватывать камни, а когда территорию. И как правильно ее захватывать.
  21. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
  22. WinPooh В.М.

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

    а) тогда, когда они дают больше очков, чем территория в другом месте
    б) если это важные камни, угрожающие вашей позиции (например, разрезающие одну группу на две слабых)

    Ну, как в шахматах. Можете мне ответить на простой вопрос: когда надо атаковать короля, а когда - съедать материал противника?
  23. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    >Ну, как в шахматах. Можете мне ответить на простой вопрос: когда надо атаковать короля, а когда - съедать материал противника?

    Это легко, атаковать короля можно только если уверен, что сможешь отъесть при этом не меньше материала.
  24. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Так тут так-же. Оцениваешь потенциальную теориторрию, живые камни. И снимаешь камни - если оценка получается больше, чем при захвате территории. :)
  25. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Пока нет способностей к оценке потенциальной территории. Может есть книги об этом?
  26. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Книги, конечно, есть. О вопрос этот часто обсуждается, так что дам просто ссылку на одно из таких обсуждений:
    http://forum.weiqi.ru/read.php?f=1&i=21978&t=21895

    А ещё бы советовал обратить внимание вот на этот текст: http://senseis.xmp.net/?BenjaminTeuber/GuideToBecomeStrong

    Квинтессенция его - в следующих абзацах:

  27. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    В ГнуГо как раз и есть оценка предполагаемой территории на 10000 строк...
    Но используется не их алгоритм. Я дома посмотрю, как он называется, и где опубликован.
  28. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Я спрашивал о электронных книгах, а не бумажных. Вообще, иеальный вариант это сборник партий с очень подробными комментариями.
  29. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    По поводу электронных книг - посмотрите обсуждение на http://community.livejournal.com/ru_go/23804.html, там что-то такое всплывало.

    Партии с комментариями можно найти в Go Teaching Ladder: http://gtl.xmp.net/
    Это партии любителей, прокомментированные более сильными коллегами.

    Сразу скажу, что читать комментарии к партиям профессионалов смысла на данном уровне не имеет. А вот просто смотреть их, профи, партии - имеет.

    Наконец, есть сайт Александра Динерштейна: http://www.breakfast.go4go.net/
  30. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
  31. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    «пускай забирают камень, когда заберут все ? ты победил»

    Если это понять, то дальше будет легче.
  32. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Есть еще один интересный вопрос.
    В конце партии игроки чувствуют кто побеждает (если решающим может оказаться одно очко) или считают у кого сколько территории?
    Лично я в каждый момент просто борюсь, чтобы захватить побольше пунктов и отдать как можно меньше. Кто победил я узнаю уже после окончания игры.
  33. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Профи умеют считать окончания очень точно. Бывали случаи сдачи за несколько десятков ходов до конца партии, и последующий анализ показывал что при оптимальной игре сдавшийся проигрывал одно очко или два.

    Любители считать ёсэ не умеют совершенно. По оценкам профи, они упускают, по сравнению с оптимальной игрой, от 100 до 150 очков за партию - и это только в окончании...

    Под любителями здесь имеются в виду игроки от 20-го кю до 5-6 дана :)
  34. TopicStarter Overlay

    WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
  35. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.494
    Симпатии:
    3.126
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Это не очень трудно осознать.

    Надо взглянуть вот под каким углом. Ход с отъеданием камней - одноцелевой. Он приносит очки только за два съеденных камня, и чуть-чуть территории. Ход с распространением по верхней стороне - как минимум двухплановый, а то и трёх-. Во-первых, он берёт территорию. Во вторых, он не даёт белым самим сыграть где-то наверху, и взять очки. В третьих, он создаёт угрозу белым камням, которые начинают чувствовать себя неуютно - белым придётся ответить на этот ход, т.е. это ход в темпе (в Го говорят - сэнте).

    А теперь - очень простое правило: одноцелевым ходам всегда надо предпочитать многоцелевые.

    И забудьте на какое-то время о счёте очков - на таком раннем этапе партии их ещё невозможно точно подсчитать.
    Не считайте очки - считайте количество целей у хода-кандидата.

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