« アプリケーションにおける足回りの質的変化 | メイン | 計算不可能性を設計する »

Processing

 Processingというツールをご存知でしょうか。

公式サイト
日本のサイト 

 MITで開発されたオープンソースのグラフィックツールです。

Processing is an open source programming language and environment for people who want to program images, animation, and interactions.

 そうなんです。面白いのはスクリプトで記述すること。ドラッグ&ドロップもありません。ひたすらスクリプト。しかもJavaで作られていているので構文がJavaっぽくて書きやすい(例外もJavaで吐かれるので僕にとっては分かりやすいw)。

 で、ずいぶん前のエントリ「複雑系と現実(含むソフトウェア開発)」で作ったものを書き直してみました。

昆虫など世代が重ならない生物において、ある世代の個体数Nから次世代の個体数を算出する式として次が知られている。

a × N × ( 1 - N )

× Nは、個体数を増やす力、× (1-N)は個体数を減らす力(増えすぎると、それはそれで困る)ということをしめす。aは定数で、バランスをしめす値になる。では、この式を用いて、ある世代の個体数から次世代の値を求め、その結果から、さらに次世代を求めて、というのを繰り返す。その場合に、定数aをちょっと変えるだけで驚くような結果が生まれる。

 下のグラフは定数aをランダムで決定して描画を繰り返すものです。ルールは以下のとおり。カオス運動を行う場合だけ背景が暗くなります。

0 < a <= 1の時は、0へ収束
1 < a <= 2の時は、(a-1)/aに収束
2 < a <= 3の時は、(a-1)/aへ振動しながら収束
3 < a <= 1+√6の時は、2周期点へ振動しながら収束
a >= 3.5699456... の時は、カオス運動


To view this content, you need to install Java from java.com


 うーん、楽しい(w。なんか他にも作ろーと。

トラックバック

このエントリーのトラックバックURL:
http://www.arclamp.jp/mt33/mt-tracback.cgi/1967

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2007年05月20日 21:53に投稿されたエントリーのページです。

ひとつ前の投稿は「アプリケーションにおける足回りの質的変化」です。

次の投稿は「計算不可能性を設計する」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Creative Commons License
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.
Powered by
Movable Type