(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-05
(45)【発行日】2024-08-14
(54)【発明の名称】構造設計支援プログラム、構造設計支援装置及び構造設計支援方法
(51)【国際特許分類】
G06F 30/20 20200101AFI20240806BHJP
G06F 30/10 20200101ALI20240806BHJP
G06F 30/27 20200101ALI20240806BHJP
G06N 3/08 20230101ALI20240806BHJP
G06N 20/00 20190101ALI20240806BHJP
G06Q 50/08 20120101ALI20240806BHJP
【FI】
G06F30/20
G06F30/10
G06F30/27
G06N3/08
G06N20/00
G06Q50/08
(21)【出願番号】P 2020115804
(22)【出願日】2020-07-03
【審査請求日】2023-06-30
(73)【特許権者】
【識別番号】303046244
【氏名又は名称】旭化成ホームズ株式会社
(74)【代理人】
【識別番号】100106909
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100149548
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100188558
【氏名又は名称】飯田 雅人
(74)【代理人】
【識別番号】100165179
【氏名又は名称】田▲崎▼ 聡
(74)【代理人】
【識別番号】100189337
【氏名又は名称】宮本 龍
(72)【発明者】
【氏名】伊藤 康明
(72)【発明者】
【氏名】グエン ミン レ
【審査官】合田 幸裕
(56)【参考文献】
【文献】特開2019-117603(JP,A)
【文献】特開2019-191954(JP,A)
【文献】国際公開第2020/003626(WO,A1)
【文献】米国特許第10685286(US,B1)
【文献】米国特許第10539881(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00 - 30/398
G06N 3/08
G06N 20/00
G06Q 50/08
IEEE Xplore
JSTPlus(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
コンピュータに、
構造物の構造を設計する際に満たされるべき条件及び前記構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得する条件データ取得機能と、
前記条件データにより示される
条件の下、機械学習装置として前記構造物の構造を設計し、前記構造物の構造を示す生成データを生成し、重みを固定した第三モデルに連結されており、第二誤差データにより学習する第一モデルと、
前記第一モデルにより生成される生成データを取得する生成データ取得機能と、
前記生成データと、前記条件データにより構造計算結果データを出力する構造計算機能と、
前記生成データから第一構造計算結果推定データを生成し、第一誤差データにより学習する第二モデルと、
前記構造計算結果データ及び前記第一構造計算結果推定データから前記第一誤差データを生成して出力する第一誤差算定機能と、
前記第二モデルから重みデータを取得する重みデータ取得機能と、
前記重みデータにより前記第二モデルと同一の構成及び同一の重みを有し、前記生成データから第二構造計算結果推定データを生成して出力する第三モデルと、
前記条件データの少なくとも一部及び前記第二構造計算結果推定データから前記第二誤差データを算出する第二誤差算定機能と、
を実現させる構造設計支援プログラム。
【請求項2】
前記第一モデルは、前記構造物において定義される第一方向に沿って配置される第一構成要素に関する前記生成データを生成する工程と、前記構造物において定義され、前記第一方向と交差する第二方向に沿って配置される第二構成要素に関する前記生成データを生成する工程とを分ける
請求項1に記載の構造設計支援プログラム。
【請求項3】
前記第一モデル、前記第二モデル及び前記第三モデルの少なくとも一つはニューラルネットワーク及び注意機構の少なくとも一方を含む
請求項1又は請求項2に記載の構造設計支援プログラム。
【請求項4】
構造物の構造を設計する際に満たされるべき条件及び前記構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得する条件データ取得部と、
前記条件データにより示される
条件の下、機械学習装置として前記構造物の構造を設計し、前記構造物の構造を示す生成データを生成し、重みを固定した第三モデルに連結されており、
第二誤差データにより学習する第一モデルと、
前記第一モデルにより生成される生成データを取得する生成データ取得部と、
前記生成データと、前記条件データにより構造計算結果データを出力する構造計算部と、
前記生成データから第一構造計算結果推定データを生成し、第一誤差データにより学習する第二モデルと、
前記構造計算結果データ及び前記第一構造計算結果推定データから前記第一誤差データを生成して出力する第一誤差算定部と、
前記第二モデルから重みデータを取得する重みデータ取得部と、
前記重みデータにより前記第二モデルと同一の構成及び同一の重みを有し、前記生成データから第二構造計算結果推定データを生成して出力する第三モデルと、
前記条件データの少なくとも一部及び前記第二構造計算結果推定データから
前記第二誤差データを算出する第二誤差算定部と、
を備える構造設計支援装置。
【請求項5】
前記第二誤差データに基づいて重みが更新された前記第一モデルは、前記条件データを使用して前記構造物の構造を設計し、前記構造物の構造を設計した結果を示す生成データを出力する
請求項4に記載の構造設計支援装置。
【請求項6】
構造物の構造を設計する際に満たされるべき条件及び前記構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得するステップと、
前記条件データにより示される
条件の下、
前記構造物の構造を示す生成データを生成するモデルであって第二誤差データにより学習するモデルである第一モデルが、機械学習装置として前記構造物の構造を設計し
、生成した前記生成データを取得するステップと、
前記生成データと、前記条件データにより構造計算装置を使用して構造計算結果データを出力するステップと
、
前記生成データから第一構造計算結果推定データを生成するモデルであって第一誤差データにより学習するモデルである第二モデルが生成する前記第一構造計算結果推定データと、前記構造計算結果データ
とに基づいて、第一誤差データを生成して出力するステップと、
前記第一誤差データ
に基づいて前記第二モデルの重みを更新することにより学習するステップと、
前記第二モデルから
更新後の重みデータを取得するステップと、
前記第二モデルと同一の構成を有し、前記第一モデルに連結されたモデルであって、前記生成データから第二構造計算結果推定データを生成して出力するモデルである第三モデルに、前記重みデータをコピーする
ことにより、前記第三モデルを、前記第二モデルと同一の重みを有するモデルにするステップと、
前記条件データの少なくとも一部及び第二構造計算結果推定データから第二誤差データを算出するステップと、
前記第一モデルと前記第三モデルを連結した連結モデルについて、前記第二誤差データから前記連結モデルのうち前記第一モデルの重みのみを更新することにより学習するステップと、
前記第一モデル及び前記第二モデルの少なくとも一方を学習済モデルとして取得するステップと、
を含む構造設計支援方法。
【請求項7】
前記第二誤差データに基づいて重みが更新された前記第一モデルが、前記条件データを使用して前記構造物の構造を設計し、前記構造物の構造を設計した結果を示す生成データを出力するステップを更に含む請求項6に記載の構造設計支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、構造設計支援プログラム、構造設計支援装置及び構造設計支援方法に関する。
【背景技術】
【0002】
近年、構造物、例えば、建物、自動車、橋梁、集積回路を設計する作業の高度化が進んでいるため、これらの設計を支援する技術が注目を集めている。このような技術の一例として、例えば、特許文献1に開示されている設計装置が挙げられる。この設計装置は、コンピュータが柱、梁及び耐力壁を少なくとも含む構造部材の少なくとも一つについて、遺伝的アルゴリズムに基づいて、設計因子の少なくとも一つの最適解を計算する最適化計算工程を含んでいる。また、この設計装置は、遺伝的アルゴリズムを使用しているため、様々な問題に適用され得るという利点を有する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述した設計装置は、遺伝的アルゴリズムを使用しているため、局所最適に陥っている構造を算出してしまうことがある。また、上述した設計装置は、個々の問題ごとに最適化を実行する必要があるため、構造の算出に長い時間を必要とすることがある。
【0005】
本発明は、上述した事情に鑑みてなされたものであり、構造物の構造を設計する作業をより手厚く支援することができる構造設計支援プログラム、構造設計支援装置及び構造設計支援方法を提供しようとするものである。
【課題を解決するための手段】
【0006】
本発明の一態様は、コンピュータに、構造物の構造を設計する際に満たされるべき条件及び前記構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得する条件データ取得機能と、前記条件データにより示される条件の下、機械学習装置として前記構造物の構造を設計し、前記構造物の構造を示す生成データを生成し、重みを固定した第三モデルに連結されており、第二誤差データにより学習する第一モデルと、前記第一モデルにより生成される生成データを取得する生成データ取得機能と、前記生成データと、前記条件データにより構造計算結果データを出力する構造計算機能と、前記生成データから第一構造計算結果推定データを生成し、第一誤差データにより学習する第二モデルと、前記構造計算結果データ及び前記第一構造計算結果推定データから前記第一誤差データを生成して出力する第一誤差算定機能と、前記第二モデルから重みデータを取得する重みデータ取得機能と、前記重みデータにより前記第二モデルと同一の構成及び同一の重みを有し、前記生成データから第二構造計算結果推定データを生成して出力する第三モデルと、前記条件データの少なくとも一部及び前記第二構造計算結果推定データから前記第二誤差データを算出する第二誤差算定機能と、を実現させる構造設計支援プログラムである。
【0007】
また、上述した構造設計支援プログラムにおいて、前記第一モデルは、前記構造物において定義される第一方向に沿って配置される第一構成要素に関する前記生成データを生成する工程と、前記構造物において定義され、前記第一方向と交差する第二方向に沿って配置される第二構成要素に関する前記生成データを生成する工程とを分けてもよい。
【0008】
また、上述した構造設計支援プログラムにおいて、前記第一モデル、前記第二モデル及び前記第三モデルの少なくとも一つはニューラルネットワーク及び注意機構の少なくとも一方を含んでいてもよい。
【0009】
本発明の一態様は、構造物の構造を設計する際に満たされるべき条件及び前記構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得する条件データ取得部と、前記条件データにより示される条件の下、機械学習装置として前記構造物の構造を設計し、前記構造物の構造を示す生成データを生成し、重みを固定した第三モデルに連結されており、第二誤差データにより学習する第一モデルと、前記第一モデルにより生成される生成データを取得する生成データ取得部と、前記生成データと、前記条件データにより構造計算結果データを出力する構造計算部と、前記生成データから第一構造計算結果推定データを生成し、第一誤差データにより学習する第二モデルと、前記構造計算結果データ及び前記第一構造計算結果推定データから前記第一誤差データを生成して出力する第一誤差算定部と、前記第二モデルから重みデータを取得する重みデータ取得部と、前記重みデータにより前記第二モデルと同一の構成及び同一の重みを有し、前記生成データから第二構造計算結果推定データを生成して出力する第三モデルと、前記条件データの少なくとも一部及び前記第二構造計算結果推定データから前記第二誤差データを算出する第二誤差算定部と、を備える構造設計支援装置である。
【0010】
また、上述した構造設計支援装置において、前記第二誤差データに基づいて重みが更新された前記第一モデルは、前記条件データを使用して前記構造物の構造を設計し、前記構造物の構造を設計した結果を示す生成データを出力してもよい。
【0011】
本発明の一態様は、構造物の構造を設計する際に満たされるべき条件及び前記構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得するステップと、前記条件データにより示される条件の下、前記構造物の構造を示す生成データを生成するモデルであって第二誤差データにより学習するモデルである第一モデルが、機械学習装置として前記構造物の構造を設計し、生成した前記生成データを取得するステップと、前記生成データと、前記条件データにより構造計算装置を使用して構造計算結果データを出力するステップと、前記生成データから第一構造計算結果推定データを生成するモデルであって第一誤差データにより学習するモデルである第二モデルが生成する前記第一構造計算結果推定データと、前記構造計算結果データとに基づいて、第一誤差データを生成して出力するステップと、前記第一誤差データに基づいて前記第二モデルの重みを更新することにより学習するステップと、前記第二モデルから更新後の重みデータを取得するステップと、前記第二モデルと同一の構成を有し、前記第一モデルに連結されたモデルであって、前記生成データから第二構造計算結果推定データを生成して出力するモデルである第三モデルに、前記重みデータをコピーすることにより、前記第三モデルを、前記第二モデルと同一の重みを有するモデルにするステップと、前記条件データの少なくとも一部及び第二構造計算結果推定データから第二誤差データを算出するステップと、前記第一モデルと前記第三モデルを連結した連結モデルについて、前記第二誤差データから前記連結モデルのうち前記第一モデルの重みのみを更新することにより学習するステップと、前記第一モデル及び前記第二モデルの少なくとも一方を学習済モデルとして取得するステップと、を含む構造設計支援方法である。
【0012】
また、上述した構造設計支援方法は、前記第二誤差データに基づいて重みが更新された前記第一モデルが、前記条件データを使用して前記構造物の構造を設計し、前記構造物の構造を設計した結果を示す生成データを出力するステップを更に含んでいてもよい。
【発明の効果】
【0013】
本発明によれば、構造物の構造を設計する作業をより手厚く支援することができる。
【図面の簡単な説明】
【0014】
【
図1】実施形態に係る構造設計支援プログラムが備える機能の一例を示す図である。
【
図2】実施形態に係る構造設計支援プログラムが実行する処理の一例を示す概念図である。
【
図3】実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の一階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図4】実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の二階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図5】実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の一階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図6】実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の二階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図7】実施形態に係る学習済モデル取得機能が実行する処理の一例を示す概念図である。
【
図8】実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階における機械学習装置のエポック数と第一誤差算定機能による損失関数の値との関係の一例を示す図である。
【
図9】実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階における機械学習装置のエポック数と第二誤差算定機能による損失関数の値との関係の一例を示す図である。
【
図10】実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階においてテストデータが入力された場合における機械学習装置のエポック数と第二誤差算定機能による損失関数の値との関係の一例を示す図である。
【
図11】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のX通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図12】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のX通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図13】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のY通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図14】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のY通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図15】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のX通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図16】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のX通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図17】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のY通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図18】実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のY通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図19】実施形態に係る二階建ての建物の一例を示す図である。
【
図20】実施形態に係る構造設計支援プログラムが
図19に示した建物の一階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図21】実施形態に係る構造設計支援プログラムが
図19に示した建物の二階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図22】実施形態に係る構造設計支援プログラムが
図19に示した建物の一階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図23】実施形態に係る構造設計支援プログラムが
図19に示した建物の二階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
【
図24】実施形態に係る構造設計支援プログラムが機械学習装置により使用される学習済モデルを再学習させる段階における機械学習装置のエポック数と損失関数の値との関係の一例を示す図である。
【
図25】実施形態に係る構造設計支援プログラムが学習済モデルを再学習させる段階における機械学習装置のエポック数と損失関数の値との関係の一例を示す図である。
【
図26】
図19に示した建物の一階のX通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図27】
図19に示した建物の二階のX通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図28】
図19に示した建物の一階のY通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図29】
図19に示した建物の二階のY通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【
図30】
図19に示した建物の一階のX通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図31】
図19に示した建物の二階のX通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図32】
図19に示した建物の一階のY通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図33】
図19に示した建物の二階のY通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【
図34】
図34は、実施形態に係る構造設計支援プログラムが学習フェーズにおいて実行する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0015】
[実施形態]
本発明の実施形態について、図面を参照しながら説明する。
図1は、実施形態に係る構造設計支援プログラムが備える機能の一例を示す図である。
図2は、実施形態に係る構造設計支援プログラムが実行する処理の一例を示す概念図である。
図1及び
図2に示すように、構造設計支援プログラム10は、条件データ取得機能11と、第一モデル102と、生成データ取得機能103と、構造計算機能104と、第二モデル105と、第一誤差算定機能106と、重みデータ取得機能107と、第三モデル108と、第二誤差算定機能109と、学習済モデル取得機能110とを備える。
【0016】
構造設計支援プログラム10が有する機能の少なくとも一部は、例えば、CPU(Central Processing Unit)等のハードウェアプロセッサが記憶装置に格納されている構造設計支援プログラム10を読み出して実行することにより実現される。なお、ここで言う記憶装置は、例えば、ハードディスクドライブ(HDD:Hard Disk Drive)、ソリッドステートドライブ(SSD:Solid State Drive)、フラッシュメモリ(Flash Memory)、ROM(Read Only Memory)である。
【0017】
条件データ取得機能11は、構造物の構造を設計する際に満たされるべき条件及び構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得する。ここで言う構造物は、例えば、建物、自動車、橋梁、集積回路、分子である。また、条件データは、例えば、前提条件として、構造物の意匠、構造物の骨組み及び構造物の主要な構成要素のレイアウトの少なくとも一つに要求される条件を規定するデータである。さらに、条件データは、構造物を構成する材料又は部品について、例えば、許容する荷重、変形量の制限値、透過するエネルギー、吸収するエネルギーを規定するデータである。
【0018】
条件データにより示される前提条件は、構造物が建物である場合、例えば、外壁、内壁、床スラブ及び窓の少なくとも一つに関して形状、寸法、材質及び位置の少なくとも一つに課されている条件を示すデータである。例えば、条件データは、外壁又は内壁が存在しているため、耐力壁を配置することが可能な箇所に耐力壁を配置することを推奨する度合いを示す値に、係数「1」を掛けることを条件とするデータである。また、例えば、条件データは、外壁又は内壁が存在していないため、耐力壁を配置することが不可能な箇所に耐力壁を配置することを推奨する度合いを示す値に、係数「0」を掛けることを条件とするデータである。或いは、条件データは、第一方向に沿った外壁及び内壁各々について少なくとも一つの耐力壁を配置し、第一方向と交差する第二方向に沿った外壁及び内壁各々について少なくとも一つの耐力壁を配置すること条件とするデータである。なお、条件データは、例えば、耐力壁の形状、寸法、材質及び位置の少なくとも一つに課されている条件を示すデータであってもよい。
【0019】
また、条件データより示される前提条件は、構造物が建物であり、耐力壁を適切に配置したい場合、好ましい耐力壁の検定値として「0.9」を与えてもよく、耐力壁が配置された後に算定される建物の各階の偏心率の好ましい値として「0.0」を与えてもよい。なお、ここで言う耐力壁の検定値は、耐力壁に加わる外力に対する耐力壁の耐力の比率である。
【0020】
条件データのうち構造物の構造を設計する際に満たされるべき条件は、構造物が建物であり、耐力壁を適切に配置したい場合、耐力壁の検定値の上限として「1.0」を与えてもよく、耐力壁が配置された後に算定される建物の各階の偏心率の上限として「0.3」、「0.15」等の値を与えてもよい。
【0021】
図2に示すように、条件データ取得機能101は、条件データを取得した後、条件データの少なくとも一部を第一モデル102、第二モデル105、構造計算機能104、第三モデル108、第一誤差算定機能106及び第二誤差算定機能109に参照させる。
【0022】
第一モデル102は、条件データにより示される条件の下、
図2に示した機械学習装置として構造物の構造を設計し、構造物の構造を示す生成データを生成する。例えば、第一モデル102は、条件データが入力されるニューラルネットワークを使用して構造物の構造を設計し、
図3から
図6に示した生成データを生成する。また、第一モデル102は、重みを固定した第三モデル108に連結されており、後述する第二誤差データにより学習する。さらに、第一モデル102は、ニューラルネットワーク及び注意機構の少なくとも一方を含んでいてもよい。なお、第一モデル102は、学習可能なモデル、すなわち重みを更新可能なモデルである。
【0023】
図3は、実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の一階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図4は、実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の二階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図5は、実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の一階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図6は、実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階で生成され、建物の二階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図3から
図6に示した生成データは、条件データに係る建物を上方から見た場合に、第一モデルが耐力壁を配置した方が好ましいと判定した位置を示しており、黒に近い色で示された位置である程、耐力壁を配置することが強く推奨されている位置となっている。
【0024】
また、第一モデル102は、
図3に示した生成データを生成する工程と、
図4に示した生成データを生成する工程とを分けてもよい。同様に、第一モデル102は、
図5に示した生成データを生成する工程と、
図6に示した生成データを生成する工程とを分けてもよい。つまり、第一モデル102は、建物において定義されるX通り方向に沿って配置される耐力壁に関する生成データを生成する工程と、建物において定義され、X通り方向と交差するY通り方向に沿って配置される耐力壁に関する生成データを生成する工程とを分けてもよい。X通り方向は、構造物において定義される第一方向の一例である。X通り方向に沿って配置される耐力壁は、構造物の構成要素であり、第一方向に沿って配置される第一構成要素の一例である。同様に、Y通り方向は、構造物において定義される第二方向の一例である。Y通り方向に沿って配置される耐力壁は、構造物の構成要素であり、第二方向に沿って配置される第二構成要素の一例である。
【0025】
生成データ取得機能103は、
図2に示すように、第一モデル102に条件データを入力することにより生成データを取得し、当該生成データを構造計算機能104、第二モデル105及び第三モデル108に入力する。
【0026】
構造計算機能104は、条件データと生成データを入力として構造計算を実行し、構造計算結果を示す構造計算結果データを出力する。
【0027】
第二モデル105は、条件データと生成データを入力として第一構造計算結果推定データを出力する。また、第二モデル105は、ニューラルネットワーク及び注意機構の少なくとも一方を含んでいてもよい。なお、第二モデル105は、学習可能なモデル、すなわち重みを更新可能なモデルである。
【0028】
第一誤差算定機能106は、構造計算結果データ及び第一構造計算結果推定データを入力として第一誤差データを生成して出力する。
【0029】
第二モデル105は、第一誤差データに基づき、誤差逆伝搬法により重みを更新する。これにより、第二モデル105は、構造計算機能104を有する構造計算装置に近しい関数として学習される。
【0030】
重みデータ取得機能107は、第二モデル105から第二モデル105の重みを示す重みデータを取得する。
【0031】
第三モデル108は、第二モデル105から取得された重みデータにより示される重みを第三モデル103自身の重みとしてコピーする。したがって、第三モデル108は、重みデータにより第二モデルと同一の構成及び同一の重みを有する。また、第三モデル108は、生成データから第二構造計算結果推測データを生成して出力する。なお、第三モデル108は、学習不可能なモデル、すなわち重みを更新不可可能なモデルである。
【0032】
第一モデル102と第三モデル108を連結したモデルは、条件データを入力として第二構造計算結果推定データを出力する。なお、以下の説明では、第一モデル102と第三モデル108を連結したモデルを連結モデルと称することがある。
【0033】
第二誤差算定機能109は、条件データの少なくとも一部及び第二構造計算結果推測データから第二誤差データを算出して出力する。ここで、条件データの少なくとも一部は、条件データのうち望ましい評価結果である。
【0034】
連結モデルは、第二誤差データに基づき、誤差逆伝搬法により重みを更新する。ここで連結モデルのうち、第三モデル108については重みが固定されているため、第一モデル102のみ重みが更新される。
【0035】
構造設計支援プログラム10は、上述した一連の処理を繰り返すことにより、第二モデル105が更に構造計算機能104を有する構造計算装置に近い出力をするようにし、第一モデル102が更に好ましい構造計算結果を得られる生成データを出力するようにする。
【0036】
ここで、構造計算機能104を有する構造計算装置について、構造計算結果と、望ましい評価結果の差から算定される誤差データから誤差逆伝搬法を用いて第一モデル102を学習させるシステムも考えられる。しかしながら、そのシステムを実現させるためには、構造計算装置を誤差逆伝搬法の適用可能な関数としてプログラムを書き換える必要があり、当該プログラムを改造するコストは大きい。そこで、上述した手法を用いることで、従来のプログラム資産を維持しながら手厚い設計支援が可能となる。導入コストを抑制できることから産業上の利用価値は高い。
【0037】
類似の生成モデルとして、敵対的生成ネットワークという方法が知られている。敵対的生成ネットワークは、画像を生成する生成モデルと、その真偽を判定する判定モデルを組み合わせることで、生成モデルと判定モデルが均衡を保ちながら学習する。ハイパーパラメータ等を適切に設定することで、質の高い生成画像を得られることが知られている。本発明では、この仕組みを応用し、設計条件を入力として生成データを得る生成モデルと、生成データについてその性能を評価するシステムと、その評価結果を教師データとして生成データの評価を推定する評価結果推定モデルからなる。ここで、評価結果推定モデルの重みを固定したモデルと生成モデルを連結し、望ましい評価結果を教師データとして生成モデルを学習させる。これにより生成モデルは、より望ましい評価結果を得られるよう学習される。言い換えれば、敵対的生成ネットワークの正解ラベルの真偽値の代わりに、望ましい評価指標値を目標として多値の回帰問題としている。
【0038】
図7は、実施形態に係る学習済モデル取得機能が実行する処理の一例を示す概念図である。
図7に示すように、学習済モデル取得機能110は、第一モデル102を第一学習済モデルとして取得する処理及び第二モデル105を第二学習済モデルとして取得する処理の少なくとも一方を行う。
【0039】
次に、
図8から
図18を参照しながら構造設計支援プログラム10が上述した手法により学習済モデルを生成する段階における損失関数の値、偏心率及び耐力壁検定値について説明する。
【0040】
図8は、実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階における機械学習装置のエポック数と第一誤差算定機能による損失関数の値との関係の一例を示す図である。
図8の横軸は、エポック数を示している。
図8の縦軸は、第一モデル102と第三モデル108を連結したモデルで、トレーニングデータを用いて学習させた際の損失関数の値を示している。
【0041】
ここで言うエポック数は、条件データ取得機能11、第一モデル102、生成データ取得機能103、構造計算機能104、第二モデル105、第一誤差算定機能106、重みデータ取得機能107、第三モデル108及び第二誤差算定機能109により上述した処理が実行された回数である。
【0042】
また、ここで言う損失関数の値は、上述した通り、第二構造計算結果推定データと、構造計算結果データのうち望ましい構造計算結果とを比較して第二誤差算定機能に組込まれた損失関数により算出された損失関数の値である。
図8に示した点線は、各エポック数についての損失関数の値を表している。また、
図8に示した実線は、
図8に示した点線上の各点により表されている損失関数の値の移動平均を表している。
図8に示すように、エポック数が増加するに従い、損失関数の値が減少し、第一モデル102の学習が進んでいることが分かる。ここで、第一モデル102と第三モデル108は、連結して学習させる。ただし、第三モデル108は、重みが固定されていることから、第一モデル102のみ学習されることとなる。
【0043】
図9は、実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階における機械学習装置のエポック数と第二誤差算定機能による損失関数の値との関係の一例を示す図である。
図9は、横軸がエポック数を示しており、縦軸が第二モデル105について学習させた際の損失関数の値を示している。
【0044】
ここで言うエポック数は、条件データ取得機能11、第一モデル102、生成データ取得機能103、構造計算機能104、第二モデル105、第一誤差算定機能106、重みデータ取得機能107、第三モデル108及び第二誤差算定機能109により上述した処理が実行された回数である。
【0045】
また、ここで言う損失関数の値は、構造計算結果データと、第一構造計算結果推定データとを比較して、第一誤差算定機能に組込まれた損失関数により算定された損失関数の値である。
図9に示した点線は、各エポック数についての損失関数の値を表している。また、
図9に示した実線は、
図9に示した点線上の各点により表されている損失関数の値の移動平均を表している。
図9に示すように、エポック数が増加するに従い、損失関数の値が減少し、第二モデル105の学習が適切に進行していることが分かる。
【0046】
図10は、実施形態に係る構造設計支援プログラムが学習済モデルを生成する段階においてテストデータが入力された場合における機械学習装置のエポック数と第二誤差算定機能による損失関数の値との関係の一例を示す図である。
図10の横軸は、テストデータが入力された場合におけるエポック数を示している。
図10の縦軸は、第一モデル102と第三モデル108を連結したモデルで、テストデータを用いて生成データを生成させて第二構造計算結果推定データを出力させた際の損失関数の値を示している。
【0047】
ここで言うエポック数は、条件データ取得機能11、第一モデル102、生成データ取得機能103、構造計算機能104、第二モデル105、第一誤差算定機能106、重みデータ取得機能107、第三モデル108及び第二誤差算定機能109により上述した処理が実行された回数である。
【0048】
また、ここで言う損失関数の値は、テストデータが入力された場合において、第二構造計算結果推定データと、構造計算結果データのうち望ましい構造計算結果とを比較して第二誤差算定機能109に組込まれた損失関数により算出された損失関数の値である。
【0049】
図10に示した点線は、各エポック数についての損失関数の値を表している。また、
図10に示した実線は、
図10に示した点線上の各点により表されている損失関数の値の移動平均を表している。
図10に示すように、エポック数が5000を表す5kを超えると、エポック数が増加するに従い、損失関数の値が減少している。テストデータは、学習に用いたトレーニングデータに含まれていない。つまり、未知のデータについても適切な推測ができており、いわゆる汎化能力を獲得していることが分かる。
【0050】
図11は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のX通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
図12は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のX通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
図13は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のY通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
図14は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のY通り方向について第三モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【0051】
図11から
図14の横軸は、エポック数を示している。ここで言うエポック数は、条件データ取得機能11、第一モデル102、生成データ取得機能103、構造計算機能104、第二モデル105、第一誤差算定機能106、重みデータ取得機能107、第三モデル108及び第二誤差算定機能109により上述した処理が実行された回数である。
【0052】
図11から
図14の縦軸は、学習済モデルとしての第二モデル105により算出された構造物の構造の偏心率を示している。偏心率は、構造物の重心と剛心と隔たりのねじり抵抗に対する割合である。
【0053】
図11から
図14に示した点線は、いずれも各エポック数についての偏心率を表している。また、
図11から
図14に示した実線は、いずれも
図11から
図14に示した点線上の各点により表されている偏心率の移動平均を表している。
図11から
図14に示すように、エポック数が増加するに従い、偏心率が概ね0.3以下の範囲で若干減少していることが分かる。つまり、
図11から
図14を参照すると、構造設計支援プログラム10が第二モデル105の学習を進めるに従い、偏心率が小さな構造を示す構造設計データを出力可能な第二モデル105を生成することができるようになることが分かる。
【0054】
図15は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のX通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
図16は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のX通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
図17は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の一階のY通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
図18は、実施形態に係る構造設計支援プログラムが学習済モデルとしての第一モデル及び第二モデルを生成する段階において、当該第一モデル及び第二モデルの学習に係る建物の二階のY通り方向について第三モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【0055】
図15から
図18は、横軸がエポック数を示しており、縦軸が第二モデル105により算出された構造物の構造の耐力壁検定値を示している。
図15から
図18に示した点線は、いずれも各エポック数についての耐力壁検定値を表している。また、
図15から
図18に示した実線は、いずれも
図15から
図18に示した点線上の各点により表されている耐力壁検定値の移動平均を表している。耐力壁検定値は、耐力壁が有する耐力の大きさと耐力壁に加えられる外力の大きさとの比率であり、耐力壁が不足している場合、1を超える値となり、耐力壁Bが多過ぎる場合、小さな値となり、0.9程度の値となることが好ましい。
図15から
図18に示すように、エポック数に増加するに従い、耐力壁検定値が1未満の値に近づいていることが分かる。つまり、
図15から
図18を参照すると、構造設計支援プログラム10が第二モデル105の学習を進めるに従い、耐力壁検定値が好適な値を示すような構造を示す構造設計データを出力可能な学習済モデルを生成することができるようになることが分かる。
【0056】
また、構造設計支援プログラム10は、第二モデル105が使用する学習済モデルの学習が一定以上進行した場合、特定の建物から条件データを抽出し、当該条件データを使用して第二モデル105を再学習させてもよい。当該条件データは、条件データ取得機能11により取得される。
【0057】
図19は、実施形態に係る二階建ての建物の一例を示す図である。
図19に示した建物Hは、上述した構造物の一例であり、外壁E、内壁G、床スラブF1、床スラブF2、床スラブF3、窓W1及び窓W2を備える。床スラブF1は、建物Hの一階の床構造を形成し、床に垂直な荷重を支える板状の部材である。床スラブF2は、建物Hの二階の床構造を形成し、床に垂直な荷重を支える板状の部材である。床スラブF3は、建物Hの屋上の構造を形成し、当該屋上に垂直な荷重を支える板状の部材である。窓W1は、外壁Eのうち建物Hの一階部分に設置された窓である。窓W2は、外壁Eのうち建物Hの二階部分に設置された窓である。また、建物Hは、外壁Eのうち窓W1、窓W2が設置されていない部分及び内壁Gの少なくとも一方の一部に耐力壁Bが設置される。
【0058】
第一モデル102は、条件データにより示される条件の下、機械学習装置として
図19に示した建物Hの構造を設計し、構造物の構造を示す生成データを生成する。例えば、第一モデル102は、
図20から
図23に示した構造データを生成する。
【0059】
図20は、実施形態に係る構造設計支援プログラムが
図19に示した建物の一階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図21は、実施形態に係る構造設計支援プログラムが
図19に示した建物の二階のX通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図22は、実施形態に係る構造設計支援プログラムが
図19に示した建物の一階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図23は、実施形態に係る構造設計支援プログラムが
図19に示した建物の二階のY通り方向において耐力壁を配置することが好ましいと判定した位置を示す生成データの一例を示す図である。
図20から
図23に示した生成データは、
図19に示した建物Hを上方から見た場合に、構造設計支援プログラムが
図19に示した建物の一階のX通り方向においてが耐力壁を配置した方が好ましいと判定した位置を示しており、黒に近い色で示された位置である程、耐力壁を配置することが強く推奨されている位置となっている。
【0060】
また、第一モデル102は、
図20に示した構造データを生成する工程と、
図21に示した構造データを生成する工程とを分けてもよい。同様に、構造データ生成機能12は、
図22に示した構造データを生成する工程と、
図23に示した構造データを生成する工程とを分けてもよい。
【0061】
構造設計支援プログラム10は、再学習を実行する場合も、上述した学習を実行する場合と同様に、条件データ取得機能11、第一モデル102、生成データ取得機能103、構造計算機能104、第二モデル105、第一誤差算定機能106、重みデータ取得機能107、第三モデル108及び第二誤差算定機能109による処理及び学習済モデル取得機能110による処理を実行する。
【0062】
次に、
図24から
図33を参照しながら構造設計支援プログラム10が上述した手法により学習済モデルを再学習させる段階における損失関数の値、偏心率及び耐力壁検定値について説明する。
【0063】
図24は、実施形態に係る構造設計支援プログラムが機械学習装置により使用される学習済モデルを再学習させる段階における機械学習装置のエポック数と損失関数の値との関係の一例を示す図である。
図24の横軸は、エポック数を示している。
図24の縦軸は、第二モデル105を再学習させた際の損失関数の値を示している。エポック数及び損失関数の値は、
図9の場合と同様である。
図24に示した点線は、各エポック数についての損失関数の値を表している。また、
図24に示した実線は、
図24に示した点線上の各点により表されている損失関数の値の移動平均を表している。
図24に示すように、エポック数が増加するに従い、損失関数の値が減少し、第二モデル105の再学習が適切に進行していることが分かる。
【0064】
図25は、実施形態に係る構造設計支援プログラムが学習済モデルを再学習させる段階における機械学習装置のエポック数と損失関数の値との関係の一例を示す図である。
図25の横軸は、エポック数を示している。
図25の縦軸は、学習済モデルの損失関数の値を示している。エポック数及び損失関数の値は、
図8の場合と同様である。
図25に示した点線は、各エポック数についての損失関数の値を表している。また、
図25に示した実線は、
図25に示した点線上の各点により表されている損失関数の値の移動平均を表している。
図25に示すように、エポック数が増加するに従い、損失関数の値が減少し、第一モデル102の再学習が適切に進行していることが分かる。
【0065】
図26は、
図19に示した建物の一階のX通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
図27は、
図19に示した建物の二階のX通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
図28は、
図19に示した建物の一階のY通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
図29は、
図19に示した建物の二階のY通り方向について再学習が進行している学習済モデルが推定した偏心率とエポック数との関係の一例を示す図である。
【0066】
図26から
図29の横軸は、エポック数を示している。
図26から
図29の縦軸は、再学習が進行している学習済モデルにより算出された構造物の構造の偏心率を示している。
図26から
図29に示した点線は、いずれも各エポック数についての偏心率を表している。また、
図26から
図29に示した実線は、いずれも
図26から
図29に示した点線上の各点により表されている偏心率の移動平均を表している。
図26から
図29に示すように、エポック数が増加するに従い、偏心率が減少していることが分かる。つまり、
図26から
図29を参照すると、構造設計支援プログラム10が第二モデル105の再学習を進行させるに従い、偏心率が小さな構造を示す構造設計データを出力可能な第二モデル105を生成することができるようになることが分かる。
【0067】
図30は、
図19に示した建物の一階のX通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
図31は、
図19に示した建物の二階のX通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
図32は、
図19に示した建物の一階のY通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
図33は、
図19に示した建物の二階のY通り方向について再学習が進行している学習済モデルが推定した耐力壁検定値とエポック数との関係の一例を示す図である。
【0068】
図30から
図33は、横軸がエポック数を示しており、縦軸が再学習が進行している学習済モデルにより算出された構造物の構造の耐力壁検定値を示している。
図30から
図33に示した点線は、いずれも各エポック数についての耐力壁検定値を表している。また、
図30から
図33に示した実線は、いずれも
図30から
図33に示した点線上の各点により表されている耐力壁検定値の移動平均を表している。
図30から
図33に示すように、エポック数に増加するに従い、耐力壁検定値が1未満の値に近づいていることが分かる。つまり、
図30から
図33を参照すると、構造設計支援プログラム10が第二モデル105の再学習を進行させるに従い、耐力壁検定値が好適な値を示すような構造を示す構造設計データを出力可能な第二モデル105を生成することができるようになることが分かる。
【0069】
次に、
図34を参照しながら実施形態に係る構造設計支援プログラム10が実行する処理の一例を説明する。
図34は、実施形態に係る構造設計支援プログラムが学習フェーズにおいて実行する処理の一例を示すフローチャートである。
図34に示した処理が一回実行される度に、上述したエポック数が1増加する。
【0070】
ステップS10において、条件データ取得機能11は、構造物の構造を設計する際に満たされるべき条件及び構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得する。
【0071】
ステップS20において、第一モデル102は、条件データにより示される前記条件の下、機械学習装置として構造物の構造を設計し、構造物の構造を示す生成データを生成する。
【0072】
ステップS30において、生成データ取得機能103は、第一モデルにより生成される生成データを取得する。
【0073】
ステップS40において、構造計算機能104は、生成データと、条件データにより構造計算装置を使用して構造計算結果データを出力する。
【0074】
ステップS50において、第二モデル105は、生成データから第一構造計算結果推定データを生成する。
【0075】
ステップS60において、第一誤差算定機能106は、構造計算結果データ及び第一構造計算結果推定データから第一誤差データを生成して出力する。
【0076】
ステップS70において、第二モデル105は、第一誤差データから第二モデルの重みを更新することにより学習する。
【0077】
ステップS80において、重みデータ取得機能107は、第二モデルから重みデータを取得する。
【0078】
ステップS90において、第三モデル108は、重みデータを第三モデルにコピーする。
【0079】
ステップS100において、第二誤差算定機能109は、条件データの少なくとも一部及び第二構造計算結果推定データから第二誤差データを算出する。
【0080】
ステップS110において、連結モデルは、第一モデルと第三モデルを連結した連結モデルについて、第二誤差データから連結モデルのうち第一モデルの重みのみを更新することにより学習する。
【0081】
ステップS120において、構造設計支援プログラム10は、終了条件が満たされているか否かを判定する。構造設計支援プログラム10は、終了条件が満たされていると判定した場合(ステップS120:YES)、処理を終了させる。一方、構造設計支援プログラム10は、終了条件が満たされていないと判定した場合(ステップS120:NO)、処理をステップS10に戻す。
【0082】
以上、実施形態に係る構造設計支援プログラム10について説明した。構造設計支援プログラム10は、条件データ取得機能101と、第一モデル102と、生成データ取得機能103と、構造計算機能104と、第二モデル105と、第一誤差算定機能106と、重みデータ取得機能107と、第三モデル108と、第二誤差算定機能109と、学習済モデル取得機能110とを備える。
【0083】
条件データ取得機能101は、構造物の構造を設計する際に満たされるべき条件及び構造物の構造を設計する際に参照されるべき前提条件を示す条件データを取得する。第一モデル102は、条件データにより示される条件の下、機械学習装置として構造物の構造を設計し、構造物の構造を示す生成データを生成し、重みを固定した第三モデルに連結されており、誤差データにより学習する。生成データ取得機能103は、第一モデルにより生成される生成データを取得する。構造計算機能104は、生成データと、条件データにより構造計算結果データを出力する。
【0084】
第二モデル105は、生成データから第一構造計算結果推定データを生成し、第一誤差データにより学習する。第一誤差算定機能106は、構造計算結果データ及び第一構造計算結果推定データから第一誤差データを生成して出力する。重みデータ取得機能107は、第二モデルから重みデータを取得する。第三モデル108は、重みデータにより第二モデルと同一の構成及び同一の重みを有し、生成データから第二構造計算結果推定データを生成して出力する。第二誤差算定機能109は、条件データの少なくとも一部及び第二構造計算結果推定データから第二誤差データを算出する。学習済モデル取得機能110は、第一モデル102を第一学習済モデルとして取得する処理及び第二モデル105を第二学習済モデルとして取得する処理の少なくとも一方を行う。
【0085】
したがって、構造設計支援プログラム10は、構造物の構造を設計する作業をより手厚く支援することができる。
【0086】
また、構造設計支援プログラム10は、構造物において定義される第一方向に沿って配置される第一構成要素に関する生成データを生成する工程と、構造物において定義され、第一方向と交差する第二方向に沿って配置される第二構成要素に関する生成データを生成する工程とを分ける。これにより、構造設計支援プログラム10は、例えば、
図9に示した処理の少なくとも一部で畳み込みを使用し、第一方向に沿って配置される第一構成要素と第二方向に沿って配置される第二構成要素とが接していたり、近接していたりする箇所があっても、生成データにより示される構造が不明瞭になってしまうことを避けることができる。
【0087】
なお、上述した実施形態では、
図1に示した各機能が構造設計支援プログラム10を読み出して実行するハードウェアプロセッサにより実現される場合を例に挙げて説明したが、これに限定されない。
【0088】
図1に示した機能の少なくとも一部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、GPU(Graphics Processing Unit)等の回路部(circuitry)を含むハードウェアにより実現されてもよい。或いは、
図1に示した機能の少なくとも一部は、ソフトウェアとハードウェアの協働により実現されてもよい。また、これらのハードウェアは、一つに統合されていてもよいし、複数に分かれていてもよい。
【0089】
また、
図1に示した機能の少なくとも一部がハードウェアを使用して実現される場合、
図2に示した構成要素の少なくとも一つは、当該ハードウェアに組み込まれていてもよい。さらに、
図2に示した構成要素の少なくとも一つは、ソフトウェアとして実現されてもよい。
【0090】
また、上述したニューラルネットワークは、注意機構(Attention Mechanism)が実装されていてもよい。一般的に、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)は、データの部分的な特徴を捉える性能に優れているという利点を有する。一方、畳み込みニューラルネットワークは、部分的な特徴が含まれている限り、当該部分的な特徴を組み合わせた全体の構成が不適切であっても適切な画像と誤認することがあるという欠点を有する。このような欠点を補うために、注意機構として、データの中から注視すべき部位を学習するモデルを学習モデルに付加するという手法が知られている。
【0091】
第一モデル102に含まれるニューラルネットワークに注意機構が実装されている場合、当該ニューラルネットワークは、構造物全体の構造のバランスを考慮しつつ、構造データを生成することができる。第二モデル105に含まれるニューラルネットワークに注意機構が実装されている場合、当該ニューラルネットワークは、構造物全体の構造のバランスを考慮しつつ、重みデータにより示される重みを学習することができる。また、第二モデル105に含まれるニューラルネットワークに注意機構が実装されている場合、当該ニューラルネットワークは、構造物全体の構造のバランスを考慮しつつ、推定データを生成することができる。つまり、構造設計支援プログラム10は、これらのニューラルネットワークの少なくとも一つに注意機構が実行されている場合、注意機構により構造物全体の構造のバランスを考慮しつつ、学習済モデル及び構造設計データを生成することができる。
【0092】
以上、本発明の実施形態について図面を参照して詳述した。ただし、本発明の実施形態の具体的な構成は、上述した実施形態に限定されず、本発明の要旨を逸脱しない範囲内において種々の組み合わせ、変形、置換及び設計変更の少なくとも一つを上述した実施形態に加えたものであってもよい。
【符号の説明】
【0093】
10…構造設計支援プログラム、101…条件データ取得機能、102…第一モデル、103…生成データ取得機能、104…構造計算機能、105…第二モデル、106…第一誤差算定機能、107…重みデータ取得機能、108…第三モデル、109…第二誤差算定機能、110…学習済モデル取得機能