Форум сайта python.su
Ребята, есть ли те у кого остались хоть остаточные знания? Нужна методологическая помощь в решении ряда задач.
Например:
Есть три класса бойцов. Каждый класс имеет три навыка, из которых один прокачивает до максимума, второй средний и третий на минимуме.
Сводим все возможные пары бойцов на списке в 7 различных дистанций и проводим на каждой 1000 боёв. Считаем, когда кто победил и сколько раз. Имеем кучу исходных данных. За день машина справляется.
Как увидеть, прокачка какой последовательности навыков для каждого класса более выгодна и как это меняется от исходной дистанции?
Увидеть, кто когда побеждает я могу. Требуется оценить, на сколько нужно изменить бонусы за навыки чтобы классы стали равноценными. При правильной прокачке любой класс должен уверенно побеждать остальные на определенном диапазоне расстояний (близкое, среднне, дальнее) и при этом не должно быть абсолютного чемпиона. Т.е. нужна не только качественная но и количественная оценка.
Как разбить многомерное поле различных исходов на компактные группы выигрышных стратегий, при этом получив сравнительную количественную оценку этих самых выигрышных групп?
Спасибо.
Офлайн
Мне кажется задачу можно упростить до 2-мерной матрицы и ее анализировать.
Составляем список всех возможных характеристик бойцов.
Получаем очень большое кол-во уникальных бойцов (Х) со всеми возможными значениями прокачанных навыков для каждого класса.
Можно составить матрицу Х столбцов и 7 строк (дистанции).
Значения матрицы - кол-во побед.
Далее решаем в 2 этапа.
1. Отсеиваем несбалансированных игроков по дистанции.
Для этого считаем моду для каждого столбца Х.
Если у бойца наблюдается мультимодальность для разных диапазонов расстояний, значит баланс нарушен.
Получаем список бойцов (фактически, характеристик навыков), которые должны быть запрещены для соблюдения баланса.
Убираем их из исходной матрицы.
2. Определяем бойцов, обеспечивающих второе условие - уверенную победу.
Определяем моду каждой строки.
Если нужен только 1 чемпион (чемпионский набор характеристик), то мода должна быть единственная.
Если допускается несколько, то разрешается мультимодальность.
Если я правильно понял, нужен второй вариант.
Причем, кол-во мод должно быть равно кол-ву классов игроков.
Бойцы (столбцы) с кол-вом побед, равным моде - это и будет искомый набор характеристик.
Еще можно проверить кол-во столбцов с кол-вом побед, равным моде.
Очевидно, если их слишком много внутри одного класса игроков, то нужно менять веса (бонусы) характеристик.
Отредактировано Lexander (Июль 4, 2012 11:34:19)
Офлайн
Lexander, спасибо.
Только я не понял слегка. Мода — это по википедии «значение во множестве наблюдений, которое встречается наиболее часто».
Т.е. если считать в лоб по столбцу вашей матрицы — точно получим мультимодальность. Потому что соотношение побед-поражений зависит (в меньшей мере чем от классов) еще и от генератора случайных чисел, на каждой серии испытаний числа чуть разные.
Как в таком случае поступают. Считают по гистограмме, да? Я попробую. На днях — как только выделю время на это. Завтра, наверное, не получится.
Теперь главный вопрос.
Мне нельзя запретить тот или иной набор навыков для класса. Более того, каждый навык может качаться независимо — лишь бы их сумма удовлетворяла порогу для класса игрока на его уровне развития. Т.е. полный-средний-низкий уровни были введены для упрощения и сокращения количества всех возможных исходов.
Хочу понять, насколько та или иная комбинация выгодна — чтобы путем пропорционального уменьшения бонусов найти баланс.
Или я что-то не понял совсем?
Отредактировано Андрей Светлов (Июль 4, 2012 23:12:25)
Офлайн
Я немного запутался.
Вот смотрите, фраза
Андрей Светловпротиворечит
При правильной прокачке любой класс должен уверенно побеждать остальные на определенном диапазоне расстояний (близкое, среднне, дальнее) и при этом не должно быть абсолютного чемпиона
Андрей Светловв части “должен уверенно побеждать”.
Потому что соотношение побед-поражений зависит (в меньшей мере чем от классов) еще и от генератора случайных чисел, на каждой серии испытаний числа чуть разные.
Андрей СветловЗапрещаем не навыки, а значения бонусов. Чтобы обеспечить условие об отсутствии абсолютного чемпиона, ваши бонусы не должны быть такими, чтобы 1 боец (представляющий собой набор бонусов) побеждал на всех дистанциях. Победа - это пик на гистограмме. Самый высокий пик - мода.
Мне нельзя запретить тот или иной набор навыков для класса.
Офлайн