ChessPro online

Новости мира движков

вернуться в форум

29.10.2007 | 19:10:30

Главная  -  Поговорим?  -  Железный марш

2912

Vizvezdenec

Ниже нуля
Севастополь

12.11.2025 | 13:12:10

все его сообщения:
за день, за месяц,
за все время
Самое большое изменение в оценке позиции за последние несколько лет:
https://github.com/official-stockfish/Stockfish/commit/8e5392d79a36aba5b997cf6fb590937e3e624e80
Обновили архитектуру сети, теперь на вход ей идёт не только позиция фигур, но и то, какая фигура что атакует и чем защищена. Идея первоначально была реализована в Monty, потом в Plentychess, теперь вот и в стокфише. Ожидается, что к середине 2026 года будет практически во всех движках.
Не исключаю, что многие дебюты теперь придётся существенно переоценивать, потому что в последний раз, когда были такие большие изменения, а не просто увеличение сети или там изменения в процедуре её тренировки, были не меньше пары лет назад.
номер сообщения: 54-31-8169

2913

overkill

13.11.2025 | 13:44:26

все его сообщения:
за день, за месяц,
за все время
Молодцы разработчики! Удивительно, но идеи у вашей команды не иссякают, хотя казалось бы. Михаил, когда планируете подытожить достижения выпуском 18 версии?
номер сообщения: 54-31-8170

2914

Eagle_2

13.11.2025 | 15:49:03

все его сообщения:
за день, за месяц,
за все время
Vizvezdenec:
Обновили архитектуру сети, теперь на вход ей идёт не только позиция фигур, но и то, какая фигура что атакует и чем защищена.

А сколько свободных неатакованных полей (минус случаи равноценного обмена) доступно этой фигуре (подвижность)? Или это всегда было?
номер сообщения: 54-31-8171

2915

Vizvezdenec

Ниже нуля
Севастополь

13.11.2025 | 16:41:47

все его сообщения:
за день, за месяц,
за все время
Eagle_2:
Vizvezdenec:
Обновили архитектуру сети, теперь на вход ей идёт не только позиция фигур, но и то, какая фигура что атакует и чем защищена.

А сколько свободных неатакованных полей (минус случаи равноценного обмена) доступно этой фигуре (подвижность)? Или это всегда было?

В классической оценке было, а вот в нейросети как вход - нет.
номер сообщения: 54-31-8172

2916

Vizvezdenec

Ниже нуля
Севастополь

13.11.2025 | 16:43:01

все его сообщения:
за день, за месяц,
за все время
overkill: Молодцы разработчики! Удивительно, но идеи у вашей команды не иссякают, хотя казалось бы. Михаил, когда планируете подытожить достижения выпуском 18 версии?

Как достаточно эло наберётся.
Посмотрим, как пойдёт, но с новой архитектурой есть идеи по улучшению процесса тренировки сети / изменению набора тренировочных данных / по ускорению подсчёта этих самых атак (вот последнее вроде бы пока не слишком оптимизировано, так что будет немало такого сейчас).
номер сообщения: 54-31-8173

2917

Vizvezdenec

Ниже нуля
Севастополь

15.11.2025 | 00:38:44

все его сообщения:
за день, за месяц,
за все время
Из реальной блиц партии в интернете кого-то, в этой позиции за белых выигрывает ровно 1 ход.

Удар страшной силы.
c4!!
Такая вот очень необычная, но очень эффективная профилактика от атаки чёрных, если чёрные загораживают линию своей же пешкой, то после Rh7 спасения нет, ну а иначе им приходится сливать материал.
Никакие другие попытки что-либо форсировать не работают.
номер сообщения: 54-31-8174

2918

romm

Мастер USCF
Колумбус, Огайо

15.11.2025 | 01:02:18
Сайт

все его сообщения:
за день, за месяц,
за все время
Этот мотив, как раз, я уже встречал как минимум в этюдах.

Со взятие на проходе связана (пардон за тавтологию) уникальная двухфигурная связка: Белые Kpa1, Ла4, п.с2, черные: Кре4, п.d4. Белые играют с2-с4, и бить на проходе нельзя.

__________________________
Полюбите нас черненькими, а беленькими нас всякий полюбит.
номер сообщения: 54-31-8175

2919

Обережний герой

кмс
Харьков

20.11.2025 | 04:10:19
Сайт

все его сообщения:
за день, за месяц,
за все время
Vizvezdenec: Самое большое изменение в оценке позиции за последние несколько лет:
https://github.com/official-stockfish/Stockfish/commit/8e5392d79a36aba5b997cf6fb590937e3e624e80
Обновили архитектуру сети, теперь на вход ей идёт не только позиция фигур, но и то, какая фигура что атакует и чем защищена. Идея первоначально была реализована в Monty, потом в Plentychess, теперь вот и в стокфише. Ожидается, что к середине 2026 года будет практически во всех движках.
Не исключаю, что многие дебюты теперь придётся существенно переоценивать, потому что в последний раз, когда были такие большие изменения, а не просто увеличение сети или там изменения в процедуре её тренировки, были не меньше пары лет назад.


Это уже напоминает Ботвинника.

__________________________
pr.ai PRAI Portal of Robotics and Artificial Intelligence
номер сообщения: 54-31-8176

2920

Vizvezdenec

Ниже нуля
Севастополь

21.11.2025 | 10:48:26

все его сообщения:
за день, за месяц,
за все время
Вообще, насколько я понимаю разницу между подходами, там было как-то так.
2 возможных стратегии:
1. Полный перебор всех ходов в пределах усеченного дерева вариантов (Стратегия А).
2. Выборочный перебор по аналогии с игрой шахматного мастера (Стратегия B).
И Ботвинник ратовал за 2.
На самом деле сейчас используется нечто среднее.
То есть вещи, которые были разработаны под первый подход - минимакс, его усиление альфа-бета, являются основой большинства шахматных прог.
Но при этом используется масса спекулятивных эвристик отсечения, так что это точно никакой не "полный перебор", а очень "селективный перебор", что скорее 2). Причём очень селективный это не преувеличение, для достижения определённой глубины счёта сейчас рассматривается примерно 1,5 (!) хода за каждую сторону на каждом ходу.
Ну а оценочная функция - это вообще вещь в себе и с типом поиска никак и не связана.
Кстати говоря, интересно, что Ботвинник считал, что только используя 2), можно создать программу, играющую в силу гроссмейстера.
Вообще говоря, это, скорее всего, не так.
Есть забавная ветка стокфиша, которая называется "simple search", где вырезано вообще всё, кроме по-моему альфабеты и qsearch, и она играет куда сильнее гроссмейтеров. Впрочем, на то время, когда никаких нейросетевых оценочных функций не было, это, конечно, было чистой правдой.
Кстати говоря, ещё забавный факт состоит в том, что вот эти вот улучшения из 2) спекулятивные на удивление хорошо работают в других шахматоподобных играх, таких как сёги или сянцы.
То есть вот эти вот улучшения, которые разрабатывались для шахмат, по факту могут применяться не только в шахматах и с успехом, т.е. на самом деле являются неким общим спекулятивным (почему, собственно, спекулятивным - потому что альфабета выдаёт тот же результат, как и минимакс, но быстрее, а вот эти улучшения уже меняют результат, иногда они могут делать хуже, но в среднем по больнице дают сотни эло) улучшением алгоритма альфа-бета для игр подобного типа.
номер сообщения: 54-31-8177

2921

Vizvezdenec

Ниже нуля
Севастополь

21.11.2025 | 10:57:05

все его сообщения:
за день, за месяц,
за все время
Ну а в плане "повторять, как человек мыслит" - в принципе нейросети в чём-то основаны на этой идее, но, конечно, не совсем.
А улучшения, конечно, соответствуют подходу "решать задачу".
номер сообщения: 54-31-8178

2922

Vizvezdenec

Ниже нуля
Севастополь

21.11.2025 | 11:03:58

все его сообщения:
за день, за месяц,
за все время
Кстати говоря, пока оценка ещё была рукописной, улучшения её в основном делались людьми, которые не слишком-то хорошими шахматистами являются.
Более сильные шахматисты реально хотя бы подсознательно пытаются повторить какие-то свои паттерны, а движку это ни к чему особо.
номер сообщения: 54-31-8179

2923

grizly

21.11.2025 | 12:22:43

все его сообщения:
за день, за месяц,
за все время
А Лила без поиска совсем нынче на какой уровень играет?
номер сообщения: 54-31-8180

2924

Vizvezdenec

Ниже нуля
Севастополь

21.11.2025 | 14:17:18

все его сообщения:
за день, за месяц,
за все время
grizly: А Лила без поиска совсем нынче на какой уровень играет?

В районе гм+ вроде как, но это не точно.
Тут ещё вопрос в том, что технически очень несложно сделать её так сильнее - просто натренировать нейросеть побольше.
Она будет куда медленнее, но какая разница, если играешь без поиска?
номер сообщения: 54-31-8181

2925

grizly

22.11.2025 | 03:22:23

все его сообщения:
за день, за месяц,
за все время
А разве у них было, что даже с поиском бОльшая сеть хуже играла? Они, кажется, обычно увеличивали количество фильтров и уменьшали количество блоков при этом размер лучше играющей сети всегда возрастал. Время на тренировку тоже. Они, по-моему, упираются в чрезвычайно долгое время необходимое на тренировку при доступных им компьютерным мощностям. То есть если бы могли натренировать бОльшую сеть для игры без поиска, уже натренировали бы. Разве не так? Давно не заглядывал, что они там делают нынче.
номер сообщения: 54-31-8182

2926

Vizvezdenec

Ниже нуля
Севастополь

22.11.2025 | 11:48:12

все его сообщения:
за день, за месяц,
за все время
Так проблема в том, большего размера сеть просто медленнее.
Т.е. если начинать играть ей реальные партии, она проигрывает более маленькой за счёт меньшей скорости.
Для того, чтобы бОльшая сеть была сильнее, нужно, чтобы тренировочные данные были соответствующего качества.
У стокфиша, например, на старой архитектуре не получалось сделать сеть больше 1024 L1, пока Linrock не придумал, как улучшить данные для тренировки, и в итоге сеть стала в 3 раза больше через год.
При этом именно на фиксированном числе узлов бОльшие сети всегда были сильнее меньших - но они были сильно медленнее и это того не стоило. Даже буквально почти сразу Sergio Vieri натренировал сеть не 512х16, как тогда было, а 8192х64, если я правильно помню. И она на фиксированных узлах была сильнее мастера на 60+ эло! Только вот в 10 раз медленнее.
У лилы, я думаю, то же самое.
А по поводу "могли бы - натренировали бы" - а им это зачем? Ну это же так, прикол, в реальности никто не будет использовать лилу без поиска, это же бессмысленно. Поприкалываться можно, но не более того.
номер сообщения: 54-31-8183

2927

grizly

22.11.2025 | 15:24:18

все его сообщения:
за день, за месяц,
за все время
Vizvezdenec: Так проблема в том, большего размера сеть просто медленнее.
Ну это понятно.

Т.е. если начинать играть ей реальные партии, она проигрывает более маленькой за счёт меньшей скорости.
Для того, чтобы бОльшая сеть была сильнее, нужно, чтобы тренировочные данные были соответствующего качества.
У стокфиша, например, на старой архитектуре не получалось сделать сеть больше 1024 L1, пока Linrock не придумал, как улучшить данные для тренировки, и в итоге сеть стала в 3 раза больше через год.
При этом именно на фиксированном числе узлов бОльшие сети всегда были сильнее меньших - но они были сильно медленнее и это того не стоило. Даже буквально почти сразу Sergio Vieri натренировал сеть не 512х16, как тогда было, а 8192х64, если я правильно помню. И она на фиксированных узлах была сильнее мастера на 60+ эло! Только вот в 10 раз медленнее.
Для Стокфиш все так.

У лилы, я думаю, то же самое.
Отличия.

Лиле не нужны внешние данные. Она наигрывает партии сама с нуля.

При каждом изменении размера Лила начинает с нуля наигрывать тренировочные партии для этого размера. При обучении она использует поиск с фиксированным числом узлом. Поскольку сеть больше, качество партий лучше. (Стокфиш эти партии при своем обучении тоже использует, насколько я знаю). Время обучения увеличивается пропорционально размеру сети.

Насколько я помню, давно были какие-то эксперименты обучать новый размер по наигранным партиям предыдущих размеров, но это ограничивало предельную силу, до которой сеть данного размера может обучиться после начала обучения на своих партиях. И это перестали делать. Кроме того, такой подход противоречит нулевому принципу (as in Alpha Zero, Leela Chess Zero)

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

А по поводу "могли бы - натренировали бы" - а им это зачем? Ну это же так, прикол, в реальности никто не будет использовать лилу без поиска, это же бессмысленно. Поприкалываться можно, но не более того.
Так вроде нет отдельного алгоритма тренировать специально для игры без поиска. При тренировке поиск в любом случае нужен. Да, можно взять еще бОльшую сеть и тренировать ее не обращая внимания как бы она играла с ипользованием поиска, но тренировки у них занимают года, и они, насколько я знаю, еще не показали ухудшения игры с использованием поиска. Поэтому я и говорю, что проблема со временем обучения, а не с тем, что с использованием поиска гипотетическая бОльшая сеть играла бы хуже.
---
Это было все несколько лет назад. Может, что-то изменилось, не знаю.
номер сообщения: 54-31-8184

2928

Rom77

23.11.2025 | 13:49:15

все его сообщения:
за день, за месяц,
за все время
Раз уж зашла речь о Лиле, выложу интересное мнение авторов Лилы о будущих перспективах их программы. Для меня оно интересно прежде всего тем, что я почти по всем позициям с ним не согласен. Сам не спец конечно, но думаю и Viz'а вряд ли оно устроит. Вот скрины из чата Лилы на discord (канал Leela Chess Zero, тема events-discuss):







номер сообщения: 54-31-8185

2929

Rom77

23.11.2025 | 13:51:39

все его сообщения:
за день, за месяц,
за все время
Гугл, он же Gemini, распознал текст. Не стал выкладывать переводом, потому что были погрешности:

crem 11.08.2025, 11:04
Even looking at just "TCEC strength", I believe Lc0 has more potential.
Given that Lc0 is that high despite almost not having improvements in many areas for long time, don't have as streamlined experimentation and eval methodology as SF, etc, I'd say it should improve a lot when we do.

crem 24.09.2025, 16:19
Stockfish as a project is quite unique. They created the infrastructure and process to make incremental contributions easy.
That's quite exceptional, and makes SF quite different from lots of other engines that appeared around the same time.
Most projects start as a single man project and how the project develops (or dies) depends solely on that one man.
Be it Ethereal, or Ceres, or Monty, or whatever — as soon as the person it stops working on it, project stops.
Stockfish authors managed to make project approachable before they lost interest.

Lc0 is more like "typical engine" in this regard and less like Stockfish. It's surely more than one person that is contributing (recently there's more, but e.g. a year ago it was pretty silent), but the surface is much larger too (there is search, backend implementations, training, websites, various builds etc). But there's no easy process for incremental contribution, no infrastructure for easy experimenting and testing of ideas, and no easy way for new people to try. There is a very small set of people who had enough context to do large set of end to end changes, and this set has recently (again, as of late 2024) were not active (except borg; borg is consistently reliably active through all these years, unlike all of us).

It's not that we don't have ideas; it's just too hard to try them.

Recently I somehow got lots enthusiasm again (even though I have extremely little time), so I'm trying to use it to make Lc0 unstuck. Also, we started to see new faces in the project again! (Menkib and johnsp)

And also to address the frequent argument that "SF vs LcO" shown than A/B+fast eval is better than MCTS+deep eval — I'd say it's quite the opposite; the fact that LcO stays in top of all A/B engines (except one unique exception) despite not being active shows that "slow deep eval" will likely win in a long run.

crem 24.09.2025, 16:28
Although just being the strongest engine is also (mildly speaking) an important factor to attract new contributors, it's not just having easy way to start.
I'd say both are important — being strongest is needed for new contributors to come; easiness to contribute is what makes them stay for more than 1 hour..

dje-dev 24.09.2025, 16:35
I agree with all of above as important and correct observations.
But I'd add:
- maybe being strongest engine is not only reason for attracting lots of contributors, there is also the problem that MCTS engines/deep neural networks require a whole lot of specialized knowledge (from people that are currently being incentivized to use that expertise for profit), and
- my experience is that MCTS engines have a theoretical grounding in an algorithm which is quite simple, and deviations from the theory do not often improve Elo.

However of course there are many engineering improvements that are possible with MCTS engines that are nowhere near fully explored (yet).

Regarding "slow deep eval" winning, I'm hopeful that's true. Looking at the long arc of science that seems to be the likely conclusion, considering Sutton's "bitter lesson" that human-engineered domain knowledge tends to be inferior to to general methods that use self-driven learning and scale well. On the other hand there is no guarantee this is true for all domains, and I worry (for example) that endgames where there is a razor-thin calculation line between drawing and winning intrinsically requires very deep and very precise search.
номер сообщения: 54-31-8186

2930

Rom77

23.11.2025 | 13:54:14

все его сообщения:
за день, за месяц,
за все время
Изложу здесь и свои контраргументы.

Прежде всего, с моей точки зрения - напротив, путь Стокфиша гораздо перспективнее. У Стокфиша сейчас всего одно слабое место - оценка позиции, то есть нейросеть. Она маленькая (по объему вычислений) и слабая. А рядом находятся огромные и не задействованные вычислительные мощности видеокарты. И препятствие для их использования, это всего-лишь задержка передачи данных туда-обратно.

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

При всем при этом, традиционный путь постепенного улучшения поиска ничуть не исчерпал себя и Стокфиш продолжает им пользоваться. У Лилы же гораздо больше проблемных мест, перечисление и разбор которых может занять немало времени. Подход "чем больше трудностей, тем больше наша слава", который звучит рефреном в постах выше, мне кажется чересчур оптимистичным, поскольку ничто не гарантирует, что эти трудности разрешимы.

Что же касается особого положения Стокфиша, то мне кажется, что как раз Лила стоит особняком от остальных программ. Если не считать Ceres, который суть параллельный проект, то топовых конкурирующих проектов на той же сверточной/трансформерной модели + MCT(G)S, как у Лилы, нет. Мелькавшие ранее Scorpio и Stoofvlees постепенно погружаются в турнирах все ниже и ниже.

Получается, что дебютирующие программисты предпочитают сначала организовать перебор на классической базе, ставя "заглушку" из ручной оценки позиции и добавлять позже оценку на базе NNUE, но продолжают сохранять классический подход перебора. Кроме Лилы, весь топ сейчас состоит из проектов на базе AB + NNUE, которые подтянулись к лидерам совсем недавно. Это конечно совсем не гарантия, что всё не перевернется в одночасье, стоит только открыть какую-нибудь "золотую жилу", но пока все так, и эволюционного способа что-то изменить как-то не просматривается. Увеличивать сеть Лиле уже не получается, так как прибавки от тренинга практически нет, а кроме того возникают многие технические ограничения. Некоторая часть из них упоминается в сообщениях чата.

Там еще разработчик(?) Ceres упомянул Саттона, но как часто бывает "горький урок" каждый понимает по своему. Мне же кажется масштабирование Саттона подразумевает не только самообучение, но и мощность перебора. Так что Сток и Лила здесь отталкиваются от разных, но обоюдно значимых баз.
номер сообщения: 54-31-8187

2931

Vizvezdenec

Ниже нуля
Севастополь

23.11.2025 | 21:43:02

все его сообщения:
за день, за месяц,
за все время
Да, я тут тоже не согласен почти со всем.
Во-первых, путь постепенного улучшения доказал свою ценность и продолжает её доказывать. Что Лила до сих пор не может сделать нормальный фреймворк для тестирования толковый - это НЕ плюс. Поэтому они и "stuck for a long time".
Во-вторых, почти все новые движки - AB+NNUE. И можно было бы сказать, ну да какая разница, большинство их авторов не работают над стокфишем, но на самом деле это не совсем так. Кто-то и работает. А кто-то и пробует что-то новое, что в итоге в стокфиш доезжает. Из последних примеров - упомянутые мной threat inputs, которые, вообще говоря, не в стокфише первыми возникли, а вообще в monty, который, кстати, MCTS. То есть смешно получается, инновации из MCTS используются сейчас только в альфабете. Потом там в несколько других движков мигрировали, в итоге и в стокфише оказались. Ещё, например, история корректировки статической оценки, которую я вполне честно списал у Seer, автор которого взял идею у Caissa (правда пришлось немало модифицировать, и теперь есть два ортогональных подхода для этого - "gravity correction history" как в стокфише и "running average correction history" - который был изначально. Интересно, что в Caissa сейчас используется первый ). То есть стокфиш вбирает в себя инновации даже от тех, кто непосредственно над ним не работает.
В-третьих, ну TCEC это хорошо, только вот туда сейчас доедет Torch, который почти наверняка лилу в финал уже и не пустит. Да и вообще в CCCC, где железо не такое дисбалансное в сторону лилы, она уже в районе там 5+ мест обычно болтается.
Ну и да, стокфишу проще начать помогать. Написал патч, на фреймворк запулил, он прошёл - ты молодец. У лилы это всё очень кривая и сложная процедура на самом деле.
Поэтому ну как бы посмотрим, но про то, что у лилы там скоро будет какой-то большой прогресс, я слышу очень давно. По факту его особо не видно и в целом если смотреть не по TCEC, где небольшая выборка, а по CCCC, где выборка существенно больше - она отваливается всё дальше и дальше.
Сначала это был стабильный топ-2, потом её стал на повороте обходить Torch, а сейчас уже https://www.chess.com/computer-chess-championship#event=422 это как-то так выглядит, могут пройти её и обсидиан (который, кстати, тоже давно без патчей), и пленти, и интеграл, и реклесс.
Впрочем, я подобные спичи от разрабов лилы уже немало раз читал.
Там есть такой Kovax, который строчит планы на будущие, расписывая будущие улучшения, и говорит, что каждое из них 10+ эло. Ну, пишет-то он пишет, а воз и ныне там.
номер сообщения: 54-31-8188

2932

Vizvezdenec

Ниже нуля
Севастополь

24.11.2025 | 11:54:50

все его сообщения:
за день, за месяц,
за все время
Кстати, замечу, что эти threat inputs на железе TCEC имеют 40% прироста nps примерно, в то время как на фиштесте они типа на 10% медленнее. Удачи лиле.
номер сообщения: 54-31-8189

2933

Vizvezdenec

Ниже нуля
Севастополь

02.12.2025 | 03:05:11

все его сообщения:
за день, за месяц,
за все время
https://lichess.org/PLjXMdYo#1
Лила без фигуры против израильского ММ с рейтингом почти гросса.
Без ладьи тот выиграл вроде как.
номер сообщения: 54-31-8190

2934

Vizvezdenec

Ниже нуля
Севастополь

02.12.2025 | 13:40:50

все его сообщения:
за день, за месяц,
за все время
https://tests.stockfishchess.org/tests/view/692d41b5b23dfeae38d00ffe
https://tests.stockfishchess.org/tests/view/692d41c2b23dfeae38d01000
после долгого достаточно почти застоя был большой прорыв с threat inputs и в целом движемся к релизу. Обещаются в декабре / 1 квартале 2026.
номер сообщения: 54-31-8191

2935

Vizvezdenec

Ниже нуля
Севастополь

02.12.2025 | 13:45:01

все его сообщения:
за день, за месяц,
за все время
К вопросу кстати о "постепенных улучшениях".
Вот и они.
Новая архитектура сети +7 эло (хотя в тесте прогресса там вообще 2 было) - а месяц патчей сверху и ещё +10 с лишним, тюнинг констант, парочка новых сетей, прочие приколы в поиске.
Не такой уж и мёртвый подход выходит.
номер сообщения: 54-31-8192

2936

Vizvezdenec

Ниже нуля
Севастополь

03.12.2025 | 17:10:27

все его сообщения:
за день, за месяц,
за все время
Взято из партии Patricia-Lynx. Patricia это движок, специально заточенный под очень агрессивный стиль игры.

Rd6! Nd7? - скорее всего, проигрывающий ход, надо было Nh5, хотя и там у чёрных большие сложности, которые не факт, что разрешимы.
Ng5 Bf8
Rfd1! - начало всей комбинации белых Bxd6
Rxd6 Qc7
Qd2 Bc8
f4 f6 - чёрные хотят качество отдать за этого коня на e6 и тогда на доске будет примерное равенство, но...
c5!! - тут оценка как чёрных, так и лилы, которая анализировала игру в параллель, скакнула до +4. Стокфиш всю комбинацию видел с самого начала, Patricia считала, что надо было на прошлом ходу a5, но по стокфишу и там +4
... fg
На b5 запланировано Bxb5! cb Qd5+ Kh8 Rc6! Qa5 Qf7 f6 Qxe8 Kg7 Rxc8 gh (теперь грозит мат уже со стороны чёрных, но у белых всё срастается) Qe7+ Kh6 Qxh4+ Kg7 Rxa8 и никакого вечного шаха у чёрных нет, у белых решающий материальный перевес, поле e1 прикрыл ферзь.
Bc4+ Kп7 Bxg5 - у белых не хватает ладьи, но их атака неотразима.

... b5
Bb3! Nxc5
Bf6+ Kf8
f5! Nxb3
Qh6+ Kg8
fg Bg4
ab Re7
gh+ Rxh7
Qg5 (единственное, кстати) Kf8
Bxe5 - снова единственное, но достаточное Rf7
И дальше белые постепенно поставили мат, не отыгрывая назад материал - чёрная ладья так и осталась до конца игры стоять на a8
Qh4 Qa5
h3 b4
Bd4 Be2
e5 c5
Be3 Kg8
Rh6 Rf1+
Kh2 Bd3
Qg3+ Kf8
Rd6 Kf7
e6+ Ke7
Rd7+ Ke8
Qg7

Тут чёрные все фигуры слили, чтобы дать ещё пару шахов
Rh1+
Kxh1 Qa1+
Bg1 Qxg1+
Kxg1 c4
Qe7#
номер сообщения: 54-31-8193