LINUX.ORG.RU

Алгоритмическое вычисление матожидания

 , ,


1

3

ЛОР, выручай.

Есть выборка значений в дискретном времени (x_1 при t_1=1, ..., x_50 при t_50=50, например). Работаем с ней по следующему правилу: берём первое значение, а любое последующее с равной вероятностью либо так же берём, либо нет и пропускаем. Задача: посчитать матожидание суммы при таких вот случайных действиях.

Пример: пусть есть выборка {x_1,x_2,x_3,x_4,x_5}. Матожидание после второго шага: 0.5(x_1+0)+0.5(x_1+x_2). После третьего: 0.25(x_1+0+0)+0.25(x_1+0+x_3)+0.25(x_1+x_2+0)+0.25(x_1+x_2+x_3). И так далее.

Проблема в том, что для нахождения матожидания суммы после n шагов нужно предварительно вычислить 2^{n-1} слагаемых (потому что со второго по n-й шаги у нас два возможных ветвления каждый раз: берём или пропускаем), что представляется затруднительным уже для n=50 или n=100.

Внимание, знатоки, как составить применимый на практике алгоритм?

★★

Проблема в том, что для нахождения матожидания суммы после n шагов нужно предварительно вычислить 2^{n-1} слагаемых

Мат. ожидание в квантовой механике ©, вычисленное квантовым алгоритмом © на квантовом компьютере ©, избавит от проблемы.

quickquest ★★★★★
()

равной вероятностью

1/2 - берешь, 1/2 - пропускаешь, я правильно понимаю? Если правильно, то смотри удаленный комментарий - x_1 + \sum_{i=2}^n (x_i)/2

tyakos ★★★
()
Последнее исправление: tyakos (всего исправлений: 1)

любое последующее с равной вероятностью либо так же берём, либо нет и пропускаем

Вот тут явно надо раскрыть поподробнее. Мутно сформулировано.

nezamudich ★★
()
Ответ на: комментарий от tyakos

Да, оно, браво. Я прошляпил очевиднейшую вещь.

Теперь требуется ещё немного усовершенствовать это дело (думал, будет достаточно понять, как быстро посчитать просто сумму, но снова не въезжаю). Пусть теперь у нас есть некоторая переменная a, принимающая значение -1 при старте алгоритма (т.е. взяли x_1, присвоили a=-1 и поехали), далее присваиваем ей 1 и -1 поочерёдно при каждом новом выборе элемента (т.е. a=(-1)^{i+1} при i-м случайном выборе) и считаем матожидание суммы уже (a \cdot x_j). Как это будет теперь выглядеть с учётом выставления плюсов и минусов перед выбираемыми слагаемыми?

Hasek ★★
() автор топика
Ответ на: комментарий от Hasek

Скорее всего, это делается рекурсивно.

У меня нет даже листика и ручки под рукой сейчас, если не забуду - придумаю что-нибудь потом.

tyakos ★★★
()
Ответ на: комментарий от tyakos

Для трёх элементов да, ответ -x_1+\frac{x_2}{2}. Но для четырёх уже -x_1+\frac{5}{8}x_2-\frac{1}{8}x_3. Пока не понимаю закономерность кроме как то, что нет последнего элемента.

Hasek ★★
() автор топика
Ответ на: комментарий от tyakos

Да, вы правы, а я вчера жутко тупил. Даже неловко как-то. Спасибо! Вопрос решён.

Hasek ★★
() автор топика

Решаешь задачу для собеседования, я угадал?

Нужный тебе метод называется динамическим программированием, это если вдруг спросят по теории :)

buddhist ★★★★★
()
Последнее исправление: buddhist (всего исправлений: 1)
Ответ на: комментарий от buddhist

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

Hasek ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.