Fragment #14

日曜日

  • 05:07. 完全出遅れな上に家庭の事情で leave me alone はなし。そういう時もある。
    • せめて編集は終わらせないと。
    •  自分のターン、今回は音も滑舌もほんとにひどい。Confort zone を超えてわかってない話をしている時はいっぱいっぱいで色々気を回すことが出来ないということがわかる。はさておき終了。
    • そして stats をみると path tracing の話は人気ない。まあいいです。
  • お手紙送付業
    • 最近は書きたいことがない、わけではなく、なんか時間ない。書かずに溜め込むとストレスが貯まってよくないのだけれども・・・。たぶん time budgeting が乱れているせいで書く時間を作れていないのだろう。要見直し。
    • この fragment は最低限のガス抜きにはなっており、初めて良かった感。
  • Santa Cruz の beach へ。これまでは北側に行くことが多かったが、今日はより人気のある南側にいってみる。湾の内側だからか北側より風が弱く、ビーチとしても整備されていて平和でよかった。

土曜日

  • 04:40. 編集.
    • 自分のターン、ボコボコいう音が入ってしまって残念。机によっかかっていたのだろうか・・・。

金曜日

  • 05:22. 昨日は家族全体の就寝が遅く出遅れ. Podcast 準備おわんない...
  • 歯医者から午後出社。
  • 家で会社のメールを見たい(正確には送りたい)が余分な電話を持ち歩くのも嫌(充電面倒)だしラップトップを持ち歩くのも嫌(思い)ので会社が安い Chromebook を余分に支給してくれないか、と相談したら向井さんに「私物でも Chromebook なら会社ネットワークにつなげますよ」というので使っていなかった Chromebook Plus をひっぱりだして設定してみる。会社のセキュリティ厳し過ぎでいろいろ面倒があったが、設定できた!めでたい。
  • それはそれとして私物電話で dogfood しないとなあ・・・。
  • オフィス引っ越しなのでいろいろ物理的な作業すなわち荷造りが必要。
  • やたらフレンドリーな隣人の子(小学生)が親からもらったばかりと思しき Windows laptop をもって家の前にやってきた。Paint 3D でつくったものを自慢したいらしい。色々デモされる。Windows 10, こうしてみるとなかなか悪くなさそうじゃん。自分が Microsoft 社員だったら pround moment であろう。しかしいじってるうちに glitch が発生しはじめてリブートを強要されているあたり Windows であることよ。Microsoft のせいというよりは古い Asus laptop のせいだろうが。

木曜日

水曜日

  • 04:58. アラーム直したら起きられず. ひとつ目のアラームを止めた記憶がぼんやりある. 30 分間隔のアラームを足すべきか...
  • pbr-book をにらみ直す。
    • 自分は Ordinal MC と MCMC の違いをよくわかっていなかったが、結果としては間違ったことは言っていない気がする。つまり素朴な path tracing は別に MCMC はしておらず、Ordinal MC すなわちランダムサンプリングだから。
    • Ordinal MC は draw した sample の distribution が pdf というか p に従っていることを前提としているが、半球を uniform に sample するときこの前提は成り立つのか?
    • というと、pdf 相当のものが入射光の強さに織り込まれているから大丈夫ということなんだろうね。
    • つまり、マットで反射が拡散する素材の BRDF にでは出ていく光が減衰する、という事実が、確率分布を代替しているというか・・・。
    • なぜ path tracing がいわゆる MC と違うかというと、Monte Carlo Integration が想定しているシミュレーションとしてレンダリングを捉えるなら、光源から光子を飛ばす、というのが一つの志向になるべきで、その光子が物質の表面でその特性にあわせて飛び回り、最終的にフィルムというかレンダリング結果に足し込まれる・・・ということを何度も何度も繰り返すのが素朴な物理的レンダリングというもの。
    • この方法だと、反射方向を乱数で決める際に確率分布を反映すればよく、これが要するに Ordinal MC である。
    • しかし path tracing では camera 側から ray を逆引きする、ということをしている。このときその ray がそもそもどの光源から来たかは表面特性/BRDF だけでは決まらず、入射光の分布 Li というものを考えないといけない。そしてこの Li はある意味で PDF そのものである・・・というか, PDF を織り込んでいる。
    • ここでいう PDF は反射が発生しているマテリアルの PDF ではなく、入射光という現象の PDF である。入射光が強い = その方向から光子がやってくる確率が高い。
    • つまり素朴な path tracing においては Ordinal MC が想定する "ある sample が draw される頻度" という形では入射光の PDF が表現されず、頻度は全角度一定だが Li という形でその角度の PDF がわかる。
    • これは "PDF がわからなくても解ける" という MC の肝をガン無視している気がするが、そういうものを Monte Carlo integration と呼んでも良いのだろうか・・・という疑問はあるが、まあきっといいのでしょう・・・。
    • なお PBRT の実装では素朴な path tracing と違い、BRDF がマテリアルの PDF というものを持っている。つまり素朴に半球全部に反射する必要はなく、BRDF の実装(シェーダ)が反射先をコントロールできる。これは specular reflection みたいに反射の向きが決定的な場合に無駄に半球全体をサンプリングせずに済むので便利。
    • ただし、その際にシェーダはフレームワークである PBRT レンダラに反射先(というか入射光 wi) の PDF を返す必要がある。レンダラはこの PDF に応じてそのレイの寄与の weight を調整する。
    • ちょっと腑に落ちた。おまえほんとに Monte Carlo を名乗って良いのかよォというところだけ納得いかないが、まあいいです。
  • Monte Carlo integration - Wikipedia
    • h(x) 確率密度 p(x) とそれ以外 f(x) に分離する、ということは特に書いてない。よくわからん・・・。
  • Metropolis Light Transport
    • 更に睨むと・・・分布を cancel out するのか!すげえな。

火曜日

  • 05:17. アラーム設定直し忘れて時間がない...
    • Paper reading. Reyes
    • CCI 6/32 というコンピュータが参照されているがまったく謎
    • 前回の podcast, 自分の Monte Carlo Integration への無理解が露呈している。MCMC とか何度勉強しても記憶から抜け落ちてしまうのは何なのだろうな・・・。Podcast を口実にもう一回復習する法が良いのではないか。
  • Mockito の verify() しか使っておらず一つも assert のないひどいテスト郡に出会う。Java のコードクオリティについて語り合う相手がいない悲しさはあるが、Java とかどうでもいいのも事実で、つまり日々どうでもいいコードを書いて暮らしているのか自分。
  • うー金曜日に性能リグレッションがあったのにダッシュボードを見逃していた。アラートつけてくれー・・・。
    • ぜったいおまえらだろというコミットを spot したが偏見はよくないのでベンチマークします・・・あとで・・・。

月曜日

  • 04:57. 早起きしきれなかったせいかいまいちしゃきっとしない。最近 cosleep 中断中の影響で就寝が遅くなりだめだな。
    • note.mu の writing を試しているが、autosave の notification がウザいし undo はぶっこわれてるし、ほんとダメだなこれ・・・。それにしても WordPress にしろ note.mu にしろ Medium のエディティングをぱくっており、オンラインの編集体験を破壊した Medium の罪を感じる。Medium のせいではないのだが・・・(Medium 自体のエディタは良いが、パクリ勢がだめ。)
  • 案の定 fast が破綻している。やはり数値目標が必要ということで、電話機出るまでに under 60kg を目標とする。年末食べ過ぎに備えるぜ(願わくば)。
  • BPF Performance Tools (Book)
    • 買うべき本が来た。
  • また一つ知っておくべき社内コマンドラインツールのオプションを身に着けた。
  • Can “Indie” Social Media Save Us? | The New Yorker
    • Cal 氏の流行り物を我田引水するスキルの高さは microcelebrity の素質がありすぎて気の毒とすら言える。
  • むかし面接クイズ的なやつの過去問に「どうやってタイマーを実装しますか」みたいのがあり、「スレッドを作って sleep() します」が答えなのに絶望した遠い記憶があるのだが、そんな実装を仕事のコードに発見してしまい絶望が蘇る。きみら世の中にはイベントループというのがあってな・・・。書いたやつが誰か blame しようと一瞬思ったが心の平安のためやめておく。
  • Amazon.com: Nod by Tuft & Needle Queen Mattress
    • Tuft and Needle, もう薄い mattress は作っていないのかとおもったら Amazon 限定で売っているらしい。オンラインマットレス販売、引っ越してきた頃は目新しかった気がするけれど今や類似製品がやまほどある戦場になっている。
    • マットレスはさておきオンライン単品売りブランドは細々と良い物があり好ましいので色々増えてほしいもんです。安いやつが。