Жертва качества

Тема в разделе "Машинное отделение", создана пользователем варяг, 10 дек 2006.

  1. WinPooh В.М.

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

    Что-то подобное мне встречалось в Го. Есть такая программа, которая играет по методу Монте-Карло - разыгрывает позицию много-много раз случайными ходами, и усреднённый результат берёт в качестве ОФ.
  2. NS Нефёдов Сергей

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

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.491
    Симпатии:
    3.120
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
  4. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    The Crazy Stone вроде так играет. Читал описание, но мало что понял.
  5. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    http://remi.coulom.free.fr/CrazyStone/
    Оно?
    Вроде сильная программа...

    Я предлагаю немного другое (совсем другое :) )
    Никакого Монте-Карло, просто видоизменить ОФ и уйти от линейности,
    а в качестве оценки выдавать мат. ожидание результата.
  6. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.491
    Симпатии:
    3.120
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Да, их несколько. Стал читать статью и вспомнил название INDIGO.
    Однако, монте-карликовость рулит - в этом году такая программа выиграла компьютерный турнир на KGS!
  7. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    У меня нет идей как его, даже примерно, посчитать.
  8. WildCat Коршунов Игорь

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

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    CrazyStone в этом году выиграла CG2006 на доске 9x9.
    при этом пролетела на доске 19x19.
  10. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Примерно у меня идеи есть, сейчас еще немного подумаю, и выложу.
  11. NS Нефёдов Сергей

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

    Если Обе ОФ равны Нулю - то Мат. Ожидание равно 0.5 (у обоих нет слабостей)
  12. WinPooh В.М.

    • Команда форума
    Рег.:
    13.02.2006
    Сообщения:
    9.491
    Симпатии:
    3.120
    Репутация:
    95
    Адрес:
    Москва
    Оффлайн
    Тема плавно переходит от жертв качества к более высоким материям.
    Предложите название для новой ветки, я перенесу часть постов.
  13. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Название - "Обсуждаем нелинейные ОФ (оценка по ожидаемому результату)"
  14. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Очень не похоже на матожидание.
  15. NS Нефёдов Сергей

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

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

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Отличается, причем весьма здорово.
    0.2 пешки позиционных признаков против 0.3
    Будет мат. ожидание 0.4 (у остальных оценка -0.1)
    А 0.7 позиционных признаков против пешки будет 0.7/1.7=0.41, то есть лучше.
    А у остальных будет -0.3 - значительно хуже.
  18. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Так 0.41 и -0.3 примерно одно и то же. У белых заметно хуже.
  19. miptus Заслуженный

    • Заслуженный
    • Участник
    Рег.:
    11.02.2006
    Сообщения:
    1.159
    Симпатии:
    78
    Репутация:
    5
    Оффлайн
    Так NS имел в виду лучше-хуже не у белых по сравнению с черными, а у белых по сравнению с белыми при другом соотношении признаков.
  20. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Я говорю о сравнительной оценке разных позиций в переборе.
    Лучше/Хуже будет определяться так-же, а вот какая позиция из плохих хуже, или какая из хороших лучше - будет определяться уже по-разному.
  21. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Ну и что? В итоге все равно то же самое.
  22. NS Нефёдов Сергей

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

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Измени просто веса признаков, как тебе нравится. Ничего, кроме этого, ты не предлагаешь.
  24. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Попробуй так изменить веса признаков, чтоб при большом количестве признаков на доске, и большом преимуществе - разница в 0.2 пешки была менее существенной чем разница в 0.1 пешки при малом количестве признаков на доске...
    Нельзя заменить нелинейную функцию линейной (а у нас функция нелинейна - это частное двух линейных функций), и нельзя сделать так чтоб линейная функция выдавала всегда F(x)>F(x1), когда так-же считает нелинейная...
  25. NS Нефёдов Сергей

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

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

    За белых k1 признаков, за черных k2.
    Будем считать мат. ожидание за белых как k1/(k1+k2), либо 0.5 если k1=k2=0.
    Пусть k1=10, k2=20, тогда матожидание 1/3 (10/(10+20))
    Пусть k1=1, k2=4, тогда матожидание 1/5 (1/(1+4))
    Если заменяем линейной функций, Тогда Ф(10-20)>Ф(1-4)
    То есть Ф(-10)>Ф(-3), то есть вес признака отрицательный :)

    Попытка заменить даже простейший случай линейной функцией потерпела неудачу....
  26. WildCat Коршунов Игорь

    • Команда форума
    Рег.:
    04.05.2006
    Сообщения:
    3.599
    Симпатии:
    4
    Репутация:
    0
    Адрес:
    Гомель
    Оффлайн
    Я тут вижу только ухудшение ситуации. Явно Ф(1 - 4) более правильна, чем 1/5, т.к. ничья очевидна. Имея так мало позиционных преимуществ черные вряд ли смогут выиграть (т.к. все дефекты белых засчитываются как преимущества черных, то очевидно, что в позиции белых практически нет дефектов).

    А вот k1 = 10, k2 = 40
    Опять твое матожидание дает 1/5. На этот раз уже ближе к истине, т.к. у белых явно проблемы. И линейная функция здесь дает правильный результат.


    Т.о. получили пример, когда линейная функция ведет себя разумно. А твоя функция вычисления матожидания явно неадекватна.
  27. NS Нефёдов Сергей

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

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

    Вообще-то я говорил о том, что не представляю как можно попытаться угадать матожидание количества набранных очков в партии. Твой пример совсем не похож на матожидание.
  29. NS Нефёдов Сергей

    • Заслуженный
    • Ветеран
    • Старожил
    Рег.:
    02.05.2006
    Сообщения:
    6.811
    Симпатии:
    96
    Репутация:
    3
    Адрес:
    Санкт-Петербург
    Оффлайн
    Сделай формулу например как
    fw=k1+3
    fb=k2+3

    матожидание белых
    pw=fw/(fw+fb)
    матожидание черных
    pb=fb/(fw+fb)

    и формула станет намного более правдивой.
  30. NS Нефёдов Сергей

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

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