ぎょーむ日誌 2000-02-18
2000 年 02 月 18 日 (金)
- 結局,
帰宅できず.
明け方,
眠気に耐え切れず机の前の床の上で
シュラフにくるまる.
2 時間ほど寝る.
0800 起床.
曇り.
- いまやってるのはパイプ樹木の計算なんだが
……
いくつか問題がある.
ひとつは依頼人たる甲山さんの
想定してるとおりの結果が
なかなか得られない,
ということ.
もうひとつは,
久しぶりにパイプ樹木のコードを
眺めてみると,
生態学的というだけでなく
プログラミング的にもまだまだ
よろしくない点が多々ある,
ということだ.
- ま,
これら二つのうち,
前者は後者の問題の一部にすぎない
……
だけど,
こちらは
締め切り時間つきであるのがやっかいだ.
今日の午後ぐらいまでには
何とかしなければならない.
- 計算請負業の場合,
ともかく何でもいいから数理モデルを
素直に動かせばよい,
というものではなくて,
依頼人が望む動作はどのような状況で
実現しているのか特定して見せねばならないし,
結果の提示の仕方にも工夫が要求されるはずだ,
と理解している.
以上の枠組の中では,
先方が何を望んでいるかを見極めるのが
しばしば最も難しい問題であるし,
たいていの場合,
依頼主自身も何を望んでいるか
明確にわかっていなかったり,
刻々とそれが変わっていくこともある.
あ,
いちおーこれは一般論で,
今回の場合もそうだったと
言ってるわけではない.
- このあたりの曖昧なところに見極めをつけたり,
あるいは依頼人との相互作用によって
合意らしきものを形成していく過程が
モデル屋稼業の面白さである.
動機は人間.
数理は道具.
ゴールは妥協.
- この観点からすると今回の仕事は
はなはだ不備なものであった.
配慮が足りなかった.
- 風邪をおして登校して来た甲山さんは,
明日からの会議に必要な OHP やファイルを
大学院生たちや私などからかり集めると,
ただちに帰宅されてしまった.
- 今回気づいたパイプ樹木関係のまずいところを
以下に列挙しておく.
いますぐにでも「直し」に着手したいんだけど,
また数十日もハマり続けるやもしれず,
そうなっては来月の生態学会大会に
行けなくなってしまう.
つまりこのメモは将来の自分にあてた
手紙なのである.
- 重大なバグ.
というかモデルの間違い.
いまのパイプクラスは,
一本のパイプの中に
「生きてる材の面積」
「死んでる材の面積」
の両方のメンバー変数を持っている.
このモデリングでまずいのは,
生きている材が伸長成長すると
死んでる部分も伸びてしまう,
という部分だ.
対策としては,
一本のパイプは「生きてる」「死んでる」
のいずれかの状態しか取り得ず,
部分的な枯死は
「生きてる」パイプから
「死んでる」パイプが分裂して生じた
と表現するほかあるまい.
- 「ある葉っぱから観測した開空度が
これこれであったときに,
その葉っぱの単位重量あたりの生産」
を計算する Foliage::Photosynthesis
関数はてってー的に見直したほうがよい.
今は暫定的に変更を加えて多少はマシな
カンジだが,
いまだに意味不明だ.
変更前は
(開空度が 0-1 の領域では)
生産力が開空度に
(ほぼ) 比例するだけ
という関数型とパラメーターセットを
与えていた.
- 入れ子状 BEGIN-END データー構造から
テイブルを生成するフィルターを
Perl で書いていたんだが,
パイプ樹木の大きな集団を処理するときには,
これでは遅すぎる.
現在 C++ で書き直しているところ.
入力部はできたが
出力部ができていない.
Perl スクリプトなら
数十万行のファイルをさばくのに
一分ほどかかるが
(<蒼龍> にて),
C++ で書いたものなら
数秒で片付けてくれるだろう.
- 上とも関連してるんだが,
現在 gridlight としてまとめている
パイプ樹木その他を支援する
C++ ライブラリーは
分割したほうがよいかもしれない.
三次元系ならびに
開空度計算を担当する coordinate,
grid, gridworld, lightsource, sky, ...
といった連中から,
BEGIN-END 構造のファイルを
取り扱う filereader と intstring は
別にしてしまったほうがよいと思う.
BEGIN-END → 表形式
フィルターだって
今は不必要な三次元計算系とかを
リンクしてコンパイルしている.
- パイプごとの会計監査制度を
もっと明朗なものにしたほうが良いだろう.
「帳簿」にその年度の収入と
支出 (必要な予算) を
あらかじめきちんと「記入」しておき,
パイプたちを統括する樹木クラスは
提出させた「帳簿」の全てを
にらみながらパイプ間の資源配分を
動的に決定するようにしなくてはダメだ.
もちろん今だって動的な
資源配分やってるわけだけど,
コードを良く読み直してみると,
帳尻があっていない部分が少しあった.
資源配分モデルは
これからもどんどん変更されるだろうし,
その面倒に対応できるように
準備しなくてはならない.
- 牧さんとユニさんがお茶部屋の掃除.
頭がぼーっとして仕事する気になれん私も,
コンピューター関係の古雑誌の整理など
手伝ってみる.
っていうか,
この雑誌のほとんどは私が買って
お茶部屋につっこんどいたものなので,
自分で片付けるのは当り前なんだが.
- 講座内にデーター解析・統計処理・シミュレーションの
計算機プログラムを自分で作る人が増えて来たんで,
情報のやりとりのための
メイリングリストを <鳳翔> に
構築した.
- 【一言近況】
近くにぷろぐらまーが増えてきたので,
ce-ml という質疑応答・情報共有のための
講座内のメイリングリスト作りました.
参加したい人は久保まで連絡ください.
(20000218)
- 疲れたんで早めに帰ることに.
1940 研究室発.
1953 JR 札幌駅発.
札幌フードセンター琴似店で
野菜など買う.
2100 帰宅.
- お茶部屋から撤退した古雑誌を
少しずつ自宅に持ち帰ることに.
今回は SoftwareDesign の昨年のぶんが
多いかな.
久しぶりに風呂に入りながら,
そのうち一冊をのんびりと読む.
あ,
これはけっこー楽しくて,
しかもお勉強になるぞ.
- 明日は春香山で山スキーだ.
わーい.
- 今日の食卓
- 朝 (0830):
お茶部屋にて
昨日の残りご飯で
お茶漬け.
- 昼 (1445):
お茶部屋にて
昨日の残りご飯で
お茶漬け.
うーむ.
- 晩 (2240):
ジャガイモ・ニンジン・ニラ・
豆腐の味噌汁.
久しぶりに具だくさんの料理を
作ってみる.
だしは昆布.
しかし味噌汁には
少しものたりないかな.