Алгоритм или метод тестирования для генерации тестового примера для игры Keno - PullRequest
0 голосов
/ 04 июня 2018

Правила игры Keno: Keno - это лотерея, в которой генерируется случайная комбинация чисел в диапазоне от 1 до 80 с размером 20. Игрок может выбрать числовую игру (1,2,3,4,5,6,7,8,9,10,15).Выплата зависит от количества игр и количества матчей.

Я понимаю трудности создания полного контрольного примера, чтобы охватить все возможные комбинации, не говоря уже о возможности сопоставления случайного результата игры.Поэтому я сначала применил метод тестирования Random Combination, но позже обнаружил, что трудно достичь высокого охвата всех возможных случаев (примерно 10%).К настоящему времени я сталкивался с Pure Random Combinatorial, CATS, AETG, K-комбинацией, но ни одна из них не идеальна для игры в Кено.

На данный момент входные значения num_game_size, numSelected[num_game_size].Между тем, выходы: result[20], matchedNum[], matched_num_size, payout.Конечно, есть больше входных данных: continuous_game_toplay_size, bet_amount.

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

/* Assume the result is pure random generated */
/* Match 0 */
num_game_size = 2
numSelected[2] = {1,72}
result[20] = {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21}
matchedNum[] = {}
matched_num_size = 0
payout = 0

/* Match 1 */
num_game_size = 2
numSelected[2] = {1,72}
result[20] = {1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21}
matchedNum[] = {1}
matched_num_size = 1
payout = 1

/* Match 2 */
num_game_size = 2
numSelected[2] = {1,72}
result[20] = {1,72,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21}
matchedNum[] = {1,72}
matched_num_size = 2
payout = 5

Общая вероятность будет C(80,2) * C(80,20) = 3160 * 3535316142212174320 = 1.117159900939047e+19.Это означает, что для каждой комбинации чисел с размером два в диапазоне от 1 до 80 возможны C (80,20) возможных результатов.Вероятно, потребуется несколько лет, чтобы покрыть все возможности (включая 1,3,4,5,6,7,8,9,10,15 числовую игру), когда результат будет генерироваться чисто случайным образом (квантовый ГСЧ).

Ps: Большинство методов тестирования, которые я обнаружил, рассматривают только случайную или комбинированную проблему и требуют огромного количества времени для завершения генерации тестового набора.Я пытаюсь создать любую программу, которая поможет мне выиграть IRL в игре Кено.

...