単調増加の検出と比較(3)単調減少関数2本と順序・半順序について

  • 単調増加の検出と比較の目次
  • ある1本の容量反応曲線では、X=\{x_1,x_2,...,x_n\}のようにn個の容量において、Y=\{y_1,y_2,...,y_n\}n個の値があり、それが、直線状になったり、曲線状になったりするが、(原則として)単調減少(増加)する。単調でない場合は、特殊な効果のこと(ホルミシス効果(こちら))などを考えることになるが、ここでは、それは無視できるとする
  • 単調減少である、とは[tex:\forall i,j y_i \ge y_j, x_i
  • 順序と半順序(Wikiこちら)
    • 1つの単調減少(増加)関係では、要素は順序を成して並んでいる
      • 今、あるYの要素のすべてのペアについて大小が決まっている。このように、すべてのペアについて大小が決まって(相互に矛盾がない)とき、これを順序(または半順序と区別する意味で全順序)と言う
    • 半順序は?
      • 2つの単調減少(増加)関係があるとする
      • 2つの容量反応曲線のように
        • [tex:Y=\{y_i\|\forall y_i \ge y_j, x_i
        • [tex:Z=\{z_i\|\forall z_i \ge y_j, x_i
        • \forall i, y_i \ge z_iが満足されるとする
      • このとき同じiについてはy_i \ge z_iの大小関係が決まるが、y_i,z_j; x_i \ne x_jについては、その大小関係が決まらない
      • Y \cup Zを考えるとき、大小関係が決まらない値のペアがあるとき(決まらないペアはあるが、決まったペア同士に関しては矛盾がない)、半順序という
      • したがって、2つの容量反応曲線があって、その関係が、片方はもう片方の下に来る、というような場合には、2本の曲線上の点全体に関して言えば、半順序を守っているが、全順序を守っているとは限らないことがわかる
  • 2本の容量反応曲線は全順序で、2本の曲線のx値を等しくする2点の大小も決まっているので、そこに辺を渡すと、これが、半順序関係

N<-5
M<-2

X<-1:N
D<-matrix(runif(N*M),N,M)

D<-apply(D,2,sort)[N:1,]
D

D<-t(apply(D,1,sort))

matplot(D,type="b",pch=15)
sleep<-0.5
for(i in 1:N){
	segments(i,D[i,1],i,D[i,2],col=3)
	Sys.sleep(sleep)
}
  • ここで、容量反応曲線が2本ではなくてもっとたくさんある場合も考えよう
    • 例えば、ある基準となる容量反応曲線が1本あって、それとの関係を上記で作ったように満足する曲線が複数あるとする。この複数の追加曲線同士には、取り立てて関係がないとすると、次のようになる(これは、基準曲線があって、それより下にする因子が複数あり、それらの働き方が独立ならば、このようになる
  • 影響を与える因子が複合的に影響量を定めるばあいについては、こちらも参考
  • いずれにしても、順序・半順序が定める関係をどれとどれの間に決めるかで確定する

N<-20
M<-4

sleep<-0.2
D<-matrix(0,N,M)
D[,1]<-sort(runif(N),decreasing=TRUE)+1

for(i in 2:M){
	k<-0.2
	D[1,i]<-D[1,1]*(runif(1)*k+(1-k))
	for(j in 2:N){
		D[j,i]<-min(D[j-1,i],D[j,1])*(runif(1)*k+(1-k))
	}
}

matplot(D,type="b",pch=15)

for(i in 1:N){
	for(j in 2:M){
		segments(i,D[i,1],i,D[i,j],col=1+j)
		Sys.sleep(sleep)
	}
	
}