忍者ブログ

Memeplexes

プログラミング、3DCGとその他いろいろについて

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


Orthogonal宇宙の「凍りついた、不変の」宇宙を作った時の考え方

私は以前、SF小説『クロックワーク・ロケット』の舞台となった宇宙のシミュレーションプログラムを作りました。
DartをJavaScriptにコンパイルしたものなので死ぬほど重いですが。

『クロックワーク・ロケット』(グレッグ・イーガン)のシミュレーション?

このシミュレーションはある意味インチキで、その理由の一つに「シミュレーションとは名ばかりの、重要なデータを人力で作り入力したものだ」、というものがあります。
いわばアニメーションを予め人力で作って、再生しているだけのようなプログラムです。
シミュレーションを名乗るからにはそのアニメーションに相当するデータをCPUによる計算で作ってほしいものです。

この記事では、どのようにその「重要なデータ」を作り出したのかについて述べます。
ここで言う「重要なデータ」とは宇宙の全歴史のデータです。
物体がどのように動き振る舞うのか。
もしこの作り出し方が間違っていたらすべてがおじゃんで恥ずかしいのですが・・・。


拍手[0回]

PR

タイムトラベルジョーク集

このブログのタイムトラベル関係のジョークの一覧です。
結構数が増えてきたので、まとめてみることにしました。
すべてClosed timelike curveモノで、過去へ戻るとこの宇宙にそっくりな平行宇宙に行く話はひとつもありません。

  1. タイムマシンの正しい使い方・および宇宙の物理法則の書き換え方
  2. タイムマシンコンピュータ System.ClosedTimelikeCurves.TimeMachine(T)クラス
  3. タイムマシンコンピュータを利用してNP完全問題を多項式時間内に解くその2
  4. 論理の力だけで自分を実行しているハードウェアを破壊するプログラム
  5. 自分を死から守るお守り
  6. 願望成就機械


拍手[0回]




タイムトラベル可能な宇宙を多項式時間内に作るには非決定性チューリングマシンが必要なのか!?

以前、私はグレッグ・イーガンさんのSF小説『クロックワーク・ロケット』の宇宙をシミュレートしようとしました。
結果出来上がったのは、自分の脳であらかじめ宇宙を作り、結果を再生するだけのプログラムという妥協の産物でした。

タイムトラベル可能な物理法則の宇宙のシミュレーション

このシミュレーションは結果としては正しいのかもしれません。
(まあ厳密に言うと、Orthogonalシリーズ3巻の最後のほうで実は宇宙がトーラスでないことがわかってしまったのでその意味で確実に間違っていますが、まあ、細かいことは抜きにして下さい)
しかし、データを作り出す作業に自分の頭を使ってしまいました。
しかしシミュレーションの精神とは、頭を使わずコンピュータを使ってお手軽簡単に世界を眺めようというものではないでしょうか!?
そういうわけで、かなり不満の残るものです。

それ以来しばらくタイムトラベル可能な物理法則の宇宙を作るにはどのくらいの計算が必要なのかについて考えていました。
この記事では、その仮説について述べます。


拍手[0回]