Jump to content
Korean Random
TurinDeNar

[Формула расчета шансов на победу / Chance to win formula]

Recommended Posts

скачал и перезалил, ну нечего мне было делать ночью :)

респект и уважуха) я пока лил на хотфайл... ты уже...отлил)

hotfile

Edited by Traal

Share this post


Link to post

Short link
Share on other sites

респект и уважуха) я пока лил на хотфайл... ты уже...отлил)

hotfile

заведи себе DropBOX, выручает частенько :)

Share this post


Link to post

Short link
Share on other sites

так что можно начинать играться.

 

Спасибо, но боюсь я в таком виде поиграться не смогу. А не проще было формулу сразу расчитывать в момент распарса конкретного боя? А то я боюсь долго буду разбираться, как формулы посчитать. Я даже не знаю их ни одной. Может сделаешь с формулами? Ну то есть сами формулы вычисления процентов мне не нужны, достаточно только уже посчитанных значений.

Edited by seriych

Share this post


Link to post

Short link
Share on other sites

И весь твой план ломает такая штука как ВБР. Уже давно не смотрю на шанс победы у команды... У одного статиста танк не топовый, у другого боеуклад взорвут, у третьего выбьет свет/интернет, в четвертом случае команда бросит фланг и захватят базу. Слишком не предсказуемая игра.

А зря,в 95% оправдывается,по моим скромным подсчетам))))

 

К сожалению из 5 представленных Вами реплеев 2 последних неполные (обрывающиеся после того как Вас убили... кстати предполагаю что в большинстве реплеев, представленных для анализа будет такая же картина:(

По первым трем боям была победа при это формулы показывали:

1. 59%, 64%, 68%, 60% - победа со счетом 15:7 - вроде как все адекватно.

2. 34%, 40%, 64%, 47% - победа захватом базы при счете 12:12. Здесь не знаю... основные формулы ошиблись, а из экспериментальных 1-я показала 64% шанс победы, обсуждаемая 47%. Хотя обсуждаемая формула и ошиблась в прогнозе, но судя по счету игры она была более точна чем 2-е основные формулы, и не столь оптимистична как 1-я экспериментальная.

3. 61%, 58%, 71%, 55% - победа 15:5. Здесь обсуждаемая формула показала себя не самым лучшим образом, выдав самый низкий результат на победу:)   1-я экспериментальная в данном бою была более права. 

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

 

Народ, хочу попросить вас. Если вдруг у вас будут бои где будут аномальные отклонения в ту либо иную сторону экспериментальной формулы по сравнению с основными, либо результат прямо противоположный ее результату при котором шансы победы поражения были больше чем 60%, давайте их посмотрим. Это реально будет интересно почему так  получилось. 

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

Share this post


Link to post

Short link
Share on other sites
Все это загрузил в Excel, так что можно начинать играться.

И еще.

Вот у нас есть столбцы win и team. Судя по тому, что авторы реплеев попадают как в команду 1, так и в команду 2, это просто номер респа, а не обозначение команды автора реплея и вражеской. Соответственно вопрос: что означает win в колонке win, победу команды автора реплея или команды 1? Если победу команды 1, то все хорошо- для вычисления процента победы нам без разницы, кто автор реплея. А вот если победу команды автора реплея, то все плохо, ибо нигде не указано кто собственно автор реплея. Мы это можем только косвенно вычислить по количеству вхождений ника во всех боях. Но это может дать ошибки, особенно если взводами играли.

Share this post


Link to post

Short link
Share on other sites

К сожалению из 5 представленных Вами реплеев 2 последних неполные (обрывающиеся после того как Вас убили... кстати предполагаю что в большинстве реплеев, представленных для анализа будет такая же картина:(

По первым трем боям была победа при это формулы показывали:

1. 59%, 64%, 68%, 60% - победа со счетом 15:7 - вроде как все адекватно.

2. 34%, 40%, 64%, 47% - победа захватом базы при счете 12:12. Здесь не знаю... основные формулы ошиблись, а из экспериментальных 1-я показала 64% шанс победы, обсуждаемая 47%. Хотя обсуждаемая формула и ошиблась в прогнозе, но судя по счету игры она была более точна чем 2-е основные формулы, и не столь оптимистична как 1-я экспериментальная.

3. 61%, 58%, 71%, 55% - победа 15:5. Здесь обсуждаемая формула показала себя не самым лучшим образом, выдав самый низкий результат на победу:)   1-я экспериментальная в данном бою была более права. 

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

 

Народ, хочу попросить вас. Если вдруг у вас будут бои где будут аномальные отклонения в ту либо иную сторону экспериментальной формулы по сравнению с основными, либо результат прямо противоположный ее результату при котором шансы победы поражения были больше чем 60%, давайте их посмотрим. Это реально будет интересно почему так  получилось. 

У меня после победы (я один остался, всех убил) был шанс на победу в послебоевой статистике 5%. Реплей вряд ли найду.

Share this post


Link to post

Short link
Share on other sites

Спасибо, но боюсь я в таком виде поиграться не смогу. А не проще было формулу сразу расчитывать в момент распарса конкретного боя? А то я боюсь долго буду разбираться, как формулы посчитать. Я даже не знаю их ни одной. Может сделаешь с формулами? Ну то есть сами формулы вычисления процентов мне не нужны, достаточно только уже посчитанных значений.

Ну саму то формулу именно как формулу в EXCEL я могу легко написать, но глядя на результат распарсенных реплеев я во первых не могу представить как ее применить практически именно к данному файлу, а во вторых  в ней нет всех данных которые используются - вычисленной разницы между уровнем текущего боя и среднего уровня боев в которые попадает танк исходя из таблицы балансировщика, на каком танке был игрок, процента побед на нем, количества боев и эффективности на нем {{teff}}.

В общем пока с этим файлом действительно вряд ли что-то можно сделать:(

Edited by TurinDeNar

Share this post


Link to post

Short link
Share on other sites

Спасибо, но боюсь я в таком виде поиграться не смогу. А не проще было формулу сразу расчитывать в момент распарса конкретного боя? А то я боюсь долго буду разбираться, как формулы посчитать. Я даже не знаю их ни одной. Может сделаешь с формулами? Ну то есть сами формулы вычисления процентов мне не нужны, достаточно только уже посчитанных значений.

 

Формулы считаются в SWF, так что без запуска реплея ничего не получится.

Но их реализовать в Excel элементарно. Турин как раз с Excel и начинал.

 

И еще.

Вот у нас есть столбцы win и team. Судя по тому, что авторы реплеев попадают как в команду 1, так и в команду 2, это просто номер респа, а не обозначение команды автора реплея и вражеской. Соответственно вопрос: что означает win в колонке win, победу команды автора реплея или команды 1? Если победу команды 1, то все хорошо- для вычисления процента победы нам без разницы, кто автор реплея. А вот если победу команды автора реплея, то все плохо, ибо нигде не указано кто собственно автор реплея. Мы это можем только косвенно вычислить по количеству вхождений ника во всех боях. Но это может дать ошибки, особенно если взводами играли.

Второе, надо будет переделать.

 

Ну саму то формулу именно как формулу в EXCEL я могу легко написать, но глядя на результат распарсенных реплеев я во первых не могу представить как ее применить практически именно к данному файлу,

Ок, сделаю отдельную страницу со сводной таблицей.

 

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

Да, с этим надо будет что-то думать. Скорей всего тоже придется в Excel переносить формулу расчета уровня боя:

private static function GuessBattleTier(): Number    {
        // 1. Collect all vehicles info
        var vis: Array = [];
        for (var pname in StatData.s_data)
        {
            var pdata = StatData.s_data[pname];
            var vi1 = VehicleInfo.getInfo1(pdata.icon);
            if (!vi1) {
                var vn = VehicleInfo.getVehicleName(pdata.icon);
                if (vn == "ussr-Observer")
                    continue;
                return 0;
            }
            var vi2 = VehicleInfo.getInfo2(pdata.icon);
            if (!vi2)
                return 0;
            vis.push( {
                level: vi2.level,
                Tmin: vi1.tiers[0],
                Tmax: vi1.tiers[1]
            });
        }        // 2. Sort vehicles info by top tiers descending
        vis.sortOn("Tmax", Array.NUMERIC | Array.DESCENDING);        // 3. Find minimum Tmax and maximum Tmin
        var Tmin = vis[0].Tmin;
        var Tmax = vis[0].Tmax;
        var vis_length = vis.length;
        for (var i = 1; i < vis_length; ++i)
        {
            var vi = vis[i];
            if (vi.Tmax < Tmin) // Skip "trinkets"
                continue;
            if (vi.Tmin > Tmin)
                Tmin = vi.Tmin;
            if (vi.Tmax < Tmax)
                Tmax = vi.Tmax;
        }       // 4. Return max tier        return Tmax;
    }

Еще и таблицу танков тащить...

Share this post


Link to post

Short link
Share on other sites

не могу скачать, выложи на нормальный хостинг

 

не могу скачать

 

Выборка по 484 реплеям. Формулы я не делал, только собрал данные по боям и статистику по всем игрокам, присутствующим в реплеях.

Все это загрузил в Excel, так что можно начинать играться.

может так

 

 

 

http://yadi.sk/d/riOR-8Y42Jpyd

Share this post


Link to post

Short link
Share on other sites

респект и уважуха) я пока лил на хотфайл... ты уже...отлил)

hotfile

битый архив скачался, проверь плз.

Share this post


Link to post

Short link
Share on other sites

В общем дела такие.

Просмотрел сегодня 180 реплеев, любезно предоставленных камрадом nemoW. Сцука, после всего этого времени потраченного на это дело он мне уже как близкий родственник почти:) Искренне переживал за его стоковый Тигр:) за подарок от КВГ на новый год на котором можно только оло-ло-раш и т.д:) nemoW привычка досматривать бои до конца это очень хорошая привычка (сам всегда  так делаю) а в этой ситуации это был как подарок столько полных реплеев:)  

 

Результаты реплеев вбил в таблицу, с занесенными в нее данными всех четырех формул, результатом боя и конечным счетом. 

Seriych, сегодня у меня уже после всего этого голова не варит абсолютно, и жена смотрит как на дебила, так что действительно пора уже закругляться:) Жаль что до 200-х не дотянул:(

Я завтра и скорее всего еще и послезавтра буду в командировке без компа под руками (так что сам ничего посчитать не смогу) и только смогу с телефона посидеть тут, я вижу что у тебя очень неплохие способности к анализу различных данных в Excel, вот хотел попросить тебя - поковыряй может если у тебя будет завтра время этот файл, интересно какие результаты мы получим на выходе. 

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

Но а пока же крайне интересны результаты в плане точности всех 4-х формул в предсказывании результата.

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

В целом, как мне показалось формула ведет себя достаточно адекватно и вполне может заменить собой две существующие.  Добиться 90-100% точности конечно же нельзя (за время просмотра реплеев достаточно насмотрелся на дибилов, которые при 60% шансе на победу умудрялись сливать бои) но процентов 80% попаданий думаю что должно быть.

 

Sirmax, максимальный шанс на победу по итогам всех этих реплеев который я видел, был:

По формуле 1  - 84%

По формуле 2 -  83%

По формуле 3 -  89%

По формуле 4 -  78%. 

все это есть в этом файле

 

Так что с нормализацией с коэффициентом 3 по первым двум основным формулам увидеть 95% на победу это уже будет очень большая редкость. 

Ну а по этой я думаю что мы однозначно можем смело поднимать нормализацию результата с 1,5 до 2 вообще безо всякий опасений.  

Плохо что пришлось сравнивать при условии что первые 2 формулы считались по eff а эта по WN6, но будем надеяться что сильно большой погрешности это не дало.  

Analiz replay.rar

Edited by TurinDeNar
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

Просмотрел сегодня 180 реплеев

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

 

По твоей табличке:

post-8781-0-55224800-1359932636_thumb.png

Думаю понятно, что к чему.

Первая строка - заголовки.

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

Третья строка - это моя оценка формулы в некоторых пока ни к чему не нормированных баллах(больше- лучше).

Четвертая строка - номер формулы.

Ф4' - это Ф4, растянутая в 1,5 раза(растягивал тупо линейно).

 

* Бои с ничьими пока в анализе не участвовали.

Edited by seriych
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Ну, народ, вам времени не жалко? :)

Я бы так не смог, любая рутина более 5 итераций заставляет меня сесть и написать скрипт.

"Лучше день потерять, зато потом за 5 минут долететь" :)

Share this post


Link to post

Short link
Share on other sites

Ну, народ, вам времени не жалко? :)

Я бы так не смог, любая рутина более 5 итераций заставляет меня сесть и написать скрипт.

"Лучше день потерять, зато потом за 5 минут долететь" :)

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

Share this post


Link to post

Short link
Share on other sites

Ну, народ, вам времени не жалко? :)

А что я, я-то как раз формулами :-) А вот Турин да, времени убил ппц. Но зато есть теперь хоть какая-то база, и я могу оценивать.

 

 

Вторая формула тоже неплохие шансы показала.

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

 

 

Хотелось бы услышать мнение по поводу пары вопросиков.

1) Пусть мы даем 1 балл, если формула дает предсказание победы 100% и эта победа состоялась. Вопрос, сколько баллов давать за предсказание победы 50%, если случилась ничья? Вариантов видится два: один балл, или половина балла. (нижняя граница- 0 баллов)

2) Есть некоторый процент, при котором баллов дается одинаковое количество, независимо от того, случилась ли ничья или победа. Вопрос: какой этот процент?

Возможно, непонятно выразился. Поясню. Пусть формула предсказала победу 51%. Очевидно, если случится ничья, то формуле надо давать больше баллов, чем если случится победа. Пусть формула предсказала победу 90%. Очевидно, если случится ничья, то формуле надо давать меньше баллов, чем если случится победа. Есть какой-то процент, допустим 66,7%, при котором мы будем давать формуле равное количество баллов как в случае ничьей, так и в случае победы. Нужно определиться с этим процентом.

* Ничьих мало, но эти вопросы напрямую влияют на формулу и для побед/поражений, так что они весьма важны.

Edited by seriych

Share this post


Link to post

Short link
Share on other sites

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

Вторая зависит от статы на танке, а это в свою очередь зависит от того, как WG ее отдает.

 

Пусть мы даем 1 балл, если формула дает предсказание победы 100% и эта победа состоялась. Вопрос, сколько баллов давать за предсказание победы 50%, если случилась ничья? Вариантов видится два: один балл, или половина балла.

* Ничьих мало, но этот вопрос влияет на формулу и для побед/поражений, так что он важен.

1 балл

Share this post


Link to post

Short link
Share on other sites
Вторая зависит от статы на танке
Дак и Туриновская зависит.
1 балл
Там еще второй вопросик дописал.

Share this post


Link to post

Short link
Share on other sites

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

 

 

А что я, я-то как раз формулами :-) А вот Турин да, времени убил ппц. Но зато есть теперь хоть какая-то база, и я могу оценивать.

 

 

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

 

 

Хотелось бы услышать мнение по поводу пары вопросиков.

1) Пусть мы даем 1 балл, если формула дает предсказание победы 100% и эта победа состоялась. Вопрос, сколько баллов давать за предсказание победы 50%, если случилась ничья? Вариантов видится два: один балл, или половина балла. (нижняя граница- 0 баллов)

2) Есть некоторый процент, при котором баллов дается одинаковое количество, независимо от того, случилась ли ничья или победа. Вопрос: какой этот процент?

Возможно, непонятно выразился. Поясню. Пусть формула предсказала победу 51%. Очевидно, если случится ничья, то формуле надо давать больше баллов, чем если случится победа. Пусть формула предсказала победу 90%. Очевидно, если случится ничья, то формуле надо давать меньше баллов, чем если случится победа. Есть какой-то процент, допустим 66,7%, при котором мы будем давать формуле равное количество баллов как в случае ничьей, так и в случае победы. Нужно определиться с этим процентом.

* Ничьих мало, но эти вопросы напрямую влияют на формулу и для побед/поражений, так что они весьма важны.

 

 

seriych, я понял как ты хочешь проанализировать формулы, но обрати внимание на один момент. По первым 3 формулам коэффициент нормализации составлял 3, а по моей всего 1,5!  А для такого анализа как ты хочешь сделать нужно тогда чтобы эта нормализация была одинаковой.

И еще. Я там не зря писал конечный счет боя. Была мысль покрутить еще с этим, и определить эффективнсоть формул в зависимости от рассчитанного процента побед и того насколько легко далась победа:) Но опять же из-за разных коэффициентов нормализации к без подтягивания 4-й формулы по нормализации первым 3-м это все мало что даст.

Edited by TurinDeNar

Share this post


Link to post

Short link
Share on other sites

реплеев еще подкинуть?

Share this post


Link to post

Short link
Share on other sites

реплеев еще подкинуть?

меня от них уже тошнит:)

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...