Что такое статистическое предсказание

Статистическое предсказание.

Автор: Jakob Ramskov

Когда в 1996 году id software открыли миру Quake, в сетевом движке которого использовался ещё никогда ранее неиспользовавшийся метод предсказания (client prediction), я задался вопросом: «Каким образом они могут предсказать, где я нахожусь?». Позже я попытался разобраться с предсказанием (оно же Dead Reckoning), и как оказалось, оно не имело ничего общего с теорией хаоса или счастливым случаем. Сейчас имеется множество материалов по этому вопросу (например, на gamasutra.com), хотя я думаю, вы и сами это знаете.

Каково ваше следующее движение?

Техника, о которой я расскажу, предназначена именно для того, о чём я говорил выше. Она угадывает ваше следующее движение. Каким образом? Статистика. Перед тем, как я перейду более детальному рассмотрению вопроса, разберём один пример.

Скажем, у нас есть сетевой футбол. Наиболее вероятно, то, что игроки вашей команды побегут к мячу. Если конечно у них его нет. Возможно, игрок с мячом побежит в некоторое положение или сделает что-то ещё. Затем мы составим правила, по которым мы будет определять вероятность, того или иного действия в некоторой ситуации, и сохраним их в, так называемую, статистическую базу данных, которая будет доступна для всех играющих клиентов (и возможно для сервера). Теперь каждый клиент может предсказать наиболее вероятные действия (перемещения) других игроков. Теоретически, пока игроки делают «логичные» (в соответствии с базой данных) вещи, не нужно слать дополнительных пакетов!

Что такое статистические данные?

Существует 2 способа сбора статистических данных. Вы можете создать набор правил (a set of rules), по которым будут определяться, наиболее вероятные, по вашему мнению, действия в различных ситуациях. Ситуация — это набор различных параметров игрока, таких как положение, направление, скорость, действие в нужный момент времени. Либо, вы можете записать шаблоны (record patterns) действий в процессе реальной игры с человеком. Некоторые могут предположить, что это потребует вовлечения нейронных сетей. Такой вариант тоже возможен. Нейронные сети определенно позволяют увидеть большее количество шаблонов, чем может придумать человек, но зато наборы правил легче реализуемы и возможно требуют меньших вычислительных затрат.

Как это работает на практике?

Для каждого кадра, вы перебираете всех игроков и, основываясь на статистической модели, предсказываете их следующие положения. Вы предполагаете, что это предсказание — то, что они действительно делают, так что вы устанавливаете их новое положение, основанное на этом предсказании. ( Запомните: «Вы можете использовать другой алгоритм, как основу для предсказания.»). Также, Вы можете предсказать своё собственное положение и сравнить его с реальными данными. Если эти 2 значения не совпадают, и если разница достаточно велика, то всем клиентам отсылается, так называемый корректирующий пакет (a correction packet) c вашим реальным положением. Основываясь на этих данных, клиенты подправляют на своих машинах ваше положение. Преимущество этого метода в том, что вы не должны сообщать о ваших действиях другим игрокам, пока они логичны (т.е. совпадают с предсказанием). При наличии «хорошо обученной» статистической модели можно достаточно сильно понизить количество передаваемых данных. Что и является окончательной целью этой техники. К слову сказать, её использование не ограничено только предсказанием живых игроков. Она будет полезна для создания правдоподобного AI, т.к. для его создания тоже используется предопределенный набор правил.

Читайте также:  Предсказания будущего для земли

Почему этот метод до сих пор не реализован?

Возможно, что и реализован, но это мало вероятно. Я надеюсь, вы представляете, сколько требуется процессорного времени, на предсказания для каждого клиента. Необходимо предсказывать движения всех игроков на каждом кадре каждому из клиентов. Запись статистических данных тоже может быть сложной задачей. Но я думаю, что в скором времени процессоры станут достаточно мощными, чтобы обрабатывать такие объемы данных.

Приветствуются любые комментарии.
(c) Jakob Ramskov/Ramosa Multimedia 1999.

Источник

Обзор методов прогнозирования

Моделирование

Модель – это упрощенный образ объекта из реальной жизни, в котором отражаются его наиболее важные характеристики, с точки зрения исследования.

Что такое прогнозирование?

Прогнозирование — это предвидение (предсказание), которое предполагает состояние или описание возможных или желательных аспектов, состояний, решений, проблем будущего.

Прогноз — это результат процесса прогнозирования, выраженный в словесной, математической, графической или другой форме суждения о возможном состоянии объекта и его среды в будущий период времени.
Метод – это сложный прием, упорядоченная совокупность простых приемов, направленных на разработку прогноза в целом; путь, способ достижения цели, исходящий из знания наиболее общих закономерностей.
Методика – определенное сочетание приемов (способов) выполнения прогностических операций, получение и обработка информации о будущем на основе однородных методов разработки прогноза.
Методология прогнозирования – область знания о методах, способах, системах прогнозирования.
Система прогнозирования – это упорядоченная совокупность методик, технических средств, предназначенная для прогнозирования сложных явлений или процессов.

Одна из классификаций методов прогнозирования

Формализованные методы:

  • Метод эстраполяции трендов;
  • Методы корреляционного и регрессионного анализов;
  • Методы математического моделирования.

Экспертные методы прогнозирования:
1. Индивидуальные методы

  • Метод составления сценариев;
  • Метод «интервью»;
  • Метод аналитических докладных записок.

2. Коллективные методы

  • Метод анкетных опросов;
  • Метод «комиссий»;
  • Метод «мозговых атак»;
  • Метод «Дельфи».

Экспертиза: анкетирование, интервьюирование, метод мозговой атаки (штурма), метод контрольных вопросов, метод аналитических докладных записок, метод лицом к лицу, метод ситуационного анализа, метод суда, метод «комиссий» («круглого стола»), «дельфийская техника» (метод «Дельфи»)
Фактографические методы: экстраполяция, трендовая модель, тренд-анализ, интерполяция, моделирование, математическое моделирование, сценарии, «прогнозы до абсурда» и пр.
Статистические методы: корреляционный анализ, регрессионный анализ, факторный анализ, распознавание образов, вариационное исчисление, спектральный анализ, цепи Маркова, алгебра логики, теория игр и др.

Признаки классификации прогнозов Виды прогнозов
Временной охват (горизонт прогнозирования) краткосрочные
среднесрочные
долгосрочные
Типы прогнозирования экстраполятивное
альтернативное
Степень вероятности будущих событий вариантные
инвариантные
Способ представления результатов прогноза точечные
интервальные

Прогнозирование продаж

1. Определение тренда (тенденции роста/падения)
2. Оценка влияния стратегии компании на развитие тренда
3. Применение коэффициентов сезонности
4. Построение прогноза продаж
Экстраполяция динамических рядов предполагает, что закономерность развития, действующая в прошлом (внутри ряда динамики), сохранится и в будущем.
Тренд (тенденция) — это долговременная тенденция изменения исследуемого временного ряда.
Временной ряд – это числовые значения определенного статистического показателя в последовательные моменты или периоды времени.
Коэффициент сезонности — это величина, на которую увеличиваются / уменьшаются продажи по сравнению со средними в определенный период времени.

Читайте также:  Предсказание будущее крыма экстрасенсов

Экономические циклы

Регрессионный анализ

Регрессионный анализ — статистический метод исследования влияния одной или нескольких независимых переменных X1,X2,…,Xp на зависимую переменную Y. Уравнение линейной регрессии Yх = a+b*X, где а и b оцененные коэффициенты регрессии.
Регрессия — функция, позволяющая по средней величине одного признака определить среднюю величину другого признака, корреляционно связанного с первым.

Обзор категорий методов прогнозирования

Прогнозирование — это процесс построение предсказания будущего на основе исторических данных, текущих данных (текущей ситуации) и на основе анализа трендов. Риск и неопределенность являются центральными факторами для прогнозирования, поэтому в соответствии с лучшими практиками, необходимо указывать степень неопределенности по отношению к прогнозам.
Корректный подход к оценке метода прогнозирования включает несколько этапов. Следует выделить пять важных этапов:

  • тщательное изучение природы исследуемого объекта или процесса для выбора адекватного метода прогнозирования;
  • выделение двух групп среди доступных данных – для разработки прогнозов и для проверки полученных результатов;
  • уточнение исходных данных с целью обнаружения ошибок;
  • разработка прогнозов и оценка достоверности полученных результатов;
  • использование (интерпретация) полученных результатов и выполнение, при необходимости, уточнения и дополнения прогнозов.

Категории методов прогнозирования

Качественные методы в сравнении с количественными методами

Качественные методы прогнозирования — субъективны, основаны на мнении и суждении потребителей, экспертов. Качественные методы подходят тогда, когда отсутствуют исторические данные. Данные методы применяются, как правило, для среднесрочных и долгосрочных решений. Примерами качественных методов прогнозирования являются исследование рынка, метод Делфи, историческая аналогия жизненного цикла и т.д.
Количественные модели прогнозирования используются для прогнозирования будущих данных в виде функции от исторических данных. Они подходят для использования, когда исторические числовые данные доступны и когда ожидается сохранение динамики данных в будущем. Эти методы, как правило, применяются для краткосрочного и среднесрочного прогнозирования. Примерами количественных методов прогнозирования являются: скользящие средние, экспоненциальное сглаживание, мультипликативные сезонные индексы и т.д.

Метод средних

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

«Наивный» подход

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

Метод скользящих средних

Метод скользящих средних является одним из широко известных методов сглаживания временных рядов. Применяя этот метод, можно элиминировать случайные колебания и получить значения, соответствующие влиянию главных факторов.
Сглаживание с помощью скользящих средних основано на том, что в средних величинах взаимно погашаются случайные отклонения. Это происходит вследствие замены первоначальных уровней временного ряда средней арифметической величиной внутри выбранного интервала времени. Полученное значение относится к середине выбранного интервала времени (периода).
Затем период сдвигается на одно наблюдение, и расчет средней повторяется. При этом периоды определения средней берутся все время одинаковыми. Таким образом, в каждом рассматриваемом случае средняя центрирована, т.е. отнесена к серединной точке интервала сглаживания и представляет собой уровень для этой точки.
При сглаживании временного ряда скользящими средними в расчетах участвуют все уровни ряда. Чем шире интервал сглаживания, тем более плавным получается тренд. Сглаженный ряд короче первоначального на (n–1) наблюдений, где n – величина интервала сглаживания.

Читайте также:  Варианты предсказаний для детей

Сезонный “наивный” подход

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

Методы временных рядов

Методы временных рядов используют исторические данные в качестве основы для оценки будущих результатов.

  • Moving average (Скользящее среднее);
  • Weighted moving average (Взвешенная скользящая средняя);
  • Kalman filtering (фильтр Калмана);
  • Exponential smoothing (Экспоненциальное сглаживание);
  • Autoregressive moving average (ARMA) — Авторегрессия скользящего среднего;
  • Autoregressive integrated moving average (ARIMA) e.g. Box-Jenkins — интегрированная модель авторегрессии скользящего среднего, например, модель Бокса—Дженкинса;
  • Extrapolation (Экстраполяция);
  • Linear prediction (Линейное прогнозирование);
  • Trend estimation (Оценка тренда);
  • Growth curve (statistics) — Кривая роста (статистические данные).

Причинно-следственные методы/эконометрические методы прогнозирования

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

  • Регрессионный анализ содержит в себе большую группу методов для прогнозирования будущих показателей, сюда входят параметрические методы (линейные и нелинейные) и непараметрические методы.
  • Autoregressive moving average with exogenous inputs (ARMAX) — Авторегрессия скользящего среднего с экзогенными входными данными.

Экзогенные переменные — переменные, задающиеся извне, значения которых задаются вне модели.
Эндогенные переменные — переменные, значение которых формируется внутри модели.

Методы экспертных оценок

  • Composite forecasts (составные прогнозы)
  • Cooke’s method (метод Кука)
  • Delphi method (метод Дельфи)
  • Forecast by analogy (Прогноз по аналогии)
  • Scenario building (Построение сценариев)
  • Statistical surveys (Статистическое обследование)
  • Technology forecasting (Прогнозирование технологий)

Методы искусственного интеллекта

Методы искусственного интеллекта

  • Искусственные нейронные сети
  • Групповые методы обработки данных
  • Метод опорных векторов

В настоящее время по данной категории активно применяются следующие методы в специализированных программах:

  • Data mining (Интеллектуальный анализ данных)
  • Machine Learning (Машинное обучение)
  • Pattern Recognition (Распознавание образов)

Точность прогнозирования

Рассмотрим наиболее часто рассчитываемые ошибки для прогнозов

  • Mean absolute error (MAE) — Средняя абсолютная ошибка
  • Mean Absolute Percentage Error (MAPE) — Средняя авбсолютная процентная ошибка
  • Mean Absolute Deviation (MAD) — Среднее абсолютное отклонение
  • Percent Mean Absolute Deviation (PMAD) — Процент среднего абсолютного отклонения
  • Mean squared error (MSE) — Средняя квадратичная ошибка
  • Mean squared prediction error (MSPE) — средняя квадратичная ошибка прогноза
  • Root Mean squared error (RMSE) — Средняя квадратическая ошибка
  • Forecast skill (SS) — Прогноз компетенций
  • Average of Errors (E) — Среднее значение всех ошибок

Источник

Оцените статью