Здравствуйте. Помогите разобраться.
Задача.
Два робота характеризуются параметрами:
здоровье,
вероятность попасть по противнику,
наносимый урон. Параметры известны и не меняются во время боя. Нужно рассчитать вероятности победы каждого робота.
Решение.
Почитал в интернете как можно решать подобную задачу, нашел подходящий, по моему, вариант, Цепями Маркова. Обозначим роботов индексами
и
. Предположим, первый робот имеет параметры:
4, 0.5, 1. Второй:
5, 0.4, 1. Считаем для первого робота. Составляем матрицу переходов:
Матрица начального состояния:
Считаем для каждого раунда:
И т.д., но отсюда нас интересует только последний столбик, а именно вероятность победы в этом раунде. Далее записал эти значения в массив для 16 раундов:
Аналогично считаем для второго робота:
Вопрос 1. Это правильно?
Вопрос 2. Может быть есть проще способ рассчитать эти вероятности?
Далее считаем вероятности ничьей в каждом раунде, поэлементно умножая вероятности:
Пересчитываем вероятности победы только одного робота, для каждого раунда, вычитая вероятность ничьей:
Считаем вероятность, что бой продолжается:
Вопрос 3. Это правильно?
Вопрос 4. Теперь, как получить вероятность победы каждого робота в бою, в целом?
Вопрос 5. Есть ли формула или алгоритм сразу получить массивы вероятностей, для произвольных параметров роботов?