差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
r:maintenance:condition_monitoring_with_two_dimension_state [2019/01/06 22:52] – watalu | r:maintenance:condition_monitoring_with_two_dimension_state [2019/01/07 10:45] (現在) – watalu | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | はじめに:この箇所のみ、状態を0から始める、として番号付けを行なっている。状態数がN+1の時、状態の番号は0からNまでとなる。 | ||
+ | |||
+ | ===== 多次元の状態ベクトルを持つマルコフ決定過程 ===== | ||
+ | |||
+ | [[:: | ||
+ | |||
==== 直積状態空間の1次元への変換 ==== | ==== 直積状態空間の1次元への変換 ==== | ||
行 134: | 行 140: | ||
この関数には状態空間のみを与える。 | この関数には状態空間のみを与える。 | ||
< | < | ||
- | > mmdp_X.to.Y.n(list(c(0: | + | > mmdp_X.to.Y.n(list(c(0: |
[1] 25 | [1] 25 | ||
</ | </ | ||
行 176: | 行 182: | ||
</ | </ | ||
この表示された行列の意味を少し確認すること。 | この表示された行列の意味を少し確認すること。 | ||
- | |||
- | === 状態指定取替 P.Age === | ||
- | |||
- | ある状態でのみ取替を実行し、他の状態では何もしない行動を定義しておく。 | ||
- | < | ||
- | mmdp_create.age.replacement.matrix = function(S, | ||
- | R.S = max(S)-min(S) | ||
- | n.S = length(S) | ||
- | if( R.S != n.S-1 ) { | ||
- | stop(" | ||
- | } | ||
- | P = diag(rep(1, | ||
- | P[T.ast+1, | ||
- | P[T.ast+1, | ||
- | rownames(P) = S | ||
- | colnames(P) = S | ||
- | return(P) | ||
- | } | ||
- | </ | ||
- | |||
- | これも状態空間が0から4の場合に実行してみておく。 | ||
- | |||
- | < | ||
- | > mmdp_create.age.replacement.matrix(c(0: | ||
- | 0 1 2 3 4 | ||
- | 0 1 0 0 0 0 | ||
- | 1 0 1 0 0 0 | ||
- | 2 0 0 1 0 0 | ||
- | 3 1 0 0 0 0 | ||
- | 4 0 0 0 0 1 | ||
- | </ | ||
- | |||
- | この行動は、通常の状態監視保全では現れないことを注意しておく。 | ||
==== 状態遷移行列の組み合わせ ==== | ==== 状態遷移行列の組み合わせ ==== | ||
行 313: | 行 286: | ||
あるいは2つ目の方を取り替えるのであれば | あるいは2つ目の方を取り替えるのであれば | ||
< | < | ||
- | mmdp_expand.P.2(list(mmdp_create.replacement.matrix(c(0: | + | mmdp_expand.P.2(list(mmdp_create.replacement.matrix(c(0: |
</ | </ | ||
とする。 | とする。 |