(57)【要約】【課題】サポートを最適に追加および配置する。【解決手段】サポートの配置決定装置１００は、所定の基準の位置および向きとなるように、対象造形物モデルを移動および回転させる基準部５６と、基準部５６によって所定の基準の位置および向きとなるように配置した対象造形物モデルを基準として、造形する対象造形物の向きの候補となる傾斜角度を複数生成する候補生成部５８と、候補生成部５８によって生成された傾斜角度に基づいて傾斜させたそれぞれの対象造形物モデルにおいて、対象造形物に追加および配置するサポートの数を算出するサポート算出部６０と、候補生成部５８によって生成された複数の傾斜角度のうち、対象造形物の荷重を支持することが可能であって、サポートの数が最小となるような傾斜角度を、所定の基準の向きから傾斜させる角度にする傾斜角度決定部６２と、を備えた。【選択図】図７
2017007126.tif 000002
【特許請求の範囲】
【請求項１】
造形対象である対象造形物にサポートを追加および配置して、前記対象造形物および前記サポートを造形する３次元造形装置において、前記サポートの数および配置位置を決定する配置決定装置であって、
前記対象造形物の３次元モデルのデータを記憶する記憶部と、
所定の基準の位置および向きとなるように、前記記憶部に記憶された前記３次元モデルを移動および回転させる基準部と、
前記基準部によって前記所定の基準の位置および向きとなるように配置した前記３次元モデルを基準として、造形する前記対象造形物の向きの候補となる傾斜角度を複数生成する候補生成部と、
前記候補生成部によって生成された前記傾斜角度に基づいて傾斜させたそれぞれの前記３次元モデルにおいて、前記対象造形物に追加および配置する前記サポートの数を算出するサポート算出部と、
前記候補生成部によって生成された複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出部によって算出された前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする傾斜角度決定部と、
を備えた、サポートの配置決定装置。
【請求項２】
前記傾斜角度決定部は、遺伝的アルゴリズムを適用して、前記候補生成部によって生成された複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出部によって算出された前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする、請求項１に記載されたサポートの配置決定装置。
【請求項３】
前記遺伝的アルゴリズムで用いられる評価関数Ｊは、前記サポートが前記対象造形物の荷重を支持することが可能な荷重をＬｓ、前記対象造形物の荷重をＧｔ、前記対象造形物と前記３次元造形装置との間の密着力をＡｓ、安全率をＳとすると、
Ｊ＝Ｌｓ−Ｓ×ｍａｘ（Ｇｔ、Ａｓ）
で表され、
前記傾斜角度決定部は、前記候補生成部によって生成された複数の前記傾斜角度についてそれぞれの前記評価関数から求められる値を算出し、前記評価関数の値が０よりも大きい前記傾斜角度の中で、前記サポート算出部によって算出された前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする、請求項２に記載されたサポートの配置決定装置。
【請求項４】
前記対象造形物は、前記サポートを追加および配置しない禁止面を有し、
前記候補生成部は、前記禁止面に前記サポートを追加および配置するような前記傾斜角度を候補としない、請求項１から３までの何れか一つに記載されたサポートの配置決定装置。
【請求項５】
前記記憶部に記憶された前記３次元モデルに対して、前処理である平滑化処理を行う前処理部を備え、
前記基準部は、前記所定の基準の位置および向きとなるように、前記前処理部によって前記平滑化処理が行われた前記３次元モデルを移動および回転させる、請求項１から４までの何れか一つに記載されたサポートの配置決定装置。
【請求項６】
前記３次元造形装置と、
請求項１から５までの何れか一つに記載されたサポートの配置決定装置と、
を備えた、３次元造形システム。
【請求項７】
造形対象である対象造形物にサポートを追加および配置して、前記対象造形物および前記サポートを造形する３次元造形装置において、前記サポートの数および配置位置を決定する配置決定方法であって、
前記対象造形物の３次元モデルのデータを記憶する記憶工程と、
所定の基準の位置および向きとなるように、前記記憶工程で記憶した前記３次元モデルを移動および回転させる基準工程と、
前記基準工程において前記所定の基準の位置および向きとなるように配置した前記３次元モデルを基準として、造形する前記対象造形物の向きの候補となる傾斜角度を複数生成する候補生成工程と、
前記候補生成工程で生成した前記傾斜角度に基づいて傾斜させたそれぞれの前記３次元モデルにおいて、前記対象造形物に追加および配置する前記サポートの数を算出するサポート算出工程と、
前記候補生成工程で生成した複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出工程で算出した前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする傾斜角度決定工程と、
を包含する、サポートの配置決定方法。
【請求項８】
前記傾斜角度決定工程では、遺伝的アルゴリズムを適用し、前記候補生成工程で生成した複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出工程で算出した前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする、請求項７に記載されたサポートの配置決定方法。
【請求項９】
前記遺伝的アルゴリズムで用いられる評価関数Ｊは、前記サポートが前記対象造形物の荷重を支持することが可能な荷重をＬｓ、前記対象造形物の荷重をＧｔ、前記対象造形物と前記３次元造形装置との間の密着力をＡｓ、安全率をＳとすると、
Ｊ＝Ｌｓ−Ｓ×ｍａｘ（Ｇｔ、Ａｓ）
で表され、
前記傾斜角度決定工程では、前記候補生成工程で生成した複数の前記傾斜角度についてそれぞれの前記評価関数から求められる値を算出し、前記評価関数の値が０よりも大きい前記傾斜角度の中で、前記サポート算出工程で算出した前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする、請求項８に記載されたサポートの配置決定方法。
【請求項１０】
前記対象造形物は、前記サポートを追加および配置しない禁止面を有し、
前記候補生成工程では、前記禁止面に前記サポートを追加および配置するような前記傾斜角度を候補としない、請求項７から９までの何れか一つに記載されたサポートの配置決定方法。
【請求項１１】
前記記憶工程で記憶した前記３次元モデルに対して、前処理である平滑化処理を行う前処理工程を包含し、
前記基準工程では、前記所定の基準の位置および向きとなるように、前記前処理工程で前記平滑化処理を行った前記３次元モデルを移動および回転させる、請求項７から１０までの何れか一つに記載されたサポートの配置決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サポートの配置決定装置、３次元造形システム、および、サポートの配置決定方法に関する。
【背景技術】
【０００２】
従来から、所定の断面形状の樹脂材料を順次積層し、樹脂材料を硬化させることによって所望の３次元造形物（以下、対象造形物という。）を造形する３次元造形装置が知られている。この種の３次元造形装置では、まず、ＣＡＤ装置などを用いて対象造形物の断面形状のデータを用意する。次に、この断面形状のデータを用いて、光硬化性樹脂を硬化させて、断面形状に対応した形状の樹脂層を造形する。そして、断面形状に対応した樹脂層を順次積層することによって、対象造形物を造形する。
【０００３】
３次元造形装置は、例えば特許文献１に示すように、開口が形成された台と、台の上に載置され、光硬化性樹脂を収容する槽と、槽の上方に配置された昇降自在なホルダと、台の下方に配置され、光を照射する光学装置とを備えている。光学装置から照射された光は、台の開口を通じて槽内の光硬化性樹脂に照射される。槽内に収容された光硬化性樹脂のうち、光が照射された部分は硬化する。光の照射位置を制御することによって、硬化する樹脂の位置を適宜変更することができ、所望の断面形状を有する樹脂層を形成することができる。そして、ホルダを順次上昇させることによって、樹脂層が下方に向かって連続的に形成される。このようにして、所望の対象造形物が造形される。
【０００４】
ところで、ホルダを順次上昇させる際に、既に造形された樹脂層は、当該樹脂層よりも下方に造形される全樹脂層の荷重を支持することになる。そのため、例えば、断面積の小さな樹脂層があった場合、当該樹脂層よりも下方の全樹脂層の荷重を支えきれない場合がある。その結果、対象造形物を造形する途中に、対象造形物の一部が破損してしまうことがある。そのような破損を防止するため、図１３に示すように、ＣＡＤ装置などの専用の装置によって演算することで、対象造形物２００の一部とホルダ１１３との間に、造形時に対象造形物２００の一部の荷重を支持するための複数のサポート造形物１３０を追加し、対象造形物２００とサポート造形物１３０とが一体となった全体造形物を造形することが行われる。以下、サポート造形物を単に「サポート」と称する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−３９５６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、サポート１３０は、例えば、対象造形物２００のうちホルダ１１３と対向する面に追加および配置される。しかし、ホルダ１１３に対する対象造形物２００の向きによっては、対象造形物２００のホルダ１１３に対する投影面、すなわち、対象造形物２００に対向するホルダ１１３の面に対して対象造形物２００を投影した際に得られる対象造形物２００の外周形状を示す投影面の面積が小さくなってしまう。その結果、対象造形物２００に対するサポート１３０の数が少なくなり、造形中、サポート１３０が対象造形物２００の荷重を十分に支持することができない場合がある。
【０００７】
本発明はかかる点に鑑みてなされたものであり、その目的は、造形対象である対象造形物にサポートを追加および配置して、対象造形物およびサポートを造形する３次元造形装置において、サポートを最適に追加および配置することが可能なサポートの配置決定装置、３次元造形システム、および、サポートの配置決定方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明に係るサポートの配置決定装置は、造形対象である対象造形物にサポートを追加および配置して、前記対象造形物および前記サポートを造形する３次元造形装置において、前記サポートの数および配置位置を決定する配置決定装置である。前記配置決定装置は、記憶部と、基準部と、候補生成部と、サポート算出部と、傾斜角度決定部とを備えている。前記記憶部は、前記対象造形物の３次元モデルのデータを記憶する。前記基準部は、所定の基準の位置および向きとなるように、前記記憶部に記憶された前記３次元モデルを移動および回転させる。前記候補生成部は、前記基準部によって前記所定の基準の位置および向きとなるように配置した前記３次元モデルを基準として、造形する前記対象造形物の向きの候補となる傾斜角度を複数生成する。前記サポート算出部は、前記候補生成部によって生成された前記傾斜角度に基づいて傾斜させたそれぞれの前記３次元モデルにおいて、前記対象造形物に追加および配置する前記サポートの数を算出する。前記傾斜角度決定部は、前記候補生成部によって生成された複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出部によって算出された前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする。
【０００９】
上記配置決定装置によれば、サポートが対象造形物の荷重を支持することが可能であって、かつ、サポートの数が最小となるような傾斜角度を、所定の基準の向きから対象造形物を傾斜させる角度としている。よって、このように決定した向きで対象造形物を造形する際、サポートが対象造形物の荷重を支持することができる。また、サポートの数を少なくすることができるため、サポートを造形する際に必要な材料を少なくすることができる。
【００１０】
本発明の好ましい一態様によれば、前記傾斜角度決定部は、遺伝的アルゴリズムを適用して、前記候補生成部によって生成された複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出部によって算出された前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする。
【００１１】
例えば、対象造形物の全ての傾斜角度を求めて対象造形物の最適な向きを求める場合、演算処理が膨大となり、演算負荷が大きくなる。しかし、上記態様によれば、造形しようとする対象造形物の向きを、遺伝的アルゴリズムを適用することで決定している。よって、遺伝的アルゴリズムを適用することで、対象造形物の全ての傾斜角度を求めて対象造形物の最適な向きを求める場合と比較して、演算処理が膨大となることを防止することができる。その結果、演算負荷を小さくすることができる。
【００１２】
本発明の好ましい他の一態様によれば、前記遺伝的アルゴリズムで用いられる評価関数Ｊは、前記サポートが前記対象造形物の荷重を支持することが可能な荷重をＬｓ、前記対象造形物の荷重をＧｔ、前記対象造形物と前記３次元造形装置との間の密着力をＡｓ、安全率をＳとすると、
Ｊ＝Ｌｓ−Ｓ×ｍａｘ（Ｇｔ、Ａｓ）
で表される。前記傾斜角度決定部は、前記候補生成部によって生成された複数の前記傾斜角度についてそれぞれの前記評価関数から求められる値を算出し、前記評価関数の値が０よりも大きい前記傾斜角度の中で、前記サポート算出部によって算出された前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする。
【００１３】
上記態様によれば、上述したような評価関数Ｊを用いることで、造形する対象造形物の荷重Ｇｔおよび密着力Ａｓの何れか大きい方の荷重に耐えられるようにサポートを追加および配置することができる。
【００１４】
本発明の好ましい他の一態様によれば、前記対象造形物は、前記サポートを追加および配置しない禁止面を有している。前記候補生成部は、前記禁止面に前記サポートを追加および配置するような前記傾斜角度を候補としない。
【００１５】
造形する対象造形物には、サポートを追加および配置したくない面がある場合がある。上記態様によれば、サポートを追加および配置したくない面を禁止面とする。そして、候補生成部は、禁止面にサポートを追加および配置しないような向きとなる傾斜角度を候補とすることができる。よって、禁止面にサポートが追加および配置されない傾斜角度を、所定の基準の向きから傾斜する角度にすることができる。
【００１６】
本発明の好ましい他の一態様によれば、前記記憶部に記憶された前記３次元モデルに対して、前処理である平滑化処理を行う前処理部を備えている。前記基準部は、前記所定の基準の位置および向きとなるように、前記前処理部によって前記平滑化処理が行われた前記３次元モデルを移動および回転させる。
【００１７】
上記態様によれば、前処理部によって３次元モデルを平滑化することで、３次元モデルのデータ量を小さくすることができる。そのため、基準部、候補生成部、サポート算出部、および、傾斜角度決定部は、前処理部によってデータ量が小さくなった３次元モデルを用いることができる。したがって、演算負荷を好適に小さくすることができる。
【００１８】
本発明に係る３次元造形システムは、前記３次元造形装置と、上述した何れかに記載されたサポートの配置決定装置と、を備えている。
【００１９】
上記態様によれば、上述した何れかに記載されたサポートの配置決定装置を備えた３次元造形システムを提供することができる。
【００２０】
本発明に係るサポートの配置決定方法は、造形対象である対象造形物にサポートを追加および配置して、前記対象造形物および前記サポートを造形する３次元造形装置において、前記サポートの数および配置位置を決定する配置決定方法である。前記配置決定方法は、記憶工程と、基準工程と、候補生成工程と、サポート算出工程と、傾斜角度決定工程とを包含する。前記記憶工程では、前記対象造形物の３次元モデルのデータを記憶する。前記基準工程では、所定の基準の位置および向きとなるように、前記記憶工程で記憶した前記３次元モデルを移動および回転させる。前記候補生成工程では、前記基準工程において前記所定の基準の位置および向きとなるように配置した前記３次元モデルを基準として、造形する前記対象造形物の向きの候補となる傾斜角度を複数生成する。前記サポート算出工程では、前記候補生成工程で生成した前記傾斜角度に基づいて傾斜させたそれぞれの前記３次元モデルにおいて、前記対象造形物に追加および配置する前記サポートの数を算出する。前記傾斜角度決定工程では、前記候補生成工程で生成した複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出工程で算出した前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする。
【００２１】
本発明の好ましい他の一態様によれば、前記傾斜角度決定工程では、遺伝的アルゴリズムを適用し、前記候補生成工程で生成した複数の前記傾斜角度のうち、前記対象造形物の荷重を支持することが可能であって、前記サポート算出工程で算出した前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする。
【００２２】
本発明の好ましい他の一態様によれば、前記遺伝的アルゴリズムで用いられる評価関数Ｊは、前記サポートが前記対象造形物の荷重を支持することが可能な荷重をＬｓ、前記対象造形物の荷重をＧｔ、前記対象造形物と前記３次元造形装置との間の密着力をＡｓ、安全率をＳとすると、
Ｊ＝Ｌｓ−Ｓ×ｍａｘ（Ｇｔ、Ａｓ）
で表される。前記傾斜角度決定工程では、前記候補生成工程で生成した複数の前記傾斜角度についてそれぞれの前記評価関数から求められる値を算出し、前記評価関数の値が０よりも大きい前記傾斜角度の中で、前記サポート算出工程で算出した前記サポートの数が最小となるような前記傾斜角度を、前記所定の基準の向きから傾斜させる角度にする。
【００２３】
本発明の好ましい他の一態様によれば、前記対象造形物は、前記サポートを追加および配置しない禁止面を有している。前記候補生成工程では、前記禁止面に前記サポートを追加および配置するような前記傾斜角度を候補としない。
【００２４】
本発明の好ましい他の一態様によれば、前記記憶工程で記憶した前記３次元モデルに対して、前処理である平滑化処理を行う前処理工程を包含する。前記基準工程では、前記所定の基準の位置および向きとなるように、前記前処理工程で前記平滑化処理を行った前記３次元モデルを移動および回転させる。
【発明の効果】
【００２５】
本発明によれば、サポートを最適に追加および配置することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の実施形態に係る３次元造形システムの断面図である。
【図２】３次元造形システムの平面図である。
【図３】ホルダに全体造形物を造形する状態を示した模式図である。
【図４】図３のＩＶ−ＩＶ断面における断面図である。
【図５】全体造形物と造形可能領域との関係を示した図であり、図５（ａ）は全体造形物が造形可能領域からはみ出している状態を示した図であり、図５（ｂ）は全体造形物が造形可能領域内に収まっている状態を示した図である。
【図６】対象造形物の一例を示す斜視図である。
【図７】３次元造形システムのブロック図である。
【図８】遺伝的アルゴリズムを適用して、サポートの数と配置位置を決定する方法を示すフローチャートである。
【図９】初期集団の個体を表す図である。
【図１０】ソート後の個体を表す図である。
【図１１】２点交叉により新たな個体が生成される一例を表す図である。
【図１２】突然変異により新たな個体が生成される一例を表す図である。
【図１３】従来技術において、ホルダに全体造形物を造形する状態を示した模式図である。
【発明を実施するための形態】
【００２７】
以下、図面を参照しながら、本発明の実施形態に係るサポートの配置決定装置（以下、配置決定装置という。）を備えた３次元造形システム、および、サポートの配置決定方法について説明する。なお、ここで説明される実施形態は、当然ながら特に本発明を限定することを意図したものではない。また、同じ作用を奏する部材・部位には同じ符号を付し、重複する説明は適宜省略または簡略化する。
【００２８】
＜３次元造形システムの構成＞
図１は、本実施形態に係る３次元造形システム１０の断面図である。図２は、３次元造形システム１０の平面図である。なお、図面中の符号Ｆ、Ｒｒ、Ｌ、Ｒは、それぞれ前、後、左、右を示している。ただし、これらは説明の便宜上の方向に過ぎず、３次元造形システム１０の設置態様を何ら限定するものではない。
【００２９】
３次元造形システム１０は、サポートを用いて対象造形物を造形することができるシステムである。以下では、対象造形物およびサポートの全体を全体造形物と称することとする。３次元造形システム１０では、全体造形物の複数の断面形状のデータを用いる。ここで、「断面形状」とは、全体造形物を複数の層に分割したときの各層の断面の形状のことである。３次元造形システム１０では、液体の光硬化性樹脂を硬化させ、断面形状に対応した形状の樹脂層を造形する。そして、その樹脂層を順次積層することによって、全体造形物を造形する。なお、「光硬化性樹脂」とは、所定の波長を含む光が照射されると、硬化する樹脂である。
【００３０】
図１に示すように、３次元造形システム１０は、３次元造形装置１０Ａと、３次元造形装置１０Ａにおいて全体造形物を造形する前に、対象造形物の向きを決定し、かつ、サポートの位置、形状、数などの形態を決定する配置決定装置１００（図３参照）とを備えている。
【００３１】
＜３次元造形装置の構成＞
３次元造形装置１０Ａは、台１１と、槽１２と、ホルダ１３と、光学装置１４と、制御装置１６とを備えている。
【００３２】
台１１は、ケース２５に支持されている。台１１には、光を通過させる開口２１が形成されている。槽１２は、液体の光硬化性樹脂２３を収容する。槽１２は、台１１上に取り付け可能に載置されている。図２に示すように、槽１２は、台１１に載置された状態において、台１１の開口２１を覆う。槽１２は、光を透過させることのできる材料、例えば、透明な材料によって形成されているとよい。
【００３３】
図１に示すように、ホルダ１３は、槽１２の上方、かつ、台１１の開口２１の上方に配置されている。ホルダ１３は昇降自在に構成されている。ホルダ１３は、下降したときに槽１２内の光硬化性樹脂２３に浸漬し、上昇するときに、光が照射されて硬化した光硬化性樹脂２３を吊り上げる。ここでは、台１１には、上下方向に延びた支柱４１が設けられている。支柱４１の前方には、スライダ４２が取り付けられている。スライダ４２は、支柱４１に沿って昇降自在であり、モータ４３によって上方または下方に移動する。ここでは、ホルダ１３は、スライダ４２に取り付けられている。ホルダ１３は、モータ４３によって上方または下方に移動する。
【００３４】
光学装置１４は、台１１の下方に配置されている。光学装置１４は、槽１２内に収容された液体の光硬化性樹脂２３に所定の波長からなる光を照射する装置である。光学装置１４は、台１１の下方に設けられたケース２５に収容されている。光学装置１４は、プロジェクタ３１と、ミラー３２とを備えている。プロジェクタ３１は、光を発する光源である。ミラー３２は、プロジェクタ３１から発せられた光を槽１２に向かって反射させる部材である。ミラー３２は、台１１に形成された開口２１の下方、かつ、プロジェクタ３１の後方に配置されている。プロジェクタ３１から発せられた光は、ミラー３２によって反射され、台１１の開口２１を通じて槽１２内の光硬化性樹脂２３に照射される。ただし、光学装置１４の配置および構成は特に限定される訳ではない。
【００３５】
制御装置１６は、ホルダ１３が取り付けられたスライダ４２を昇降自在に制御するモータ４３、および、光学装置１４のプロジェクタ３１に接続されている。制御装置１６は、モータ４３を駆動することによって、スライダ４２およびホルダ１３を上方または下方に移動させる。また、制御装置１６は、プロジェクタ３１から発せられる光のエネルギー、光度、光量、光の波長帯域、光の形状、光を照射させる位置および光を発するタイミングなどを制御する。なお、制御装置１６の構成は特に限定されない。例えば、制御装置１６は、コンピュータであり、中央演算処理装置（以下、ＣＰＵという。）と、ＣＰＵが実行するプログラムなどを格納したＲＯＭと、ＲＡＭなどを備えていてもよい。
【００３６】
以上が３次元造形装置１０Ａの構成である。前述したように、３次元造形装置１０Ａは、サポートを用いて対象造形物を造形するものである。次に、サポートについて説明する。
【００３７】
＜サポートについて＞
３次元造形装置１０Ａが対象造形物を造形する際、樹脂層が造形される毎にホルダ１３が順次上昇し、当該樹脂層の下方に新たな樹脂層が形成される。ところが、例えば、断面積の大きな樹脂層が形成された後に、比較的小さな樹脂層、例えばホルダ１３との接触面積が、大きな樹脂層の半分以下となるような大きさの小さな樹脂層があった場合、当該樹脂層がそれよりも下方に位置する大きな樹脂層を含む全樹脂層の荷重を支えきれない場合がある。その結果、造形の途中で対象造形物が破損するおそれがある。そのため、造形途中の対象造形物の荷重を十分に支持することができるように、対象造形物に対してサポートが追加および配置される。このことにより、対象造形物が造形途中に破損することを防止することができる。
【００３８】
３次元造形装置１０Ａがホルダ１３に対象造形物を直接造形したとすると、造形後に対象造形物はホルダ１３から引き剥がされる。その際、対象造形物のうちホルダ１３と接触している部分をホルダ１３から引き剥がす際、対象造形物が破損してしまう場合がある。そこで、図３に示すように、ホルダ１３と対象造形物Ａとの間にサポート３０を追加および配置する。そして、造形完了後に全体造形物（対象造形物Ａにサポート３０が追加および配置された造形物）をホルダ１３から引き剥がした後、サポート３０を対象造形物Ａから取り除く処理を行うことがある。このことにより、対象造形物Ａが破損することを防止することができる。
【００３９】
なお、サポート３０の形状は特に限定されない。図４は、図３のＩＶ−ＩＶ断面における断面図である。本実施形態では、図４に示すように、サポート３０として、同一の太さの複数本の円柱を用いることとする。ここでは、図３に示すように、サポート３０の上端部はホルダ１３に設けられ、下端部は対象造形物Ａに設けられることとする。隣り合うサポート３０の間隔は特に限定されないが、本実施形態では一定とする。図４に示すように、複数のサポート３０は、左右方向および前後方向に揃った位置に追加および配置されている。ただし、上記のサポート３０の形状および配置位置は一例に過ぎない。サポート３０の形状は、例えば、断面形状が三角形または四角形の形状であってもよい。複数のサポート３０の形状は、それぞれ同じ形状であってもよいし、異なる形状であってもよい。隣り合うサポート３０の間隔は、一定でなくてもよい。複数のサポート３０は、例えば、千鳥状に追加および配置されていてもよい。
【００４０】
次に、サポート３０が対象造形物Ａの荷重を支持するための条件について説明する。まず、サポート３０が対象造形物Ａの荷重を支持するためには、サポート３０の支持可能な荷重が対象造形物Ａの荷重よりも大きくなければならない。また、３次元造形装置１０Ａでは、槽１２の表面と樹脂層との間に密着力が生じているので、樹脂層を槽１２から引き剥がすために、その密着力よりも大きな力で対象造形物Ａを吊り上げる必要がある。その際、サポート３０には上記密着力と同じ大きさの力が加わる。したがって、サポート３０が破損しないためには、サポート３０の支持可能な荷重が上記密着力よりも大きくなければならない。以上より、サポート３０の支持可能な荷重（以下、支持荷重という。）をＬｓ［ｇｆ］、対象造形物Ａの荷重をＧｔ［ｇｆ］、対象造形物Ａの樹脂層と槽１２との間の密着力をＡｓ［ｇｆ］とすると、Ｌｓは、ＧｔおよびＡｓのうちの何れか大きい方よりも大きくなければならない。すなわち、Ｌｓ＞ｍａｘ（Ｇｔ，Ａｓ）でなければならない。
【００４１】
支持荷重Ｌｓは、１つのサポート３０における対象造形物Ａと接触する面積をＳｐ、引張強度をＫｐ、サポート３０の数をＩとすると、以下の式（１）で表すことができる。
Ｌｓ＝Ｓｐ×Ｋｐ×Ｉ・・・（１）
【００４２】
対象造形物Ａの荷重Ｇｔは、対象造形物Ａの体積をＶａ、対象造形物Ａの密度をＤａとすると、以下の式（２）で表すことができる。
Ｇｔ＝Ｖａ×Ｄａ・・・（２）
【００４３】
密着力Ａｓは、１〜ｎ層目まで積層した際の対象造形物Ａの体積をＶｎ、ｎ層目の対象造形物Ａの断面積をＳｎ、対象造形物Ａの応力（引張応力）をＫとすると、以下の式（３）で表すことができる。
Ａｓ＝Ｖｎ×Ｄａ＋Ｓｎ×Ｋ・・・（３）
【００４４】
なお、本実施形態では、樹脂製の槽１２（図１参照）の表面には、複数の微小な穴が形成されている。その微小な穴に光硬化性樹脂２３が入り込んだ状態で、光が照射されると、光硬化性樹脂２３の一部が微小な穴に入り込んだ状態で硬化する。そして、硬化した光硬化性樹脂２３を槽１２から引き上げる際、穴に入り込んだ状態で硬化した光硬化性樹脂２３が穴から引き抜かれようとするため、その分、密着力Ａｓが大きくなる。そのため、このような場合、密着力Ａｓが若干大きくなるが、ここでは、密着力Ａｓは、槽１２の微小な穴から引き抜かれる際にかかる荷重を考慮していない。しかし、密着力Ａｓは、槽１２の穴から引き抜かれる際にかかる荷重を考慮してもよい。
【００４５】
ところで、論理的にはＬｓ＞ｍａｘ（Ｇｔ，Ａｓ）であればサポート３０が破損することはない。しかし、実際には、種々の不確定要因によって、Ｌｓ＞ｍａｘ（Ｇｔ，Ａｓ）であっても、サポート３０が破損する場合がある。そこで、１よりも大きな実数からなる安全率Ｓを導入し、サポート３０が対象造形物Ａの荷重を十分に支持するための条件を以下の式（４）のように設定してもよい。
Ｌｓ＞Ｓ×ｍａｘ（Ｇｔ，Ａｓ）・・・（４）
例えば、安全率Ｓ＝３とした場合、実際にかかると予想される支持荷重Ｌｓの１／３の荷重しかサポート３０が支持することができないと仮定することができる。上記式（４）を満たすことにより、サポート３０は対象造形物Ａの荷重を十分に支持することができる。
【００４６】
＜対象造形物の向きについて＞
前述の通り、３次元造形装置１０Ａはホルダ１３を順次上昇させることにより、対象造形物Ａを造形する。対象造形物Ａは、上部から下部に向かって順に造形される。３次元造形装置１０Ａは、対象造形物Ａの３次元モデル（以下、対象造形物モデルという。）のデータを受け、そのデータを用いて、対象造形物モデルと実質的に同一形状の対象造形物Ａを造形する。
【００４７】
対象造形物モデルには、予め向きが定められている（以下、初期の向きという。）。この初期の向きは、通常、対象造形物モデルのデータ作成手順に従って定められる。例えば、対象造形物モデルが円錐形状の装飾品の場合、円錐の頂点が上、底面が下に位置するように初期の向きが定められる。ところが、以下に説明するように、対象造形物Ａを初期の向きのまま造形することは必ずしも適切ではない。
【００４８】
まず、対象造形物Ａの向きによっては、対象造形物Ａのうちホルダ１３に対向する面の面積が小さくなり、十分な数のサポート３０を追加および配置することができない場合がある。
【００４９】
対象造形物Ａとサポート３０とが一体となった全体造形物は、槽１２内の光硬化性樹脂２３が硬化することによって造形される。そのため、全体造形物を造形することが可能な領域は、槽１２の上方の領域に限られる。また、図１に示すように、光学装置１４からの光は、開口２１を通じて槽１２内の光硬化性樹脂２３に照射される。そのため、全体造形物を造形することが可能な領域は、開口２１の上方の領域に限られる。更に、全体造形物はホルダ１３に吊り下げられることによって造形される。そのため、全体造形物を造形することが可能な領域は、ホルダ１３の下方の領域に限られる。したがって、３次元造形装置１０Ａにおける造形可能領域は、平面視においてホルダ１３の外縁よりも内側、台１１の開口２１の周縁よりも内側、かつ、槽１２の内縁よりも内側となるような領域である。また、上記造形可能領域は、上下位置に関しては、ホルダ１３が最も上方に移動したときのホルダ１３の下面と槽１２の底板の上面との間の領域である。
【００５０】
全体造形物が上記造形可能領域内に収まっていない場合、全体造形物の一部を造形することができない。しかし、例えば、図５（ａ）に示すような対象造形物モデルの位置および向きのまま全体造形物２０を造形しようとすると、造形可能領域Ｂからはみ出してしまうような全体造形物２０であっても、図５（ｂ）に示すような対象造形物モデルの位置および向きに変更することによって、全体造形物２０を造形可能領域Ｂに収めることができる場合がある。そのため、全体造形物２０が造形可能領域Ｂ内に収まるように、対象造形物モデルの位置および向きを決定することが必要である。
【００５１】
前述したように、ホルダ１３と対象造形物Ａとの間にサポート３０を追加および配置しておけば、造形完了後、全体造形物２０をホルダ１３から引き剥がす際に、対象造形物Ａの一部が破損してしまうことを防止することができる。そこで、本実施形態では、ホルダ１３に対して対象造形物Ａを直接造形することを避け、ホルダ１３と対象造形物Ａとの間にサポート３０を追加および配置する。そのためには、対象造形物Ａとホルダ１３との間に、サポート３０を追加および配置するためのスペースが必要となる。そこで本実施形態では、造形可能領域Ｂのうち上端から下方に所定長さ（例えば５ｍｍ）のスペースをサポート３０用のスペースとし、造形可能領域Ｂからサポート３０用のスペースを除いた領域を、対象造形物Ａを造形するための造形領域Ｂ´（図１および図２参照）として設定する。そのため、対象造形物Ａが造形領域Ｂ´内に収まるように対象造形物Ａの位置および向きを決定する必要がある。
【００５２】
図６に示すように、対象造形物Ａとして、文字または模様などの装飾が施された面（装飾面）ａを有するものがある。このような対象造形物Ａを造形する場合には、装飾面ａにサポート３０を追加および配置しないことが好ましい。サポート３０を対象造形物Ａから引き剥がす際に、対象造形物Ａの装飾面ａに傷が付くおそれがあるからである。このような対象造形物Ａを造形する場合には、装飾面ａにサポート３０が追加および配置されないことが好ましい。そこで、対象造形物Ａにおいて、サポート３０を追加および配置すべきでない面（以下、禁止面という。）を有している場合、禁止面にサポート３０が追加および配置されないように対象造形物Ａの位置および向きを決定することが好ましい。
【００５３】
以上のように、３次元造形装置１０Ａで対象造形物Ａを造形するに当たっては、サポート３０が対象造形物Ａの荷重を十分に支持することができるということだけでなく、他に考慮すべき制約事項が存在する。そこで、本実施形態に係る３次元造形システム１０は、所定の制約事項を満たしつつ、対象造形物Ａの荷重がサポート３０によって十分に支持されるように、３次元造形装置１０Ａで全体造形物２０を造形する前に、配置決定装置１００において対象造形物Ａの位置および向きを決定することとしている。
【００５４】
ところで、対象造形物Ａに追加および配置されるサポート３０の数が少なすぎると、対象造形物Ａの荷重を十分に支持することができない。一方、サポート３０は、全体造形物２０の造形が完了した後、対象造形物Ａから取り除かれる部材である。そのため、サポート３０の数が多すぎると、対象造形物Ａから取り除く際に多くの手間と時間を要する。また、無駄な光硬化性樹脂２３が多くなる。以上の観点から、サポート３０の数は、対象造形物Ａの荷重を十分に支持することができる最小の数であることが好ましい。配置決定装置１００は、前述の制約事項を満たし、かつ、サポート３０の数が対象造形物Ａの荷重を十分に支持することができる範囲で最小の数となるように、対象造形物Ａの位置および向きを決定する。
【００５５】
＜配置決定装置の構成＞
図７は、３次元造形システム１０のブロック図である。次に、図７を参照しながら、配置決定装置１００について説明する。配置決定装置１００は、全体造形物２０を造形する際、造形する対象造形物Ａの位置および向きを決定し、かつ、サポート３０の位置、形状、数などの形態を決定する装置である。配置決定装置１００は、３次元造形装置１０Ａと別体であってもよく、３次元造形装置１０Ａに内蔵されていてもよい。例えば、配置決定装置１００は、コンピュータであり、ＣＰＵと、ＣＰＵが実行するプログラムなどを格納したＲＯＭと、ＲＡＭなどを備えていてもよい。配置決定装置１００は、３次元造形システム１０のための専用のコンピュータであってもよく、汎用のコンピュータであってもよい。ここでは、配置決定装置１００は、記憶部５２と、前処理部５４と、基準部５６と、候補生成部５８と、サポート算出部６０と、傾斜角度決定部６２とを備えている。なお、上述した各部は、ソフトウェアによって構成されていてもよいし、ハードウェアによって構成されていてもよい。
【００５６】
記憶部５２は、対象造形物モデルのデータを記憶する。このデータは、例えば、ＸＹＺ直交座標系の複数の点の集合で特定されるデータであり、３次元データである。この対象造形物モデルのデータは、例えば、ユーザの操作によって、記録媒体または他のコンピュータ（図示せず）から記憶部５２に読み込まれる。本実施形態では、対象造形物Ａの位置および向きは、３軸の直交座標によって特定される。ただし、他の座標系を用いて対象造形物Ａの位置および向きを特定することも可能である。
【００５７】
対象造形物モデルのデータは、対象造形物モデルの３次元形状を忠実に再現した詳細なデータであることが多い。対象造形物モデルのデータをそのまま用いると、配置決定装置１００における決定処理に多大な時間を要することがある。そこで、対象造形物モデルのデータに前処理を行い、データ量を小さくすることが好ましい。ここでは、前処理部５４は、記憶部５２に記憶された対象造形物モデルのデータに対し平滑化処理を行う。対象造形物モデルは、例えば、複数の３角形が組み合わされたモデルである。この場合、平滑化処理として、対象造形物モデルを構成する３角形の数を減少させ、データ量を小さくする処理を行えばよい。平滑化処理の方法は特に限定されず、例えば、従来公知の平滑化処理の方法を適用することができる。例えば、平滑化処理の方法として、ガウス関数を使用してもよい。
【００５８】
基準部５６は、前処理部５４によって平滑化処理が施され、かつ、記憶部５２に記憶された対象造形物モデルが所定の基準の位置および向きとなるように、移動および回転させる。本実施形態では、対象造形物Ａの位置および向きは、３軸の直交座標によって特定される。ただし、他の座標系を用いて対象造形物Ａの位置および向きを特定することも可能である。本実施形態では、対象造形物Ａの基準となる位置は対象造形物Ａの中心に設定されている。ただし、基準となる位置は、対象造形物Ａの中心に限定されない。ここでは、基準となる位置である対象造形物Ａの中心が、平面視においてホルダ１３の中心の位置となるように設定する。例えば、対象造形物Ａの基準位置Ｐ０は、Ｘ座標ｘ０、Ｙ座標ｙ０、およびＺ座標ｚ０によって表すことができる。また、基準部５６は、対象造形物Ａの禁止面にサポート３０が追加および配置されないように、対象造形物Ａの基準となる向きを設定する。なお、基準の向きの設定方法は、後述する。
【００５９】
候補生成部５８は、基準部５６によって基準の位置および向きとなるように配置した対象造形物モデルを基準として、造形する対象造形物Ａの向きの候補となる傾斜角度を複数生成する。ここで、対象造形物Ａの向きは、基準の向きからのＸ軸回りの回転角度θｘ、Ｙ軸回りの回転角度θｙ、およびＺ軸回りの回転角度θｚによって表すことができる。「傾斜角度」とは、上記３つの回転角度をあわせた角度のことをいう。
【００６０】
サポート算出部６０は、候補生成部５８によって生成された傾斜角度に基づいて傾斜されたそれぞれの対象造形物モデルにおいて、対象造形物Ａに追加および配置するサポート３０の数を算出する。ここでは、サポート算出部６０は、傾斜角度に従って向きを変更した対象造形物モデルに対して、サポート３０を所定のルールに従って追加および配置し、対象造形物モデルに追加および配置したサポート３０の数を算出する。なお、上記所定のルールとは、従来公知のルールであればよい。ここでは、例えば、前後方向および左右方向に等間隔となるように複数のサポート３０を対象造形物Ａに付与する。
【００６１】
傾斜角度決定部６２は、候補生成部５８によって生成された複数の傾斜角度の候補のうち、対象造形物の荷重を支持することが可能であって、サポート算出部６０によって算出されたサポート３０の数が最小となるような傾斜角度の候補を、対象造形物Ａを基準の向きから傾斜させる角度にする。本実施形態では、造形する対象造形物Ａの向きは、遺伝的アルゴリズムを用いて決定される。なお、遺伝的アルゴリズムの具体的な使用方法は後述する。
【００６２】
＜サポートの配置決定方法＞
次に、図８に示されたフローチャートを用いてサポート３０の数および配置位置の決定方法について説明する。本決定方法では、上述したように、遺伝的アルゴリズムを利用する。ここでは、遺伝的アルゴリズムを利用して対象造形物Ａの最適な位置および向きを決定し、決定した最適な位置および向きの対象造形物Ａに対してサポート３０を追加および配置する。
【００６３】
まず、ステップＳ１０１では、造形する対象造形物Ａに対応する対象造形物モデルに対して前処理を行う。ここでは、前処理部５４は、対象造形物モデルに対して平滑化処理を行う。以下のステップでは、平滑化処理を行った対象造形物モデルを利用して、造形しようとする対象造形物Ａの位置および向きを決定し、位置および向きを変更した対象造形物Ａにサポート３０を追加および配置する。
【００６４】
次に、ステップＳ１０２では、対象造形物モデルの基準となる位置および向きを設定する。ここでは、基準部５６は、対象造形物Ａの中心が、平面視においてホルダ１３の中心の位置となるように基準の位置を設定する。次に、基準部５６は、対象造形物Ａの禁止面を設定する。前述のように、禁止面とは、サポート３０を追加および配置すべきでない面（例えば、図６の面ａ）であり、例えば、文字または模様などの装飾が施された装飾面のことである。ここでは、禁止面にサポート３０が追加および配置されないように、対象造形物Ａを回転させ、対象造形物の最適な位置および向きを決定する。本実施形態では、禁止面が対象造形物Ａの上面になるような対象造形物Ａの向きを基準の向きとする。しかし、対象造形物Ａの基準の向きは特に限定されない。ここでは、サポート３０は、対象造形物Ａの下面に追加および配置されるものとする。
【００６５】
次に、ステップＳ１０３において、候補生成部５８は、初期集団の生成を行う。ステップＳ１０３では、初めに、予め定められた数（以下、個体数ｎとする。）の個体を生成する。各個体は、傾斜角度であるＸ軸回りの回転角度θｘ、Ｙ軸回りの回転角度θｙおよびＺ軸回りの回転角度θｚを遺伝子とし、Ｘ軸回りの回転角度θｘ、Ｙ軸回りの回転角度θｙ、Ｚ軸回りの回転角度θｚを順に並べたものである。
【００６６】
ここで、傾斜角度の値の範囲は、禁止面にサポート３０が追加および配置されないような範囲である。傾斜角度の値の範囲は、対象造形物Ａの禁止面がどの位置に設定されているかによって決められている。ここでは、基準の位置および向きに対象造形物Ａが配置されている状態において、禁止面が対象造形物Ａの下面に位置しないように傾斜角度の範囲が規定される。ここでは、Ｘ軸回りの回転角度θｘ、Ｙ軸回りの回転角度θｙ、Ｚ軸回りの回転角度θｚの値の範囲は、それぞれ−９０°≦θｘ≦９０°、−９０°≦θｙ≦９０°、０°≦θｚ≦３６０°である。ここでは、各個体の遺伝子は、上記の範囲の中で乱数によって決定される。
【００６７】
また、各個体によって設定された対象造形物Ａは、造形領域Ｂ´（図１参照）内に収まっている必要がある。よって、各個体によって設定された対象造形物Ａにおいて、その対象造形物Ａの一部が造形領域Ｂ´内に収まっていない場合、対象造形物Ａを基準の位置から移動し、対象造形物Ａが造形領域Ｂ´内に収まるようにする。このとき、記憶部５２は、移動後の対象造形物Ａの位置を記憶する。仮に、対象造形物Ａをどのように移動させてもその対象造形物Ａが造形領域Ｂ´内に収まらない場合には、その個体を初期集団から除外する。このようにして、例えば、図９に示すようなｎ個の個体Ｇ０１、Ｇ０２、Ｇ０３、・・・、Ｇ０ｎが得られる。個体Ｇ０１、Ｇ０２、Ｇ０３、・・・、Ｇ０ｎによって設定された対象造形物Ａは、禁止面にサポート３０が追加および配置されないような向きであり、造形領域Ｂ´内に収まっているものである。なお、図９〜図１２において、括弧内の数値は、左からＸ軸回りの回転角度θｘ、Ｙ軸回りの回転角度θｙ、Ｚ軸回りの回転角度θｚを示している。
【００６８】
次に、ステップＳ１０４では、傾斜角度決定部６２は、適応度の評価を行う。ここでは、まず、各個体の各遺伝子、すなわち、各傾斜角度の候補に従って、対象造形物Ａに対応した対象造形物モデルを回転させて、向きを変更する。そして、サポート算出部６０は、向きを変更した対象造形物モデルに対して、サポート３０を所定のルールに従って付与し、対象造形物モデルに付与したサポート３０の数を算出する。ここでは、前述のように、前後方向および左右方向に等間隔となるように複数のサポート３０を対象造形物Ａに追加および配置する。その後、各個体のサポート３０の数を用いて、各個体の評価関数Ｊを算出する。このとき、評価関数Ｊは、前述の式（１）〜（４）を用いて、以下の式（５）によって表すことができる。
Ｊ＝Ｌｓ−Ｓ×ｍａｘ（Ｇｔ，Ａｓ）
＝Ｓｐ×Ｋｐ×Ｉ−Ｓ×ｍａｘ（Ｖａ×Ｄａ，Ｖｎ×Ｄａ＋Ｓｎ×Ｋ）・・・（５）
なお、前述のように、Ｌｓはサポート３０の支持可能な荷重（支持荷重）、Ｇｔは対象造形物Ａの荷重、Ａｓは対象造形物Ａの樹脂層と槽１２との間の密着力を表している。すなわち、評価関数Ｊは、Ｌｓから、ＧｔおよびＡｓのうちの何れか大きい方を引いた値である。なお、Ｓｐは１つのサポート３０における対象造形物Ａと接触する面積、Ｋｐは引張強度、Ｉはサポート３０の数、Ｓは安全率を表している。また、Ｖａは対象造形物Ａの体積、Ｄａは対象造形物Ａの密度、Ｖｎは１〜ｎ層目まで積層した際の対象造形物Ａの体積、Ｓｎはｎ層目の対象造形物Ａの断面積、Ｋは対象造形物Ａの応力（引張応力）を表している。
【００６９】
そして、傾斜角度決定部６２は、算出したｎ個の個体Ｇ０１、Ｇ０２、Ｇ０３、・・・、Ｇ０ｎの評価関数Ｊの値を比べる。ここでは、評価関数Ｊの値が０よりも大きい個体の中で、サポート３０の数が少ない程、優秀な個体と見なし、高い評価を与える。そして、高い評価が与えられた個体が上位となるようにｎ個の個体を並び替える。本実施形態では、評価関数Ｊは、サポート３０の数そのものとなるように遺伝的アルゴリズムが設定されている。よって、並び替えた後のｎ個の個体を順に、Ｇ１１、Ｇ１２、Ｇ１３、・・・、Ｇ１ｎとすると、このときの各個体の評価関数Ｊ１、Ｊ２、Ｊ３、・・・、Ｊｎは、図１０のようになる。
【００７０】
次に、ステップＳ１０５では、傾斜角度決定部６２は、選択を行う。選択は集団の中から優秀な個体をｎ個選ぶステップである。換言すると、選択は、適応度の評価において評価の高かったｎ個の個体を選ぶものである。なお、１回目の選択では、集団に含まれる個体数はｎであるので、全ての個体が選ばれる。
【００７１】
次に、ステップＳ１０６では、傾斜角度決定部６２は、交叉を行う。交叉の手法は特に限定されず、公知の各種の手法を用いることができる。公知の交叉の手法を組み合わせて適用してもよい。ここでは、２点交叉を用いる。２点交叉では、ステップＳ１０４の適応度の評価において最も評価の高かった個体（以下、最優秀個体という。）Ｇ１１と、他の個体Ｇ１２、Ｇ１３、・・・、Ｇ１ｎのうちの１つとをペアとする。次に、各ペアについて、最優秀個体Ｇ１１のＸ軸回りの回転角度の遺伝子およびＺ軸回りの回転角度の遺伝子と、他の個体のＹ軸回りの回転角度の遺伝子とを組み合わせた新たな個体、ならびに、最優秀個体Ｇ１１のＹ軸回りの回転角度の遺伝子と、他の個体のＸ軸回りの回転角度の遺伝子およびＺ軸回りの回転角度の遺伝子とを組み合わせた新たな個体を生成する。例えば、図１１に示すように、個体Ｇ１１と個体Ｇ１２とのペアから、新たな個体Ｇ１１２および個体Ｇ１２１が生成される。
【００７２】
次に、ステップＳ１０７では、傾斜角度決定部６２は、突然変異を行う。突然変異では、所定のルールに従って、新しい遺伝子の組み合わせを有する新たな個体を生成する。なお、突然変異の手法は何ら限定されず、公知の各種手法を用いることができる。ここでは、評価関数Ｊの値が０以下の個体を対象として、所定の割合で突然変異を発生させる。例えば、評価関数Ｊの値が０以下の個体について、Ｘ軸回りの回転角度、Ｙ軸回りの回転角度、Ｚ軸回りの回転角度の遺伝子をランダムで入れ替える。例えば、図１２に示すように、個体ＧＳｎの評価関数Ｊの値が０以下とする。この場合、個体ＧＳｎに対して、Ｘ軸回りの回転角度の遺伝子をＺ軸回りの回転角度の遺伝子に、Ｙ軸回りの回転角度の遺伝子をＸ軸回りの回転角度の遺伝子に、および、Ｚ軸回りの回転角度の遺伝子をＹ軸回りの回転角度の遺伝子にする。そして、突然変異の結果として、新たな個体ＧＳｎ’が生成される。
【００７３】
次に、ステップＳ１０８において、傾斜角度決定部６２は、適応度の評価を行う。この適応度の評価では、ステップＳ１０５で選択されたｎ個の個体と、ステップＳ１０６およびステップＳ１０７で生成された新たな個体とについて、それぞれ評価関数Ｊの値を算出する。そして、評価関数Ｊの値が０より大きい個体の中で、サポート３０の数が少ない順にソートを行う。すなわち、評価関数Ｊの値が０より大きい個体の中でサポート３０の数が少ない程、優秀な個体として上位に位置づける。そして、最も上位の個体が最優秀個体となる。以下、ソート後の最優秀個体を個体Ｇ３１とする。
【００７４】
次に、ステップＳ１０９では、傾斜角度決定部６２は、遺伝的アルゴリズムの終了判定を行う。ここでは、ステップＳ１０８の最優秀個体Ｇ３１のＸ軸回りの回転角度およびＹ軸回りの回転角度を所定の角度の分だけ変更した個体を新たに生成する。この所定の角度は、特に限定されないが、例えば、＋２°および−２°である。例えば、最優秀個体Ｇ３１のＸ軸回りの回転角度およびＹ軸回りの回転角度をそれぞれ−２°ずらし、その個体を個体Ｇ３１’とする。次に、個体Ｇ３１’のサポート３０の数を算出した後に、評価関数Ｊの値を算出する。そして、個体Ｇ３１’の評価関数Ｊの値が０より大きい場合、ステップＳ１０８の最優秀個体Ｇ３１のサポート３０の数と、個体Ｇ３１’のサポート３０の数とを比較する。そして、個体Ｇ３１’のサポート３０の数の方が少ない場合、判定結果をＮＯとし、ステップＳ１０５に戻り、再びステップＳ１０５以降の処理を繰り返す。なお、ステップＳ１０５では、傾斜角度決定部６２は、前回のステップＳ１０５で選択されたｎ個の個体と、ステップＳ１０６およびステップＳ１０７で生成された新たな個体と、ステップＳ１０８で生成された個体Ｇ３１’との中から、ｎ個の個体を選択する。
【００７５】
一方、個体Ｇ３１’の評価関数Ｊの値が０未満の場合、または、個体Ｇ３１’の評価関数Ｊの値が０より大きく、かつ、個体Ｇ３１’のサポート３０の数が最優秀個体Ｇ３１のサポート３０の数より多い場合、傾斜角度決定部６２は、最優秀個体Ｇ３１を解とする。ここでは、最優秀個体Ｇ３１で特定される傾斜角度に従って変更された対象造形物Ａの向きが最適な対象造形物Ａの向きと見なされる。
【００７６】
本実施形態では、配置決定装置１００によって、決定した対象造形物Ａの位置および向き、サポート３０の数および配置位置に沿って、ホルダ１３の下部に、全体造形物２０を造形する。すなわち、ホルダ１３の下部にサポート３０を追加および配置し、サポート３０の下に対象造形物Ａを造形する。
【００７７】
以上のように、本実施形態では、サポート３０が対象造形物Ａの荷重を支持することが可能であって、かつ、サポート３０の数が最小となるような傾斜角度を、所定の基準の向きから対象造形物を傾斜させる角度としている。よって、このように決定した向きで対象造形物Ａを造形する際、対象造形物Ａに追加および配置されたサポート３０が対象造形物Ａの荷重を支持することができる。また、サポート３０の数を少なくすることができるため、サポート３０を造形する際に必要な樹脂材料を少なくすることができる。
【００７８】
本実施形態では、造形しようとする対象造形物Ａの３次元モデルの向きを、遺伝的アルゴリズムを適用することで決定している。よって、遺伝的アルゴリズムを適用することで、対象造形物Ａの全ての傾斜角度を求めて対象造形物Ａの最適な向きを求める場合と比較して、演算処理が膨大となることを防止することができる。その結果、演算負荷を小さくすることができる。
【００７９】
本実施形態では、遺伝的アルゴリズムで用いられる評価関数Ｊは、サポート３０が対象造形物Ａの荷重を支持することが可能な荷重をＬｓ、対象造形物Ａの荷重をＧｔ、対象造形物Ａと槽１２との間の密着力をＡｓ、安全率をＳとすると、Ｊ＝Ｌｓ−Ｓ×ｍａｘ（Ｇｔ、Ａｓ）で表される。傾斜角度決定部６２は、候補生成部５８によって生成された複数の傾斜角度についてそれぞれの評価関数Ｊから求められる値を算出し、評価関数Ｊの値が０よりも大きい傾斜角度の中で、サポート算出部６０によって算出されたサポート３０の数が最小となるような傾斜角度を、基準の向きから傾斜させる角度にする。このことによって、上記評価関数Ｊを用いることで、造形する対象造形物Ａの荷重Ｇｔおよび密着力Ａｓの何れか大きい方の荷重に耐えられるようにサポート３０を適切に追加および配置することができる。
【００８０】
本実施形態では、図６に示すように、造形する対象造形物Ａには、サポート３０を追加および配置したくない禁止面ａがある。候補生成部５８は、禁止面ａにサポート３０を追加および配置するような傾斜角度を候補としない。そのため、候補生成部５８は、禁止面ａにサポート３０を追加および配置しないような向きとなるような傾斜角度を候補とすることができる。よって、禁止面ａにサポート３０が追加および配置されない傾斜角度を、所定の基準の向きから傾斜する角度にすることができる。
【００８１】
本実施形態では、配置決定装置１００は、図７に示すように、記憶部５２に記憶された対象造形物モデルに対して、前処理である平滑化処理を行う前処理部５４を備えている。基準部５６は、基準の位置および向きとなるように、前処理部５４によって平滑化処理が行われた対象造形物モデルを移動および回転させる。このことによって、前処理部５４によって対象造形物モデルを平滑化することで、対象造形物モデルのデータ量を小さくすることができる。そのため、基準部５６、候補生成部５８、サポート算出部６０、および、傾斜角度決定部６２は、前処理部５４によってデータ量が小さくなった３次元モデルを用いることができる。したがって、演算負荷を好適に小さくすることができる。
【００８２】
以上、本実施形態に係る配置決定装置１００を備えた３次元造形システム１０、および、サポート３０の配置決定方法について説明した。しかし、本発明に係る配置決定装置を備えた３次元造形システム、および、サポートの配位置方法は、本実施形態に係る配置決定装置１００を備えた３次元造形システム１０、および、サポート３０の配置決定方法に限定されない。
【００８３】
＜他の実施形態＞
上記実施形態では、図８に示すように、ステップＳ１０１において、配置決定装置１００がサポート３０の数および配置位置を決定する際、前処理部５４は、事前に記憶部５２に記憶された対象造形物モデルの平滑化処理を行っていた。しかし、ステップＳ１０１の前処理は省略することが可能である。この場合、基準部５６は、所定の基準の位置および向きとなるように、記憶部５２に記憶された対象造形物モデルを移動および回転させてもよい。
【００８４】
なお、上述したように、配置決定装置１００の記憶部５２、前処理部５４、基準部５６、候補生成部５８、サポート算出部６０、および傾斜角度決定部６２は、ソフトウェアにより構成されていてもよい。すなわち、上記各部は、コンピュータプログラムがコンピュータに読み込まれることにより、当該コンピュータによって実現されるようになっていてもよい。本発明には、コンピュータを上記各部として機能させるためのコンピュータプログラムが含まれる。また、本発明には、当該コンピュータプログラムが記録されたコンピュータ読み取り可能な記録媒体が含まれる。
【符号の説明】
【００８５】
１０  ３次元造形システム
１０Ａ  ３次元造形装置
１３  ホルダ
１４  光学装置
３０  サポート（サポート造形物）
５２  記憶部
５４  前処理部
５６  基準部
５８  候補生成部
６０  サポート算出部
６２  傾斜角度決定部
１００  配置決定装置（サポートの配置決定装置）
Ａ  対象造形物
【図１】
2017007126.tif 000003
【図２】
2017007126.tif 000004
【図３】
2017007126.tif 000005
【図４】
2017007126.tif 000006
【図５】
2017007126.tif 000007
【図６】
2017007126.tif 000008
【図７】
2017007126.tif 000009
【図８】
2017007126.tif 000010
【図９】
2017007126.tif 000011
【図１０】
2017007126.tif 000012
【図１１】
2017007126.tif 000013
【図１２】
2017007126.tif 000014
【図１３】
2017007126.tif 000015