計算における形状文法は、幾何学的形状を生成する特定のクラスの生成システムです。通常、形状は 2 次元または 3 次元であるため、形状文法は 2 次元および 3 次元言語を研究する方法です。形状文法は、1971 年にGeorge StinyとJames Gipsによる独創的な論文で初めて紹介されました。 [1]形状文法 (特に 2 次元の線形要素) の数学的およびアルゴリズム的基礎は、George Stiny の「図形と形状文法の図的および形式的側面」(Birkhäuser Basel、1975 年) で開発されました。形状文法の応用は、James Gips の「形状文法とその使用法」(Birkhäuser Basel、1975 年) で初めて検討されました。これらの出版物には、形状文法がチューリング マシンをシミュレートできることを示す 2 つの独立した (ただし同等の) 構成も含まれています。
意味
シェイプ グラマーは、シェイプ ルールと、ルールを選択して処理する生成エンジンで構成されます。シェイプ ルールは、既存のシェイプ (の一部) をどのように変換できるかを定義します。シェイプ ルールは、左から右を指す矢印で区切られた 2 つの部分で構成されます。矢印の左側の部分は左側( LHS) と呼ばれます。これは、シェイプとマーカーの観点から条件を表します。矢印の右側の部分は右側( RHS) と呼ばれます。これは、LHS シェイプをどのように変換するか、およびマーカーの位置を表します。マーカーは、新しいシェイプを見つけて方向付けるのに役立ちます。
シェイプ文法は、少なくとも 3 つのシェイプ ルール (開始ルール、少なくとも 1 つの変換ルール、終了ルール)で構成されます。開始ルールは、シェイプ生成プロセスを開始するために必要です。終了ルールは、シェイプ生成プロセスを停止するために必要です。プロセスを停止する最も簡単な方法は、マーカーを削除するシェイプ ルールを使用することです。シェイプ文法は、チョムスキー文法とは大きな点で異なります。生成ルールは、L システムで「生成」が行われる方法と同様に、シリアルに適用することも (チョムスキー文法の場合)、並列に適用することもできます (チョムスキー文法では許可されていません) 。
シェイプ文法システムには、作成されたジオメトリが表示される作業領域も追加されています。生成エンジンは、既存のジオメトリ (現在の作業シェイプ(CWS) と呼ばれることが多い) をチェックして、シェイプ ルールの LHS に一致する条件を探します。LHS が一致するシェイプ ルールは使用可能です。複数のルールが適用される場合、生成エンジンはどのルールを適用するかを選択する必要があります。別のシナリオでは、エンジンは最初に文法ルールの 1 つを選択し、次に CWS でこのルールの LHS に一致するものをすべて見つけようとします。複数の一致がある場合、エンジンは (構成/実装に応じて) 次の操作を実行できます。
- すべてのマッチにルールを並行して適用し、
- すべての一致にルールを順番に適用する(不一致が生じる可能性がある)または
- 検出された一致の 1 つを選択し、この一致にのみルールを適用します。
シェイプ文法は、住宅のレイアウトや構造の改良など、小さくて明確に定義された生成問題に限定して使用する場合に最も役立ちます。シェイプルールは通常、小さなシェイプに対して定義されるため、シェイプ文法にはすぐに多くのルールが含まれるようになります。たとえば、ウィリアム・ミッチェル[2]が提示したパラディオ様式のヴィラシェイプ文法には、8 つのステージ全体にわたって適用される 69 のルールが含まれています。
パラメトリック形状文法は、形状文法の拡張です。[3]形状規則の右辺の新しい形状は、既存の形状のコンテキストをより多く考慮できるように、パラメータによって定義されます。これは通常、新しい形状の内部比率に影響し、より多様な形状を作成できます。このようにして、形状文法を構造条件、たとえばスパンに依存する屋根構造の梁の幅に対応させる試みがなされています。
学術界では人気があり応用範囲が広いにもかかわらず、形状文法は一般的なコンピュータ支援設計アプリケーションでは広く使用されていません。
アプリケーション
形状文法はもともと絵画や彫刻のために提案されましたが[1] 、新しいデザインを作成するための形式を提供するため、特に建築(コンピュータ支援建築設計)で研究されてきました。形状文法が適用されている他の重要な分野には、装飾芸術、工業デザイン、エンジニアリングがあります。[4]
ソフトウェアプロトタイプ
以下はウェブ上で入手可能なソフトウェアプロトタイプのリストです(厳密に言えば、そのうちのいくつかはむしろ定型文法システムです[5] [6])。
- 文法環境
- グレープ
- SD2
- シェイプ文法インタープリター
- シェイパー2D
- スパッパー
- サブシェイプ検出器
- 営蔵ファッションビルジェネレーター
- ソルタルGI
文学
- スティニー、G. & ギップス、J. (1972)。図形文法と絵画と彫刻の生成仕様。情報処理 71、1460–1465 ページ。ノースホランド出版。記事へのリンク
- スティニー、G. (1975)。図形と図形文法の図的および形式的側面。バーゼル・ビルクハウザー。書籍へのリンク
- スティニー、G.(1980)「シェイプとシェイプ文法入門」環境と計画B:計画とデザイン7(3)、343-351。
- ナイト、TW(1994)。デザインの変容:視覚芸術におけるスタイルの変化と革新への形式的アプローチ。ケンブリッジ大学出版局。
- スティニー、G. (2006)。『形:見ることとすることについて語る』MIT 出版、マサチューセッツ州ケンブリッジ。書籍へのリンク
参照
参考文献
- ^ ab Stiny, G. & Gips, J. (1972). 図形文法と絵画と彫刻の生成仕様。Information Processing 71, 1460–1465。North-Holland Publishing Company。
- ^ ミッチェル、W. (1990)。『建築の論理』MIT プレス、ロンドン。
- ^ Stiny, G. (1980). シェイプとシェイプ文法の紹介。環境と計画B:計画とデザイン7(3)、343-351。
- ^ Cagan, J. (2001). エンジニアリングシェイプ文法: これまでの歩みとこれからの行方。Antonsson, EK & Cagan, J. (編)。形式的エンジニアリング設計合成。ケンブリッジ大学出版局、ケンブリッジ、英国。
- ^ McKay, A.; Chase, SC; Shea, K.; Chau, HH (2012). 空間文法の実装: 理論から実用的なソフトウェアまで。AI EDAM (エンジニアリング設計、分析、製造のための人工知能) 26(02), 143-159。
- ^ スティニー、G.(1982)空間関係と文法環境と計画B:計画とデザイン9(1)、113-114。
外部リンク
- www.shapegrammar.org (インターネット アーカイブの最後のキャプチャ (2019))
- 図形文法とスタイルシミュレーション(参考文献一覧)
- シェイプ文法の実装: 理論から実用的なソフトウェアまで (2010 年時点の計算実装アプローチの概要)
- 2016 年現在の形状文法の進歩に関するワークショップ
