回答:
免責事項:以下の点では、この総体的にはデータが正常に配信されることを前提としています。実際に何かを設計している場合は、強力な統計の専門家に相談して、その人にレベルがどうなるかを伝えるサインをさせてください。5人、または25人と話します。この答えは、土木工学の学生が「なぜ」と尋ねるのではなく、工学の専門家が「方法」を尋ねるのではありません。
質問の背後にある質問は「極値分布とは何か」だと思います。はい、それはいくつかの代数です-シンボル。だから何?正しい?
1000年の洪水について考えてみましょう。それらはおおきい。
彼らが起こるとき、彼らは多くの人々を殺すつもりです。多くの橋が下がっています。
どの橋が下がっていないか知っていますか?私がやります。まだ...
質問: 1000年の洪水でどの橋が下がらないのですか?
回答:それに耐えるように設計されたブリッジ。
あなたがそれをあなたの方法で行うために必要なデータ:
たとえば、200年間の毎日の水データがあるとします。そこに1000年の洪水がありますか?リモートではありません。分布の片側のサンプルがあります。人口はありません。洪水のすべての履歴を知っていれば、データの総人口がわかります。これについて考えてみましょう。尤度が1000分の1である値を少なくとも1つ持つためには、何年分のデータが必要ですか、いくつのサンプルが必要ですか?完璧な世界では、少なくとも1000個のサンプルが必要です。現実の世界は乱雑なので、もっと必要です。約4000サンプルで50/50オッズを取得し始めます。約20,000のサンプルで1を超えることが保証され始めます。サンプルは「1秒対次の水」を意味するのではなく、年ごとの変動など、独自の変動源ごとの測定値を意味します。1年間で1つのメジャー、別の年にわたる別の測定値とともに、2つのサンプルを構成します。4,000年分の優れたデータがなければ、データに1000年の洪水の例はありません。良いことは、良い結果を得るためにそれほど多くのデータを必要としないことです。
少ないデータでより良い結果を得る方法は次のとおり
です。年間の最大値を見ると、「極値分布」を200の値のyear-max-levelsに適合させることができ、1000年の洪水を含む分布が得られます。 -レベル。それは代数であり、実際の「大きさ」ではありません。この式を使用して、1000年の洪水の規模を決定できます。次に、その水量を考えると、それに抵抗するための橋を建てることができます。正確な値を狙って撮影するのではなく、より大きな値を狙って撮影します。さもなければ、1000年の洪水で失敗するように設計します。大胆であれば、リサンプリングを使用して、抵抗するために構築する必要がある正確な1000年の値を超えてどれくらいかを計算できます。
EV / GEVが関連する分析形式である理由は次のとおり
です。最大値の変動は、平均値の変動とは実際に異なります。中央極限定理による正規分布は、多くの「中央傾向」を説明しています。
手順:
結果の分布をプロットします
#libraries
library(ggplot2)
#parameters and pre-declarations
nrolls <- 1000
ntimes <- 10000
store <- vector(length=ntimes)
#main loop
for (i in 1:ntimes){
#get samples
y <- rnorm(nrolls,mean=0,sd=1)
#store max
store[i] <- max(y)
}
#plot
ggplot(data=data.frame(store), aes(store)) +
geom_histogram(aes(y = ..density..),
col="red",
fill="green",
alpha = .2) +
geom_density(col=2) +
labs(title="Histogram for Max") +
labs(x="Max", y="Count")
これは「標準正規分布」ではありません。
ピークは3.2ですが、最大は5.0に向かって上昇します。スキューがあります。約2.5未満にはなりません。実際のデータ(標準法線)があり、テールを選択するだけであれば、この曲線に沿って一様にランダムに何かを選択しています。運がよければ、下尾ではなく中央に向かっています。エンジニアリングは運とは正反対です-常に望ましい結果を常に達成することです。「偶然に任せるには乱数はあまりに重要すぎる」(脚注を参照)、特にエンジニアにとって。このデータに最適な分析関数ファミリ-分布の極値ファミリ。
適合例:
標準正規分布から年間最大値の200のランダムな値があり、それらが最大水位の200年の履歴(それが何であれ)のふりをするとします。分布を取得するには、次のことを行います。
(コードは上記が最初に実行されたと仮定しています)
library(SpatialExtremes) #if it isn't here install it, it is the ev library
y2 <- sample(store,size=200,replace=FALSE) #this is our data
myfit <- gevmle(y2)
これにより結果が得られます。
> gevmle(y2)
loc scale shape
3.0965530 0.2957722 -0.1139021
これらを生成関数にプラグインして、20,000個のサンプルを作成できます
y3 <- rgev(20000,loc=myfit[1],scale=myfit[2],shape=myfit[3])
以下を構築すると、どの年でも失敗する確率は50/50になります。
mean(y3)
3.23681
1000年の「洪水」レベルを決定するコードは次のとおりです。
p1000 <- qgev(1-(1/1000),loc=myfit[1],scale=myfit[2],shape=myfit[3])
p1000
これに従うと、1000年の洪水で失敗する確率が50/50になります。
p1000
4.510931
95%の上位CIを決定するために、次のコードを使用しました。
myloc <- 3.0965530
myscale <- 0.2957722
myshape <- -0.1139021
N <- 1000
m <- 200
p_1000 <- vector(length=N)
yd <- vector(length=m)
for (i in 1:N){
#generate samples
yd <- rgev(m,loc=myloc,scale=myscale,shape=myshape)
#compute fit
fit_d <- gevmle(yd)
#compute quantile
p_1000[i] <- qgev(1-(1/1000),loc=fit_d[1],scale=fit_d[2],shape=fit_d[3])
}
mytarget <- quantile(p_1000,probs=0.95)
結果は次のとおりです。
> mytarget
95%
4.812148
これは、1000年の洪水の大多数に抵抗するために、データが完全に正常である(可能性が低い)場合、...
> out <- pgev(4.812148,loc=fit_d[1],scale=fit_d[2],shape=fit_d[3])
> 1/(1-out)
または
> 1/(1-out)
shape
1077.829
... 1078年の洪水。
ボトムライン:
幸運を祈ります
PS:
PS:もっと楽しい-YouTubeビデオ(私のものではない)
https://www.youtube.com/watch?v=EACkiMRT0pc
脚注:Coveyou、ロバートR。応用確率とモンテカルロ法、およびダイナミクスの現代的側面。応用数学の研究3(1969):70-111。
極値理論を使用して、観測データから外挿します。多くの場合、あなたが持っているデータは、テール確率の賢明な推定を提供するのに十分な大きさではありません。@EngrStudentの1000年に1回のイベントの例を取り上げます。これは、分布の99.9%分位を見つけることに対応します。ただし、データが200年しかない場合、経験的分位数の推定値は最大99.5%しか計算できません。
極値理論では、尾部の分布の形状についてさまざまな仮定を立てることで、99.9%の分位数を推定できます。滑らかである、特定のパターンで減衰するなどです。
99.5%と99.9%の差は小さいと考えているかもしれません。結局、たったの0.4%です。しかし、それは確率の違いであり、あなたが尻尾にいるとき、それは変位値の大きな違いに変換できます。以下は、ガンマ分布の様子を示したものです。ガンマ分布は、これらのものが進むにつれて非常に長いテールを持ちません。青い線は99.5%分位に対応し、赤い線は99.9%分位に対応します。これらの違いは垂直軸ではわずかですが、水平軸での分離はかなりのものです。分離は、真に長い分布の場合にのみ大きくなります。ガンマは実際にはかなり無害なケースです。
テールにのみ関心がある場合は、データ収集と分析の努力をテールに集中することは理にかなっています。そうするほうが効率的です。EVTディストリビューションの引数を提示するときにこの側面はしばしば無視されるため、データ収集を強調しました。実際、関連するデータを収集して、一部のフィールドで全体的な分布と呼ぶものを推定することは実行不可能な場合があります。以下で詳しく説明します。
@EngrStudentの例のように、1000年に1回の洪水を見ている場合、正規分布のボディを構築するには、観測で満たすために多くのデータが必要です。潜在的に、過去数百年に発生したすべての洪水が必要です。
ちょっと待って、洪水とは何かを考えてみてください。大雨の後に私の裏庭が浸水した場合、それは洪水ですか?おそらくそうではありませんが、洪水ではないイベントから洪水を描く線は正確にはどこにあるのでしょうか?この簡単な質問は、データ収集の問題を浮き彫りにします。何十年、あるいは何世紀にもわたって同じ基準に従って身体に関するすべてのデータを収集することをどのように確認できますか?洪水の分布の本体に関するデータを収集することは事実上不可能です。
したがって、それだけの問題ではありません効率の分析が、問題の可能性データの収集:全体の分布またはちょうど尾をモデル化するかどうか?
当然、テールを使用すると、データ収集がはるかに簡単になります。巨大な洪水となるものに対して十分に高いしきい値を定義すると、そのようなイベントのすべてまたはほとんどすべてが何らかの方法で記録される可能性が高くなります。壊滅的な洪水を見逃すことは困難です。また、何らかの文明が存在する場合は、イベントに関していくらかの記憶が保存されます。したがって、信頼性研究などの多くの分野で、極端ではないイベントよりも極端なイベントでデータ収集がはるかに堅牢であることを考えると、特にテールに焦点を当てた分析ツールを構築することは理にかなっています。
通常、基礎となるデータ(ガウス風速など)の分布は、単一のサンプルポイントに対するものです。98パーセンタイルは、ランダムに選択されたポイントに対して、値が98パーセンタイルよりも大きくなる可能性が2%あることを示します。
私は土木技師ではありませんが、あなたが知りたいのは、特定の日の風速が特定の数値を超える可能性ではなく、可能な限り最大の突風の分布であると思います今年のコース。その場合、毎日の突風の最大値が、たとえば指数関数的に分布している場合、あなたが望むのは365日にわたる最大の突風の分布です...これが極値分布が解決することを意図したものです。
変位値を使用すると、さらに計算が簡単になります。土木技術者は、値(風速など)を第一原理式に代入し、98.5%の変位値に対応する極端な条件に対するシステムの動作を取得できます。
分布全体を使用すると、より多くの情報が得られるように見えますが、計算が複雑になります。ただし、(i)建設と(ii)失敗のリスクに関連するコストの最適なバランスをとる高度なリスク管理アプローチの使用を許可できます。
extreme value distribution
なく使用しthe overall distribution
、98.5%の値を取得するかということです。