All streams
Search
Write a publication
Pull to refresh
39
0.1
Владимир Медведев @WinPooh73

Разработчик, C/C++

Send message
Если мы поставим два магнита, то изолиния потенциала выглядит следующим образом в зависимости от расстояния между двумя магнитами

Извините, не понял, о каком потенциале идёт речь? Насколько я помню из курса общей физики, магнитное поле непотенциально.
> Договорившись с родителями, летние каникулы прошли…

«Подъезжая к сией станцыи и глядя на природу в окно, у меня слетела шляпа.»
Вот, наконец, и конструктивное доказательство известной теоремы, сформулированной ещё Ландау. О том, что есть расстояние, с которого женщина выглядит наиболее привлекательно (т.к. для расстояний 0 и бесконечность оптимум, очевидно, не достигается).
> Девушки, люди, будте адекватными.

Скидывайте core dump!
Ну, или хотя бы stack trace…
> наиболее оптимальным алгоритмом… является быстрая сортировка

А чем «наиболее оптимальный» отличается от просто «оптимального»?

Да, и Comb sort — это просто другое название для сортировки Шелла, или там есть какие-то принципиальные отличия в алгоритме?
Интересно, насколько можно усилить программу исключительно подстройкой параметров? Недавно много обсуждали программу Жираф, там автор использовал машинное обучение не только для оценки, но и для настройки эвристик поиска и сортировки ходов. Правда, программа не очень сильная пока что, где-то 2300-2400.

arxiv.org/pdf/1509.01549v2.pdf
> Та же партия в Го в определённый момент превращается в поединок интуитивных догадок, то есть сваливается в неалгоритмизируемую по сложности и по неопределённости задачу.

Боты на КГС, играющие в силу 5-6 любительского дана (то есть способные обыграть в Го 99.9% населения Земли), решительно не согласны с неалгоритмизируемостью задачи.
Картинка прекрасна. Но костыли должны заканчиваться граблями :)
Интересно, есть ли ещё среди читателей динозавры вроде меня, которые начинали с калькулятора Б3-34 :))
Стоит ещё заметить, что в результате массированного применения этого самого кое-чего данные технологии снова могут оказаться востребованными. Ну, возможно, не сразу, лет 30-50, а то и 100 должно будет пройти…
Интересно, что в английской Википедии сочетание «automated trading» приводит к редиректу на «algorithmic trading». Что тоже, в общем-то, неправильно.
В Zobrist hash для шахматной позиции ещё неплохо добавить XOR-слагаемые, зависящие от прав сторон на рокировку и взятие на проходе. Накладные расходы минимальные, при этом ликвидируется большой класс потенциальных коллизий. Программа реально начинает играть сильнее.
При большом количестве частиц количество вычислений методом «в лоб» будет расти квадратично, что не очень хорошо. Ведь на движение каждой частицы наибольшее влияние оказывают её ближайшие соседи. Если не нужна сверхвысокая точность (а задача многих тел точно не решается даже численно), можно ограничиться только ими.
Попробуйте реализовать модель с меньшей алгоритмической сложностью. В качестве отправной точки рекомендую, например, event driven collision model. Она в общих чертах рассмотрена в книге «Алгоритмы» Седжвика и его же курсе «Algorithms I» на Курсере.
Вы не пробовали реализовать алгоритм UCT (Монте-Карло?) На цуме-го с малым количеством свободных полей должен работать очень неплохо, мне кажется.
Программа Deep Thought (предшественница Deep Blue) училась именно на партиях людей. Это был конец 80-х — компьютеры как раз приближались по рейтингу к людям, но ещё им уступали.
Вот статья о том, как настраивали её оценку: www.tim-mann.org/DT_eval_tune.txt
Думаю, что компьютерам уже поздно учиться у людей, так как они обогнали их в шахматах навсегда — на 600 пунктов Эло и больше. Поэтому вопрос индивидуального стиля в сравнении с людьми не стоит — как не стоит он в игре гроссмейстера с разрядником (более сильный шахматист может выиграть как угодно — хоть в стиле Морфи с лихой атакой, хоть в стиле Карпова с позиционным зажимом).

Персональные стили в основном нужны для развлекательных программ, вроде Чессмастера. Кстати, GreKo тоже участвует в качестве основного движка в одной из таких оболочек: LucasChess.

Вот интересная статья про стили, оценку и поиск, хотя и старинная: http://www.thorstenczub.de/complcss2.html
Пол Морфи — мой любимый шахматист, с его партий я начал. Увы, алгоритм сошелся к абсурдным значениям — с отрицательной стоимостью коня. Думаю, причина в том, что в базе для Морфи было слишком мало партий, он всё-таки недолго играл. Другой причиной может быть большое число партий, где он давал фору.
Уже не в первом комментарии встречаются рассуждения вида «а вот в такой-то позиции оценка материала будет давать сбой, потому что на самом деле там выигрыш/ничья за белых/чёрных...».

Конечно, всё это так! Шахматы — игра очень конкретная, никакого магического рецепта для оценки позиции нет и быть не может. Только счёт, счёт и счёт. Плюс разумная оценка на листьях :)

СТАТЬЯ — О ДРУГОМ.

Нам известно, что в оценку компьютера всегда входит материал — фигурам присваиваются определённые веса. Присваиваются чаще всего по интуиции или по традиционным меркам. Цель статьи — найти эти веса каким-то более определённым методом, чем «с потолка», дать им некоторое математическое обоснование. НЕ ОТКАЗЫВАЯСЬ ОТ ДРУГИХ ЧЛЕНОВ В ОЦЕНКЕ. А дополняя их.
В принципе, код достаточно простой, написан в стиле «C++ как улучшенный C». Попробуйте скачать и поразбираться — начать лучше всего с класса Position. Если возникнут вопросы, всегда готов ответить, пишите тогда в личную переписку…
Пока не пробовал. Теоретически, конечно, она может быть лучше, но потребуется большее количество данных для обучения, и количество коэффициентов сразу резко возрастает — вместо пяти весов фигур надо будет рассматривать 10x10 = 100 коэффициентов (включая линейные и перекрёстные члены в квадратичной форме).
Мне кажется более интересным подход, который был реализован в Рыбке — большая таблица со статистикой для всех возможных соотношений материала. Она занимает несколько мегабайтов, и даёт усиление игры до 50 пунктов Эло, если я правильно помню.

Information

Rating
3,696-th
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity