• Анализ результатов

    1. Обзор и сравнение возможных схем рассадок игроков

    Для спортивных соревнований в настоящий момент существует три основных схемы организации встреч между игроками:

    • Олимпийская система (плей-офф).
    • Круговая система.
    • Швейцарская система.

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

    Круговая система. Подразумевает, что каждый должен сыграть с каждым. С учетом того фактора, что в маджонг играют не пары, а четверки, полноценная реализация круговой системы даже для сравнительно небольшого числа игроков потребует большого числа туров. Для 56 игроков, чтобы хотя бы один игрок встретился хотя бы раз с каждым из соперников, уже потребуется более 18 сессий, что абсолютно недостижимо за два дня, отводимые под соревнование. Приемлемым аналогом круговой системы в риичи-маджонге является схема с минимальным количеством повторных встреч между участниками турнира. Однако данный подход имеет существенные недостатки: отсутствие нормирования столов по силе, случайные повторы и высокая алгоритмическая сложность. Без нормирования столов по силе может сложиться ситуация, когда один опытный игрок играет с тремя новичками и в то же время другой опытный игрок встречается с тремя не новичками, что, очевидно, ставит опытных игроков в неравное положение и может крайне негативно повлиять на итоговые результаты. Повторы возникают, когда число игроков и сессий некратно и без них оказывается невозможно обойтись, однако данные повторы в круговой схеме абсолютно случайны, что, опять же, может дать преимущество одному или нескольким игрокам над другими. Наконец, вопрос сложности упирается в тот факт, что на текущий момент нет алгоритма, который бы для произвольного числа участников и сессий организовывал бы схему рассадки с минимальным количеством встреч. Данная проблема является чисто математической, и если она будет когда-нибудь решена российским риичи-сообществом, создать прикладную программу будет легко. Для турниров с малым числом участников (12-20 человек) и произвольным числом туров (3-8) для круговой системы могут быть найдены кратности числа участников и туров, где каждый будет встречаться с каждым ровно по одному разу.

    Швейцарская система. Очень простая система, при которой первая сессия играется случайным образом, а в каждой следующей сессии игроки рассаживаются за столы в соответствии с занятыми местами после предыдущей (с определенным шагом), что обеспечивает нормирование столов по силе игроков. Например, при шаге, равном 4-м, 1-й игрок будет играть с 5-м, 9-м и 13-м, 2-й игрок с 6-м, 10-м и 14-м, 17-й игрок с 21-м, 25-м и 29-м и т.д. Данная схема практически гарантирует, что в последних сессиях сильные игроки будут вверху турнирной таблицы, а слабые внизу и друг с другом они сыграть в решающих играх не смогут. При всех преимуществах, которые дает швейцарская схема рассадки, она также имеет недостатки. Во-первых, увеличивается число повторных встреч. Во-вторых, данная схема, очевидно, плохо работает или не работает вовсе при недостаточно большом количестве участников (менее 32-х человек). Отдельно можно отметить и некоторую организационно-техническую сложность проведения рассадки перед каждым новым туром на основе только что полученных и обработанных результатов.

    2. Особенности рассадки на Кубке «Японского дома» по риичи-маджонгу

    На Кубке «Японского дома» по риичи-маджонгу использовалась именно швейцарская система рассадки. Вот весь ход турнира:

    • 1-я сессия. Полностью случайная рассадка игроков за столами.
    • 2-я сессия. Шаг 7. Две группы по 7 * 4 = 28 человек. Остаток 4 человека (остаток всегда рассаживался случайным образом).
    • 3-я сессия. Шаг 6. Две группы по 6 * 4 = 24 человека. Остаток 12 человек.
    • 4-я сессия. Шаг 5. Три группы по 5 * 4 = 20 человек. Остатка нет.
    • 5-я сессия. Шаг 4. Три группы по 4 * 4 = 16 человек. Остаток 12 человек.
    • 6-я сессия. Шаг 4. Три группы по 4 * 4 = 16 человек. Остаток 12 человек.
    • 7-я сессия. Шаг 4. Три группы по 4 * 4 = 16 человек. Остаток 8 человек (выбыло 4 игрока с учетом игроков замены).
    • 8-я сессия. Шаг 4. Три группы по 4 * 4 = 16 человек. Остаток 8 человек.

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

    Второй день был самым трудным, шаг достиг минимума, равного 4-м, и более не менялся, а ранжирование было уже достаточно сильно — удачно сыгранная сессия во второй или третьей группе из 16 человек с большой вероятностью приводила к попаданию в более сильную группу. А неудачно законченная сессия в своей группе вполне могла закончится вылетом вниз к более слабым противникам. Иными словами, было одинаково тяжело как опытным игрокам удерживать свое лидерство, так и менее опытным продвигаться вверх по турнирной таблице.

    Рассадка за столы производилась в соответствии с их алфавитным порядком и результатами после каждой сессии. Поэтому во второй день за столами A, B, C и D, расположенными напротив судейских мест, встречались самые сильные участники Кубка, а за столами, стоявшими около окон, с буквами K, L, M, N и O (до окончания 6-й сессии) — наименее сильные игроки.

    К сожалению, не все понимали принцип работы швейцарской системы во время проведения Кубка, о чем свидетельствуют вопросы отдельных игроков судье о том, смогут ли они сыграть с лидерами чемпионата. Кубок «Японского дома» по риичи-маджонгу, несмотря на веселую и дружественную атмосферу, — серьезное спортивное мероприятие, и чтобы встретиться с сильнейшими противниками, необходимо самому быть очень сильным игроком. Кроме того, нужно понимать, что швейцарская система, в отличие от круговой схемы, не подразумевает, что каждый обязательно сыграет с каждым. Более того, не гарантируется и того, что два конкретных сильных игрока вообще встретятся за одним столом. Косвенное, а не прямое сравнение игроков (т.е. посредством игр с общими противниками, но не обязательно друг с другом) — ключевое преимущество швейцарской системы над круговой. Именно благодаря этому свойству швейцарская рассадка позволяет добиться той же точности результатов, что и круговая система, но при значительно меньшем количестве встреч.

    3. Графический анализ результатов Кубка

    Проанализируем график:

    10-flow-average

    Здесь приведены изменения средних мест в течение всех 8-ми сессий трех лучших и трех худших игроков Кубка (чем меньше среднее, тем лучше результат). Из графика следует, что в последних сессиях лидеры и аутсайдеры при использовавшейся схеме рассадки просто никак не могли встретиться между собой — разница в средних местах слишком велика и на столь значительную коррекцию среднего места нужно несколько игровых сессий. Однако в начальных сессиях данные игроки вполне могли бы встретиться по случайности (конкретные игроки, однако, так не встретились — вероятность встреч отдельно взятых игроков не так уж и высока).

    Приведем такой же график, но уже для всех участников (для тех 56, которые отыграли полностью 8 сессий):

    01-flow-average

    Так как различить отдельные линии здесь уже не представлялось возможным, мы разделили участников на три группы и окрасили линии каждой группы в свой цвет: красный — аутсайдеры (18 человек), зеленый — средние игроки (20 человек) и синий — лидеры Кубка (18 человек). Разберем каждую группу. Лидеры:

    02-flow-average

    Всем этим игрокам можно условно присвоить ранг А (а двум явным лидерам ранг А+), помня при этом, что на границе зоны данное деление становится весьма условным.

    Далее. Средние игроки:

    03-flow-average

    К средним игрокам мы отнесли всех, чье место равно 2,5 или незначительно отличается (2,375 и 2,625). Очевидно, что игроки из этой группы имели одинаковые шансы встретиться как с более сильными противниками, так и с менее сильными (но не одновременно и с теми, и с другими!), что и происходило на протяжении всего соревнования. Осмелимся предположить, что играть в данной группе было наиболее интересно из-за высокого разнообразия противников, но, тем не менее, это группа с рангом B.

    Аутсайдеры:

    04-flow-average

    Совершенно предсказуемо, что в эту группу попали те, кто играет совсем недавно или достаточно редко. Присвоим данной категории участников ранг C.

    Теперь построим пересечение A и C:

    06-flow-average

    На рисунке хорошо видны направленные движения средних мест у группы лидеров к 2-1,5 и у группы аутсайдеров к 3 и хуже. Это расхождение усиливается в течение всего первого дня, и достигает своего максимума в последних двух сессиях второго дня, где, очевидно, встречи игроков ранга A и С становятся уже невозможны. Обратите внимание, что если бы результаты игр носили случайный характер, отделить одну зону от другой было бы невозможно!

    Пересечение A и B:

    08-flow-average

    Проникновение соседних зеленой и голубой зон друг в друга гораздо более глубокое и долгое, чем в предыдущем случае.

    Пересечение B и C:

    07-flow-average

    Здесь мы наблюдаем еще более глубокое проникновение зон, чем в предыдущем случае. Это можно объяснить большей дисперсией результатов игроков низких рангов по сравнению с игроками ранга А, чья игра отличается большей стабильностью и предсказуемостью.

    Наконец, все пересечения вместе:

    09-flow-average

    Из данного графика уже можно сделать вывод, что добавление одной-двух дополнительных сессий особого смысла не имеет. Вспомним тот факт, что в группах при шаге 4 по 16 человек, а в синей зоне всего 18 человек, таким образом, лишь двое игроков из голубой зоны перейдут в ранг B, если турнир будет продолжен. Кроме того, т.к. в риичи-маджонге никогда не бывает ничьих, среди игроков внутри зон (в том числе и в ранге A), будут продолжаться перестановки мест. Иными словами, увеличение числа сессий приведет к тому, что цветные зоны будут следовать практически параллельно одна с другой с минимальными переходами игроков одного ранга в другой и со случайными флуктуациями внутри каждой из групп. А в силу того, что среднее место изменяется плавно, на сколь-либо значительную коррекцию потребуется еще около 3-4 сессий и затронет данная коррекция крайне малое число игроков, так как основная их часть уже отранжирована. Очевидно также, что после добавления 4-х сессий на новую коррекцию потребуется снова примерно половина всей дистанции, которая уже составит 6 сессий и т.д.

    4. Репрезентативность результатов

    Нужно понимать, что в любом спорте присутствует влияние вероятностных факторов. Так, например, даже если мы будем несколько раз подряд повторно проводить шахматный турнир, то не получим 100% одинаковых результатов. Риичи-маджонг, будучи вероятностной игрой, конечно, имеет еще менее выраженную повторяемость результатов. Однако введенное выше деление игроков на ранги, очевидно, должно носить устойчивый во времени характер, с поправками на изменение уровня игроков со временем. Единственным турниром, который может использоваться для сравнения, является прошедший в 2012 году в «Японском доме» Moscow Open Riichi Tournament — его результаты также ранжировались по среднему месту, а схема рассадки игроков хотя и была самобытной, всё же предусматривала нормирование столов по силе. В турнире 2012 года приняло участие также 56 человек, но дистанция была вдвое меньше — 4 игровых сессии.

    Сопоставим турнирные таблицы и вычислим количество игроков, изменивших свои ранги:

    riichi-cups-2012-2013

    Всего приняли участие в обоих турнирах 29 человека. Из них:

    • улучшили ранг и перешли из C в A — 4 человека,
    • улучшили ранг и перешли из B в A — 3 человека,
    • улучшили ранг и перешли из C в B — 5 человек,
    • подтвердили ранг A — 4 человека,
    • подтвердили ранг B — 6 человек,
    • подтвердили ранг C — 3 человека,
    • ухудшил ранг и перешел из B в C — 1 человек,
    • ухудшили ранг и перешли из A в B — 2 человека,
    • ухудшил ранг и перешел из A в C — 1 человек.

    Обобщить эти данные можно следующим образом:

    rang-diff

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

    5. Статистика повторов

    При 8 сессиях для каждого игрока максимум возможно 24 уникальных противника, т.е. менее половины от 56 участников, которые играли в Кубке «Японского дома». Однако швейцарская система рассадки делает повторы несколько более вероятными. Вот пересечения для каждого из участников (числа после имен игроков — это количество встреч, а не повторов):

    1. Дмитрий Варченко: Александр Богатиков 2, Никита Перов 2
    2. Isao Karibe: Евгений Бутенко 2, Дмитрий Зайчиков 2, Константин Ермаков 2, Михаил Афонин 2
    3. Константин Ермаков: Дмитрий Зайцев 2, Иван Вегнер 2, Александр Алтынчурин 2, Владимир Богданов 3, Isao Karibe 2
    4. Сергей Васильев: Кирилл Васильцов 2, Виктор Гришин 3, Антон Ленский 3, Никита Перов 3
    5. Марина Белоусова: Илья Монаков 2, Дмитрий Зайчиков 2, Никита Ткаченко 2
    6. Дмитрий Зайчиков: Марина Белоусова 2, Евгений Бутенко 2, Павел Патрикеев 2, Isao Karibe 2
    7. Александр Алтынчурин: Наталья Гуркина 2, Евгений Антонов 2, Егор Шурыгин 2, Алексей Холомкин 2, Константин Ермаков 2, Владимир Богданов 2
    8. Владимир Богданов: Александр Алтынчурин 2, Егор Шурыгин 2, Руслан Зайцев 2, Виктор Гришин 3, Константин Ермаков 3
    9. Михаил Марков: Наталья Гуркина 2, Павел Патрикеев 4, Никита Перов 2
    10. Никита Перов: Александр Богатиков 2, Дмитрий Варченко 2, Сергей Васильев 3, Михаил Марков 2
    11. Дмитрий Зайцев: Анастасия Черных 2, Константин Ермаков 2, Taisei Nagae 2
    12. Виктор Гришин: Егор Шурыгин 3, Владимир Богданов 3, Сергей Васильев 3
    13. Илья Монаков: Александр Богатиков 2, Марина Белоусова 2, Никита Щурихин 2
    14. Анастасия Черных: Дмитрий Зайцев 2, Taisei Nagae 2, Любовь Воллерт 2
    15. Павел Патрикеев: Александр Богатиков 2, Дмитрий Зайчиков 2, Никита Ткаченко 2, Михаил Марков 4
    16. Михаил Афонин: Isao Karibe 2
    17. Кирилл Васильцов: Сергей Васильев 2, Антон Ленский 2, Никита Щурихин 2
    18. Валерий Окулов: Наталья Гуркина 2, Любовь Воллерт 3
    19. Георгий Сладков: Владимир Цилли 2, Никита Щурихин 2, Антон Ленский 2, Любовь Воллерт 2
    20. Антон Ленский: Кирилл Васильцов 2, Георгий Сладков 2, Сергей Васильев 3
    21. Дарья Ильина: Евгений Бутенко 4, Озод Абдулазизов 2
    22. Никита Ткаченко: Марина Белоусова 2, Озод Абдулазизов 2, Павел Патрикеев 2, Александр Сорокин 2
    23. Озод Абдулазизов: Дарья Ильина 2, Евгений Бутенко 2, Ольга Копа 2, Никита Ткаченко 2
    24. Евгений Антонов: Дмитрий Сироткин 2, Александр Алтынчурин 2, Дмитрий Богачков 2, Мария Вегнер 2, Любовь Воллерт 2, Taisei Nagae 2
    25. Иван Вегнер: Владимир Коробейников 2, Константин Ермаков 2
    26. Александр Богатиков: Илья Монаков 2, Дмитрий Варченко 2, Павел Патрикеев 2, Никита Перов 2
    27. Дмитрий Мишаков: Наталья Гуркина 3, Владимир Коробейников 2, Михаил Луговкин 4
    28. Владимир Коробейников: Иван Вегнер 2, Михаил Луговкин 2, Оксана Вышиванная 2, Дмитрий Мишаков 2
    29. Алексей Сладков: Борис Ли 2, Олег Еренцов 2, Руслан Зайцев 2, Роман Иванов 3
    30. Георгий Павлов: Илья Великанов 3, Елена Горячева 3, Александр Сорокин 2
    31. Денис Колпаков: Дмитрий Никулин 3, Екатерина Никитина 2, Виталий Коровин 2, Оксана Вышиванная 2
    32. Ольга Копа: Дмитрий Богачков 2, Озод Абдулазизов 2
    33. Евгений Бутенко: Дарья Ильина 4, Дмитрий Зайчиков 2, Озод Абдулазизов 2, Isao Karibe 2
    34. Taisei Nagae: Дмитрий Зайцев 2, Евгений Антонов 2, Анастасия Черных 2
    35. Любовь Воллерт: Наталья Гуркина 2, Евгений Антонов 2, Дмитрий Сироткин 2, Анастасия Черных 2, Георгий Сладков 2, Валерий Окулов 3
    36. Оксана Вышиванная: Владимир Коробейников 2, Руслан Зайцев 2, Денис Колпаков 2, Дмитрий Богачков 2, Александр Сорокин 2
    37. Никита Щурихин: Илья Монаков 2, Кирилл Васильцов 2, Георгий Сладков 2
    38. Илья Великанов: Георгий Павлов 3
    39. Егор Шурыгин: Александр Алтынчурин 2, Виктор Гришин 3, Владимир Богданов 2, Сергей Скосырев 2, Александр Сорокин 2
    40. Владимир Цилли: Георгий Сладков 2
    41. Виталий Коровин: Дмитрий Никулин 2, Денис Колпаков 2, Мария Вегнер 2, Елена Горячева 2, Роман Иванов 2
    42. Михаил Луговкин: Наталья Гуркина 2, Владимир Коробейников 2, Дмитрий Мишаков 4
    43. Дмитрий Никулин: Борис Ли 3, Денис Колпаков 3, Виталий Коровин 2, Мария Вегнер 2, Елена Горячева 2
    44. Екатерина Никитина: Дмитрий Сироткин 4, Денис Колпаков 2, Алексей Холомкин 2
    45. Олег Еренцов: Борис Ли 2, Алексей Сладков 2
    46. Елена Горячева: Дмитрий Никулин 2, Виталий Коровин 2, Георгий Павлов 3
    47. Борис Ли: Олег Еренцов 2, Дмитрий Никулин 3, Алексей Сладков 2
    48. Александр Сорокин: Егор Шурыгин 2, Руслан Зайцев 4, Никита Ткаченко 2, Оксана Вышиванная 2, Георгий Павлов 2
    49. Алексей Холомкин: Дмитрий Сироткин 2, Александр Алтынчурин 2, Екатерина Никитина 2, Мария Вегнер 3
    50. Наталья Гуркина: Михаил Луговкин 2, Александр Алтынчурин 2, Валерий Окулов 2, Михаил Марков 2, Любовь Воллерт 2, Дмитрий Мишаков 3
    51. Руслан Зайцев: Алексей Сладков 2, Владимир Богданов 2, Оксана Вышиванная 2, Александр Сорокин 4
    52. Дмитрий Богачков: Евгений Антонов 2, Ольга Копа 2, Оксана Вышиванная 2, Сергей Скосырев 2, Роман Иванов 2
    53. Роман Иванов: Алексей Сладков 3, Виталий Коровин 2, Дмитрий Богачков 2, Мария Вегнер 2, Сергей Скосырев 4
    54. Дмитрий Сироткин: Евгений Антонов 2, Екатерина Никитина 4, Алексей Холомкин 2, Сергей Скосырев 2, Любовь Воллерт 2
    55. Сергей Скосырев: Дмитрий Сироткин 2, Егор Шурыгин 2, Дмитрий Богачков 2, Роман Иванов 4
    56. Мария Вегнер: Евгений Антонов 2, Дмитрий Никулин 2, Алексей Холомкин 3, Виталий Коровин 2, Роман Иванов 2

    Итого: 129 повторных встреч в (56 / 4) * 8 = 112 сыгранных ханчанах в турнире на 56 человек. Это примерно на 10-15% больше, чем было бы при полностью случайной рассадке игроков в каждой сессии (данный факт был установлен уже после проведения Кубка путем компьютерного моделирования). Важно понимать, что данные повторные встречи, во-первых, скорее всего, неизбежны (крайне сомнительно, чтобы для 56 человек и 8 сессий существовала рассадка без повторных встреч вообще), а во-вторых, не являются случайными, так как следуют из алгоритма работы швейцарской системы рассадки, а значит, позволяют точнее ранжировать игроков по силе.

    В целом распределение повторных встреч по игрокам носит случайный характер:

    repeat-games-2

    При сортировке не по количеству встреч, а по занятым местам распределение выглядит следующим образом:

    repeat-games

    Только ближе к концу списка все игроки имеют не менее 4-х повторов, это объясняется тем, что остаток игроков, который не укладывался в группы по 16 человек, играл между собой случайным образом — в основном это были одни и те же люди, поэтому они и играли вместе чуть чаще, чем другие. В среднем же, несмотря на экстремум в 8 повторных встреч, на каждого игрока приходится всего по ~4,6 повтора. Естественное желание нормировать число повторных встреч у одних игроков за счет других упирается в две проблемы: как это сделать и не окажет ли подобная доработка негативного влияния на эффективность работы системы рассадки? Данные вопросы, подобно вопросу о рассадке без пересечений, также являются открытыми математическими проблемами, которые еще только предстоит решить российскому сообществу игроков в риичи-маджонг.