(57)【要約】【課題】設計上のガイドラインとして守るべき判定ルールから、設計データの検証手順を生成することにより、設計を支援する技術を提供する【解決手段】本発明の代表的な設計支援装置の一つは、設計上のガイドラインとして判定ルールの要素を定義するための判定ルール定義部と、判定ルールの要素に関連付けて設計データを検証する手順（以下「検証手順」という）の要素である共通関数を記憶するデータベース部と、判定ルール定義部において定義された判定ルールの要素をデータベース部に照会し、取得された共通関数を組み合わせて、検証手順を生成する検証手順生成部とを備える。【選択図】図１
2020154505.tif 000002
【特許請求の範囲】
【請求項１】
設計上のガイドラインとして判定ルールの要素を定義するための判定ルール定義部と、
前記判定ルールの要素に関連付けて、設計データを検証する手順（以下「検証手順」という）の要素である共通関数を記憶するデータベース部と、
前記判定ルール定義部において定義された前記判定ルールの要素を前記データベース部に照会し、取得された前記共通関数を組み合わせて、前記検証手順を生成する検証手順生成部と、
を備えたことを特徴とする設計支援装置。
【請求項２】
請求項１に記載の設計支援装置において、
前記判定ルール定義部は、
前記判定ルールの要素を複数の階層に分けて構造化し、前記階層を辿りながら前記判定ルールの要素を定義するためのユーザインターフェースを提供する
ことを特徴とする設計支援装置。
【請求項３】
請求項１〜２のいずれか１項に記載の設計支援装置において、
前記判定ルール定義部は、
少なくとも『対象範囲（全体、部位など）→工程分類（組立、加工など）→製造分類（ねじ止めなど）→判定数（１箇所、２箇所など）→属性分類（点、線など）→判定対象（長さなど）→判定条件（以上、以下など）』の階層を辿りながら、前記判定ルールの要素を定義するためのユーザインターフェースを提供する
ことを特徴とする設計支援装置。
【請求項４】
請求項１〜３のいずれか１項に記載の設計支援装置において、
前記データベース部は、
過去の前記検証手順についてフィードバックされる検証成績を収集し、
前記検証手順生成部は、
前記検証手順の候補が複数ある場合、前記検証成績を提示し、前記検証成績を参考に前記検証手順を選択するユーザインターフェースを提供する
ことを特徴とする設計支援装置。
【請求項５】
請求項１〜４のいずれか１項に記載の設計支援装置において、
前記データベース部は、
過去の前記検証手順についてフィードバックされる検証成績を収集し、
前記検証手順生成部は、
前記検証成績を高める方向に前記共通関数を組み合わせて、前記検証手順を生成する
ことを特徴とする設計支援装置。
【請求項６】
請求項５に記載の設計支援装置において、
前記検証手順生成部は、
前記検証成績を高める方向の機械学習を行い、機械学習に基づいて前記共通関数を組み合わせて前記検証手順を生成する
ことを特徴とする設計支援装置。
【請求項７】
請求項１〜６のいずれか１項に記載の設計支援装置において、
前記判定ルール定義部は、
製造ルールライブラリ、保守ルールライブラリ、材料ルールライブラリ、製品ルールライブラリ、および拠点ルールライブラリの少なくとも１つから前記判定ルールの要素を取り込み、取り込んだ前記判定ルールの要素を定義可能とするユーザインターフェースを提供する
ことを特徴とする設計支援装置。
【請求項８】
請求項１〜７のいずれか１項に記載の設計支援装置において、
前記データベース部は、
過去の前記検証手順について採択率を収集し、
前記検証手順生成部は、
前記検証手順の候補が複数ある場合、前記採択率を提示し、前記採択率を参考に前記検証手順を選択するユーザインターフェースを提供する
ことを特徴とする設計支援装置。
【請求項９】
請求項１〜８のいずれか１項に記載の設計支援装置において、
前記検証手順は、前記設計データを形状により検証するための形状認識の手順である
ことを特徴とする設計支援装置。
【請求項１０】
コンピュータを、
請求項１〜９のいずれか１項に記載の前記判定ルール定義部、前記データベース部、および前記検証手順生成部として機能させる
ことを特徴とする設計支援プログラム。
【請求項１１】
設計上のガイドラインとして判定ルールの要素を定義するための判定ルール定義ステップと、
前記判定ルールの要素に関連付けて、設計データを検証する手順（以下「検証手順」という）の要素である共通関数をデータベース部に記憶するデータベースステップと、
前記判定ルール定義ステップにおいて定義された前記判定ルールの要素を前記データベース部に照会し、取得された前記共通関数を組み合わせて、前記検証手順を生成する検証手順生成ステップと、
を備えたことを特徴とする設計支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計支援装置、設計支援プログラムおよび設計支援方法に関する。
【背景技術】
【０００２】
従来、ＣＡＤ（Computer-Aided Design）システムを用いて、コンピュータ上で製品などの設計を行うことが知られている。
【０００３】
このＣＡＤ設計では、製品の製造時に問題になる、穴あけや曲げなどの加工のしやすさ、溶接やネジ締結などの組立のしやすさといったガイドラインを考慮することが好ましい。
さらに、ＣＡＤ設計では、製品の保守時に問題になる、点検のしやすさや治具のアクセスのしやすさといったガイドラインを考慮することも望ましい。
【０００４】
ここでは、これら設計ガイドラインは、１つの製品に対して数万程度のルールが存在する場合もあり、通常、文章や図、表で定義される。
【０００５】
例えば、設計ガイドラインには、「板厚〇ｍｍのステンレス鋼材料の穴径は△以上とする」、「部品Ｐａと部品Ｐｂの距離はある一定距離以上離すこと」のようなルールが存在する。この設計ガイドラインの中から、１つ目の例に示すようにＣＡＤモデルでチェックできる定量的なルールを、判定ルールと呼ぶ。
【０００６】
これらの判定ルールをＣＡＤモデル、つまりＣＡＤの設計データ上で検証するには、プログラム上で実行可能な複数の手順からなる検証手順を１から逐一生成する必要があった。
【０００７】
先に述べた例であれば、「板厚〇ｍｍのステンレス鋼材料の穴径は△以上とする」が判定ルールに相当する。その判定ルールからＣＡＤモデルに対する形状認識の手順を逐一書き下し、プログラム上でチェック可能な検証手順を作成する必要があった。
【０００８】
なお、特許文献１には、「三次元モデルの取付け方向の違反を検出して通知する」旨の技術が開示される。
また、特許文献２には、「自動設計の設計結果の可否を自動的に判定する」旨の技術が開示される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１１−２５３２６９号公報
【特許文献２】特開２００５−３０９７２３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
これら特許文献１，２では、検証手順を事前に生成しておけば、ＣＡＤモデルについて判定ルールを満たしているか否かを自動的にチェックすることができる。
しかしながら、特許文献１，２では、判定ルールから検証手順を生成する工程の技術について具体的な開示はない。
【００１１】
一般に、判定ルールは設計者の経験や勘に基づいて蓄積される経験知であることも多く、その判定ルールを、プログラム上で実行可能な検証手順に書き下すことは煩雑で面倒な作業である。
そこで本発明では、判定ルールから検証手順を生成する技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の代表的な設計支援装置の一つは、設計上のガイドラインとして判定ルールの要素を定義するための判定ルール定義部と、判定ルールの要素に関連付けて設計データを検証する手順（以下「検証手順」という）の要素である共通関数を記憶するデータベース部と、判定ルール定義部において定義された判定ルールの要素をデータベース部に照会し、取得された共通関数を組み合わせて、検証手順を生成する検証手順生成部とを備える。
【発明の効果】
【００１３】
本発明によれば、判定ルールから検証手順を生成することが可能になる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１４】
【図１】実施例１における設計支援装置１０の基本構成を示すブロック図である。
【図２】設計支援装置１０をコンピュータ上に実装した状態を示す図である。
【図３】データベース部１０５の内部データの一部を示す図である。
【図４】実施例１の動作を説明するフローチャートである。
【図５】判定ルール定義部１０４がユーザに提供するＧＵＩ画面を例示する図である。
【図６】実施例２における設計支援装置１０ａの基本構成を示すブロック図である。
【図７】ＣＡＤモデル１０７を例示する図である。
【図８】検証手順の生成を説明する図である。
【図９】検証手順のＡ案を示す図である。
【図１０】Ａ案による検証の様子を説明する図である。
【図１１】違反箇所の表示例を示す図である。
【図１２】検証手順のＢ案を示す図である。
【図１３】Ｂ案による検証の様子を説明する図である。
【発明を実施するための形態】
【００１５】
以下、図面を用いて本発明の実施例を説明する。
【実施例１】
【００１６】
図１は、実施例１における設計支援装置１０の基本構成を示すブロック図である。
【００１７】
同図において、設計支援装置１０は、設計ガイドライン１０３、判定ルール定義部１０４、データベース部１０５、検証手順生成部１０６、ＣＡＤモデル１０７、およびＣＡＤルールチェック部１０８などを備えて構成される。
【００１８】
設計ガイドライン１０３は、設計時に考慮すべきルールをまとめた知識データベースである。この設計ガイドライン１０３には、例えば製造ルールライブラリ１０１や保守ルールライブラリ１０２が含まれる。製造ルールライブラリ１０１は、製品の製造工程における加工や組立などに関するルールをまとめたものである。例えば、製造ルールライブラリ１０１には、穴あけや曲げ、ボルト締結や溶接などプロセスに関するルールが含まれる。一方、保守ルールライブラリ１０２は、製品の保守工程における点検部位への工具のアクセス性や分解のしやすさなどのルールをまとめたものである。
【００１９】
判定ルール定義部１０４は、ＣＡＤモデル上で検証する判定ルールの要素を定義するためのインターフェースを提供する。このインターフェースには、ユーザが設計ガイドライン１０３内のルールを参照または取り込むなどして要素を定義するためのユーザインターフェースと、過去に蓄積されたユーザ入力に基づいて設計ガイドライン１０３内のルールから判定ルールの要素を自動定義するためのインターフェースとが含まれる。
【００２０】
データベース部１０５には、判定ルールの各要素やその組み合わせに対応して、過去に生成された「ＣＡＤモデルを検証する手順（以下「検証手順」という）」の要素として、基本パーツ化されたコンピュータ上で個別に呼び出し可能な手続き関数（以下「共通関数」という）の群が自動または手動で収集ないし作成され記録される。
【００２１】
検証手順生成部１０６は、判定ルール定義部１０４において定義された判定ルールの要素をデータベース部１０５に照会し、対応する検証手順の要素である共通関数を組み合わせて、検証手順を生成する。その場合、過去に同様の判定ルールが存在すれば、その判定ルールの検証手順に使用した共通関数の組み合わせを自動で提示する。一方、これまでに存在しない判定ルールの場合、データベース部１０５を基に判定ルール定義部１０４で得た過去の入力の共通部分を組み合わせることで、新たな検証手順の複数候補を案として提示する。
【００２２】
例えば、検証手順生成部１０６は、機械学習を用いて、過去に検証成績の高かった（実績ある）検証手順に近いパターンを生成する。
【００２３】
また例えば、検証手順生成部１０６は、検証手順の候補案について、過去の検証成績の機械学習に基づいて検証成績を推定し、検証成績が高いと期待される検証手順の候補案を自動選別して生成する。
【００２４】
また例えば、検証手順生成部１０６は、遺伝的アルゴリズムを用いて検証成績が高くなる方向に共通関数の組み合わせを自動選択して、検証手順を生成する。
【００２５】
このように生成された検証手順の候補案は自動で提示され、ユーザはその中から検証手順を選択したり、検証手順を部分的に改変したりすることもできる。
【００２６】
生成された検証手順は、検証手順の要素である共通関数の群を順次ないし条件分岐して読出すシーケンスとして、ＣＡＤルールチェック部１０８に出力される。
【００２７】
ＣＡＤルールチェック部１０８は、ユーザが設計中または設計後のＣＡＤモデル１０７に対して検証手順のシーケンスを随時に実行し、ＣＡＤモデル１０７に存在する違反箇所を自動で特定して強調表示などで警告する。
【００２８】
図２は、設計支援装置１０をコンピュータ上に実装した状態を示す図である。
同図において、設計支援装置１０は、入力部３０および表示部３１を備えたコンピュータである処理部３２により構成される。
入力部３０および表示部３１は、ユーザに対してＧＵＩ（グラフィックユーザインターフェース）による操作環境を提供する。
【００２９】
処理部３２は、制御部３００、入力部３０より入力されるＣＡＤモデル１０７や判定ルールを取り込む入力インターフェース（以下「入力Ｉ／Ｆ」という）３０１、表示部３１を制御する表示制御部３０２、主記憶装置３０３、補助記憶装置３０４が、データバス３０５を介して相互に接続される。
【００３０】
主記憶装置３０３には、ＣＡＤモデル１０７、設計ガイドライン１０３、判定ルール定義部１０４、検証手順生成部１０６、およびＣＡＤルールチェック部１０８として制御部３００を機能させるための情報（プログラム）が記憶されている。補助記憶装置３０４には、データベース部１０５のデータおよびプログラムが記憶されている。
【００３１】
なお、処理部３２のコンピュータとしてのハードウェアの一部または全部については、ＤＳＰ（Digital Signal Processor）、ＦＰＧＡ（Field-Programmable Gate Array）、ＧＰＵ（Graphics Processing Unit）などで代替してもよい。また、ハードウェアの一部または全部をネットワーク上のサーバに集中または分散してクラウド配置し、複数のユーザがネットワークを介して共同使用してもよい。
【００３２】
図３は、データベース部１０５の内部データの一部を示す図である。
同図において、入力キーワード７０１は、判定ルール定義部１０４で定義される判定ルールの要素の１つまたは複数の組み合わせをキーワードで表したものである。
【００３３】
入力数値７０２は、判定ルールの要素の１つまたは複数の組み合わせを数値化して示したものである。データベース部１０５は、これらの入力キーワード７０１または入力数値７０２が入力されることによりデータの照会が可能になる。
【００３４】
判定方法７０３は、判定ルール定義部１０４で定義される判定ルールの内で判定条件に対応する１つまたは複数の条件データである。
【００３５】
検証手順のシーケンス７０４は、複数の共通関数を段階的に組み合わせたシーケンス（組み合わせや条件分岐などの実行データ）により構成される。
【００３６】
共通関数の中には、例えば与えられた属性や部品名を抽出する属性７０５ａや、線と点の距離を測定する線点距離７０５ｂが代表として挙げられる。また、共通関数の表に記載の数字は通し番号として機械学習をさせる際の分類に用いるものであって、数値自体に意味は持たない。
【００３７】
検証済みの検証手順のシーケンス７０４については、評価指標群７０９がＣＡＤシステムや製造装置や保守センターなどからフィードバックされる。評価指標群７０９は、適合率７０６、再現率７０７、および計算時間／モデル規模に７０８などの検証成績を含む。
【００３８】
この内、適合率７０６は、検証手順において違反とされた解答件数のうち、実際に違反であった正答件数の割合であって、検証の正しさ（誤りの少なさ）を示す検証成績である。
【００３９】
再現率７０７は、違反として検出すべき件数のうちで、実際に検出された件数の割合であって、検証の漏れの少なさを示す検証成績である。
【００４０】
計算時間／モデル規模７０８は、検証手順の実行に所要する計算時間を検証対象のモデル規模で正規化した値であって、検証手順の処理の重さを示す検証成績である。
【００４１】
なお、図３に示す他に、データベース部１０５には、検証手順について過去に採用されて実際に使用された実績として採択率も記録される。
【００４２】
図４は、実施例１の動作を説明するフローチャートである。
以下、図２及び図３の装置構成を参照しながら、図４に示すステップ番号に沿って説明する。
【００４３】
ステップＳ２０１：  処理部３２は、検証対象のＣＡＤモデル１０７を読み込む。
【００４４】
ステップＳ２０２：  判定ルール定義部１０４は、ユーザから判定ルールの要素について定義を取得する。
【００４５】
図５は、判定ルール定義部１０４がユーザに提供するＧＵＩ画面を説明する図である。
同図において、判定ルール定義部１０４は、表示部３１に対して、対象範囲６０１の要素（全体，特定範囲，特定部位など）を選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて対象範囲６０１を検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザはモデル全体を選択しているが、特定範囲を選択した際には座標等でチェック対象の範囲を限定してもよい。さらに、特定部位を選択した際には溶接点などの事前に定義してある属性を選択する、もしくはある部品に対して類似する形状を探索してチェック対象としても良い。
【００４６】
判定ルール定義部１０４は、対象範囲６０１について入力された要素に対応して、工程分類６０２の要素（製造工程の組立，加工、保守工程の解体など）を階層下の選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて工程分類６０２を検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザは溶接接合の判定ルールを定義するため、組立を選択する。
【００４７】
判定ルール定義部１０４は、工程分類６０２について入力された要素に対応して、製造分類６０３の要素（溶接，ネジ止め，接着，穴あけなど）を階層下の選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて製造分類６０３を検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザは溶接を選択する。
【００４８】
判定ルール定義部１０４は、製造分類６０３について入力された要素に対応して、判定数６０４の要素（１箇所，２箇所など）を階層下の選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて判定数６０４を検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザは、比較対象が２点の溶接点であるため、２箇所を選択する。
【００４９】
判定ルール定義部１０４は、入力された判定数６０４の数に対応して、１つ目の属性分類Ａの要素（点，線，面，穴，壁，端部など）を階層下の選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて１つ目の属性分類Ａを検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザは、比較対象の１つ目がスポットの溶接点であるため、点を選択する。
【００５０】
判定ルール定義部１０４は、入力された判定数６０４の数に対応して、２つ目の属性分類Ｂの要素（点，線，面，穴，壁，端部など）を階層下の選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて２つ目の属性分類Ｂを検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザは、比較対象の２つ目がスポットの溶接点であるため、点を選択する。
【００５１】
判定ルール定義部１０４は、入力された属性分類Ａ，Ｂの要素に対応して、判定対象６０７の要素（板厚，線長，距離，角度，数量，面積など）を階層下の選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて判定対象６０７を検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザは、溶接のスポット間の距離を検証するため、距離を選択する。
【００５２】
判定ルール定義部１０４は、入力された判定対象６０７の要素に対応して、違反箇所が満たす判定内容６０８の要素（閾値以下，閾値以上，指定範囲，指定値イコール，最大値，最小値など）を階層下の選択肢として提示する。ユーザは、定義しようとする判定ルールに基づいて判定内容６０８を検討し、入力部３０を介して選択肢のいずれかを入力する。図５では、ユーザは、溶接のスポット間の距離が閾値以下に近接することを違反箇所の判定条件とするため、閾値以下を選択する。
【００５３】
以上が、判定ルール定義部１０４において、ユーザが定義する内容である。ここでは選択項目は一例として示しており、これに限った項目ではない。また、該当の選択肢が存在しない場合は、非選択としても良い。
判定ルール定義部１０４は、このように階層ごとに定義された判定ルールの要素を検証手順生成部１０６に伝達する。
【００５４】
ステップＳ２０３：  検証手順生成部１０６は、判定ルールの要素の群をデータベース部１０５に照会し、過去に同一の判定ルールが存在したか否かを判定する。既存の判定ルールであった場合、検証手順生成部１０６は、ステップＳ２０４に動作を移行する。新規な判定ルールの場合、検証手順生成部１０６はステップＳ２０６に動作を移行する。
【００５５】
ステップＳ２０４：  検証手順生成部１０６は、既存の判定ルールに対して過去に生成された検証手順の有無をデータベース部１０５に照会する。既存の検証手順がない場合、検証手順生成部１０６はステップＳ２０６に動作を移行する。既存の検証手順が存在した場合、検証手順生成部１０６は、その検証手順についてフィードバックされた過去の検証成績（適合率７０６，再現率７０７，計算時間／モデル規模７０８など）をデータベース部１０５から取得する。この検証成績が所定の合格基準を超えない場合、検証手順生成部１０６はステップＳ２０６に動作を移行する。それ以外の場合、検証手順生成部１０６は、既存の検証手順を採用すると判断し、ステップＳ２０５に動作を移行する。
【００５６】
ステップＳ２０５：  検証手順生成部１０６は、既存の判定ルールに対して過去に生成された検証手順をデータベース部１０５から取得して採用する。既存の検証手順が複数存在する場合、検証手順生成部１０６は過去の検証成績または採択率の高い順に、検証手順の候補案をユーザに提示し、採用する検出手順の選択をユーザに委ねてもよい。検証手順生成部１０６は、採用された検証手順をＣＡＤルールチェック部１０８に伝達する。ＣＡＤルールチェック部１０８は、ステップＳ２０７に動作を移行する。
【００５７】
ステップＳ２０６：  検証手順生成部１０６は、ステップＳ２０２で定義された判定ルールの要素それぞれをデータベース部１０５に照会し、対応する共通関数をそれぞれ取得する。
【００５８】
一般に、判定ルールの１つの要素やその組み合わせに対して複数種類の共通関数が取得される。そのため、判定ルールの要素に対して共通関数の組み合わせを総当たりで作成した場合、多数の検証手順のシーケンスが発生する。
【００５９】
そこで、検証手順生成部１０６は、機械学習を用いて、過去に検証成績の高かった検証手順に近いパターンを生成する。例えば、検証手順生成部１０６は、遺伝的アルゴリズムを用いて検証成績が高くなる方向に共通関数の組み合わせを自動選択して、検証手順を生成する。
【００６０】
また例えば、検証手順生成部１０６は、検証手順の候補案について、過去の検証成績または採択率の機械学習に基づいて検証成績または採択率を推定し、検証成績または採択率が高いと推定される検証手順の候補案を自動選別して生成する。なお、検証成績および採択率を所定の重み付けで合成した評価関数を機械学習し、評価関数が高いと推定される検証手順の候補案を自動選別して生成してもよい。
【００６１】
このように生成された検証手順の候補案が複数ある場合、推定される検証成績や採択率の高い順に、検証手順の候補案をユーザに提示し、採用する検出手順の選択をユーザに委ねてもよい。
【００６２】
検証手順生成部１０６は、採用された検証手順をＣＡＤルールチェック部１０８に伝達する。ＣＡＤルールチェック部１０８は、ステップＳ２０７に動作を移行する。
【００６３】
ステップＳ２０７：  ＣＡＤルールチェック部１０８は、検証手順のシーケンスに従って、ＣＡＤモデル１０７の検証を試行する。
【００６４】
ステップＳ２０８：  ＣＡＤルールチェック部１０８は、検証手順の試行結果（違反箇所や違反の検出数や違反理由など）について評価を行う。
【００６５】
ここでは、ＣＡＤルールチェック部１０８がユーザに対して検証手順の試行結果を提示し、所望する判定ルールの検証がなされたか否かをユーザにアンケートすることにより、検証手順として適当か否かの判断過程をユーザから収集してもよい。
【００６６】
また、検証手順の試行結果と、ユーザのアンケートや判断結果とのデータセットを履歴として収集することで、機械学習のための訓練データを作成してもよい。この訓練データにより機械学習を行った学習モデルをＣＡＤルールチェック部１０８に備えることにより、ＣＡＤルールチェック部１０８は検証手順の試行結果から検証手順が適切か否かを独自で推定することが可能になる。
【００６７】
ステップＳ２０９：  ステップＳ２０８において検証手順の試行結果が不適切であった場合、ＣＡＤルールチェック部１０８は、ステップＳ２０２に動作を戻し、判定ルールの要素の定義について部分訂正ないしやり直しを行う。
一方、ステップＳ２０８において検証手順の試行結果が適切であれば、ＣＡＤルールチェック部１０８はステップＳ２１０に動作を移行する。
【００６８】
ステップＳ２１０：  ＣＡＤモデル１０７の更新に応じた随時のタイミングで、ＣＡＤルールチェック部１０８は、検証手順のシーケンスに従ってＣＡＤモデル１０７を検証し、検証結果をＣＡＤモデル上のハイライト表示や違反リストなどにより提示する。
以上の一連の処理により、検証手順の生成動作が完了する。
【００６９】
［実施例１の効果］
（１）実施例１では、判定ルール定義部１０４は、判定ルールを経験則（自然言語）そのものではなく、細分化された要素としてユーザ定義を受け付ける。したがって、判定ルールの曖昧さが少なくなり、検証手順の生成が一段と確実になる。
【００７０】
（２）実施例１では、データベース部１０５に判定ルールの要素やその組み合わせに関連付けて、検証手順の要素である共通関数が予め格納される。判定ルールについては一般性や汎用性がない場合があるが、判定ルールの要素やその組み合わせについては、パーツとして細分化されるために一般性や汎用性が現れる。このデータベース部１０５により、過去に作成され使用された共通関数の再利用を図ることが可能になる。
【００７１】
（３）実施例１では、検証手順生成部１０６が、判定ルールの要素やその組み合わせに対応する共通関数を組み合わせてシーケンス化することにより、検証手順を生成する。したがって、自動的ないしは半自動的に検証手順を生成することが可能になる。
【００７２】
（４）実施例１では、判定ルール定義部１０４は、判定ルールの要素を複数の階層に分けて構造化し、階層を辿りながら判定ルールの要素を定義するためのユーザインターフェースを提供する。一般に、判定ルールの要素は、先行する１つの要素が決まることにより、以降の要素の選択肢の範囲が限定される。そこで、階層化されたツリー状の要素を順に辿ることにより、多種多様かつ複雑な判定ルールの定義であっても、より効率的かつより短時間に定義することが可能になる。
【００７３】
（５）実施例１では、判定ルール定義部１０４は、少なくとも『対象範囲（全体、部位など）→工程分類（組立、加工など）→製造分類（ねじ止めなど）→判定数（１箇所、２箇所など）→属性分類（点、線など）→判定対象（長さなど）→判定条件（以上、以下など）』の階層を辿りながら、判定ルールの要素を定義するためのユーザインターフェースを提供する。このような階層構造を辿ることにより、ＣＡＤモデルの製造や保守などに関係する判定ルールを要素の集まりとして定義することが可能になる。
【００７４】
（６）実施例１では、データベース部１０５は、過去の検証手順についてフィードバックされる検証成績を収集する。一方、検証手順生成部１０６は、検証手順の候補案が複数ある場合、検証成績を参考に検証手順を選択するユーザインターフェースを提供する。したがって、ユーザは、検証成績が高いと推定される検証手順を選択することが容易になる。
【００７５】
（７）実施例１では、検証手順生成部１０６は、遺伝的アルゴリズムなどを用いて、検証成績を高める方向に共通関数を組み合わせて、検証手順を生成する。したがって、検証成績が高くなると期待される検証手順を自動的ないし半自動的に生成することが可能になる。
【００７６】
（８）実施例１では、検証手順生成部１０６に、検証成績を高める方向の機械学習を行った学習モデルを含めることもできる。検証手順生成部１０６は、この機械学習に基づいて共通関数の組み合わせを発生させることにより、検証成績が高くなると期待される検証手順を自動的ないし半自動的に生成することが可能になる。
【００７７】
（９）実施例１では、検証手順生成部１０６は、検証手順の候補が複数ある場合、過去の採択率を参考に検証手順を選択するユーザインターフェースを提供する。したがって、ユーザは、過去に実績がある検証手順（または実績のある検証手順に似た検証手順）を得ることが可能になる。
【００７８】
（１０）実施例１では、ＣＡＤモデルを形状認識により検証するための共通関数を複数有する。したがって、製造や保守において設計時に守るべき形状に関するルールに対して、形状認識を行う検証手順を生成することが可能になる。
【００７９】
（１１）ここで、ユーザが検証手順を１から作成する場合と、実施例１の場合とを比較する。まず、ユーザが検証手順を１から作成する場合、検証手順の組み合わせは一通りとは限らない。さらに、ユーザにとっては、ＣＡＤシステム上における形状認識の知識や、材質の知識や、加工の知識などの事前知識が多数必要になる。さらに、近年のＣＡＤモデル１０７は高度化および複雑化する傾向にあり、その事前知識は膨大となる。そのため、ユーザにとって検証手順を１から作成することは、煩雑であって試行錯誤を繰り返す大きな工数となっていた。また、適切な検証手順ができないために、設計チェック漏れが発生し、製造の段階になって問題が露見して設計への手戻りが生じる可能性もあった。
しかしながら、実施例１では、上述した効果（１）〜（１０）により、検証成績が高いと期待できる検証手順を自動的ないし半自動的に生成できる。そのため、上記の問題が改善可能となる。
【実施例２】
【００８０】
実施例２では、実施例１に追加の機能を付与した実施例について説明する。
図６は、実施例２における設計支援装置１０ａの基本構成を示すブロック図である。
同図において、設計支援装置１０ａは、実施例１の構成（図１）に加えて、設計ガイドライン１０３ａ、ＣＡＤルールチェック結果評価部４０４、およびＣＡＤルールチェック結果表示部４０５を備える。これらの追加構成は、図２に示す主記憶装置３０３にプログラムとして実装される。
【００８１】
設計ガイドライン１０３ａは、製造ルールライブラリ１０１および保守ルールライブラリ１０２に加えて、材料ルールライブラリ４０１、製品ルールライブラリ４０２、および拠点ルールライブラリ４０３を備える。
【００８２】
材料ルールライブラリ４０１は、金属や板金や樹脂などの材料の違いに関する共通的なルールを格納した知識データベースである。
【００８３】
製品ルールライブラリ４０２は、製品毎や製品の種別毎に規定された規格等のルールを格納した知識データベースである。
【００８４】
拠点ルールライブラリ４０３は、製造や販売や使用や輸出入などに際して国または地域ごとに守らなければならないルールを格納した知識データベースである。
【００８５】
これらのライブラリを事前に準備しておくことで、ユーザは該当する材料、製品、拠点を選択することで、設計時の判定ルールの各要素やその判定のための閾値を容易に定義することが可能になる。
【００８６】
判定ルール定義部１０４、データベース部１０５、検証手順生成部１０６、ＣＡＤルールチェック部１０８の動作自体は、実施例１と同じであるが、ここにＣＡＤルールチェック結果評価部４０４を追加することで、判定ルール（入力）、検証手順（出力）、検証成績（評価結果）といった紐付けのフィードバック経路が明確になり、データベース部１０５のより柔軟かつ詳細なデータ更新が容易になる。
【００８７】
これにより、検証手順を選定する際に検証成績が重要な推定基準や判断基準になる。その結果、検証手順を選定する上で検証成績が基準となり得る。ここでの検証成績は、例えば適合率、再現率、および計算時間／モデル規模などの定量的な評価指標が適用されるが、検証手順の評価項目であれば他の指標でもよい。
【００８８】
さらに、ＣＡＤルールチェック部１０８およびＣＡＤルールチェック結果表示部４０５は、設計支援装置１０ａのみならず、外部のＣＡＤシステムのＣＡＤモデル１０７に対しても設計更新に随時応じて、ＣＡＤモデル１０７に検証手順のシーケンスを適用し、違反箇所に関する表示情報をＣＡＤシステムに提供する。
【００８９】
続いて、実施例２では、図７に一例として示すＣＡＤモデル１０７について、スポット溶接点間距離の判定ルールから生成される検証手順の例（Ａ案，Ｂ案）と、その検証手順の実行処理とについて具体的に説明する。
【００９０】
図７に示すＣＡＤモデル１０７は、上部板金５０１と下部板金５０２をスポット溶接で接合する製品（部材）のＣＡＤモデルである。ここで、スポット溶接とは、上下より棒状の溶接電極５０３でスポット溶接点５０４，５０５を加圧し、電流を流し接触抵抗熱及び材料自体の抵抗熱を利用して接合面を溶融させ、接合する方法である。
【００９１】
このようなスポット溶接では、スポット溶接点５０４，５０５同士が近いと、溶接電流が分流し、接合したい面同士が正しく接合できなかったり、余計な熱変形により歪みが生じたりすることがある。そのため、スポット溶接点５０４，５０５同士は所定の距離以上離れている必要があり、設計段階で溶接点の位置関係について検証する必要がある。
ここでは、１箇所目のチェック対象としてスポット溶接点５０４を抽出し、その近傍にあるスポット溶接点５０５との距離について検証する。
【００９２】
図８は、検証手順生成部１０６において生成される検証手順を具体的に説明する図である。
同図において、データベース部１０５では、判定ルール定義部１０４で得た判定ルールの各要素（入力キーワード７０１や入力数値７０２など）を、関連する入力のモジュール群８０に分類する。
このモジュール群８０には、データベース部１０５内に存在する様々な共通関数の組み合わせ及び順番が記憶されている。
例えば、製造分類６０３が「溶接」で、判定数６０４が「２」の組合せを入力キーワード７０１の最小モジュール８０１として記憶させる。
属性分類Ａが「点」で、属性分類Ｂが「点」で、その２点の「距離」という組合せを入力キーワード７０１の最小モジュール８０１として記憶させる。
このように、様々な最小モジュール８０１に対応する検証手順の共通関数のシーケンス７０４がデータベース部１０５に記憶されている。
【００９３】
検証手順生成部１０６は、判定ルールの要素やその組み合わせ（入力キーワード７０１など）に対して、二分探索木やディープニューラルネットワークや遺伝的アルゴリズムなどの機械学習８０２を用いて、高い検証成績が期待できる共通関数やそのシーケンス７０４の組み合わせを導出し、検証手順の候補８１としてユーザに提示する。なお、機械学習以外の方法により検証手順の候補８１を生成してもよい。
【００９４】
これら検証手順の候補８１は、図８に示す検証手順案リスト８０３としてユーザに提示される。また、データベース部１０５内の推定評価指標群８０４として、これまで評価した適合率や再現率、計算時間などの評価結果に基づく推定値がユーザに提示される。さらに、検証手順案リスト８０３には、データベース部１０５に収集された採択率もユーザに提示される。
なお、ここでの検証成績や採択率は、過去の検証手順について収集されたものでもよいし、過去にあった近い検証手順から推定される検証成績や採択率を使用してもよい。
ユーザは、これらの検証成績や採択率を参考にして、この検証手順案リスト８０３の中から検証手順を選択する。ユーザにより選択された検証手順は、ＣＡＤルールチェック部１０８に伝達される。
【００９５】
図９は、図８に示す検証手順のＡ案を示す図である。
図１０は、Ａ案による検証の様子を説明する図である。
図１１は、違反箇所の表示例を示す図である。
以下、図９に示すステップ番号に沿ってＡ案の検証処理について説明する。
ステップＳ９０１：  Ａ案は、予めＣＡＤモデル１０７上でスポット溶接点と定義された属性の中から、検証対象とするスポット溶接点５０４を抽出する。
ステップＳ９０２：  Ａ案は、スポット溶接点５０４の近傍に位置するスポット溶接点５０５を抽出する。
ステップＳ９０３：  Ａ案は、スポット溶接点５０４，５０５の直線距離を計算する。
Ａ案では、スポット溶接点５０４，５０５の直線距離が閾値以下の場合に違反箇所と判断し、図１１に示す違反箇所１１０１のように溶接点がハイライトで表示され、ユーザに警告を行う。
このＡ案による直線距離は、図１０に示すようにＣＡＤモデル１０７の空隙を通るため、スポット溶接時の分流電流の経路とは一致しない。そのためＡ案による検証では、違反しない箇所まで違反箇所として余分に抽出されてしまい、適合率が低下する。
【００９６】
図１２は、図８に示す検証手順のＢ案を示す図である。
図１３は、Ｂ案による検証の様子を説明する図である。
以下、図１２に示すステップ番号に沿ってＢ案の検証処理について説明する。
ステップＳ１２０１：  Ｂ案は、予めＣＡＤモデル１０７上でスポット溶接点と定義された属性の中から、検証対象とするスポット溶接点５０４を抽出する。
ステップＳ１２０２：  Ｂ案は、スポット溶接点５０４の近傍に位置するスポット溶接点５０５を抽出する。
ステップＳ１２０３：  Ｂ案は、スポット溶接点５０４，５０５の双方を通る板金の接続面をＣＡＤモデル１０７から抽出する。
ステップＳ１２０４：  Ｂ案は、スポット溶接点５０４，５０５を通り、接続面に交差する（例えば垂直な）平面をＣＡＤモデル１０７上に作成する。
ステップＳ１２０５：  Ｂ案は、接続面と平面との交線を求めることにより、スポット溶接点５０４，５０５の間に形成されるスポット溶接時の分流電流の経路を作成する。
ステップＳ１２０６：  Ｂ案は、作成された経路のうち、一番短い経路長（図１３に示す上部板金５０１上の点線１３０１）を求める。
Ｂ案では、スポット溶接点５０４，５０５の分流電流の経路長が閾値以下の場合に違反箇所と判断することができる。
【００９７】
図１３に示す点線１３０１の経路長をスポット点間距離として違反箇所を検証することにより、板金を流れる分流の影響を考慮に入れたスポット点間距離の違反箇所を検出することが可能になる。その結果、Ｂ案の適合率はＡ案の適合率よりも高くなり、Ｂ案の計算時間はＡ案の計算時間よりも長くなる。
【００９８】
以上により、本発明における設計支援装置において検証手順を選択する際、チェック結果の精度向上を求めるか、計算時間の短縮を優先するか、ＣＡＤルールチェック結果評価部４０４の評価指標を基に、ユーザ自身（または予め優先度が設定されていれば自動）で決定することが可能となる。
【００９９】
［実施例２の効果］
実施例２は、上述した実施例１の効果に加えて、次の効果を奏する。
（１）実施例２では、設計ガイドラインとして、製造ルールライブラリ、保守ルールライブラリ、材料ルールライブラリ、製品ルールライブラリ、および拠点ルールライブラリを備える。これらライブラリの少なくとも１つから判定ルールの要素を取り込むことにより、判定ルールの定義や判定のための数値条件などをより適切に定義することが可能になる。
【０１００】
（２）実施例２では、ＣＡＤルールチェック結果評価部４０４により、検証手順の評価結果がデータベース部のデータ更新に随時に反映（フィードバック）される。このような評価結果のフィードバックにより、時間が経過するほどに検証成績がより高いと期待できる検証手順を生成することが可能になる。
【０１０１】
［実施形態の補足事項］
なお、上述した実施形態では、機械学習として、遺伝的アルゴリズム、二分探索木、ディープニューラルネットワークなどを使用する場合について説明した。しかしながら、本発明はこれに限定されない。例えば、機械学習として、畳込みニューラルネットワーク、決定木学習、相関ルール学習、帰納論理プログラミング、サポートベクターマシン、クラスタリング、ベイジアンネットワーク、強化学習、表現学習、主成分分析、エクストリーム・ラーニング・マシン、およびその他の学習技法の少なくとも一つの技法に基づく機械学習を採用してもよい。
【０１０２】
また、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例１，２は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。
【０１０３】
また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。
【０１０４】
さらに、上述した構成の一部について、構成の追加，削除，置換をすることが可能である。
【符号の説明】
【０１０５】
１０…設計支援装置、１０ａ…設計支援装置、３０…入力部、３１…表示部、３２…処理部、８０…モジュール群、８１…検証手順の候補、１０１…製造ルールライブラリ、１０２…保守ルールライブラリ、１０３…設計ガイドライン、１０３ａ…設計ガイドライン、１０４…判定ルール定義部、１０５…データベース部、１０６…検証手順生成部、１０７…ＣＡＤモデル、１０８…ＣＡＤルールチェック部、３００…制御部、３０１…入力Ｉ／Ｆ、３０２…表示制御部、３０３…主記憶装置、３０４…補助記憶装置、３０５…データバス、４０１…材料ルールライブラリ、４０２…製品ルールライブラリ、４０３…拠点ルールライブラリ、４０４…ＣＡＤルールチェック結果評価部、４０５…ＣＡＤルールチェック結果表示部、５０１…上部板金、５０２…下部板金、５０３…溶接電極、５０４…スポット溶接点、５０５…スポット溶接点、６０１…対象範囲、６０２…工程分類、６０３…製造分類、６０４…判定数、６０７…判定対象、６０８…判定内容、７０１…入力キーワード、７０２…入力数値、７０３…判定方法、７０４…シーケンス、７０６…適合率、７０７…再現率、７０８…計算時間／モデル規模、７０９…評価指標群、８０１…最小モジュール、８０３…検証手順案リスト、８０４…推定評価指標群、１１０１…違反箇所
【図１】
2020154505.tif 000003
【図２】
2020154505.tif 000004
【図３】
2020154505.tif 000005
【図４】
2020154505.tif 000006
【図５】
2020154505.tif 000007
【図６】
2020154505.tif 000008
【図７】
2020154505.tif 000009
【図８】
2020154505.tif 000010
【図９】
2020154505.tif 000011
【図１０】
2020154505.tif 000012
【図１１】
2020154505.tif 000013
【図１２】
2020154505.tif 000014
【図１３】
2020154505.tif 000015