Что такое потери сантипешек
Lichess
Почему Lichess называется Lichess?
Lichess — это комбинация live/light/libre и chess. Живые, легковесные и свободные шахматы. Lichess произносится личес. Прослушайте это в исполнении диктора.
Живые, потому что можно играть партии и смотреть игры в реальном времени 24/7. Легковесные и свободные, потому что разрабатываются на принципах свободного программного обеспечения и не завалены проприетарным хламом, как коммерческие проекты.
То же относится к исходному коду Lichess, lila, что означает li[chess in sca]la, основная часть Lichess написана на Scala, интуитивно понятном языке программирования.
Как я могу внести свой вклад в Lichess?
Lichess существует на пожертвования игроков и разрабатывается командой волонтёров.
Вы можете узнать о том, как стать покровителем (и изучить отчёт о тратах). Если вы хотите помочь Lichess, пожертвовав свои знания и время, есть и другие способы помочь.
Есть ли другие сайты, основанные на Lichess?
Да, это так. Многие сайты вдохновились Lichess и используют наш Исходный код, API и Архив партий.
Честная игра
Если оказалось, что я проиграл жулику, мне вернут рейтинг?
Через минуту после того, как жулик был обнаружен, 40 рейтинговых игр, в которых он одержал победу за последние 3 дня, подлежат рассмотрению. Если вы были его соперником в этих играх, и ваш собственный рейтинг считается надёжным, вы можете рассчитывать на возмещение рейтинга. Возмещение может быть ограничено различными условиями, такими как ваш максимальный рейтинг и изменение рейтинга после нечестных игр.
Например, если ваш рейтинг значительно вырос после таких игр, вы можете не получить возмещения, или получить лишь часть. В любом случае, возмещение не может превышать 150 очков рейтинга.
Что происходит с игроками, который выходят из игры, не сдаваясь при этом?
Если ваш соперник часто прерывает или покидает игру, он временно блокируется, при этом признак блокировки видит только он сам. Если после окончания блокировки он продолжает вести себя так же, он опять блокируется, но уже на более длительный срок. В дальнейшем его учётная запись может быть полностью заблокирована.
Могу ли я стать модератором?
Мы не принимаем заявки на просьбу стать модератором. Если мы видим, что кто-то, по нашему мнению, может стать хорошим модератором, мы сами с ним связываемся напрямую.
Игра по переписке отличается от обычной игры?
В Lichess основное отличие в правилах для игры по переписке заключается в том, что доступна книга дебютов. Использование компьютерных программ запрещено и может привести к блокировке за жульничество. Несмотря на то, что международной ассоциацией игры по переписке ICCF помощь компьютерных программ разрешена, на Lichess это не так.
Описание игры
Как определяется тип игры: пуля, блиц и т. д., в зависимости от контроля времени?
Контроль времени влияет на общее ожидаемое время на партию, равное (начальное время) + 40 × (добавка)
Например, время партии с контролем 5+3 равно 5 × 60 + 40 × 3 = 420 секунд.
мне очень интересно, какими принципами руководствуется движок, при оценке ходов и классификации их на неточности, ошибки и грубые ошибки?
я не про общее спрашиваю. а вот конкретно возник случай, партия:
lichess.org/iJjL4HXp
мне кажется, соперник просто сливался, подставлялся, прикалывался)
но! движок оценил, что у него:
4 Неточности
0 Ошибки
1 Грубые ошибки
63 Потери сантипешек в среднем
как? как так? почему? я была уверена, что при том, что было 18 ходов, у него будет 14-15 отнесены к ошибкам или грубым ошибкам





@ymenyavseploho #1
После 5. Ф:f7?? Последующие ходы оценку не меняют. Это надо понимать так: как бы «сильно» в последующем белые не играли, они не смогли бы изменить результат, при правильной игре чёрных.





@ujcn т.е. если движок не находит вариантов победы или хотя бы ничьей за определенную сторону, то как бы «двигай куда хочешь, все уже бесполезно». так что ли?)))
я уже не первый раз вижу нечто похожее, если у меня есть небольшой перевес и я делаю не лучшие ходы, движок потом ругается, что надо было не так играть. а если у меня очень большой перевес, то ему пофиг, что я, например, не стала ставить мат, а решила еще пару пешек в ферзи проводить
интересно получается, что движок в оценке ходов руководствуется не конкретной позицией и возможностью продержаться, а только итоговым результатом.
спасибо















@Quantium #4 Имеется ввиду не количественная оценка, а качественная оценка в режиме «Разобрать свои ошибки».





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





@ymenyavseploho Потому что дальнейшие ходы переломить исход партии не могут.















Эта тема была помещена в архив и добавить комментарий уже нельзя.
reufk
нужно доказательство что он человек





Да, прямо уж
2 Неточности
8 Ошибки
2 Грубые ошибки
92 Потери сантипешек в среднем и
8 Неточности
5 Ошибки
7 Грубые ошибки
93 Потери сантипешек в среднем это уровень фиде 2500. Только люди могут логиниться здесь, А вместо их проги. И нужно подтверждение что он Бот. А личесс не твердить что он бот, просто он взял такой ник.










HIGHEST RATING: 2124
Какой слабый FM, видимо, уже не молод, как Немцев, и давно отошел от шахматных дел. Взрослые перворазрядники сильнее играют. %)





Ахах)) Этот «Бот» вступил первым делом не в клуб Lichess Bots а в клуб Россия, и значит он россиянин, а боты не делятся на россиян и на другие народы, А Вадим знает что он из России, тайна раскрыта! ))) Этот бот ValyaevVadim08, или другой россиянин Вадим.





Какой слабый FM, видимо, уже не молод, как Немцев, и давно отошел от шахматных дел. Взрослые перворазрядники сильнее играют. %)
______
Походу он рапидчик и классик))










9 Неточности
13 Ошибки
3 Грубые ошибки
70 Потери сантипешек в среднем читер?















Эта тема была помещена в архив и добавить комментарий уже нельзя.
Курсы, тренинги, тесты, консультации. Отношения, знакомства, дневники, игры. Психология и соционика
Шахматные турниры на Личесс
Шахматные турниры на Личесс
Получился красивый двойной шах с матом в несколько ходов.
Но увы соперник не стал играть до мата и сдался.
Шахматные турниры на Личесс
Мат тремя легкими фигурами
Шахматные турниры на Личесс
Оценка компа была 0 на протяжении последних 30 ходов.
Вообще не отклоняясь никуда.
Ну и в целом партия была около 0, несмотря на то, что всего по минуте.
9-10 Потери сантипешек в среднем (у меня и соперника).
Прямо удивительно, учитывая, что пару раз было сложно найти защиту на скорости.
Правда я флаг уронил.
Шахматные турниры на Личесс
Жертва слона получилась корректной, комп ее на первую линию выводит.
Шахматные турниры на Личесс
Шахматные турниры на Личесс
Шахматные турниры на Личесс
Двойной мат
Причем обе шахующие фигуры под боем.
Шахматные турниры на Личесс
Нашел неочевидную жертву коня в игре по минуте
Шахматные турниры на Личесс
Только что на Личесс был самый крутой турнир в истории.
1000+ человек от кмс и выше.
Карлсен 1 место
Лаграв 2
Конев 3 (кто это?)
Пингвин 4
Грищук 5
Аниш Гири 41
Жигалко 42
vovachess 64
Шипов 95
Шахматные турниры на Личесс
Oleg писал(а): Только что на Личесс был самый крутой турнир в истории.
1000+ человек от кмс и выше.
Карлсен 1 место
Лаграв 2
Конев 3 (кто это?)
Пингвин 4
Грищук 5
Аниш Гири 41
Жигалко 42
vovachess 64
Шипов 95
Шахматные турниры на Личесс
С третьей попытки заметил жертву ферзя
Шахматные турниры на Личесс
Чел с 2253 сделал всего один кривой ход, и пустил партию под откос.
Шахматные турниры на Личесс
Подозрительно легко выиграл у ФИДЕ мастера в королевском гамбите, пожертвовав две фигуры подряд.
Шахматные турниры на Личесс
Мат с жертвой ладьи
Шахматные турниры на Личесс
Жертва ферзя прошла
Кто сейчас на конференции
Как я программировал шахматную партию против брата
Это история о том, как я попытался выиграть у брата партию в шахматы. Всего лишь гребаную одну игру. Что в этом особенного? Хорош ли я в шахматах? Вовсе нет. Научился ли я чему-то в процессе игры? Тоже нет. Может, это история о путешествии ради путешествия, а не цели? Не совсем. Получил ли я хотя бы удовольствие от этого? Не уверен.
Это история о моей попытке соригинальничать в одной из самых изученных в мире игр, используя опыт разработки ПО там, где это, быть может, и не нужно.
Несмотря на свою абсолютную бестолковость в шахматах и полную бесполезность этой статьи для тех, кто стремится улучшить свою игру, я все равно считаю, что стоило поделиться оригинальным способом применения к задаче инженерных принципов. Добился ли я успеха? Об этом вы узнаете в конце.
Почему я вообще связался с шахматами
Во время пандемии 2020 года мой брат, как и многие другие люди, увлекся онлайн-шахматами. Поиграв пару месяцев, он начал очень вдохновленно рассуждать об этой игре и бросать вызов другим членам семьи. На вызов ответил наш отец (хоть и потерпел цифровое фиаско), я же не поддавался. Одним из сдерживающих факторов было мое нежелание погружаться в потенциально очень времязатратное хобби. Об этой игре я знал достаточно для понимания того, что становление даже игроком среднего уровня требует провести за ней сотни если не тысячи часов. Хотя признаю, что при этом меня также не вдохновляла идея проигрывать брату, который на тот момент сыграл уже не одну сотню партий. Я же – ни одной.
И все же однажды на его вызов я поддался. Стоит ли говорить, что проигрыш был разгромным. Я знал правила и основы игры, так как немного играл еще в детстве, но с навыками брата это ни в коей мере сопоставить было нельзя. В последствии, просматривая анализ игры на chess.com, я увидел, что мое тактическое отставание ход за ходом только росло, пока не достигло оценки в +9 (что равно потере ладьи, слона и пешки против отсутствия потерь противника). В тот момент, утратив всяческую надежду, я сдался. Подобная ситуация повторялась на протяжении еще пары партий, когда я понял – с этим нужно что-то делать.
Первым моим решением было углубиться в изучение игры.
Попытка первая: изучение
Моя первая попытка улучшить качество игры состояла в очевидном: обратиться к Reddit и YouTube за рекомендациями других обучающихся. В перерывах между уроками от GM Naroditsky, чтением и решением задачек на Lichess я также сыграл несколько игр со случайными соперниками по интернету. Несмотря на все это мой рейтинг оставался низким (1300 – 1400 Rapid на Lichess).
После еще пары партий против брата на меня снизошло, что шансов победить у меня нет. Я продолжал следовать все тем же приемам развития (играл, изучал техники и смотрел видео), но уделял этому намного меньше времени, чем брат. На тот момент он уже играл сотни партий в месяц, я же не более 10. Такими темпами мое отставание росло все больше и больше.
Тогда-то я и осознал очень важный нюанс: меня не особо интересовала сама игра, и, по сути, совершенствоваться в ней я не хотел. Основной целью для меня было всего лишь победить одного человека – моего брата.
Попытка вторая: изучение противника
Шахматная партия в общем делится на три фазы: дебют, миттельшпиль и эндшпиль. После изучения некоторых базовых матовых шаблонов перейти на стадии эндшпиля от весомого преимущества к победе обычно «легко», так что первым вопросом для меня стало получение этого преимущества.
На стадии миттельшпиля преимущество обычно достигается за счет развертывания долгосрочной стратегии и применения тактики. Стратегию можно совершенствовать чтением и изучением принципов игры (мне это нравится), а тактика вырабатывается только через решение задач (что мне особенно не нравится). Поэтому я понимал, что в тактических навыках буду однозначно отставать, учитывая, что мой брат решал на chess.com около 20 таких задач ежедневно. Для меня это был недостижимый предел. Таким образом, оставалась всего одна возможность: получать преимущество на стадии дебюта.
Теория по фазе дебюта просто огромна. При этом она требует запоминания длинных последовательностей и вариаций ходов, а также возможные ответов оппонента. Новичкам не обязательно запоминать много, но некоторая ознакомленность с наиболее типичными дебютами может принести немалую пользу (по крайней мере мне так сказали).
Тогда я решил просмотреть несколько случайных игр брата и попробовать понять используемые им дебюты. Я также изучил на Lichess дебюты «Итальянская партия» и Сицилианская защита, постаравшись запомнить их основные принципы. Помимо этого, я просмотрел кучу видео на YouTube.
Очевидно, что мой брат уже проделывал все это до меня (причем лучше), так что, естественно, я снова проиграл. Не говоря уже о том, что запоминание бессмысленных (по крайней мере для меня) открывающих ходов вызывает лишь скуку и утомляет. Все это никак не доставляло мне удовольствия. Еще одна проблема состояла в том, что, когда мой противник начинал отклоняться от прописанных в книге ходов, я абсолютно не знал, как реагировать, потому что просто не понимал формирующиеся позиции.
Пришло время снова отступить и задуматься. Тогда я осознал, что на деле старался не победить брата, а улучшить свою игру против оппонентов, которые отыгрывали те же его дебюты в совершенстве. Мог ли я действовать более направленно? Мог ли вместо этого подготовиться именно против слабых мест брата? Очевидно, что такой подход сработал бы только против него, но это вполне соответствовало моей цели.
Попытка третья: программирование
Теперь моя задача обрела иную форму: найти позиции на выходе из дебюта, которые мой брат (далее PlayerX) с наибольшей вероятностью достигнет, оказавшись при этом в невыгодном положении. Учтите, что никто из нас не является экспертом в игре, и что игроки нашего уровня играют не очень аккуратно.
Единственный способ противостоять хорошему игроку – это в точности следовать ходам из книги, потому что тогда вы по крайней мере знаете, что противник не сделает какой-либо ход, получив преимущество. Однако ситуация меняется, когда вы играете против игрока клубного уровня. Вы можете идти на риски (т.е. временно оказываться в невыгодном положении), если знаете, что противник вряд ли сможет на это правильно среагировать, в связи с чем окажется в затруднительном положении.
У меня также был список из более, чем 500 игр, которые брат сыграл на chess.com. А так как я программист, то естественным подходом для меня стало решить эту задачу инженерным путем.
Я начал скачивать сыгранные им партии с помощью API chess.com и разделять их на игры белыми и черными. Далее я сосредоточился на партиях, где брат играл за черных, потому что чувствовал, что имею больше шансов направить игру в нужное мне русло при игре за белых.
Далее я сформулировал задачу так: «Учитывая все позиции, которые видел PlayerX, какие из них по завершению дебюта скорее всего окажутся для него наименее выгодными?».
На этот раз задача была четко определена, и работа пошла уже в знакомой мне области. Я решил провести анализ в Python, а именно в блокноте Jupyter, потому что цели создавать переиспользуемый инструмент у меня не было, и нужно было лишь изучить доступные данные для нахождения одного решения.
Оказалось, что в Python уже есть отличные библиотеки для работы с шахматами: python-chess (генерация ходов, оценка и визуализация) и python stockfish (привязки для оценки шахматной позиции с помощью известного шахматного движка Stockfish).
Я преобразовал задачу в граф таким образом: узел – это частная шахматная позиция (описанная в нотации FEN). Ребро связывает два узла при том, что целевая позиция оказывается достижима из исходной путем допустимого хода. Для всех игр есть один одинаковый стартовый узел: начальная позиция.
Затем я построил граф всех партий, сыгранных PlayerX за черных, дополнительно обозначив каждое ребро количеством раз, которое был совершен соответствующий ход.
В итоге получился взвешенный направленный граф (не дерево, потому что позицию можно получить различной последовательностью ходов) типа такого (синтетического, потому что реальный бы просто сюда не уместился):
Здесь начальная позиция обозначена квадратным узлом, цвет указывает, чей в этой позиции ход: белых или черных.
Я также хотел получить оценку каждой позиции в плане преимущества белых, для чего использовал Stockfish. Учитывая, что процесс оценки тысяч позиций требует времени, я решил выполнить его отдельно и создал объект JSON, сопоставляющий каждую уникальную позицию FEN с ее оценкой Stockfish.
Оценка преимущества возвращалась в сантипешках или как «мат в X ходов», где положительное число означает преимущество белых, а отрицательное преимущество черных:
100 сантипешек означают преимущество перед оппонентом в одну пешку, а 300 в одну легкую фигуру вроде слона. Однако стоит обратить внимание, что Stockfish присваивает фигурам значение в зависимости от их позиции, значит вполне возможно иметь преимущество в 1000 сантипешек даже при равнозначном количестве фигур на доске.
Мне нужно было отобразить эту оценку во что-то более удобное для обработки, например в числа между 0 и 1. Для этого я навскидку решил, что преимущество в 300+ будет отображаться в 1.0, а отставание в 300+ в 0. Помимо этого, любой мат в X ходов (даже если X равен 20) будет 1 или 0.
Теперь вся информация была не месте, и мне оставалось найти узлы графа (т.е. позиции), в которых черные находились в проигрышном положении, а также наиболее подходящие для их достижения последовательности ходов. Нужно было взвесить ребра таким образом, чтобы стало возможным легко вычислять вероятность достижения конкретной позиции. Я рассуждал так:
В Python это будет выглядеть так:
Логарифмирование вероятности выбора ребра даст отрицательное число, потому что вероятность находится между 0 и 1. При этом не стоит беспокоиться о случае, когда вероятность равна нулю (в результате чего логарифмирование бы дало минус бесконечность), поскольку каждое ребро графа было пройдено не менее одного раза. Чем меньше вероятность, тем более отрицательным получится логарифм, значит инвертирование его знака даст то, что нам нужно, так как:
Вооружившись этой идеей, можно вычислить кратчайший путь между стартовым узлом и всеми другими узлами, используя алгоритм Дейкстры. В результате получится сопоставление между каждым узлом и кратчайшим путем до стартовой позиции, представляющее наиболее вероятную ведущую к ней последовательность ходов.
В этот момент я произвольно выбрал минимальное значение преимущества и упорядочил пути по вероятности. Первые несколько путей представляли для меня наибольший шанс выйти из дебюта с преимуществом перед PlayerX.
Доработки
Что я выяснил? Среди выданных этим алгоритмом позиций была следующая (ход белых):
Как видите, черные находятся в очень неловком положении (+8.9 согласно Stockfish), потому что g6, последний ход черных, был ошибкой. Белые продолжат, забирая пешку с e5 и ладью. На этом партия для черных практически закончена, так как спасать им придется коня, пешку на h7 и слона. Еще один результат алгоритма был таким (ход белых):
Здесь мы видим мат в один ход (детский мат).
Проблема в том, что эти ошибки PlayerX совершал только несколько раз в своих первых партиях и больше не повторял. Ранние атаки ферзем обычно делают только неопытные игроки, и эффективны они только против игроков того же уровня. Выйдя из разряда начинающих, PlayerX уже долгое время не совершал этих ошибок, потому что более грамотные противники так не ходят. Я знал, что такой дебют использовать не получится, поскольку PlayerX умел против него защищаться.
Еще одна проблема была связана с последовательностями ходов, которые происходили только раз, но из типичных позиций. Вероятность их заключительной позиции оказывалась такой же, что и вероятность последней типичной позиции, потому что каждое ребро имело вероятность 1.0 (учитывая, что другие возможности не разыгрывались). В примере ниже можно проследовать по ребрам 7 и 6 (наиболее распространенная позиция на втором ходу), а затем по одному из ребер с 1-ми. Далее все последующие ходы будут сыграны только раз (потому что данная позиция сложилась только в одном матче), в результате чего каждый ход будет иметь вероятность 1.0.
А вот и вероятности:
Такой схеме верить нельзя, потому что вряд ли однозначно будет сыграна одна и та же последовательность ходов. Для такого вывода у нас недостаточно игр, в которых игра бы происходила из этих позиций.
Известная цитата (Б. Брюстера?): «В теории нет разницы между теорией и практикой, а вот на практике есть» оказалась в этом случае верна, поэтому мне потребовались кое-какие доработки и самостоятельное исследование, чтобы найти более удачные предполагаемые позиции.
Вторую проблему я исправил, установив для вероятности ребра верхнюю границу, чтобы длинные последовательности ходов, сыгранные только раз, постепенно утрачивали свою вероятность.
Для первой же проблемы я просто вручную отфильтровал плохие предположения. В итоге у меня для проработки осталась всего пара позиций.
Причиной еще одной модификации стало то, что я не хотел, чтобы вероятности ходов белых влияли на вероятность выбора пути, потому что играл за белых и мог сам решать, каким путем идти. По этой причине я установил все вероятности ходов белых на 1.0 (нулевой вес), получив в результате такой граф:
Подготовка
В процессе изучения я остановил свой выбор на следующей позиции:
Согласно Lichess, это защита Алехина (атака двух пешек). В этой позиции для черных есть всего один удачный ход (Nb6), после которого они все равно остаются в менее выгодном положении (+0.6 согласно Stockfish). Однако из этой позиции PlayerX зачастую играет на Nf4, что весьма для него неудачно (+2.3). Я создал на Lichess студию и начал просматривать несколько вариаций (хороших ходов и ходов, сыгранных PlayerX).
В конечном итоге получилось дерево возможностей, которое я постарался запомнить и понять. К примеру, мне нужно было узнать, чему угрожал ход вроде d5, почему ход Nf4 был неудачным, и подготовить на все оптимальные ответы.
Занимался я этим недолго, потому что мне быстро надоело, и подготовился по факту лишь частично.
Решающая партия
Все случилось так, словно я глядел в будущее: мы с PlayerX попали в позицию защиты Алехина. Оказавшись в неудобной ситуации, он прозевал своего коня на пятом ходу. Оказывается, что даже игроки намного опытнее тебя начинают одну за другой совершать ошибки, когда попадают в проигрышные условия. Легко играть четко, когда ты побеждаешь, но удастся ли тебе сохранить хладнокровие в противоположной ситуации? На 10 ходу я уже вел с преимуществом +7.1, при котором сложно проиграть, но на этом также завершалась проработанная мной схема. Взгляните, насколько стеснены сейчас черные, и как мои фигуры нацелены напасть на короля:
С этого момента я начал тут и там совершать ошибки, но при этом мне удалось сохранять некоторое преимущество вплоть до 27 хода:
К сожалению, я был очень ограничен во времени (мы играли ускоренную 10-минутную партию), поэтому ходить приходилось быстро. В конечном итоге я совершил фатальные ошибки на 32 и 33 ходах, а еще через один получил от своего недобитого противника мат :/
Вот весь матч (с грубыми ошибками и прочим):
Выводы
Чему я из всего этого научился? Нескольким вещам, большая часть из которых в ретроспективе выглядит очевидной:
На этом все, друзья. Надеюсь, что однажды мне удастся одолеть брата, а пока что буду стараться достичь этого…своими средствами.


