Generative Designとは
多数の条件、多数の目的、多数の解。私たちは日常的にこのような複雑な問題を解決するために非常に多くの試行錯誤を繰り返しています。ジェネレーティブデザインはこの試行錯誤を非常にスピーディかつ大量に行ってくれます。人間はその多数の解の中から最も適切であると判断した答えを選択します。ジェネレーティブデザインの画面 |
起動方法
早速使ってみましょう。
ジェネレーティブデザインを使用するにはAECコレクションを契約する必要があります。しかし、AECコレクションの契約がなくてもダイナモ(Dynamo for Revit)を使えば同じことができます。上記のダイアログを右上の✖で閉じて、今度はダイナモを起動します。
ダイナモで起動
どちらから起動しても機能はまったく同じです。
ジェネレーティブデザインはダイナモを使って様々な新しいスタディを開発するこができるので、ちょっと「生っぽい」ですが、開発に興味がある方にはこちらがおすすめです。
基礎知識
ジェネレーティブデザインに必要な項目が4つあるので、まずこれだけは覚えておきましょう。
- 目標
- 定数
- 拘束
- 変数
の4つです。
目標~これを達成したい!
達成すべき目標です。複数あって構いません。たとえば「床面積を最大にしてかつ表面積を最小にする」など、一見矛盾したような目標でもOKです。
定数~これは動かしちゃダメ!
変更できない固定値です。部屋の中に机を配置するような場合は、部屋の形状とか机の数などが定数になります。
拘束~これだけは守ってください
「少なくとも○○が必要」といえばわかりやすいかもしれません。ビルの幅は最小20m最大50mなど、ある範囲の中でスタディを作成するようにしないと、あまり現実的でない結果が多数生成されるようになってしまいます。
変数~自由にいろいろやってみて!
自由に変更する複数値です。コンピュータはこの複数の値を様々に変化させて、多くの結果を作成します。
まずはやってみよう
これらは単純なように見えますが、ジェネレーティブデザインを理解するのに非常に役に立ちます。一つずつ実行しながらジェネレーティブデザインの世界に慣れていきましょう。
このスタディでは一辺が50フィートの正方形のボックスの高さと互いの位置を変更して、床面積と表面積の計算を行います。
方法
方法は「optimiza(最適化)」「Cross Product(均等分布)」「Randomize(ランダム化)」「Like this(似たもののバリエーション検討)」の4つがあります。これを変更するたびに入力条件が変更されます。
まずはOptimizeを選択しておいてください。
方法は4種類
異なる入力を選択(誤訳)→変数を選択
異なる入力はではなく、どれを変数にするか、という意味です。ボックス1~3の高さとボックス2~3の座標(ボックス1の位置は固定)のうち変更してもよい値を選択します。
変数を選択 |
ここでは全てにチェックを入れておきます。
目標を設定
ここでは床面積を最大化し、表面積を最小化することを目標としてみます。
拘束を設定
最初はどれくらいの結果が得られるかわからないので、両方オフにしておきます
生成方法
方法としてOptimize=最適化が選択された場合、Revitは最適化エンジンとして「遺伝的アルゴリズム(GA)」を採用しています。難解な遺伝的アルゴリズムを簡単に使用できるのは素晴らしいことです。この各項目は遺伝的アルゴリズム特有の項目ですが、今回は規定値を受け入れます。さて、生成ボタンを押してみましょう。
すぐに結果を得ることができます。
スタディ結果 |
実行はクラウドではなくPC上で行われます。Revitとは完全に別スレッドで動きますので、Revitの操作を妨げることはありません。マルチタスクで実行されるので非常に高速です。下の図は実行時のCPUの動きですが、すべてのCPUが稼働していることがわかります。
マルチスレッドで実行される |