Формула / Алгоритм для взвешивания результатов игр - PullRequest
2 голосов
/ 07 октября 2010

У меня есть интересная концептуальная проблема, и мне интересно, может ли кто-нибудь помочь мне определить ее количественно. По сути, я играю в набор игр ... и для каждой игры я знаю вероятность того, что я выиграю, вероятность того, что я сыграю вничью, и вероятность того, что я проиграю (каждая игра будет иметь разные вероятности).

На высоком уровне я хочу знать: на каких играх я должен сосредоточить свое внимание? Например, я не собираюсь прикладывать усилия к играм с вероятностью выигрыша 0% (или играм с вероятностью выигрыша 100%). Но для игры 50/50 я буду сильно заботиться и хочу приложить максимум усилий. Если бы связи не были задействованы, это было бы так просто: «способность заботиться» = насколько близок мой шанс на победу до 50%? Но со связями это усложняет вещи.

Я не уверен, что это строго необходимо, но если вам нужно, вы можете предположить, что выигрыш равен 0 очкам, ничья даст вам 1 очко, а победа - 2 очка. Другими словами, переход от проигрыша к ничьей был бы столь же ценным, как и переход от ничьей к победе.

Вы также можете предположить, что все игры независимы. По сути, я просто ищу количественную метрику «способности к уходу» (например, значение от 0 до 1).

У кого-нибудь есть идеи, как подойти к чему-то подобному? Если вы экономист, вы можете себе представить, что у меня есть ограниченное количество долларов, которые я могу потратить на повышение своих шансов на победу в играх. Как бы вы распределили эти доллары по играм, чтобы максимизировать ожидаемые результаты?

Заранее спасибо!

РЕДАКТИРОВАТЬ: Извините, с тех пор я понял, что это был довольно плохо сформулированный вопрос. Я не уточняю связь между дополнительными инвестициями и полученным результатом. Я хотел предположить, что это были линейные отношения, но в этом случае не имеет значения, в какую игру вы инвестируете, так как она всегда будет увеличивать ожидаемую стоимость одинаково. Моя настоящая проблема немного сложнее, и мне нужно ее немного переосмыслить. Спасибо всем, кто помог и дал отличные идеи!

Ответы [ 3 ]

1 голос
/ 07 октября 2010

Вы можете сформулировать это как ограниченную задачу оптимизации.

Сейчас я собираюсь игнорировать ничьи ...

Итак, сначала вам нужно, чтобы a_i была суммой, которую вы потратили на игру i.

Вероятность выигрыша в игре i предположительно является функцией a_i .. назовите ее p_i (a_i)

Ваша ожидаемая выплата за игру i ​​составляет 2 * p_i (a_i)

Таким образом, ваша общая ожидаемая выплата составляет P = 2 * Сумма (p_i (a_i))

У вас есть некоторые ограничения на сумму, которую вы тратите ... сумма (a_i) = A

Ваша цель - максимизировать P с учетом ограничения.

Используя метод Лагранжа, вы получите N + 1 уравнения для одновременного решения для неизвестных a_i и lambda.

N уравнений, подобных этому:

 2 p_i'(a_i) = lambda  

И одно уравнение ограничения

 sum(a_i) = total

То, как вы их решите, будет зависеть от структуры ваших функций p_i. В зависимости от вашей структуры или функций p_i вам может потребоваться ввести дополнительное ограничение, согласно которому каждый a_i> 0. Я бы попытался структурировать свои p_i, чтобы избежать этого, поскольку это усложняет решение уравнений.

Если вы хотите ввести шанс на ничью, вы бы разбили свой p_i (a_i) на w_i (a_i) и d_i (a_i) и изменили выплату за игру на 2 * w_i (a_i) + 1 * d_i ( a_i) .. хотя это не меняет основную математику.

0 голосов
/ 07 октября 2010

Самая очевидная вещь, которую я могу подумать, что вам нужно учитывать, - это сколько ресурсов (усилий, долларов, чего угодно) нужно для изменения вероятностей?

Использование долларов в качестве простого примера, если у вас естьигра, в которой у вас сейчас 0% шансов на выигрыш, но 1 доллар даст вам 50% шансов на выигрыш, тогда это лучший вариант, чем если бы этот 1 $ имел 50% шансов на выигрыш с вероятностью 99%.

В общих чертах, я думаю, вам нужно применять значение к выигрышу / ничьей / проигрышу каждой игры (как вы уже упоминали).Затем вы можете определить текущую ожидаемую общую стоимость (например, 50% выигрыша, 25% ничьей и 25% проигрыша дадут 0,5 * 2 + 0,25 * 1 + 0,25 * 0 = 1,25 ожидаемых балла).Цель состоит в том, чтобы затем использовать весь ваш ресурс для максимально возможного улучшения общего ожидаемого значения.

Этот последний шаг полностью зависит от функции вашего ресурса для достижения успеха.Анализ этой функции может облегчить ее решение.

Некоторые примеры формул усилий:

1) Линейный - одна единица ресурса увеличит вашу вероятность выиграть и выиграть на X.

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

2) Инверсия - чем меньше ваш шанс выиграть / выиграть, тем выше ваша выгода

Если одна единица усилия приносит «шанс X / win»«увеличивайте шанс выиграть, тогда вы явно получите наибольшую выгоду от усиления худших игр.

3) Склонности к средней точке: чем ближе вы к равному выигрышу / проигрышу, тем больше вы выигрываете

* 1020»* Это имитирует тот факт, что игры, в которых вы с большой вероятностью выиграете или с большой вероятностью проиграете, будут менее вероятными для улучшения (если кто-то намного лучше вас, усилия, вероятно, не важны).В этом сценарии вы хотели бы сконцентрироваться на тех, кто имеет максимально близкий шанс выиграть / проиграть, чтобы попытаться получить максимальное увеличение.

Надеюсь, это имеет смысл.:)

0 голосов
/ 07 октября 2010

Но для игры 50/50 я буду сильно беспокоиться и хочу приложить максимум усилий.Если бы связи не были задействованы, это было бы так просто: «способность заботиться» = насколько близок мой шанс на победу до 50%?Но с галстуками это усложняет вещи.

Я так не думаю.если вы ищете игру с вероятностью выигрыша 50/50, разве это не просто подсчет «насколько близок мой шанс выиграть плюс половина шанса связать с 50%» - или иметья неправильно понял ваш вопрос?

РЕДАКТИРОВАТЬ:

формула будет выглядеть следующим образом:

x = 1 - abs(0.5-abs(win% + tie%/2));
                 ^ the inner 'abs' here may be useless, but i'm not sure ;)
...