- @ThothChildren
- 2018.11.4
- PV 143
L-System
ー 概要 ー
L-System(Lindenmayer system)は、初期の文字列と文字置き換え規則によってできる文字列置き換えシステムまたは形式文法のことを指す.初期は、植物の成長のモデルの表記方法として提案されていたが、有名なドラゴン曲線などのフラクタルの表現を行うことができる
この章を学ぶ前に必要な知識
条件
- 初期状態と置き換え規則を用意
効果
- 自己相関のあるフラクタルなどを表現できる
- コンテキストを考慮しない表現方法
ポイント
- 生成されているフラクタルからL-Systemを推定することはできない
解 説
L-System(Lindenmayer system)は、初期の文字列と文字置き換え規則によってできる文字列置き換えシステムまたは形式文法のことを指す.初期は、植物の成長のモデルの表記方法として提案されていたが、有名なドラゴン曲線などのフラクタルの表現を行うことができる.
自己相関のあるものを表現しやすいため、上記のようにフラクタルの記述と相性がよい. | L-Systemとは |
L-Systemは文字列によって表現されることが多い.用いられる文字列に当然制限はない.藻の成長やドラゴン曲線、タートル等それぞれのフラクタルに合わせたちょっとした表現の工夫はあるが、大きな違いはない.
代表的な藻類のL-Systemによる表現
初期状態 : A
置き換え規則 : (A→AB),(B→A)
Bは小さく枝分かれしたまだ若い枝を表し、Aはすでに成長して枝分かれ可能になった枝を表ている.B→Aで成長を表現している.上記のL-Systemを用いることで、
$$1 : A$$
二回目、AをABに置き換えます.
$$2 : AB$$
三回目、Bは成長します.AはABになります.
$$3 : ABA$$
$$4 : ABAAB$$
$$5 : ABAABABA $$
以下繰り返しになります. | L-Systemの記述 |
画像はWikipediaより引用.
木の成長モデルをL-Systemを使って実現できている. | |
L-Systemは一つ手前にあった注目文字に応じてその次の状態を決定することになります.これはある文字を置換するときにそれ以外を参照しないことになるので、並び順などに影響されないコンテキストフリー(コンテキストのない)な置換方法となっている. | L-Systemの特徴 |
L-Systemは複数のバージョンがあり、
・確率的な操作を導入したL-System
・コンテキストを導入したL-System
・パラメータを導入したL-System
などが提案されている. | L-Systemの改変 |
この章を学んで新たに学べる
Comments