Алгоритм поиска последовательности выпадения числа. Возможно ли такое реализовать?
Дана задача.
1. Есть диапазон чисел от 1 до 100.
2. В определенное (неизвестное) время, выпадает одно из чисел.
3. Снова проходит (неизвестное) количество времени, и выпадает одно из чисел.
4. и т.д....
Числа и время, НЕ случайны. Есть определенная последовательность. Вопрос: Можно ли написать алгоритм, который исходя из времени и выпавшего числа, пытался бы найти эту последовательность. И "угадать" какое число, и через какой промежуток времени выпадет следующим. Например показывало бы, что это число может выпасть с вероятностью в 40% и чем больше данных (выпавших чисел), тем прогноз точнее... Пока не определится 100% вероятность.
Не прошу написать такой алгоритм, интересует возможно ли вообще теоретически такое написать ?
Спасибо.
да, возможно, если числа не случайны, значит есть алгоритм по которому они выпадают, а если что-то уже есть, то его можно повторить имея набор данных для примера.
зы: есть только один ньюанс, алгоритм может быть основан на действиях которые вы можете не знать, например действия других пользователей
Евгений Сатонин: все зависит от алгоритма, если он учитывает толькл время и какую-то логику обработки последовательности, то не сложно, даже начинающему, если в алгоритме учавствуют внешние факторы, о которых программист не знает, то сложно даже опытному разработчику.
К примеру если это погода, то алгоритм смены сможете написать без проблем, а вот если это акции компаний, то предсказать падения будет сложно, ибо они зависят от поведения и действий самой компании
Используйте экстраполяцию. Получите таблицу со значениями x | f(x) = y, где x-время, y-число, f-искомая функция. Можете попробовать разные варианты: линейную функцию, экспоненциальную, степенную и т.д. Какая лучше будет ложиться, ту и исследуйте. Просто далеко не факт, что там лежит что-то настолько простое, чтобы подобрать через экстраполяцию.
Т.к. вы не знаете внутренности алгоритма, для вас это черный ящик. И т.о. вам нужно описать его поведение исходя из последовательности предыдущих значений. Идеально для вас будут марковские цепи.
В общем читайте теорию вероятностей и мат. статистику.
Как вариант, иметь дискретное время. Скажем учитывать вероятность выпадения чисел в данный момент в зависимости от выпадения числе до этого.
Для сбора статистики вам необходима достаточно большая выборка.
При таких задачах нужно в первую очередь смотреть на периоды функции.
Если период или кратность найдена не будет - значит значения случайны.
Сбор информации должен помочь ответить на вопрос: "А кратна ли функция?" и определить эту кратность при разных входных параметрах в случае её обнаружения.
Т.е., переформулируем вопрос: "какая следующая пара параметров выдаст такое же число?"
Затем, нужно найти зависимость между максимальным рядом параметров, выдавшим одно и тоже число.