Мне везет? Програмка для ВСОЛа

Модератор: Модераторы форума

Сообщение Igen 14 фев 2017, 03:06
 Скрытый текст
Программист из меня, конечно, никудышний. Да и верстальщик так себе, ну да ладно.

Подумалось мне давеча, пересматривая тему "Зачем лиге такие матчи?", а может имеет смысл программно проверить все, что там пишется? По поводу рендома, влияния расстановок, удачи итд.
Все мы при определении логичности матча в первую очередь ориентируемся на полоски силы, а потом уже на всякие второстепенные факторы. Этими факторами могут быть - моментные спецухи, расстановка, сильный игрок, тактика, усиливающие замены, рендом и другие. Что из них сыграло в каждом конкретном матче никто не скажет. Поэтому имеет смысл рассматривать их все вместе.
В-общем, наваял скриптик.
Он сравнивает полоски силы, и если результат матча им не соответствует - оценивает в плюс удачливую команду и в минус неудачливую. В зависимости от отношения сил оценивает разными баллами.
На примере, играют команды с соотношением сил в матче 54% на 46%. Если выигрывает первая команда матч считается логичным и никак не оценивается. Если ничья, то первая команда получает - 8%, а вторая +8%. Если выигрывает вторая команда, то она получает +16%, а первая -16%.
Схему расчета буду дорабатывать. Все таки важен и итоговый счет, потому что если первая команда обыграла вторую команду со счетом 4-0, то явно ей матч должен оцениться в плюс, а по текущей схеме никак не оценится.
Такая статистика собирается по всем матчам команды и делается вывод насколько этой команде "везет", то есть насколько удачно эта команда пользуется группой второстепенных факторов (моментные спецухи, расстановка, сильный игрок, тактика, усиливающие замены, рендом и другие).

Собственно вот скрипт - НЕ РАБОТАЕТ
Сразу прошу извинения, если будет глючить или некорректно работать. Все таки я не очень программист. Надеюсь, что будет нормально работать.
Скорость работы - матчи одной команды за сезон приблизительно обсчитывает 15 секунд. То есть если вы захотите обсчитать с 30 по 40 сезон, то будьте готовы ждать 2-2,5 минуты.

Немного о получающихся результатах.
Прогнал все Кайманские команды Д1 за 5 сезонов. Наилучший показатель за сезон +1,49%. Наихудший -2,51%.
У моей команды +0,96%, -0,6%. Суммарный +0,38%.
То есть если в сезон выше 1% то это достаточно высокий показатель удачи, ниже -1% - соответственно наоборот.

У двух команд (не)признанного гуру ПетрВита достаточно высокие показатели. Средний за 5 сезонов у Депортес +1,22% (очень высокий), Куадизия +0,73%(тоже немаленький). А у третьей команды Машук средний за 5 сезонов -0,48% (отрицательный).
Приблизительные ориентиры дал, пользуйтесь.

ЗЫ. Естественно буду дорабатывать программу.
ЗЫ2. Самый нелогичный матч, который мне пока попался вот - http://www.virtualsoccer.ru/viewmatch.p ... _id=240170
В -34,55% оценился.


UPD 14-02-2017 14:30. Добавлена возможность расчета без товарищеских матчей и матчей автосоставами


Текущая версия - НЕ РАБОТАЕТ
Последний раз редактировалось Igen 13 мар 2018, 16:45, всего редактировалось 4 раз(а).
Just as planned
Аватара пользователя
Igen
Мастер
 
Сообщений: 1226
Благодарностей: 250
Зарегистрирован: 24 июн 2014, 01:11
Откуда: Одесса, Украина
Рейтинг: 496
 
 


Re: Мне везет? Програмка для ВСОЛа
Сообщение tequila 14 фев 2017, 19:04
Я давно подозревал, что во ВСОЛе действует система кармы. Если сегодня выиграл при минус 1000, не стоит радоваться, ведь скоро сработает закон равновесия Вселенной и ты получишь привет в обратку :grin: Судя по тому, что матчи с +5+10% и -5-10% достаточно регулярны, а в итоге в сумме все команды укладываются в плюс/минус 1-2%, то Система генерации во ВСОЛе определённо имеет признаки кармического воздаяния. Главное - в среднем все примерно в нуле)

Кроме того, заметил, что команда, находящаяся в начале восхождения имеет тенденцию в общий "плюс", т.к. иногда получает плюшки с матчей против сильных соперников, а слабых попросту нет; в то время как команда, находящаяся в топе Федерации, наоборот, не имеет соперников свыше, поэтому чаще плюшки раздаёт более слабым, поэтому имеет общий "минус". Собственно, это некоторым образом укладывается в систему баффов/дебаффов, поверхностно озвученную администрацией ранее.
Улыбайтесь! Завтра будет хуже.
Аватара пользователя
tequila
Мастер
 
Сообщений: 1003
Благодарностей: 267
Зарегистрирован: 14 мар 2007, 20:41
Откуда: Россия
Рейтинг: 543
 
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Igen 14 фев 2017, 19:21
Psyrakt писал(а):http://www.virtualsoccer.ru/viewmatch.php?day=12632&match_id=514525 - считает самым удачным матчем за 39 сезон. Хорошо бы внести в скрипт исключения в виде технических побед (если это возможно).
Спасибо за ссылку, теперь знаю как технические выглядят. Обязательно уберу.

Добавлено спустя 2 минуты 26 секунд:
tequila писал(а):Кроме того, заметил, что команда, находящаяся в начале восхождения имеет тенденцию в общий "плюс", т.к. иногда получает плюшки с матчей против сильных соперников, а слабых попросту нет; в то время как команда, находящаяся в топе Федерации, наоборот, не имеет соперников свыше, поэтому чаще плюшки раздаёт более слабым, поэтому имеет общий "минус". Собственно, это некоторым образом укладывается в систему баффов/дебаффов, поверхностно озвученную администрацией ранее.

Все верно. И это неправильно.
У сильной команды по текущей схеме совсем мало шансов получить матчи в плюс, поскольку матчей с более сильными почти нет. А у слабой наоборот, больше.
В версии два, где будет учитываться разница, это будет решено. Я готовлю ее.
Последний раз редактировалось Igen 15 фев 2017, 01:24, всего редактировалось 1 раз.
Just as planned
Аватара пользователя
Igen
Мастер
 
Сообщений: 1226
Благодарностей: 250
Зарегистрирован: 24 июн 2014, 01:11
Откуда: Одесса, Украина
Рейтинг: 496
 
Мерриот Интернейшнл (Норсвард, Каймановы о-ва)
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Offworld 14 фев 2017, 19:56
http://www.virtualsoccer.ru/viewmatch.p ... _id=184797 +28%
http://www.virtualsoccer.ru/viewmatch.p ... _id=138330 -22%
Среднее 0,76%. Это с учётом того, что в чемпе уже давно лень юзать тактики
16.08.2020 - 14.03.2021
Let's get away from these soul parasites
Аватара пользователя
Offworld
Эксперт
 
Сообщений: 34903
Благодарностей: 3930
Зарегистрирован: 22 ноя 2010, 13:43
Откуда: Москва, Россия
Рейтинг: 515
 
Борнмут (Борнмут, Англия)
АБДБ (Тутонг, Бруней)
Пелотас (Пелотас, Бразилия)
Пиплс Дифенс Форс (Джинджа, Уганда)
Сент-Эли (Синнамари, Гвиана)
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Lexx 14 фев 2017, 20:22
Интересная программка. Её полезность вызывает вопросы, но пищу для размышлений подбросила. Мне нравится.
Я ЖДУ
Аватара пользователя
Lexx
Президент ФФ Вануату
 
Сообщений: 1681
Благодарностей: 45
Зарегистрирован: 30 янв 2012, 20:50
Откуда: Минск, Беларусь
Рейтинг: 518
 
Атлетико Олимпик (Бужумбура, Бурунди)
Лакотау ФК (Лакотау, Вануату)
МНПЗ (Мозырь, Беларусь)
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Neledva 14 фев 2017, 20:46
Подпишусь !
Изображение
Аватара пользователя
Neledva
Мастер
 
Сообщений: 1715
Благодарностей: 323
Зарегистрирован: 10 янв 2011, 23:03
Откуда: Донецк . Россия
Рейтинг: 535
 
Юнион Тайтус (Петанж, Люксембург)
Аль-Жабален (Медина, Саудовская Аравия)
Дуглас Аиг (Пергамино, Аргентина)
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Igen 15 фев 2017, 01:14
Отчет о проделанной работе.
Как я уже говорил, неверно оценивать второстепенные факторы команды(условно называемые "удачей") только по ее победам/ничьям при уступании в голой силе. Можно привести десятки примеров почему так неправильно.
Допустим, одна команда выиграла 1-0 в матче с оставанием в полосках сил 47% на 53%.
Другая же команда при 50% на 50% выиграла со счетом 3-1.
Какой счет более нелогичный? Все скажут - первый! А математика скажет нам обратное, второй команде "повезло" больше. Вероятность результата второго матча при таком соотношении сил меньше, чем вероятность результата первого матча.
В текущей версии программы за первый матч команда получит +12% в карму, а за второй ничего.
По справедливости нужно за первый матч дать +8%, а за второй +10%.
Почему? Рассказываю.
Прогнал 10000 матчей этого сезона через скрипт, разделив их по категориям - "ничья", "победа в 1 мяч", "победа в 2 мяча" итд. Для каждой категории посчитал среднее значение отношения сил в матче
Получились такие данные
Ничья - 50% к 50%
Разница в 1 мяч - 54,7% к 45,3%
Разница в 2 мяча - 60,3% к 39,7%
Разница в 3 мяча - 66,3% к 33,7%
Разница в 4 мяча - 72,0% к 28,0%
Разница в 5 мяч - 74,5% к 25,5%
И нашелся всего один матч из десяти тысячи с разностью в 6 мячей с соотношением 80% к 20%
Последним трем доверия нет из-за малого количества данных, их лучше рассчитать теоретически, а первые четыре вполне корректны, с погрешностью не более 0,2%.

В приведенном выше примере команда в первом матче выиграла 1-0 в матче с оставанием в полосах сил 47% на 53%.
Смотрим разницу между 47% и средней силой в процентах для выигрыша с разницей 1 мяч, то есть 54,7%. Разница составляет 7,7%. Именно на столько команда выступила лучше положенного.
Другая же команда при 50% на 50% выиграла со счетом 3-1.
Смотрим разницу между 50% и средней силой в процентах для выигрыша с разницей 2 мяча, то есть 60,3%. Разница составляет 10,3%. Именно на столько эта команда выступила лучше положенного.

Это и есть механика расчета версии 1.2.1

Скрипт готов, он явно лучше первой версии, но нужно придать наглядности выводу результатов. Зачастую самыми удачными(неудачными) матчами он определяет вполне обыденные на наш взгляд матчи, типа того же выигрыша 3-1 при отношении 50% к 50%. Или проигрыша со счетом 0-1 при отношении полосок сил 35% к 65%. Нужно как-то совместить в выводе результатов человеческое восприятие и математический расчет. Как, я пока не знаю. Нам пофигу проиграли мы 0-1 или 0-3, и мы не считаем такие матчи край нелогичными, просто удивляемся и идем дальше и не говорим, гена-козел насыпал 0-3.
Но зато прослеживаются очевидные тенденции и вырисовывается влияние моментных спецух. В частности, на примере моей команды в новом скрипте отчетливо видно увеличение сезонной удачи по мере обрастания моментными. Еще более четко это видно на примере Мойзельвица.
В первой версии 36 сезон +1,44%, 37 сезон +0,23%, 38 сезон +0,23%, 39 сезон -0,66%, 40 сезон +0,18% (неясные прыгающие данные)
В второй версии 36 сезон +2,81%, 37 сезон +1,64%, 38 сезон +2,52%, 39 сезон +1,02%, 40 сезон +1,56% (прыгающие, но отчетливо положительные данные)
Нелогичность тоже более-менее стабильная, когда все матчи учитываются.

А ладно, выложу неготовое. Может кто-то что-то посоветует или заметит http://glad-bags.com.ua/vsol_luck2.php

ЗЫ. Технические поражения/победы убрал из обоих расчетов.
Just as planned
Аватара пользователя
Igen
Мастер
 
Сообщений: 1226
Благодарностей: 250
Зарегистрирован: 24 июн 2014, 01:11
Откуда: Одесса, Украина
Рейтинг: 496
 
Мерриот Интернейшнл (Норсвард, Каймановы о-ва)
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение chenson 15 фев 2017, 01:35
Подпишусь.
chenson
 
 
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение barsenal 15 фев 2017, 01:57
Igen писал(а):А ладно, выложу неготовое. Может кто-то что-то посоветует или заметит http://glad-bags.com.ua/vsol_luck2.php
Спасибо за новую версию - сейчас уже намного более плавные результаты выходят. :super:
Жаль, что нельзя лайкнуть на этом форуме.
barsenal
 
 
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение RAUL7 15 фев 2017, 14:43
RAUL7 писал(а):Если честно, даже не знаю, как анализировать эти данные. Ну, вот выдал он мне самый плюсовый матч (+9,12): http://www.virtualsoccer.ru/viewmatch.p ... _id=247581 - победа в равной игре, коих в Лиге сотни каждый день. И самый минусовый (-18 с копейками) - http://www.virtualsoccer.ru/viewmatch.p ... _id=342879 - так тут я сам дурак, что сидел тупо в суперзащите... соперник даже в атаку выходил и вполне заслуженно мог меня обыграть (так и было бы скорее всего, если б он в обороне закрылся)...
Ну, минусовой матч у меня тот же остался, хотя я опять же не считаю, что он "нелогичный", а плюсовой поменялся как раз-таки из-за счета... но что в одной игре было минимальная победа в равном матче, что в новой игре победа в равном матче, но только на гол лучше разницу сделали... и тоже вроде как обычный матч, а он выдается, как "супер"-логичный...

Пока продолжаю скептицировать :grin:
RAUL7
 
 
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение barsenal 15 фев 2017, 20:58
RAUL7 писал(а):
RAUL7 писал(а):Если честно, даже не знаю, как анализировать эти данные. Ну, вот выдал он мне самый плюсовый матч (+9,12): http://www.virtualsoccer.ru/viewmatch.p ... _id=247581 - победа в равной игре, коих в Лиге сотни каждый день но что в одной игре было минимальная победа в равном матче, что в новой игре победа в равном матче, но только на гол лучше разницу сделали... и тоже вроде как обычный матч, а он выдается, как "супер"-логичный...
Плюсовой матч - не значит "супер"-логичный, это значит что твоей команде повезло, а сопернику нет. А приведенный тобой матч плюсовой, потому что преимущество в полосках было у соперника, а победил все-таки ты - более логичным исходом была бы ничья либо победа соперника.

Логичные матчи - это те, где везение около 0, то есть ничья между равными соперниками, или минимальная победа при преимуществе 54-46.
barsenal
 
 
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение defs111 16 фев 2017, 00:53
Занимательно. Спасибо!)
defs111
 
 
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Akar 16 фев 2017, 01:23
tequila писал(а):Я давно подозревал, что во ВСОЛе действует система кармы. Если сегодня выиграл при минус 1000, не стоит радоваться, ведь скоро сработает закон равновесия Вселенной и ты получишь привет в обратку :grin: Судя по тому, что матчи с +5+10% и -5-10% достаточно регулярны, а в итоге в сумме все команды укладываются в плюс/минус 1-2%, то Система генерации во ВСОЛе определённо имеет признаки кармического воздаяния. Главное - в среднем все примерно в нуле)

История из школьного детства хорошо запомнилась - надо было гонять по экрану точку произвольным образом. Как гонять - без разницы, произвольно, дело не в этом было. Первое желание начинающего программиста - ну ок, тогда случайным образом выкидываем вверх, влево, вправо, вниз и все, пусть бегает. Запустил - и точка со старта не сдвинулась. Ну т.е. она дергалась слегка туда-сюда, но движения серьезного в каком-бы то ни было направлении не было, точка в том же стартовом месте и оставалась. Сначала было непонимание, потом удивление, потом принятие действительности - так и должно быть, первое знакомство с теорией вероятностей!

Кроме того, заметил, что команда, находящаяся в начале восхождения имеет тенденцию в общий "плюс", т.к. иногда получает плюшки с матчей против сильных соперников, а слабых попросту нет; в то время как команда, находящаяся в топе Федерации, наоборот, не имеет соперников свыше, поэтому чаще плюшки раздаёт более слабым, поэтому имеет общий "минус". Собственно, это некоторым образом укладывается в систему баффов/дебаффов, поверхностно озвученную администрацией ранее.

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

Барселона не может вылететь во второй дивизион, чтобы накопить сил - она там наоборот все силы растеряет. Опыт и мастерство футболистов зависит от того, где и с кем они играют. В реальном футболе был реальный пример - это высший дивизион СССР, который развалился по национальным чемпионатам. Чемпионат России остался сильным, неплохой чемпионат получился в футбольной и достаточно большой Украине, а все остальное, что выступало в высшем дивизионе, в своих чемпионатах быстро деградировало до их уровня.
Некоторые считают, что футбол - дело жизни и смерти. Они ошибаются: футбол гораздо важнее. (Билл Шанкли)
Аватара пользователя
Akar
Администратор сайта
 
Сообщений: 2746
Благодарностей: 2159
Зарегистрирован: 20 авг 2001, 19:00
Откуда: Минск, Беларусь
Рейтинг: 548
 
Горки (Горки, Беларусь)
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Igen 16 фев 2017, 01:36
Чуть-чуть только доработал, совсем времени не было.

Теперь таблица как бы разделена на две части.

С левой стороны учитывается, то насколько команда выступает лучше своей силы, независимо от результата матча. И эта часть мало отношения имеет к удаче. Тут основным влияющим фактором является наличие моментных спецух, которые не учитываются в силе, но свое достаточно большое влияние оказывают.

А с правой стороны в добавленных столбцах как раз именно "удача". То есть то, насколько эти второстепенные факторы позволили команде лучше/хуже выступить. Там вместо неуместных "выиграл при отставании в силе", "ничья при отставании в силе" ввел новые графы "выиграл, когда должен был проиграть", "ничья, когда должен был выиграть", "проиграл, когда должна была быть ничья". Соответственно оценивающиеся количеством приобретенных/потерянных очков, из стандартного расчета 3 за победу, 1 за ничью, 0 за поражение. Столбец "Везение" - это набранные/потерянные очки разделить на количество матчей.
Конечно, тут тоже не чистая удача, тут моментные тоже оказывают немалое влияние. И вот определить это влияние и вычленить - текущая цель расчетов.

Добавлено спустя 47 минут 7 секунд:
Еще небольшое дополнение.
Теперь все матчи в графах "выиграл, когда должен был проиграть", "ничья, когда должен был выиграть", "проиграл, когда должна была быть ничья" итп можно просмотреть.

Добавлено спустя 8 часов 6 минут 38 секунд:
Все ссылки в новом окне открываются
Just as planned
Аватара пользователя
Igen
Мастер
 
Сообщений: 1226
Благодарностей: 250
Зарегистрирован: 24 июн 2014, 01:11
Откуда: Одесса, Украина
Рейтинг: 496
 
Мерриот Интернейшнл (Норсвард, Каймановы о-ва)
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение Selenid 16 фев 2017, 13:39
а у меня минуса только :(
Selenid
 
 
 

Re: Мне везет? Програмка для ВСОЛа
Сообщение TheSpecialOne 16 фев 2017, 14:13
Akar писал(а):История из школьного детства хорошо запомнилась - надо было гонять по экрану точку произвольным образом. Как гонять - без разницы, произвольно, дело не в этом было. Первое желание начинающего программиста - ну ок, тогда случайным образом выкидываем вверх, влево, вправо, вниз и все, пусть бегает. Запустил - и точка со старта не сдвинулась. Ну т.е. она дергалась слегка туда-сюда, но движения серьезного в каком-бы то ни было направлении не было, точка в том же стартовом месте и оставалась. Сначала было непонимание, потом удивление, потом принятие действительности - так и должно быть, первое знакомство с теорией вероятностей!

Не совсем верная трактовка теории вероятностей. Ваша точка могла ощутиться в любом месте экрана с одинаковой вероятностью. Ваш пример это скорее совмещение классической теории вероятностей (которая применяется разве что в статистике) с теорией полураспада протона в квантовомеханической системе (именно там говорится о том, что через время t распадётся как минимум 50% от изначально взятых протонов, следовательно точка на экране это протон, а координаты точки через время t можно определить с вероятностью в 50%).
TheSpecialOne
 
 
 

Пред.След.

Вернуться в Оффтопик