Ключевое слово
10 | 11 | 2024
Новости Библиотеки
Шахматы Онлайн
Welcome, Guest
Username: Password: Remember me

TOPIC: Шахматы и программирование

Шахматы и программирование 28 Фев 2011 17:25 #31

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
PP написал(а):
Заметим, что материальная оценка позиции будет топтаться в районе +3, тоесть наращивание преимущества будет равно нулю, что должно скореектировать оценку до 0. Наверное можно на основе анализа известных окончаний построить распределение скорости нарастания преимущества, как функции материального перевеса, что даст численный критерий для корректировки.
Я понимаю Вашу мысль, но она требует большой селективной работы.

Я могу предположить заранее, что нужно практику например в 7-фигурках.
Видимо эндшпиля фигура+2п против фигура+п. И самый важный случай, там где фигура у обоих ладья.
Но эти позиции нужны почти все, думаю.
А вот позиции где 5 слонов матуют одинокого короля понадобятся разве что этюдистам, и то раз в сто лет.

Каждому - своё.

Шахматы и программирование 18 Март 2011 19:52 #32

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
Вот тут у Иммортала заметка о
immortalchess.net/forum/showthread.php?t=79
Анализ многофигурных эндшпилей в программе Freezer
Юрий Воронов
Программа Freezer позволяет решить ряд задач в многофигурных окончаниях, которые пока не под силу ни одной другой шахматной программе.
Дело в том, что при построении стандартных эндшпильных баз к конкретной позиции (базы Налимова), эти базы строятся со всеми возможными позициями при данном наборе фигур, и для каждой позиции дается ее оценка. Это делает базы Налимова громадными по размеру, что крайне затрудняет использование их при анализе многофигурных эндшпилей. Но дело в том, что размер базы, которую строит Freezer, зависит не только от количества фигур в данной позиции, но и от их подвижности. Ведь часто бывает, что в эндшпильных позициях, подвижных фигур остается не так много. Неподвижные фигуры (например, блокированные пешки) или ограниченно подвижные (например, король в крепости), в базах Freezer занимают очень мало места, так как в специальных правилах программы описывается их поведение, и нет необходимости строить базы на все их возможные ходы. Таким образом, при увеличении числа фигур, размер базы не растет так стремительно, как в базах Налимова. Это и позволяет строить базы относительно небольшого размера (не более 1Гб) для эндшпилей с большим количеством фигур (если подвижных фигур в них немного).
Каждому - своё.
Last Edit: 01 Сен 2015 18:45 by Vladimirovich.

Шахматы и программирование 31 Март 2011 19:23 #33

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
Вот сегодня на КС у Bushido почерпнул любопытную позицию.
Точнее, ничего там оригинального нет, но она интересна для этой темы.
Начало позиции любопытнее, до это другая тема
и мы его отрубим.








8/8/p3b2k/2K1p3/4P3/8/7P/8 w - - 0 56

После 1.Крd6 ничья. Съесть на e5 и линять на a1 стремительным домкратом. 6-фигурки у меня не стоят, так что Рыба пребывает в прострации, давая черным аж +4 но резко меняет оценку на 0 при попытке съесть любую белую пешку

Конечно таблицы 6 фигурки помогут тут , но появятся новые тупики, причем еще в большем количестве. Можно поставить еще одну белую пешку куда нибудь
Каждому - своё.

Шахматы и программирование 01 Апр 2011 03:18 #34

  • PP
  • PP's Avatar
  • OFFLINE
  • Холоп
  • Posts: 31409
  • Thank you received: 224
  • Karma: -124
Vladimirovich написал(а):
Конечно таблицы 6 фигурки помогут тут , но появятся новые тупики
Эвристика тут простая, если мы убрали с доски все фигуры и пешки противника, и по таблицам ничья, то есть повод задуматься

Шахматы и программирование 01 Апр 2011 05:20 #35

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
PP написал(а):
Эвристика тут простая, если мы убрали с доски все фигуры и пешки противника, и по таблицам ничья, то есть повод задуматься
Это с одной стороны. Но....








8/1p6/8/8/8/p1N5/2K5/k7 w - - 1 51
Здесь убрать черные пешки - ничья. А так выигрыш

Или посложнее и интереснее







8/8/3k4/8/5p2/2N2N2/2K5/8 w - - 1 51
Так - мат в 51 ход


А без пешки - ничья.
Каждому - своё.

Шахматы и программирование 01 Апр 2011 16:20 #36

  • PP
  • PP's Avatar
  • OFFLINE
  • Холоп
  • Posts: 31409
  • Thank you received: 224
  • Karma: -124
Vladimirovich написал(а):
Это с одной стороны. Но....
Ну поэтому я и назвал это эвристикой, просто может надо переключиться на другой алгоритм оценки (например ввести ограничение на размены итд.), а во вторых в Вашем примере мы уже сразу в таблицу глянуть можем. Эвристика должна помогать в более сложных позициях.

Шахматы и программирование 20 Фев 2012 05:50 #37

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
Ежели кого вдруг заинтересует...
habrahabr.ru/blogs/Haskell/138464/
Шахматные задачи на мат в один ход: решение на языке Haskell
Каждому - своё.
Last Edit: 01 Сен 2015 18:46 by Vladimirovich.

Шахматы и программирование 22 Фев 2012 22:39 #38

  • Ruslan73
  • Ruslan73's Avatar
  • OFFLINE
  • Администратор
  • Posts: 36445
  • Thank you received: 817
  • Karma: 58
решение на языке Haskel
если бы еще на С++ или Java. на С# на худой конец

Шахматы и программирование 08 Апр 2012 19:49 #39

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
habrahabr.ru/post/141680/
Разного рода самодельные устройства на основе платформы Arduino становятся все более распространенными. Это во многом обусловлено широкими возможностями самой платформы. В некоторых случаях умельцы создают не особо оригинальные устройства, какие-нибудь автоматические открывалки для пива и прочие подобные девайсы. Но иногда появляются очень интересные проекты. Например, онлайн-шахматы на реальной доске, управляемые автоматически.

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

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

Само собой, все это работает на основе платформы Arduino.
Каждому - своё.
Last Edit: 01 Сен 2015 18:46 by Vladimirovich.

Шахматы и программирование 17 Окт 2012 06:39 #40

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
habrahabr.ru/post/155045/
Вращаемые битборды: новый виток старой идеи
Автор: Роберт Хайат

Я так понимаю, это автор Crafty и Hyatt.
Не знаю, актуально ли это для Гудини сейчас, но для любителей может быть интересно
Каждому - своё.
Last Edit: 01 Сен 2015 18:47 by Vladimirovich.

Шахматы и программирование 08 Дек 2012 18:09 #41

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
habrahabr.ru/post/161887/
3D-шахматы на HTML / CSS3 / JS

Французский разработчик Julian Garnier представил реализацию шахмат в 3D с использованием HTML/CSS3/JS, причем вся 3D-анимация выполнена с помощью CSS3.

На всякий случай повторю, это не просто 3D-анимация, это полноценные шахматы. Из JavaScript-библиотек Julian использовал только Photon для освещения и Chess.js для реализации правил игры. В разработке не было задействовано каких-либо 3D-библиотек, о чем и сообщает сам автор.

Фигуры взяты из набора скульптора Йозефа Хартвига (Josef Hartwig), доступны несколько тем оформления. Игра для двоих игроков. На данный момент демонстрация доступна только в Webkit.
Каждому - своё.
Last Edit: 25 Апр 2019 04:20 by Vladimirovich.

Шахматы и программирование 10 Фев 2013 10:22 #42

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
habrahabr.ru/post/168867/
Построение ИИ для игры в японские шахматы сёги
Каждому - своё.
Last Edit: 01 Сен 2015 18:47 by Vladimirovich.

Шахматы и программирование 16 Фев 2013 20:14 #43

  • Автор: infolio
  • Автор: infolio's Avatar
Фигуры взяты из набора скульптора Йозефа Хартвига (Josef Hartwig), доступны несколько тем оформления. Игра для двоих игроков.
Ув. ГІ, не просветите, наскольколько НЕПРАВИЛЬНО ферзю вместо ШАРА на куб(ладью) посадить СЛОНА? З павагай ми:

Шахматы и программирование 30 Март 2013 07:36 #44

Спасибо за информацию

Шахматы и программирование 12 Сен 2014 19:32 #45

  • onedrey
  • onedrey's Avatar
  • OFFLINE
  • Боярин
  • Posts: 32798
  • Thank you received: 1249
  • Karma: 3
Чувак не поленился, написал программу, которая по базе 2.2 млн. партий посчитала шансы на выживание до конца партии для каждой фигуры. Лучше всех выживают крайние пешки. :)



Отсюда www.quora.com/What-are-the-chances-of-su...ces-in-average-games
Last Edit: 12 Сен 2014 19:35 by onedrey.

Шахматы и программирование 12 Сен 2014 19:48 #46

  • PP
  • PP's Avatar
  • OFFLINE
  • Холоп
  • Posts: 31409
  • Thank you received: 224
  • Karma: -124
onedrey wrote:
Чувак не поленился
Cool!

Шахматы и программирование 13 Сен 2014 18:26 #47

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
Выглядит правдой :)
Каждому - своё.

Шахматы и программирование 13 Сен 2014 18:30 #48

  • Ruslan73
  • Ruslan73's Avatar
  • OFFLINE
  • Администратор
  • Posts: 36445
  • Thank you received: 817
  • Karma: 58
Из таблички, кстати, видно, почему надо хорошо знать пешечные и ладейные окончания.

Шахматы и программирование 14 Сен 2014 03:42 #49

  • ??
  • ??'s Avatar
А как объяснить, что "начинать карьеру" выгоднее вблизи короля, а не ферзя? А в ферзи тоже крайние пешки чаще проходят?

Шахматы и программирование 14 Сен 2014 04:55 #50

  • Ruslan73
  • Ruslan73's Avatar
  • OFFLINE
  • Администратор
  • Posts: 36445
  • Thank you received: 817
  • Karma: 58
ходы центральными пешками в дебюте открывают диагонали для фигур для быстрейшего развития и помогают в борьбе за центр, это важнее сохранности этих пешек.

ход от короля открывает 2 диагонали и встречается чаще. соседняя пешка при этом часто меняется в борьбе за центр.
Last Edit: 14 Сен 2014 05:01 by Ruslan73.

Шахматы и программирование 14 Сен 2014 06:24 #51

  • ??
  • ??'s Avatar
Я неправильно спросил. Не "вблизи короля", а "со стороны короля", т.е. справа от него вероятности почему-то больше.

Шахматы и программирование 14 Сен 2014 07:02 #52

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
?? wrote:
Я неправильно спросил. Не "вблизи короля", а "со стороны короля", т.е. справа от него вероятности почему-то больше.
Потому что чаще рокируют на королевский фланг. Почему - вопрос отдельный. В среднем это более безопасно
И соответственно, реже бодро их двигают вперед, чтобы не ослаблять короля. Ну и в итоге они дольше живут
Каждому - своё.

Шахматы и программирование 15 Сен 2015 07:18 #53

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108


www.postsovet.ru/blog/asia/599762.html
Студент из Имперского колледжа в Лондоне создал шахматную компьютерную программу Giraffe, которая полностью построена на принципах машинного обучения и не использует вручную настроенные инструменты для анализа партии.

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

Шахматы и программирование 21 Сен 2015 08:17 #54

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
www.computerra.ru/132471/troe-sutok-i-gotov-grossmeyster/
Первое издание Большой Советской Энциклопедии воспевало достоинства шахматной игры, причем в сугубо высокоидейном духе: «Шахматы – самая сложная и интеллектуальная из игр фигурами на доске, к-рая в процессе своего развития настолько обогатилась элементами научного мышления и вместе с тем художественного творчества, что в наст. время далеко переросла свое первоначальное значение игры и, будучи превосходным умственным спортом, в Союзе ССР сделалась одним из орудий культурного воспитания масс. Маркс, Энгельс, Ленин высоко ценили Ш.» (БСЭ, т.61, М., 1934, с.888).
А сегодня шахматной игре нашлось в высшей степени интересное применение. Ее используют для того, чтобы научить машины учить самих себя. Об этом рассказывается в статье Deep Learning Machine Teaches Itself Chess in 72 Hours, Plays at International Master Level, «Глубокое обучение позволяет машине за 72 часа научиться играть в шахматы на уровне гроссмейстера международного класса».
К недавнему рассказу о самообучающихся алгоритмах написания сценариев компьютерных игр, был комментарий, что это было бы хорошей дипломной работой для выпускника мехмата. Так вот – программа Giraffe, самообучающаяся игре в шахматы, и есть предмет магистерской диссертации студента Имперского колледжа Лондона Мэттью Лая (Matthew Lai). Несмотря на то, что Giraffe создана одним человеком, она имеет куда больше прав на то чтобы зваться Искусственным Интеллектом, нежели те суперкомпьютерные чудовища, которые использовались для целей шахматной игры в девяностые.
Традиционные шахматные программы использовали быстродействие машин для того, чтобы на основе начальных рекомендаций, заложенных в алгоритм экспертами-шахматистами, анализировавшими объемистые шахматные библиотеки (тома давних партий еще встречаются у букинистов разных стран), перебрать ветви игры, к которым приведет тот или иной ход, и выбрать тот, что наилучшим образом соответствовал заданным критериям. Giraffe изначально не знал ничего, кроме правил игры.
Но в него было заложено умение учиться. Учиться, играя с самим собой. Для оценки позиции на доске алгоритм автоматически отбирал наиболее значимые признаки в ходе игр с самим собой. Не имея ни малейшего представления о том, что это испанская партия или защита Филидора… Giraffe был подобен талантливому самоучке из глухой деревни, пришедшему в красный уголок ни разу не видя журнала «Шахматы в рабочем клубе», и обучающемуся исключительно в игре.
Второй особенностью работы Giraffe было то, что он анализирует не все возможные ходы и порождаемые ими деревья, а только наиболее перспективные. Каковыми считаются те, которые породят с вероятностью выше критической максимально длинное дерево игры. При этом вносится одно очень полезное предположение – что противник также сделает самый лучший ход, допускаемый игровой позицией. Никакой войны на чужой земле и малой кровью Giraffe не предполагает…
Дальше была игра с самим собой. И – поразительный результат. Всего за 72 часа Giraffe достиг уровня игры, эквивалентного верхним двум процентам рейтинга по версии Международной шахматной ассоциации. Финальная эффективностьпрограммы проверялась на специальном наборе из 15000 позиций, в которой все доступные ходы проранжированы от 0 до 10, где 10 соответствует лучшему ходу. Из девяти популярных алгоритмов для десктопов и малых серверов Giraffe занял второе место по эффективности, обнаружив 9641 «верный» ход из 15000. Первое место заняла программа Stockfish 5, которая нашла 10505 наилучших решений.
Но подробности игры маловажны. Интересно то, что программа, построенная на технологии Deep Learning смогла за жалких трое суток достичь гроссмейстерского уровня игры.
А сколько на это уходит у белковых шахматистов? Вот-вот! Да, шахматы когда-то были моделью реального конфликта, но моделью сверхформализованной… И тем не менее сейчас нам продемонстрирована крайне важная вещь. Глубокое обучение позволяет машинам научиться обучать себя саму. А это, возможно, одно из самых важных событий в истории технологии…
Каждому - своё.

Шахматы и программирование 21 Сен 2015 17:02 #55

  • PP
  • PP's Avatar
  • OFFLINE
  • Холоп
  • Posts: 31409
  • Thank you received: 224
  • Karma: -124
Правильно мыслит товарисч Лай
arxiv.org/pdf/1509.01549v2.pdf
For neural networks to work well, the feature representation needs to be relatively smooth in how
the input space is mapped to the output space. Positions that are close together in the feature
space should, as much as possible, have similar evaluations.
This means many intuitive and naive representations are not likely to work well. For example,
many previous attempts at using neural networks for chess represent positions as bitmaps, where
each of the 64 squares is represented using 12 binary features indicating whether a piece of each
of the 12 piece types exist on the square or not. This is unlikely to work well, because in this
768-dimensional space, positions close together do not necessarily have similar evaluation...
A much better representation is to encode the position as a list of pieces and their coordinates. This
way, positions that are close together in the feature space would usually have similar evaluation.

Шахматы и программирование 21 Сен 2015 17:40 #56

  • Хайдук
  • Хайдук's Avatar
  • OFFLINE
  • Наместник
  • Posts: 49560
  • Thank you received: 133
  • Karma: 17
чё-то не могу просечь разницу между представлениями :dumb:
Last Edit: 21 Сен 2015 17:41 by Хайдук.

Шахматы и программирование 21 Сен 2015 19:51 #57

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
Хайдук wrote:
чё-то не могу просечь разницу между представлениями :dumb:

bitmap representation - A[8][8] где A есть, допустим, целое число, которое определяет, что стоит на поле. 0 - ни хрена не стоит.
feature representation - B[32] где B структура из типа фигуры и ея координат.
Каждому - своё.

Шахматы и программирование 01 Май 2017 14:00 #58

  • onedrey
  • onedrey's Avatar
  • OFFLINE
  • Боярин
  • Posts: 32798
  • Thank you received: 1249
  • Karma: 3

Шахматы и программирование 01 Май 2017 14:02 #59

  • Vladimirovich
  • Vladimirovich's Avatar
  • OFFLINE
  • Инквизитор
  • Posts: 109455
  • Thank you received: 2220
  • Karma: 108
onedrey wrote:
Ход белых 1. e3! выигрывает.
Да не может быть... 1.e3 b5! Выигрывало с моих студенческих времен...
Каждому - своё.

Шахматы и программирование 01 Май 2017 14:10 #60

  • onedrey
  • onedrey's Avatar
  • OFFLINE
  • Боярин
  • Posts: 32798
  • Thank you received: 1249
  • Karma: 3
Тут основные линии по 1. е3 b5
magma.maths.usyd.edu.au/users/watkins/LO..._CHESS/e3b5lines.10K

А тут полностью
magma.maths.usyd.edu.au/users/watkins/LO..._CHESS/e3b5.done.bz2 (архив 103 мб)
Last Edit: 01 Май 2017 14:12 by onedrey.
Moderators: Grigoriy
Рейтинг@Mail.ru

Научно-шахматный клуб КвантоФорум