2015年10月24日土曜日

円の最小2乗近似と描画にRのoptimxとdraw.circle関数


ウェブ上を見ていて,意外に解説が少ないのが,円の最小2乗近似の方法であった。

以下のページには,Excelを使った方法が述べられている。
しかし,これらは,中心から各点への距離の2乗円の半径の2乗の差を最小化しようとしているため,実態に合わない円の近似となってしまう。

ここでは,実際に 8 個の点
(3, 0), (5, 0), (0, 3), (0, 5), (-3, 0), (-5, 0), (0, -3), (0, -5)
に対する円の近似を統計解析ソフト R を使い,まず直感的に考えてみよう。

x<- c(3, 5, 0, 0, -3, -5, 0, 0)
y<- c(0, 0, 3, 5, 0, 0, -3, -5)
plot(x, y, asp=1, col="magenta")

あとで近似円を描きやすいように,アスペクト比(asp)を 1 にしてある。

統計解析ソフト R による円近似用のデータプロット

この散布図ならば,中心 (0, 0),半径 4 の円が描けると推定される。

ここで重要なことは,通常最小二乗法(Ordinary Least Square: OLS)は,y方向の値しか最小化しないため,円の近似には妥当でない,ということである。この通常最小2乗法の注意点については,実は,大学の研究者でも知らない人がいるので注意が必要である。この点に関しては,私のウェブ解説も参照。
ところで,R を用いて円を描くスクリプトも,これまた,良い解説が少ない。

例えば,次のページ
そこには,円を描くような関数が用意されていてもよさそうなものですが、どうもないみたいと書かれていて,他のウェブページにも同様な解説があるが,実際には,簡単に円を描くパッケージと関数が存在する。

例えば,パッケージ plotrix の中の draw.circle 関数や,パッケージ shape の中の plotcircle 関数を使えば,円が簡単に描画できる。

ここでは,draw.circle 関数を使う。 plot 関数から,再度書くと,以下のようになる。

plot(x, y, asp=1, col="magenta")
library(plotrix)
draw.circle(0, 0, 4) # 中心 (0, 0),半径 4 の円

実に簡単,1行で円を描くスクリプトが書ける。

統計解析ソフト R による円の描画

その上で,中心から各点までの距離と半径の差を最小2乗化するために,パッケージ optimx の中の optimx 関数を利用する。この関数の利点は,オプション
all.methods=T
を指定すると,多くの近似法の結果を返してくれる点である。それを適合度が高い(残差が小さい)順に並べれば良い。 初期値
中心 (1, 1),半径 5
として,以下がそのスクリプト。

f<- function(arg) {
  a<- arg[1]
  b<- arg[2]
  r<- arg[3]
  t<- (sqrt((x-a)^2 + (y-b)^2)-r)^2
  return(sum(t))
}

library(optimx)

res<- optimx(
  c(1, 1, 5), # 初期値,中心 (1, 1),半径 5
  f, control=list(all.methods=T) # 全ての近似法
)

summary(res, order=value) # 残差が小さい順に示す
必要部分だけ,結果を図示する。

統計解析ソフト R による円の最小2乗近似結果

L-BFGS-B法がベストな方法で,中心 (0, 0),半径 4 の円で近似されるだろうと推定される。 初期値
中心 (0, 0),半径 4
として,再度計算させる。

f<- function(arg) {
  a<- arg[1]
  b<- arg[2]
  r<- arg[3]
  t<- (sqrt((x-a)^2 + (y-b)^2)-r)^2
  return(sum(t))
}

res<- optimx(
  c(0, 0, 4), # 初期値,中心 (0, 0),半径 4
  f, control=list(all.methods=T) # 全ての近似法
)

summary(res, order=value) # 残差が小さい順に示す

統計解析ソフト R による円の最小2乗近似結果

今度は,すっきりした結果が出た。

その他の参考ページ

2015年10月18日日曜日

辰野のホタル 町おこしと保護の課題 - 滋賀県守山市・環境学習会


10月10日に,滋賀県・守山市ほたるの森資料館で開催された2015年度第1回環境学習会に講師として招かれ講演してきた。

タイトルは
ほたるの町 辰野(長野県)でのほたる育成の取組み -- ほたるによる町おこしと生態系保護の課題 --
である。

滋賀県守山市ほたるの森資料館で,辰野のホタルによる町おこしと保護の学習会が開催された。

当日は,パワーポイントで解説したが,ここでは,上記のタイトルをクリックすればPDFで読める。ただし,ファイルを圧縮したので,やや画像が粗い。

私の講演に先立って,館長の竹内辰朗さんから,辰野のホタルと守山の関係,および,私の紹介の話があった。

ほたるの森資料館館長・竹内辰朗氏が,ほたるの町 辰野と守山の関係を紹介した。

続いて,私の講演では,最初に,文化昆虫学者・高田兼太が,日本人が異常なほどホタル好きであることを明らかにした論文の紹介から始めた。

Takada, K. (2010)
Popularity of different coleopteran groups assessed by Google search volume in Japanese culture-extraordinary attention of the Japanese to “Hotaru” (lampyrids) and “Kabuto-mushi” (dinastines) (Cultural entomology).
Elytra, 38: 299-306.

Takada (2010) の研究は,日本人が異常なまでにホタルが好きであることを明らかにした。

日本では,なぜホタルが盛んに保護されるのか,そして,なぜその移入問題が起きるのか,その理由は,高田の研究成果を見れば明らかであるし,この研究に触れることなくホタルの保護や移入の問題を語ることはできない。

守山市から移入したゲンジボタルの影響で,辰野町松尾峡の在来ゲンジボタルが絶滅してしまったこと,その移入ゲンジボタルを増殖させ県外へ移出を行なっていることなどを解説すると,講演後に,出席者から興味と驚きを持った多くの質問が投げかけられた。

辰野町が松尾峡において,守山市の業者から購入し移入したゲンジボタルを観光用に養殖していることや,辰野町が増やしたホタルを県外に移出していることに関しては,以下のウェブページも参照してほしい。


また,天竜川上流では,かつては全体でホタルの乱舞が見られたこと,また,天竜本流では生息できなくなったホタルも,それに沿う用水路では,松尾峡より上流地域にも生息していることなど紹介した。これらのことは,以外と知られていない。

ホタルが見られなくなったというが,実は,松尾峡のようなホタルの「観光名所」が宣伝されるようになったために,その他の小規模生息地が見逃されている現状も指摘した。これは,日没後,夕涼みに出歩く習慣が少なくなったことも影響している。

「観光名所」の大規模ホタル集団が有名になり,その保護が声高に叫ばれるのとは裏腹に,身近な小規模ホタル集団が見逃され絶滅の危機に瀕するという皮肉で逆説的な事態も起きつつある。生物多様性保全 (Biodiversity conservation) の観点からすれば,むしろ,身近な小規模ホタル集団を見守っていくことのほうが大事だとも言えるのである。

講演では,ゲンジボタルの明滅周期の3型とフォッサマグナや糸魚川-静岡構造線といった地質構造との関連にも触れた。この点にも,非常に関心が持たれた。以前は,糸魚川-静岡構造線を境界にして西日本2秒型と東日本4秒型に分かれると考えられていたが,現在では,私の研究でフォッサマグナ地域には3秒型(中間型)が広く分布することが分かってきた。それに関しては,以下のウェブページも参照してほしい。


ほたるの森資料館の位置を示す。琵琶湖の南岸近くに位置する。



ほたるの森資料館のパンフレット表紙も示す。

滋賀県・守山市ほたるの森資料館パンフレット表紙。

パンフレット表紙中央付近に遠景で見られるのが,ほたるの森資料館である。

滋賀県・守山市ほたるの森資料館の建物の遠景を示す。

表紙中央のマスコットキャラクターは,「もぴか」と呼ばれる。

滋賀県・守山市ほたるマスコットキャラクター「もぴか」である。

ほたるの森資料館ホームページから,ページフレーム(左側)下の「もぴかのお部屋」を辿ると,もぴかに関する情報が得られる。

日本のホタルの保護・飼育・調査研究の先駆者であり,全国ほたる研究会初代会長を務めた南喜市郎は守山市出身である。第1回全国ホタル研究会大会は,守山市で開催された。南喜市郎の業績は,この資料館に展示されている。

さらに,守山市は,第33回全国ホタル研究会大会が開催された場所でもある。

下の写真は,その時に購入した大会記念ホタルコップである。

第33回全国ホタル研究会大会(滋賀県守山市)の記念ホタルコップ

こういう記念コップは,その後の大会では,ほとんど販売されなくなった。