BrownianBridgeProcess[σ,{t1,a},{t2,b}]
時点 t1における値 a から時点 t2における値 b までの,ボラティリティ σ のブラウン(Brownian)橋過程を表す.
BrownianBridgeProcess[{t1,a},{t2,b}]
時点 t1における値 a から時点 t2における値 b までの標準ブラウン橋過程を表す.
BrownianBridgeProcess[t1,t2]
時点 t1と t2において0でピン止めされた標準ブラウン橋過程を表す.
時点0と1において0でピン止めされた標準ブラウン橋過程を表す.
BrownianBridgeProcess
BrownianBridgeProcess[σ,{t1,a},{t2,b}]
時点 t1における値 a から時点 t2における値 b までの,ボラティリティ σ のブラウン(Brownian)橋過程を表す.
BrownianBridgeProcess[{t1,a},{t2,b}]
時点 t1における値 a から時点 t2における値 b までの標準ブラウン橋過程を表す.
BrownianBridgeProcess[t1,t2]
時点 t1と t2において0でピン止めされた標準ブラウン橋過程を表す.
時点0と1において0でピン止めされた標準ブラウン橋過程を表す.
詳細
- BrownianBridgeProcessはピン止めブラウン運動過程としても知られている.
- BrownianBridgeProcessは連続時間・連続状態のランダム過程である.
- ブラウン橋過程の状態
は,
と
を満足する. - 状態
は,NormalDistribution[a+(b-a) (t-t1)/(t2-t1),
]に従う. - 母数 σ,t1,t2,a,b は,σ が正で,t2が t1より大きくなるような,任意の実数でよい.
- BrownianBridgeProcessは,Mean,PDF,Probability,RandomFunction等の関数で使うことができる.
例題
すべて開く すべて閉じる例 (3)
両端の0でピン止めされたブラウン橋過程のシミュレーションを行う:
data = RandomFunction[BrownianBridgeProcess[], {0, 1, .01}]ListLinePlot[data, Filling -> Axis]Mean[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t]]Variance[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t]]CovarianceFunction[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}], s, t]Plot3D[CovarianceFunction[BrownianBridgeProcess[], s, t], {s, 0, 1}, {t, 0, 1}, ColorFunction -> "Rainbow"]スコープ (13)
基本的な用法 (8)
BrownianBridgeProcess[{Subscript[t, 1], a}, {Subscript[t, 2], b}]BrownianBridgeProcess[Subscript[t, 1], Subscript[t, 2]]BrownianBridgeProcess[]data = RandomFunction[BrownianBridgeProcess[], {0, 1, .01}, 4]ListLinePlot[data, Filling -> Axis]RandomFunction[BrownianBridgeProcess[], {0, 1, 1 / 4}, WorkingPrecision -> 20]["Path"]さまざまな値にピンを打ったブラウン橋過程の経路のシミュレーションを行う:
proc[x_] := BrownianBridgeProcess[{0, -1}, {2, x}];
end = {-1, 0, 1};
data = RandomFunction[proc[#], {0, 2, .01}]& /@ end;ListLinePlot[data, Filling -> Axis, PlotLegends -> (StringJoin["x = ", ToString[#]]& /@ end)]過程の台のい含まれる区間でブラウン橋過程のシミュレーションを行う:
sample2 = RandomFunction[BrownianBridgeProcess[], {.2, .8, .01}, 3];ListLinePlot[sample2, PlotRange -> {{0, 1}, {-2, 2}}]data = RandomFunction[BrownianBridgeProcess[{0, -16 / 10}, {2, 1}], {0, 2, .01}];EstimatedProcess[data, BrownianBridgeProcess[{Subscript[t, 1], a}, {Subscript[t, 2], b}]]𝒫 = BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}];CorrelationFunction[𝒫, s, t]𝒫 = BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}];AbsoluteCorrelationFunction[𝒫, s, t]過程スライス特性 (5)
SliceDistribution[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}], t]Plot[Evaluate@Table[PDF[BrownianBridgeProcess[][t], x], {t, {.9, .8, .3}}], {x, -1.5, 1.5}, Filling -> Axis, PlotLegends -> {"t = 0.9", "t = 0.8", "t = 0.3"}]PDF[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], x]SliceDistribution[BrownianBridgeProcess[], {s, t}]//SimplifyBrownianBridgeProcess[2, {0, 1}, {3, 2}][{1, 2, 3}]//Mean二次PDF:
PDF[BrownianBridgeProcess[][{s, t}], {x, y}]//Simplify[#, 1 ≥ s ≥ 0 && 1 ≥ t ≥ 0]&Expectation[x[t] + x[t] ^ 2, xBrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}]]Probability[x[t] < 6, xBrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}]]Skewness[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t]]Kurtosis[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t]]Moment[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], r]CharacteristicFunction[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], w]MomentGeneratingFunction[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], w]CentralMomentとその母関数:
CentralMoment[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], r]CentralMomentGeneratingFunction[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], w]FactorialMomentは記号次数では閉形式を持たない:
FactorialMoment[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], 3]//SimplifyFactorialMomentGeneratingFunction[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], w]Cumulantとその母関数:
Cumulant[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], r]CumulantGeneratingFunction[BrownianBridgeProcess[σ, {Subscript[t, 1], a}, {Subscript[t, 2], b}][t], w]一般化と拡張 (1)
特性と関係 (9)
WeakStationarity[BrownianBridgeProcess[σ, {t1, a}, {t2, b}]]WeakStationarity[BrownianBridgeProcess[]]proc = BrownianBridgeProcess[σ, {0, a}, {1, b}];assumps = 0 < t1 < t2 < t3 < t4 < 1;
mjoint = Expectation[(x[t2] - x[t1])(x[t4] - x[t3]), xproc, Assumptions -> assumps]//Simplifymprod = Expectation[(x[t2] - x[t1]), xproc, Assumptions -> assumps] * Expectation[(x[t4] - x[t3]), xproc, Assumptions -> assumps]Simplify[mjoint == mprod, assumps && σ > 0]Table[Plot[Evaluate@Probability[(x[.8] <= Subscript[x, 2])(x[.2] == Subscript[x, 1]), xBrownianBridgeProcess[]], {Subscript[x, 2], -3, 3}, Filling -> Axis, PlotRange -> {0, 1}, PlotLabel -> StringJoin["SubscriptBox[x, 1] = ", ToString[Subscript[x, 1]]]], {Subscript[x, 1], {-1.5, -.3, 1.4, 3}}]Probability[(x[Subscript[t, 2]] ≤ Subscript[x, 2])(x[Subscript[t, 1]] == Subscript[x, 1]), xBrownianBridgeProcess[], Assumptions -> 0 < Subscript[t, 1] < Subscript[t, 2] && 0 ≤ Subscript[x, 1] ≤ Subscript[t, 1] && 0 ≤ Subscript[x, 2] ≤ Subscript[t, 2]]//Simplifyブラウン橋過程は特別なItoProcessである:
ItoProcess[BrownianBridgeProcess[σ, {t0, x0}, {t1, x1}]]StratonovichProcessでもある:
StratonovichProcess[BrownianBridgeProcess[σ, {t0, x0}, {t1, x1}]]T = 3;a = 3;b = 11;noisysol = RandomFunction[BrownianBridgeProcess[{0, a}, {T, b}], {0, T, 0.01}, 3 10 ^ 2];
meanFunction = TimeSeriesThread[Mean, noisysol];Show[ListLinePlot[noisysol, PlotStyle -> Directive[Opacity[.1]]], ListLinePlot[meanFunction, PlotStyle -> Directive[Thick, Black]]]sol = DSolve[{P'[t] == (b - P[t]) / (T - t), P[0] == a}, P, t]Plot[P[t] /. sol[[1]], {t, 0, T}, PlotRange -> {1, 12}]ブラウン橋過程は,始めのうちは,対応するWienerProcessに従う:
Block[{sample1, sample2, n = 22, σ = 1, start = 0, end = 1, step = 0.01},
SeedRandom[n];sample1 = RandomFunction[BrownianBridgeProcess[σ, {start, 0}, {end, 0}], {start, end, step}];
SeedRandom[n];
sample2 = RandomFunction[WienerProcess[0, σ], {start, end, step}];
ListLinePlot[{sample1, sample2}, Filling -> {1 -> {2}}]]BrownianBridgeProcessの絶対上限の分布は,Kolmogorov分布に従う:
CDFKolmogorov[x_] = Sqrt[2 π] / x Sum[Exp[-(2 k - 1) ^ 2 π ^ 2 / (8 x ^ 2)], {k, 1, ∞}]bridges = Map[Max[Abs[#]]&, RandomFunction[BrownianBridgeProcess[], {0, 1, .0001}, 10 ^ 3]["ValueList"]];SmoothHistogram[bridges, Automatic, "PDF", Filling -> Axis]累積ヒストグラムをKolmogorov分布の累積分布関数と比較する:
Show[Histogram[bridges, 40, "CDF"], Plot[CDFKolmogorov[x], {x, Min[bridges], Max[bridges]}, PlotStyle -> Thick]]BrownianBridgeProcessは,WienerProcessから直接シミュレーションすることができる:
μ = 0;σ = 1 / 3;t0 = 0;t1 = 2;x0 = 0;x1 = 0;proc = WienerProcess[μ, σ];
SeedRandom[3];
data = RandomFunction[proc, {t0, t1, .1}];sample = TimeSeriesMapThread[x0(x1 - x0)(#1 - t0) / (t1 - t0) + #2 - (#1 - t0) Last[data["Values"]] / (t1 - t0) - (t1 - #1)First[data["Values"]] / (t1 - t0)&, data];対応するBrownianBridgeProcessと比較する:
SeedRandom[3];
data = RandomFunction[BrownianBridgeProcess[σ, {t0, x0}, {t1, x1}], {t0, t1, .1}];ListLinePlot[{sample, data}, PlotStyle -> {Thick, Dotted}]ブラウン橋過程は条件付きのWienerProcessである:
cdf[z_] = Probability[(x[t] ≤ z)(x[1] == 0), xWienerProcess[], Assumptions -> 0 < t < 1]CDF[BrownianBridgeProcess[][t], z]% - cdf[z]//Simplify考えられる問題 (1)
おもしろい例題 (3)
proc = BrownianBridgeProcess[];
SeedRandom[104];
sample = RandomFunction[proc, {0, 1, 0.001}, 2]["ValueList"];
ListLinePlot[Transpose@sample, ColorFunction -> "FallColors"]proc = BrownianBridgeProcess[];
SeedRandom[123];
sample = Table[RandomFunction[proc, {0, 1, 0.01}, 3]["ValueList"], {6}];Graphics3D@Table[{ColorData["SolarColors"][RandomReal[]], Tube@Line@sample[[i]]}, {i, 6}]SeedRandom[3];data = RandomFunction[BrownianBridgeProcess[], {0, 1 / 2, .01}, 500];sd = data["SliceData", 1 / 2];cf = ColorData["Rainbow"];
sliced = BarChart[Last[#], Axes -> False, BarOrigin -> Left, AspectRatio -> 4, ChartStyle -> (cf /@ Rescale[MovingAverage[First[#], 2], {Min[sd], Max[sd]}, {0, 1}]), ImageSize -> 75]&[HistogramList[sd, {Range[-3, 3, .3]}]];1/2における経路およびスライス分布のヒストグラムの分布をプロットする:
ListLinePlot[data, ImageSize -> 400, PlotRange -> All,
AspectRatio -> 3 / 4, Epilog -> Inset[sliced, {.5, 0}, {0, 10.8}], PlotStyle -> (cf /@ Rescale[sd]), BaseStyle -> Directive[Thin, Opacity[0.5]], PlotRangePadding -> {{0, .25}, {.5, .5}}]関連するガイド
-
▪
- 確率微分方程式過程 ▪
- パラメトリック確率過程
テキスト
Wolfram Research (2012), BrownianBridgeProcess, Wolfram言語関数, https://reference.wolfram.com/language/ref/BrownianBridgeProcess.html.
CMS
Wolfram Language. 2012. "BrownianBridgeProcess." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/BrownianBridgeProcess.html.
APA
Wolfram Language. (2012). BrownianBridgeProcess. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/BrownianBridgeProcess.html
BibTeX
@misc{reference.wolfram_2026_brownianbridgeprocess, author="Wolfram Research", title="{BrownianBridgeProcess}", year="2012", howpublished="\url{https://reference.wolfram.com/language/ref/BrownianBridgeProcess.html}", note=[Accessed: 17-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_brownianbridgeprocess, organization={Wolfram Research}, title={BrownianBridgeProcess}, year={2012}, url={https://reference.wolfram.com/language/ref/BrownianBridgeProcess.html}, note=[Accessed: 17-August-2026]}