Жеребьёвка по-нашему
- Небайдужий
- Advanced Member
- Повідомлень: 4834
- З нами з: 01 січня 2007, 13:26
- Розряд: 6k
- Звідки: м. Рівне
- Контактна інформація:
Re: Жеребьёвка по-нашему
Чудово, можу надіслати електронною поштою текст принципів жеребкування Корсака українською або російською мовою.
Повідомте мені вашу електронну адресу.
Повідомте мені вашу електронну адресу.
-
- Advanced Member
- Повідомлень: 1650
- З нами з: 06 січня 2007, 14:23
- Звідки: Киев
- Контактна інформація:
Re: Жеребьёвка по-нашему
Пока проходил последний турнир, я постарался применить свой алгоритм жеребьёвки на примере из реальной жизни, который был тут же под рукой.
Выяснился интересный момент: оказывается, у нас бывают штрафные очки, которые понижают стартовую группу Мак-Магона провинившегося ранее игрока. Пришлось реализовать. В нашем примере таковым оказался Викотор Кокозей. Он имеет минус одно очко к своей группе.
Жеребьёвка второго тура, насколько бегло видно, в значимой части не отличается.
Выяснился интересный момент: оказывается, у нас бывают штрафные очки, которые понижают стартовую группу Мак-Магона провинившегося ранее игрока. Пришлось реализовать. В нашем примере таковым оказался Викотор Кокозей. Он имеет минус одно очко к своей группе.
Pl. Name Rating Group I MMS SOS SODOS SOSOS SOUD 1. Качановский Артём 2675 22 7? 22 0 0 0 0 2. Богацкий Дмитрий 2601 22 8? 22 0 0 0 0 3. Кравец Андрей 2585 22 9? 22 0 0 0 0 4. Кокозей Владимир 2406 22 10? 22 0 0 0 0 5. Яценко Дмитрий 2393 22 11? 22 0 0 0 0 6. Скочко Василий 2391 22 12↓? 22 0 0 0 -1 7. Михалюк Юрий 2322 22 1? 22 0 0 0 0 8. Богацкий Аркадий 2304 22 2? 22 0 0 0 0 9. Королёв Роман 2302 22 3? 22 0 0 0 0 10. Плющ Юрий 2283 22 4? 22 0 0 0 0 11. Ружанский Роман 2269 22 5? 22 0 0 0 0 12. Кокозей Виктор 2293 21 6↑? 21 0 0 0 1 13. Крушельницкий Валерий 2091 20 14? 20 0 0 0 0 14. Денисенко Андрей 2089 20 13? 20 0 0 0 0 15. Кревсун Александр 1946 19 17↓? 19 0 0 0 -1 16. Антропов Кирилл 1886 18 18↓? 18 0 0 0 -1 17. Кузнечиков Сергей 1850 18 15↑? 18 0 0 0 1 18. Пилипчук Андрей 1766 17 16↑? 17 0 0 0 1 19. Зубарев Владимир 1611 16 21↓? 16 0 0 0 -1 20. Кубрак Дарья 1543 15 22? 15 0 0 0 0 21. Гилязов Александр 1511 15 19↑? 15 0 0 0 1 22. Хведченя Ярослав 1504 15 20? 15 0 0 0 0 23. Супрун Сергей 1448 14 24? 14 0 0 0 0 24. Качановский Владимир 1427 14 23? 14 0 0 0 0 25. Орловский Виктор 1344 13 27? 13 0 0 0 0 26. Малко Ярослав 1337 13 29↓? 13 0 0 0 -1 27. Ясинский Станислав 1300 13 25? 13 0 0 0 0 28. Левенко Павел 1278 12 30↓? 12 0 0 0 -1 29. Карелов Анатолий 1245 12 26↑? 12 0 0 0 1 30. Сильницкая Татьяна 1107 11 28↑? 11 0 0 0 1 31. Тихий Юрий 1031 10 33↓? 10 0 0 0 -1 32. Исаенко Анна 962 9 34? 9 0 0 0 0 33. Тарасенко Светлана 937 9 31↑? 9 0 0 0 1 34. Коробка Сергей 908 9 32? 9 0 0 0 0 35. Колодяжный Андрей 845 8 37↓? 8 0 0 0 -1 36. Шут Роман 698 6 38? 6 0 0 0 0 37. Ружанская Камилла 668 6 35↑? 6 0 0 0 1 38. Дробилко Юрий 643 6 36? 6 0 0 0 0 39. Берко Сергей 585 5 41? 5 0 0 0 0 40. Устенко Тамара 552 5 42↓? 5 0 0 0 -1 41. Бирюков Юрий 509 5 39? 5 0 0 0 0 42. Шут Ольга 437 4 40↑? 4 0 0 0 1 43. Петрашевская Ника 384 3 44? 3 0 0 0 0 44. Дударь Константин 350 3 43? 3 0 0 0 0 45. Общин Василий 171 1 47↓? 1 0 0 0 -1 46. Шередеко Георгий 21 0 ½ 1 0 0 0 0 47. Зарецкий Василий 14 0 45↑? 0 0 0 0 1Приведённая выше жеребьёвка в нижней её части отличается от фактически применённой на турнире, поскольку главный судья не имел времени применять принципы Корскака для всех игроков и потому провёл жеребьёвку вручную только верхней частью таблицы, а остальное доверил программе Герлаха.
Жеребьёвка второго тура, насколько бегло видно, в значимой части не отличается.
Pl. Name Rating Group I II MMS SOS SODOS SOSOS SOUD 1. Качановский Артём 2675 22 7+ 4+ 24 46 46 92 0 2. Богацкий Дмитрий 2601 22 8+ 5- 23 47 23 90 0 3. Кравец Андрей 2585 22 9+ 6- 23 47 23 89 0 4. Кокозей Владимир 2406 22 10+ 1- 23 46 22 92 -1 5. Яценко Дмитрий 2393 22 11+ 2+ 24 45 45 94 -1 6. Скочко Василий 2391 22 12↓+ 3+ 24 45 45 91 -1 7. Михалюк Юрий 2322 22 1- 10+ 23 46 22 92 1 8. Богацкий Аркадий 2304 22 2- 11+ 23 45 22 94 0 9. Королёв Роман 2302 22 3- 13↓+ 23 44 21 91 -1 10. Плющ Юрий 2283 22 4- 7- 22 46 0 92 0 11. Ружанский Роман 2269 22 5- 8- 22 47 0 90 1 12. Кокозей Виктор 2293 21 6↑- 15↓+ 22 44 20 86 0 13. Крушельницкий Валерий 2091 20 14+ 9↑- 21 44 21 84 0 14. Денисенко Андрей 2089 20 13- 16↓+ 21 40 19 82 -2 15. Кревсун Александр 1946 19 17↓+ 12↑- 20 41 19 81 1А вот третий тур у меня вызвал вопрос: насколько я в курсе, на понижение должен был пойти Яценко (как показано ниже), однако в турнире произошло несколько иначе.
Pl. Name Rating Group I II III MMS SOS SODOS SOSOS SOUD 1. Качановский Артём 2675 22 7+ 6+ 3? 24 46 46 92 0 2. Яценко Дмитрий 2393 22 10+ 4+ 7↓? 24 45 45 94 -1 3. Скочко Василий 2391 22 12↓+ 5+ 1? 24 45 45 91 -1 4. Богацкий Дмитрий 2601 22 8+ 2- 9? 23 47 23 90 0 5. Кравец Андрей 2585 22 9+ 3- 8? 23 47 23 89 0 6. Кокозей Владимир 2406 22 11+ 1- 10↓? 23 46 22 92 -1 7. Михалюк Юрий 2322 22 1- 11+ 2↑? 23 46 22 92 1 8. Богацкий Аркадий 2304 22 4- 10+ 5? 23 45 22 94 0 9. Королёв Роман 2302 22 5- 13↓+ 4? 23 44 21 91 -1 10. Ружанский Роман 2269 22 2- 8- 6↑? 22 47 0 90 1 11. Плющ Юрий 2283 22 6- 7- 12? 22 46 0 92 0 12. Кокозей Виктор 2293 21 3↑- 15↓+ 11? 22 44 20 86 0 13. Крушельницкий Валерий 2091 20 14+ 9↑- 15↓? 21 44 21 84 0 14. Денисенко Андрей 2089 20 13- 16↓+ 17↓? 21 40 19 82 -2 15. Кревсун Александр 1946 19 17↓+ 12↑- 13↑? 20 41 19 81 1Прошу Владимира Фёдоровича пояснить, где и что не так.
-
- Главный судья
- Повідомлень: 1152
- З нами з: 13 березня 2003, 10:05
Re: Жеребьёвка по-нашему
Насколько я помню турнир выиграл Кравец с абсолютным результатом 5 побед в 5 партиях. А у Вас он уже после второго тура имеет одно поражение. Поэтому не удивительно что жеребьевка третьего тура не совпала.
С уважением, Владимир Корсак
С уважением, Владимир Корсак
-
- Advanced Member
- Повідомлень: 1650
- З нами з: 06 січня 2007, 14:23
- Звідки: Киев
- Контактна інформація:
Re: Жеребьёвка по-нашему
Спасибо, ошибку в данных исправил. Но всё равно не до конца сходится. В чём тут дело?
Pl. Name Rating Group I II III MMS SOS SODOS SOSOS SOUD 1. Качановский Артём 2675 22 7+ 5+ 3? 24 46 46 92 0 2. Кравец Андрей 2585 22 9+ 6+ 7↓? 24 46 46 91 -1 3. Яценко Дмитрий 2393 22 10+ 4+ 1? 24 45 45 94 0 4. Богацкий Дмитрий 2601 22 8+ 3- 9? 23 47 23 90 0 5. Кокозей Владимир 2406 22 11+ 1- 8? 23 46 22 92 0 6. Скочко Василий 2391 22 12↓+ 2- 11↓? 23 46 22 89 -2 7. Михалюк Юрий 2322 22 1- 11+ 2↑? 23 46 22 92 1 8. Богацкий Аркадий 2304 22 4- 10+ 5? 23 45 22 94 0 9. Королёв Роман 2302 22 2- 13↓+ 4? 23 45 21 90 -1 10. Ружанский Роман 2269 22 3- 8- 12? 22 47 0 90 0 11. Плющ Юрий 2283 22 5- 7- 6↑? 22 46 0 92 1 12. Кокозей Виктор 2293 21 6↑- 15↓+ 10? 22 43 20 87 0 13. Крушельницкий Валерий 2091 20 14+ 9↑- 15↓? 21 44 21 85 0 14. Денисенко Андрей 2089 20 13- 16↓+ 17↓? 21 40 19 82 -2 15. Кревсун Александр 1946 19 17↓+ 12↑- 13↑? 20 41 19 80 1
-
- Главный судья
- Повідомлень: 1152
- З нами з: 13 березня 2003, 10:05
Re: Жеребьёвка по-нашему
Наверное потому что второй раз Василия Ивановича понизить хотите.
Я уже как то говорил что будь моя воля то отменил бы учет понижений/повышений. Потому как алгоритм не обращая внимания на историю предлагает понижать/повышать того кого нужно. Но это слишком революционное предложение, хотя в его справедливости у меня сомнений не много. Уж очень у всех в сознании заложено что ездить нужно по правой стороне, хотя в ряде стран без проблем ездят и по левой .
Но пока в реальных турнирах я все еще пытась подьемы/спуски учитывать, хоть и под небезусловным приоритетом.
В программе, я думаю, должна быть опция - учитывать подьемы/спуски или нет.
С уважением, Владимир Корсак
Я уже как то говорил что будь моя воля то отменил бы учет понижений/повышений. Потому как алгоритм не обращая внимания на историю предлагает понижать/повышать того кого нужно. Но это слишком революционное предложение, хотя в его справедливости у меня сомнений не много. Уж очень у всех в сознании заложено что ездить нужно по правой стороне, хотя в ряде стран без проблем ездят и по левой .
Но пока в реальных турнирах я все еще пытась подьемы/спуски учитывать, хоть и под небезусловным приоритетом.
В программе, я думаю, должна быть опция - учитывать подьемы/спуски или нет.
С уважением, Владимир Корсак
-
- Advanced Member
- Повідомлень: 1650
- З нами з: 06 січня 2007, 14:23
- Звідки: Киев
- Контактна інформація:
Re: Жеребьёвка по-нашему
Вечно к Василию Ивановичу особый подход нужен.
У меня раньше с условными приоритетами какие-то сложности были, поэтому я их отложил. Сейчас тут, под африканским солнышком, есть немного свободного от отдыха времени - так что опцию реализую.
У меня раньше с условными приоритетами какие-то сложности были, поэтому я их отложил. Сейчас тут, под африканским солнышком, есть немного свободного от отдыха времени - так что опцию реализую.
-
- Advanced Member
- Повідомлень: 1650
- З нами з: 06 січня 2007, 14:23
- Звідки: Киев
- Контактна інформація:
Re: Жеребьёвка по-нашему
Продолжим. Для удобства данные в промежуточных таблицах отсортированы так, как удобно для жеребьёвки.
Товарищи типа Василия Ивановича понижаются по возможности не более одного раза (реализовано на уровне сортировки с отслеживнием коэффициента понижения среднего игрока в группе).
А для четвёртого - нет. Прошу пояснить, что не так, ошибки в алгортме не вижу.
Товарищи типа Василия Ивановича понижаются по возможности не более одного раза (реализовано на уровне сортировки с отслеживнием коэффициента понижения среднего игрока в группе).
Pl. Name Rating Group I II III MMS SOS SODOS SOSOS SOUD 1. Качановский Артём 2675 22 7+ 5+ 3- 24 46 46 92 0 2. Кравец Андрей 2585 22 9+ 6+ 7↓+ 24 46 46 91 0 3. Яценко Дмитрий 2393 22 12+ 4+ 1+ 24 45 45 94 0 4. Богацкий Дмитрий 2601 22 8+ 3- 9+ 23 47 23 90 0 5. Кокозей Владимир 2406 22 11+ 1- 12↓+ 23 46 22 92 0 6. Скочко Василий 2391 22 10↓+ 2- 8- 23 46 22 89 -1 7. Михалюк Юрий 2322 22 1- 11+ 2↑- 23 46 22 92 0 8. Богацкий Аркадий 2304 22 4- 12+ 6+ 23 45 22 94 0 9. Королёв Роман 2302 22 2- 13↓+ 4- 23 45 21 90 -1 10. Кокозей Виктор 2293 21 6↑- 15↓+ 11- 22 43 20 87 0 11. Плющ Юрий 2283 22 5- 7- 10+ 22 46 0 92 0 12. Ружанский Роман 2269 22 3- 8- 5↑- 22 47 0 90 0 13. Крушельницкий Валерий 2091 20 14+ 9↑- 15↓+ 21 44 21 85 1 14. Денисенко Андрей 2089 20 13- 16↓+ 17↓+ 21 40 19 82 -1 15. Кревсун Александр 1946 19 17↓+ 10↑- 13↑- 20 41 19 80 0 16. Антропов Кирилл 1886 18 18↓+ 14↑- 19↓+ 19 38 17 78 0 17. Кузнечиков Сергей 1850 18 15↑- 18↓+ 14↑- 19 37 17 79 0 18. Пилипчук Андрей 1766 17 16↑- 17↑- 20- 17 38 0 75 2 19. Зубарев Владимир 1611 16 20↓- 23↓+ 16↑- 17 32 15 64 -2 20. Гилязов Александр 1511 15 19↑+ 21+ 18+ 17 33 33 65 1Если ничего не пропустил, жеребьёки верхней части таблиц для третьего тура теперь совпадают.
А для четвёртого - нет. Прошу пояснить, что не так, ошибки в алгортме не вижу.
Pl. Name Rating Group I II III IV MMS SOS SODOS SOSOS SOUD 1. Кравец Андрей 2585 22 9+ 7+ 8↓+ 2? 25 69 69 214 -1 2. Яценко Дмитрий 2393 22 12+ 4+ 3+ 1? 25 70 70 217 0 3. Качановский Артём 2675 22 8+ 5+ 2- 6? 24 72 47 211 0 4. Богацкий Дмитрий 2601 22 6+ 2- 9+ 5? 24 72 47 210 0 5. Кокозей Владимир 2406 22 10+ 3- 12↓+ 4? 24 69 45 214 -1 6. Богацкий Аркадий 2304 22 4- 12+ 7+ 3? 24 69 45 216 0 7. Скочко Василий 2391 22 11↓+ 1- 6- 9? 23 71 22 204 -1 8. Михалюк Юрий 2322 22 3- 10+ 1↑- 12↓? 23 72 23 210 1 9. Королёв Роман 2302 22 1- 13↓+ 4- 7? 23 71 22 206 -1 10. Плющ Юрий 2283 22 5- 8- 11+ 13↓? 23 69 22 207 0 11. Кокозей Виктор 2293 21 7↑- 15↓+ 10- 14? 22 66 20 203 0 12. Ружанский Роман 2269 22 2- 6- 5↑- 8↑? 22 73 0 208 1 13. Крушельницкий Валерий 2091 20 14+ 9↑- 15↓+ 10↑? 22 65 42 195 0 14. Денисенко Андрей 2089 20 13- 16↓+ 17↓+ 11? 22 61 39 180 -2 15. Кревсун Александр 1946 19 17↓+ 11↑- 13↑- 16? 20 63 19 190 1 16. Антропов Кирилл 1886 18 19↓+ 14↑- 20↓+ 15? 20 56 34 171 -1 17. Кузнечиков Сергей 1850 18 15↑- 19↓+ 14↑- 18↓? 19 59 17 181 1 18. Гилязов Александр 1511 15 20↑+ 21+ 19+ 17↑? 18 51 51 160 1 19. Пилипчук Андрей 1766 17 16↑- 17↑- 18- 21? 17 57 0 166 2 20. Зубарев Владимир 1611 16 18↓- 23↓+ 16↑- 22? 17 53 15 156 -1
-
- Главный судья
- Повідомлень: 1152
- З нами з: 13 березня 2003, 10:05
Re: Жеребьёвка по-нашему
В группе Скочко, Михалюк, Королев , Плющ, отсортированной так по рейтингу нет возможности составить "правильные" пары (1-3, 2-4) Скочко - Королев, Михалюк - Плющ, т.к Михалюк с Плющом уже играли. Но программа продолжает идти по "алгоритму" - Сводит Скочко с Королевым, а затем наткнувшись на запрет игры Михалюка с Плющом отправляет обоих на понижение в следующую очковую группу. Хотя имелась возможность перетасовать сортировку, поменяв местами двух нижних и сразу же получалась нужная жеребьевка Скочко - Плющ, Михалюк - Королев.
В группе имеющей четное количество игроков если не сходится "правильная" жеребьевка (1-3, 2-4), нужно делать перетасовку рейтинговой сортировки в определенной последовательности.
Продаю простой алгоритм этой последовательности.
Обозначаем игроков по рейтингу цифрами 1 2 3 4.
Минимальное число, которое можно составить из этих чисел - 1234, следующее 1243, затем 1324, потом 1342 и т.д. Это и есть та последовательность в которой нужно тасовать игроков. А пары все равно образуются по старому, т.е. первая цифра числа играет с третьей, а вторая - с четвертой.
Этот алгоритм применим и для 6 игроков в группе (1-4, 2-5, 3-6) и для 8 (1-5, 2-6, 3-7, 4-8) и для большего четного числа.
И только после того как перебраны все варианты сортировки и пары не удалось составить, то только тогда рассматривается вопрос понижения двух участников (самых слабых из верхней половины группы) и попытка составить пары из оставшихся игроков.
Нечетное количество еще более усложняет эту процедуру. Хотя если реализован алгоритм для четного количества, то усложнение минимальное - нужно только добавить функцию определения кандидата на понижение, после чего нечетная группа моментально становится четной и включается все описанное выше.
С уважением, Владимир Корсак
В группе имеющей четное количество игроков если не сходится "правильная" жеребьевка (1-3, 2-4), нужно делать перетасовку рейтинговой сортировки в определенной последовательности.
Продаю простой алгоритм этой последовательности.
Обозначаем игроков по рейтингу цифрами 1 2 3 4.
Минимальное число, которое можно составить из этих чисел - 1234, следующее 1243, затем 1324, потом 1342 и т.д. Это и есть та последовательность в которой нужно тасовать игроков. А пары все равно образуются по старому, т.е. первая цифра числа играет с третьей, а вторая - с четвертой.
Этот алгоритм применим и для 6 игроков в группе (1-4, 2-5, 3-6) и для 8 (1-5, 2-6, 3-7, 4-8) и для большего четного числа.
И только после того как перебраны все варианты сортировки и пары не удалось составить, то только тогда рассматривается вопрос понижения двух участников (самых слабых из верхней половины группы) и попытка составить пары из оставшихся игроков.
Нечетное количество еще более усложняет эту процедуру. Хотя если реализован алгоритм для четного количества, то усложнение минимальное - нужно только добавить функцию определения кандидата на понижение, после чего нечетная группа моментально становится четной и включается все описанное выше.
С уважением, Владимир Корсак
- Shedal
- Advanced Member
- Повідомлень: 667
- З нами з: 16 вересня 2005, 20:11
Re: Жеребьёвка по-нашему
Korsak,
Если игроков 10, то минимально возможное число — 10123456789. Так что, нужно оперировать не числами, составленными из чисел, а перестановками с порядком n (где n — количество игроков), перебирая их в лексикографическом порядке. Пример алгоритма описан здесь: http://rain.ifmo.ru/cat/view.php/vis/co ... tions-2000
Но это я уже к формулировке придрался Суть вы описали абсолютно понятно.
Если игроков 10, то минимально возможное число — 10123456789. Так что, нужно оперировать не числами, составленными из чисел, а перестановками с порядком n (где n — количество игроков), перебирая их в лексикографическом порядке. Пример алгоритма описан здесь: http://rain.ifmo.ru/cat/view.php/vis/co ... tions-2000
Но это я уже к формулировке придрался Суть вы описали абсолютно понятно.
-
- Advanced Member
- Повідомлень: 1650
- З нами з: 06 січня 2007, 14:23
- Звідки: Киев
- Контактна інформація:
Re: Жеребьёвка по-нашему
Спасибо за пояснение, займусь реализацией.
А комбинаторикой я ещё в школе занимался (как и составлением алгоритмов).
А комбинаторикой я ещё в школе занимался (как и составлением алгоритмов).