JP2004280719A - シミュレーションモデルの自動生成装置 - Google Patents
シミュレーションモデルの自動生成装置 Download PDFInfo
- Publication number
- JP2004280719A JP2004280719A JP2003074525A JP2003074525A JP2004280719A JP 2004280719 A JP2004280719 A JP 2004280719A JP 2003074525 A JP2003074525 A JP 2003074525A JP 2003074525 A JP2003074525 A JP 2003074525A JP 2004280719 A JP2004280719 A JP 2004280719A
- Authority
- JP
- Japan
- Prior art keywords
- model
- attribute
- information
- rule
- simulation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 89
- 238000000034 method Methods 0.000 claims abstract description 371
- 238000000354 decomposition reaction Methods 0.000 claims abstract description 12
- 238000010606 normalization Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 abstract description 18
- 238000006467 substitution reaction Methods 0.000 abstract description 2
- 238000013461 design Methods 0.000 description 26
- 238000004458 analytical method Methods 0.000 description 15
- 238000011144 upstream manufacturing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000004519 manufacturing process Methods 0.000 description 10
- 238000003860 storage Methods 0.000 description 9
- 239000000047 product Substances 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000002950 deficient Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000007689 inspection Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000003754 machining Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000005094 computer simulation Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000011143 downstream manufacturing Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000005477 standard model Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】ライン設計者等専門的知識が無い者でも、シミュレーションモデルを自動作成できるようにする。
【解決手段】入力された工程情報に対応する工程モデルを選択するための選択ルール、及び工程情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したルールデータベース22、複数のメンバを接続して表されると共に属性によって分類された工程モデルを複数個記憶した事例データベース24、に基づいて、モデル合成部36において、入力された工程情報に対応する工程モデルを選択し、かつ工程情報に含まれるデータを工程モデルが持つ属性に代入する処理を行ってシミュレーションモデルを生成する。モデル合成部36によって生成されたシミュレーションモデルをモデル分解部40によって、基本モデル単位の集合に分割すると共に、属性変更部42いおいて工程モデルが持つ属性を基本モデルが持つ属性に変更する。
【選択図】図1
【解決手段】入力された工程情報に対応する工程モデルを選択するための選択ルール、及び工程情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したルールデータベース22、複数のメンバを接続して表されると共に属性によって分類された工程モデルを複数個記憶した事例データベース24、に基づいて、モデル合成部36において、入力された工程情報に対応する工程モデルを選択し、かつ工程情報に含まれるデータを工程モデルが持つ属性に代入する処理を行ってシミュレーションモデルを生成する。モデル合成部36によって生成されたシミュレーションモデルをモデル分解部40によって、基本モデル単位の集合に分割すると共に、属性変更部42いおいて工程モデルが持つ属性を基本モデルが持つ属性に変更する。
【選択図】図1
Description
【0001】
【発明の属する技術分野】
本発明は、シミュレーションモデルの自動生成装置に係り、特に、生産ラインの設計・改善時において、ラインの挙動を事前に検証する検証時に行われるシミュレーションの入力データとなるシミュレーションモデルを自動作成するシミュレーションモデルの自動生成装置に関するものである。
【0002】
【従来の技術】
生産ラインの挙動を事前に検証するためのシミュレーションとして、市販の複数のシミュレータが知られている。これらのシミュレータの殆どが、専用のモデリング機能や解析機能を備えている。一般的に、生産ラインのシミュレータを利用するためには、モデリングや解析における様々な専門的知識を必要とし、利用するにあたって以下のような困難さが存在する。
【0003】
1)シミュレータのモデリング操作(具体的には、▲1▼ラインを流れるワークの種類を定義し、▲2▼設備を選択して配置し、▲3▼パラメータを設定し、▲4▼ワークの流れを定義する等)に習熟ことが必要であるので、設計者等にはモデリング操作が困難である。ここで生成、配置する設備モデルの数は、解析対象や、シミュレーションツールに依存するが、数十、時には数百に上る場合もある。
【0004】
2)モデルの属性(パラメータ)の概念や、名称が、計画者にとって聞き慣れない語句で表現されており、故障等で用いる乱数等、設定にノウハウや知識を必要とするパラメータが多く、また、設備数や個々の設備のパラメータが多く、入力に手間がかかる。
【0005】
3)モデルの機能、仕様(一例として、コンベヤ速度の単位は何か、故障の分布にはどのような種類があるか等)を正確に理解する必要があり、理解していないとモデリング操作は困難である。
【0006】
4)実際の設備機器をどのように抽象化するかのノウハウが必要であり(一例として、搬送機を動きのある物体で表現するか、移動時間だけをパラメータとするか、簡略化してよい設備と詳細化すべき設備をどう分けるか等)、また、標準モデルの組み合わせで複雑なシステムを構成することにもノウハウが必要であり、これらのノウハウが無いとモデリング操作が困難である。
【0007】
5)その他、モデルの挙動について計画者(解析依頼者)と解析担当者との間で検証が必要であり、また、シミュレーションソフトが高価で、モデリングを行う環境が不足している。
【0008】
上記のような困難さが存在するため、専任のエキスパートがシミュレーションを実施する場合が多い。このため、計画者のペースで試行錯誤を行うことは困難であり、解析専任者に依頼が集中する場合には、重要案件をタイムリーにシミュレーションで検討できない可能性がある。
【0009】
ライン設計上のノウハウは、実際に試行錯誤を行い、多くの案件を処理する解析専任者が蓄積しがちで、計画者のスキルアップや意識向上に繋がり難い面を持っている。
【0010】
正確なシミュレーションを行うためには、計画者と解析専任者との間のコミュニケーションが必要不可欠であるが、その反面、解析リードタイムが長くかかる、という問題がある。
【0011】
ライン設計の手順、結果の出力形式は様々だが、多くの場合、ライン設計者は、設計結果を、各工程間の緒元やフローを「工程フローチャート」や表1に示す「工程表」等(以下、「工程表」という。)に記載する。その内容は、各工程における処理時間(サイクルタイム)や前後工程との繋がり、処理内容を記したコメント等で、本来、シミュレーションのための書類ではないので、特に設計の初期段階においては、一般的にシミュレーションで用いるモデルの詳細度に比較して情報量が少ない。
【0012】
【表1】
【0013】
このため、シミュレーション専門家は、この工程表を分析すると共に、設計者への聞き取り等を行い、過去の知見に基づいてモデルを作成している。
【0014】
一方、従来では、各工程に対応する部分的なモデルを作成、保存、再利用することでモデリングを効率化できるシミュレーションソフトウェアも販売されている(例:Tecnomatix社のSIMPLE++等)。
【0015】
【発明が解決しようとする課題】
しかしながら、これらのソフトウエアでは、モデリング作業の効率化は図れるものの、そのシミュレータや部分的モデルの内容を熟知した専門家でなければ活用することは困難であり、モデリングを自動化してライン設計者自身を支援し得るものではない。
【0016】
本発明は、ライン設計者が、通常の設計業務の中で作成した前述の「工程表」の様な設計情報を入力として利用し、シミュレータに特化した特別な訓練、操作をできるだけ行わず、シミュレーションモデルを作成することができるようにし、これにより従来困難であった設計者自身によるシミュレーションを実行可能にすることを目的とする。
【0017】
【課題を解決するための手段】
モデルの自動生成には、幾つかの課題が存在する。例えば、シミュレータが持つモデル(例えば、加工機械、バッファ、搬送機器等)に関する情報無しにはモデルを作成することはできず、そのための何らかのデータベースが必要である。
【0018】
また、生産ラインのシミュレーションでは、一般的に一つの工程をモデル化する場合、シミュレータが持つモデルを複数組み合わせることになる。すなわち、工程の概念とモデルとは一対一の対応関係にはないため、単純な変換作業では自動生成できない。
【0019】
更に、シミュレーションモデルには、例えばライン内を流れるワークの生成や排出を行うモデルやワークの流れのみを制御するモデル等、本来物理的に存在しない(すなわち、工程表上にも存在しない)がシミュレーションのためには不可欠なモデルが存在する。
【0020】
多くの場合、工程表に書かれた属性名、工程名、及び単位等は、シミュレーションモデルが持つそれらとは、一致していない。
【0021】
このような理由から、設計情報を元にシミュレーションモデルを自動的に作成するためには、シミュレーション専門家が持つ様々な知識(暗黙知)を形式知としてデータ化し、これを用いて適切なラインの内容を類推し、モデルを合成する必要がある。
【0022】
専門家の知識を利用するアプローチとしては、いわゆるエキスパートシステムを構築し、利用することが考えられる。一般的にエキスパートシステムは、ルールデータベース(知識ベース)のシステムであるが、上記の様なシミュレーションモデリングにおける知識を全てルールデータベースで記述するには非常に膨大な量のルールの記述が必要であり、専門家からのルールの取得も困難である。例えば、幾何学的な配置や、接続関係、属性の設定等は、データの形式で保持するのは容易であるが、論理的に記述することに向いていない。
【0023】
ルール以外のアプローチとして、事例の利用が考えられる。モデリングに関する知識・ノウハウの内容は、過去に作成されたラインのモデル(すなわち、事例)に全て集約・内包されると言ってもよい。ただし、個々のラインモデルは、あくまで対象のラインを模擬したものであり、新たな設計要件に対してそのまま利用することは殆ど不可能である。
【0024】
一方、生産ラインの特徴として、ライン中に多数存在する各作業工程については、その構成にある種のパターンが存在する。このパターンは、企業や工場、対象となる製品・作業・処理によって当然ながら異なる。前述の様に、ライン全体のモデルは事例としての再利用性が低いが、この工程レベルのモデルは、再利用性が高い。本発明等はこの点に着目し、モデリング作業上の知識を、どのような場面(工程)で、何を(どんな工程モデル事例を)、どのように(どのような属性、接続で)作成するか、という様に分類、整理することにより、ある程度体系化できる点に着目し、知識を、工程レベルのモデリング事例を収めたデータ、工程の選択や属性設定の方法を記述したルール、設計者が用いる言葉と、シミュレーションモデルで用いる言葉の対応表、及びルールやモデリング事例自体の選択に関するメタルール等に分けてデータ化し、これらを組み合わせた推論エンジンを用いることでラインモデリングの自動化を図っている。
【0025】
上記目的を達成するために本発明は、工程情報を入力するための入力手段と、複数のメンバを接続して表されると共に属性によって分類された工程モデルを複数個記憶した工程モデリング事例データベースと、シミュレーションモデルで扱うことができる単位の基本モデルを属性と共に複数個記憶した基本モデルデータベースと、入力された工程情報から該工程情報に対応する工程モデルを選択するための選択ルール、及び該工程情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したルールデータベースと、前記工程モデリング事例データベースに記憶された工程モデル、及び前記ルールデータベースに記憶されたルール群に基づいて、入力された工程情報に対応する工程モデルを選択し、かつ該工程情報に含まれるデータを工程モデルが持つ属性に代入する処理を行ってシミュレーションモデルを生成する生成手段と、前記生成手段によって生成されたシミュレーションモデルを前記基本モデル単位の集合に分割すると共に、工程モデルが持つ属性を該基本モデルが持つ属性に変更するモデル分解手段と、を含んで構成したものである。
【0026】
本発明では、複数のメンバを接続して表されると共に属性によって分類された工程モデルを複数個記憶した工程モデリング事例データベースと、シミュレーションモデルで扱うことができる単位の基本モデルを属性と共に複数個記憶した基本モデルデータベースと、入力された工程情報から該工程情報に対応する工程モデルを選択するための選択ルール、及び該工程情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したルールデータベースとが設けられている。
【0027】
生成手段は、入力手段から入力された工程情報、工程モデリング事例データベースに記憶された工程モデル、及び前記ルールデータベースに記憶されたルール群に基づいて、入力された工程情報に対応する工程モデルを選択し、かつ該工程情報に含まれるデータを工程モデルが持つ属性に代入する処理を行ってシミュレーションモデルを生成する。
【0028】
生成手段によって生成されたシミュレーションモデルは、モデル分解手段によって、基本モデル単位の集合に分割されると共に、工程モデルが持つ属性が基本モデルが持つ属性に変更される。
【0029】
これによって、シニュレータが解釈可能なシミュレーションモデルを自動的に生成することができる。
【0030】
本発明には、標準語に対応させて同義語を記憶した同義語データベースと、前記同義語データベースを用いて前記入力手段から入力された工程情報を標準語に正規化した後、前記生成手段に入力する正規化手段を更に設けることができる。
【0031】
これによって、専門的な語句を知らなくても、同義語を入力するだけで、自動的に専門的な標準語に正規化することができる。
【0032】
前記工程モデリング事例データベースには、工程モデル内の各メンバのタイプ及び識別子に関する属性、工程モデル内のメンバの相対位置関係に関する属性、及び工程モデル内のメンバの外部工程モデルとの接続(前後関係定義)に関する属性を含む属性によって分類された複数の工程モデルを記憶することができる。
【0033】
前記ルールデータベースには、前記工程情報に含まれる接続に関する属性に基づいて、選択された工程モデルと外部工程モデルとを接続するための接続ルールを更に記憶することができる。
【0034】
また、前記ルールデータベースには、作成すべきラインの分類情報に基づいて、分類情報に対応するルールを含むルール群を選択するためのメタルールを更に記憶することもでき、また、シミュレーション実行のために必要なモデルを追加するためのルール、及び工程情報に工程の列数に関する情報が含まれていた場合に該列数に関する情報から対応する工程モデルを複製するためのルールの少なくとも一方を記憶することもできる。
【0035】
そして、前記基本モデルには、基本モデル自身のタイプ名、生成したモデルの内容をシミュレータが解釈できる形式に変換するための属性情報を含ませることができる。
【0036】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0037】
図1に示すように、本発明の実施の形態におけるシミュレーションモデルの自動生成装置10には、工程設計者が作成した工程表を修正したり、工程表に新たな情報を追加する等によって、自動生成装置10に入力するライン情報(入力情報)を決定して入力するための入力手段としての入力情報決定部12が接続されている。
【0038】
また、自動生成装置10には、自動生成装置で変換されたシミュレーションを実行するための実行モデルを格納するためのシミュレーションモデルファイル14が接続され、このシミュレーションモデルファイル14にはシミュレーションを実行するためのシミュレータ16が接続されている。
【0039】
自動生成装置10には、標準語に対応させて同義語を記憶した同義語データベース20、入力されたライン情報からライン情報に対応する工程モデルを選択するための選択ルール、及びライン情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したモデリングルールデータベース(モデリングルールベース)22、複数のメンバを接続して表した工程モデルを複数個記憶した工程モデリング事例データベース(工程モデリング事例ベース)24、及び、シミュレーションモデルで扱うことができる単位の基本モデルを属性と共に複数個記憶した基本モデルデータベース26が設けられている。
【0040】
モデリングルールデータベース22には、モデリングルールデータベース22にモデリングルールを記述するためのモデリングルール記述部28が接続され、工程モデリング事例データベース24には、工程モデリング事例データベース24に工程モデリング事例を登録するための工程モデリング事例登録部30が接続されている。
【0041】
同義語データベース20には、入力されたライン情報を同義語データベース20を用いて標準語に正規化するライン情報正規化部32が接続されている。
【0042】
ライン情報正規化部32には、正規化されたライン情報、すなわち工程設計情報を格納する工程設計情報格納部34が接続されており、工程設計情報格納部34には、モデリングルールデータベース22と工程モデリング事例データベース24とを用いて、シミュレーションモデルを合成するモデル合成部36が接続されている。モデル合成部は、モデリングルールデータベース22及び工程モデリング事例データベース24と共に推論エンジンを構成する。
【0043】
モデル合成部36には、基本モデルデータベースを用いて、シミュレーションモデルを基本モデル単位の集合に分割するモデル分割部40、工程モデルが持つ属性を基本モデルが持つ属性に変更する属性変更部42に接続された生成モデル記憶部38が接続されている。生成モデル記憶部38は、基本モデル単位の集合に分割され、かつ属性が基本モデルが持つ属性に変更された生成モデル、その前の段階の工程モデルの集合を記憶する。
【0044】
また、生成モデル記憶部38には、生成モデルをシミュレータで実行する実行用モデルに変換する実行用モデル変換部44が接続されている。
【0045】
次に、図1の各部の詳細について説明する。まず、最初に各データベースに格納されているデータについて説明する。
【0046】
推論エンジンは、モデリングに関する知識を用いて、工程表を元にシミュレーションモデルの合成を行うためのものであり、データベース22、24を含んで構成されている。
【0047】
推論エンジンのモデリングルールデータベース22には、ユーザが作成する工程表を入力として、工程モデリング事例データベース24からの適切なモデリング事例の検索、工程表に書かれた緒元の代入処理等のルールが格納されている。ルールの記述には幾つかの方法が考えられるが、例えば、IF−THENルール等の形式で記述することができる。
【0048】
モデリングルールデータベース22は、工程内の詳細なモデル情報を持たないが、以下で説明する事例データベース24がその内容を補っている。また、事例データベース24は、事例データベース自身ではその利用法に関する知識を持たないが、このルールデータベースを用いて利用法に関する知識を補うことができる。このように、ルールデータベース及び事例データベースの各データベースは、各々簡潔な記述でありながら、互いに不得意な知識を補完し合うことで、全体としては専門家と同レベルの知識を体系化し得る。
【0049】
これらの知識(推論エンジン)を利用することで、シミュレーションに関する知識の無い者であっても通常の設計業務の出力である工程表を用意するだけで、詳細なシミュレーションモデルを自動生成することが可能である。
【0050】
ルールデータベースに格納されるルール群としては、以下のようなものがある。
【0051】
▲1▼工程情報から、その工程に対応する工程モデルを選択するための選択ルール。
【0052】
このルールは、工程モデルを作成するために必要である。作成される工程モデルは、一つとは限らず、また基本モデルを作成する場合もある。関連するモデルの要素としては、工程モデリング事例データベースの工程モデル内の各メンバのタイプ及び識別子、工程モデル生成時の名前の候補、基本モデルデータベースの基本モデル自身の名称、基本モデルを生成する際の名前の候補があり、参照する工程情報の例としては、工程名、処理名、前後バッファの有無、前後工程の有無等がある。
【0053】
▲2▼工程情報に含まれる種々のデータを工程モデルが持つ属性に代入するための代入ルール。
【0054】
このルールは、工程情報をモデルにマッピングするために必要なルールである。関連するモデルの要素としては、工程モデリング事例データベースのユーザが変数として扱うメンバの属性、登録時に任意に追加する属性、及び工程モデル自身の属性、基本モデルデータベースの属性情報があり、参照するデータの例としては、処理名、サイクルタイム、バッファサイズ、故障頻度等がある。
【0055】
▲3▼工程情報のうち前後工程に関する情報から選択ルールによって選択した工程モデルと前後の工程モデルとを接続する接続ルール。
【0056】
このルールは、工程同士を接続することで、工程フローからモデルのフローにマッピングし、ラインを形成するために必要なルールである。関連すモデルの要素としては、工程モデリング事例データベースの工程モデル内のメンバの名前が記録された属性、基本モデルデータベースの他のモデルとの接続に関する属性があり、参照する工程情報としては前後工程の有無、前後工程名等がある。
【0057】
▲4▼シミュレーション実行のために必要なモデル(シミュレータのモデル)を追加するためのルール。
【0058】
このルールは、シミュレーション実行のためには、工程情報と無関係な管理用のモデルを生成する必要があることから必要なルールである。関連すモデルの要素としては、工程モデリング事例データベースの基本モデル自身の名称、及び属性情報があり、追加すべき管理用のモデルの例としては、実行停止用のタイマ、ワークの生成及び消去、及び工場稼動スケジュール等がある。
【0059】
▲5▼工程情報内の工程の列数に関する情報から工程情報に対応する工程を複製するための複製ルール。
【0060】
このルールを用いることにより、単列、二列、三列等の工程パターンを全て工程モデルとして個別に登録し、管理する必要が無いため、基本的な工程モデルだけを持てばよくなる。
【0061】
▲6▼作成すべきラインの分類情報から上記ルール群を選択するためのメタルール。
【0062】
ルール群は、対象によって適用範囲が限定されるので、適正なモデリングを行うためにこのメタルールが必要である。ライン分類の例としては、自動化機械加工ライン、手組ラインなどがある。
【0063】
工程モデリング事例データベース24には、工程種類別に、工程を構成する複数のシミュレーションモデル(設備モデル)の種類、配置、属性、前後接続関係等を記述したモデリング事例に関するデータが格納されている。
【0064】
工程モデリング事例データベース24は、複数の設備モデル群の属性を一つの事例として保存したモデル(工程モデル)の集合体である。工程モデルは、以下に示す属性が与えられて登録されている。
【0065】
▲1▼工程モデル内の各メンバのタイプ及び識別子(名称)を表す属性。
【0066】
この属性は、工程モデルの分解時に、各メンバを生成するために必要である。例えば、メンバ名「CV1」は、工程分解後に「CV1_OP1」という名称のコンベアとして生成される。
【0067】
▲2▼工程モデル内のメンバの位置、または位置及び姿勢に関する属性。
【0068】
この属性は、工程モデルの分解時に、各メンバを登録時と同様な位置関係に配置するために必要な属性である。この属性は、工程モデルの基本座標からの相対位置で定義することができる。
【0069】
▲3▼工程モデル内のメンバの属性であって外部工程モデルとの接続(前後関係で定義)に関する属性。
【0070】
この属性は、工程モデル分解時に、工程同士の接続情報を各々の工程モデル内のメンバの接続情報に変換するために必要な属性である。例えば、対象となるメンバ名と接続情報を収めるべきそのメンバの属性名が該当する。
【0071】
▲4▼工程モデル内のメンバの名前が記録された属性(工程モデル内のメンバ同士の接続に関する属性等が該当する)。
【0072】
この属性は、工程モデル分解時に、各メンバの名前をライン内においてユニークな名称に変換するのに合わせて必要である。例えば、メンバ名「CV1」の属性が与えられたメンバを工程モデル「OP1」に分解後、ユニークな名称を「CV1_OP1」に変換する。
【0073】
▲5▼その他、工程モデル内のメンバの属性であって、保存すべき属性。
【0074】
この属性は、工程モデル分解時に、生成されたメンバの属性を登録時と同様に再設定するために必要である。この属性は、基本的には、メンバ属性のうちの非デフォルト属性(ユーザによって変更された値)である。
【0075】
上記の▲1▼〜▲5▼の属性は、工程モデルを構成するメンバが持つ属性へのリンクとなっている。なお、接続とは、例えば、モデル「コンベヤ1」が持つ属性「後設備」に「コンベヤ2」を入力し、更に「コンベヤ2」の属性「前設備」に「コンベヤ1」を入力する等の処理である。
【0076】
その他、工程モデル事例データベースには更に以下の属性を用いるようにしてもよい。
【0077】
・工程モデル内のメンバの属性であって、ユーザが変数として取り扱う属性。
【0078】
工程モデルに対して、ユーザが変更可能なこの属性を選択しておくことにより、工程モデル生成後の属性編集が容易になる。一般に、全メンバの属性項目は、非情に膨大になるため、閲覧性が悪く、編集し難いので、変数として取り扱える属性を選択しておくのが効果的である。
【0079】
・登録時に任意に追加する属性。この属性により、任意の論理式を実行し、工程モデル内メンバの属性等を参照、操作することができる。
【0080】
この属性によって、複数のメンバの属性を一括して変更したり、属性同士の値を関係づけるようにすると効果的である。例えば、属性A変更時の論理式記述の例として、CV1 バッファサイズ=val(A)、CV2 バッファサイズ=val(A)がある。
【0081】
・工程モデル自身の名称(タイプ)を表す属性。
【0082】
この属性は、ルール適用、または手動により工程モデルを生成する際等に必要である。
【0083】
・工程モデル生成時の名前の候補を表す属性。
【0084】
この属性は、ルール適用、手動により工程モデルを生成する際等に必要である。
この工程モデル生成時の名前は、ルール側で名前付けしてもよい。
【0085】
・工程モデルを表示するための図形情報に関する属性。
【0086】
この属性は、システム上で、工程モデルのアイコンを整列させる際、その大きさを知るために使用される。例えば、アイコンの幅、高さ、イメージファイル名等である。
【0087】
・そのモデルが工程モデルであることを示す識別子を表す属性。
【0088】
この属性は、そのモデルを分解処理の対象とするために用いるものである。
【0089】
ライン情報正規化部32は、工程表に書かれた項目名、工程種類名、単位等のライン情報を標準語に正規化(Canonicalization)する処理である前処理を行う。この前処理では、工程設計者とシミュレーション専門家とが各々用いる語彙をデータ化した同義語データベース20を用いて語句の変換を行う。
【0090】
上記の構成により、暗黙知となっているモデリングに関する専門家の知識が、大別して、同義語データベース20、モデリングルールデータベース22、工程モデリング事例データベース24の3つに分けて登録される。知識のうち、モデリングルールデータベース22及び工程モデリング事例データベース24が主体であり、同義語データベース20は補足的である。同義語データベース20以外にも、例えば、ラインの実績データベースとのリンク情報、及びモデルに関するドキュメント情報等を補足的な知識として用いることができる。
【0091】
上記の工程モデリング事例データベース24に格納された工程モデルは、単なるモデリング結果の記録(または、基本モデルの集合体)ではなく、一つの新しい設備モデルのように再利用できるものである。ソフトウェア的に見ると、「オブジェクト化」されている。例えば、前後工程との接続や、属性の設定、複製等、ルールデータベースからの簡単な要求(オペレーション)に従ってモデルの内容を様々に変更可能となっている。その具体例、理由を以下に示す。
(1)作成した工程モデルに対して、ルールデータベースに従って前後の工程(工程モデル)との接続を指示するだけで、実際のシミュレーションモデルとなるメンバ設備に対する接続の設定を行うことができる。これは、工程モデリング事例データベース24に、工程モデルに対して外部モデルを接続した場合、どのメンバに対して実際に接続をすべきかを表す属性が登録されているためである。
(2)ライン全体をモデル化する際、同じ工程モデルを複数含んでいても、各々の工程内メンバの名称が全てユニークになるよう設定する必要がある。同様に、メンバ間の接続属性として保存されている前後の設備名についても、ユニークな名称に変更する必要がある。工程モデルでは、メンバ間の接続に関する属性を分類して記録しているため、工程モデルを分解して基本モデルを生成する際、メンバ間の接続に関して保存した属性を抽出し、名前付けをやり直すことができる(例えば、「OP10」という工程モデルを分解する場合、メンバであるコンベヤ「CV1」の名称は「OP10_CV1」の様に変換できる)。
(3)工程モデルは、事例としての再利用性は高いが、全てのデータが新しい設計要件にマッチするわけではないため、変数属性を設けてカスタマイズできることが非常に重要となる。このため、工程モデル登録時のままで用いるべき属性と、ユーザが変更すべき変数とすべき属性とを分類している。工程モデル及びそのメンバは、非常に多くの属性を持つが、ユーザは、変数となる属性のみメニュー上で見ることができるため、工程モデルに対する属性の変更が容易となる。
(4)登録時に任意に追加する属性を用いて定義した変数に対して入力、属性変更を行うと、他のメンバの属性に対して数式を適用し、瞬時に多くの属性設定が可能となる(例えば、メンバである6台の加工設備の属性「加工時間」を全て同じ値に設定する等)。こうした属性間の関連性の設定は、属性の一括変更や属性の変数の関連付けに適している。
(5)工程モデルデータの作成の際、メンバ間の接続に関する属性、位置情報に関する属性等のリストアップは自動的に行われる。これは、メンバとなる設備に関する基本モデルが、その属性として事例データベースの属性と同様の分類情報を持つためである。工程モデル登録の際、システムはこれらの分類情報を検索し、属性のリストアップを行う。
【0092】
同義語データベース20を用いることにより、設計者が普段から用いる言葉、形式で書かれた表であっても、予めデータを正規化することで推論におけるあいまいさが排除され、比較的簡易なルールの記述によって適切なモデルの構築が可能である。例えば、ルール記述において、項目名が「A」又は「B」又は「C」ならば・・・といった記述が不要となる。この部分は、入力となる工程表の記述法に関する制約やユーザに求められる知識に関する制約を減少させる効果がある。
【0093】
基本モデルデータベース(基本モデルデータ)26は、シミュレーションソフトで扱う様々なモデルの属性項目(パラメータ)を格納したデータベースであり、シミュレーションソフトが持つ基本的なモデルについて、それが保持する属性に関する情報を格納している。
【0094】
属性項目の内容は、設備モデル毎に異なり、例えば以下の様なものがある。以下は、極一部の例であり、実際には一つの設備に対して数十の項目が存在している。
【0095】
▲1▼基本モデル自身の名称(タイプ名)を表す属性。この名称は、本発明システム内で用いる名称と、シミュレータが解釈可能な基本モデルの名称との両方を示す。
【0096】
この属性は、基本モデル生成時、及び本システムで作成したラインモデルの内容をシミュレータが解釈できる形式に変換する際に必要である。例えば、多くのシミュレータは、conveyor、machine、AGV等、英語の名称を用いている。
【0097】
▲2▼属性情報(属性の名称(本システム内で用いる名称とシミュレータ上のモデルの属性名の両方)、値等を含む)。
【0098】
この属性情報は、本システムで作成したラインモデルの内容をシミュレータが解釈できる形式に変換するのに必要である。例えば、属性「故障間隔」は、シミュレータ上のモデル属性「MTBF」に変換される。この属性情報には、基本的に位置属性、接続情報属性、その他の属性等全てを含む。
【0099】
▲3▼基本モデルを生成する際の名前の候補に関する属性。
【0100】
この属性は、基本モデルを単独で追加する場合(工程内メンバでない場合)に必要である。なお、工程分解時のモデル生成では、すでにメンバとして名前が付けられているので、必要は無い。
【0101】
▲4▼他のモデルとの接続(前後関係)に関する属性。
【0102】
基本モデルを単独で追加する場合、他のモデルと接続するのに必要である。工程分解時のモデル生成では、すでにこの属性を識別できているので、特に分類する必要は無い。
【0103】
▲5▼基本モデルの位置、位置及び姿勢等の位置情報に関する属性。
【0104】
基本モデルを単独で追加する場合に、追加した基本モデルを配置する際に必要である。工程分解時のモデル生成では、すでにこの属性を識別できているので、特に分類する必要は無い。
【0105】
▲6▼基本モデルを表示するための図形情報に関する属性。
【0106】
工程分解等で基本モデルを生成し配置する場合に、そのモデルのアイコンの大きさを知るために必要である。例えば、アイコンの幅、高さ、イメージファイル名等がある。
【0107】
▲7▼そのモデルが基本モデルであることを示す識別子を表す属性。
【0108】
基本モデルを分解処理の対象から除外するために必要である。
【0109】
その他、生産ラインのシミュレーションモデルには、例えば以下のような属性が不可されるべきであろう。
・加工設備の、部品1個あたりの加工時間
・機械の故障頻度(MTBF,MTTR,乱数分布のタイプ)
・コンベヤバッファの容量
・AGV(無人搬送台車)の搬送速度
・ワークを受ける、又は渡す設備の選択方法
基本モデルデータは、これらのデータを自動モデリングシステム上で参照し、変更する場合や、モデル出力時、シミュレータの持つ属性へと変換する際に利用(参照)される。
【0110】
基本モデルデータは、シミュレータで用いるモデルの情報と自動モデリングシステム上での(基本)モデル情報との間の概念の対応表を持っている。これにより以下の様な効果がある。
【0111】
▲1▼種類の異なるシミュレーションソフト及びモデルを使っていても、自動モデリングシステム上では常に同じ概念、同じ名称、同じ制御ロジックを使ってモデリングができるため、モデリングに関してシミュレータ毎に習熟する必要が無い。
【0112】
▲2▼シミュレータの持つ設備名や属性名が英語や、理解しにくい言葉であっても、本システム上では、より理解しやすい名称でモデリングができるため、計画者にとって扱い易い。例えば、”setup”という属性名を、”段取替え”に置換えられる。
【0113】
▲3▼シミュレータ上の一つの設備モデルに対して、名称やパラメータ設定のデフォルト値を変えた亜種のモデルを複数定義できる。例えば、”マシン”の亜種として”検査装置”を作成でき、このモデルに不良品発生に関する属性を与えること等である。これにより、計画者は、”マシン”という抽象的なモデルを使い、パラメータ設定によって詳細なモデルを作成するのではなく、最初から”検査装置”のような詳細なモデルをすぐに使用することができる。
【0114】
▲4▼工程モデル同士の組み合せも登録・利用可能であり、ライン単位でのモデル事例蓄積・再利用が可能となる。しかも最終的には通常のシミュレータのモデリング機能を使って作成した大規模なモデルと同様の詳細度を持ったシミュレーションモデルが作られる
▲5▼目的に応じて入力データの内容の詳細度を予め規定するため、即ち入力データの質をシステム自身が管理することになり、単にラフなモデルを簡単に作成するのではなく、シミュレーションの精度を落とすことの無いモデリングが可能となる。
【0115】
▲6▼本発明では、モデル情報をすべてテキスト情報で管理しており、高価なシミュレーションソフトが無くとも、Excel等に本手法をプログラム化して埋め込み、これを用いることでシミュレーションモデルを作成でき、これまで小人数の解析専任者が行ってきたモデリングを、より多くの計画者が実施できる。
【0116】
次に、図1のシミュレーションモデルの自動生成装置(本システム)の各部の作用に付いて説明する。
【0117】
入力情報決定部12は、ラインシミュレーションの目的に応じて、シミュレーションの精度を確保するため、工程表に対してどのような設計データの入力が必須となるかを決定する。
【0118】
工程表は、上記入力必須データ項目に基づき、生産ラインの製造工程のフロー、各工程での処理時間、故障頻度等の設計情報を入力する(ユーザに入力させる、又はファイル等から情報を抽出する)。
【0119】
ライン情報正規化部32は、入力情報決定部12から入力された工程情報であるライン情報を同義語データベース20を用いて標準語に正規化した後、工程設計情報格納部34に登録する。
【0120】
モデル合成部36は、工程設計情報格納部34に登録されたライン情報を参照し、各工程に対して推論エンジンを呼び出す。モデル合成部から呼び出された推論エンジンは、モデリング事例データベース22及びモデリングルールデータベース24を用いて、ライン全体のモデルを自動的に生成する。生成されたモデルは、生成モデル記憶部に記憶される。
【0121】
モデル分解部40は、推論エンジンで生成された工程モデルを、基本モデル(シミュレーションソフトが持つモデル概念に等しい)の集合に分解すると共に、工程モデル間のフロー情報や属性値を、各基本モデルが持つ属性に変更する。
【0122】
属性変更部42は、工程モデル又は基本モデルの配置や形状,属性等を必要に応じて画面上で変更する(自動生成結果の補正)。
【0123】
実行用モデル変換部44は、生成されて基本モデルの集合に分解されたモデルデータを、シミュレーションソフトが解釈、実行可能なデータ形式に変換する。
【0124】
次に、上記の自動生成装置10によるモデルを自動生成する処理手順について図2のフローチャートを用いて説明する。
【0125】
ステップ100において、入力情報決定部12から工程表に記載されたライン情報が入力されると、ステップ102において、ライン情報正規化部32によって、同義語データベース20を用いてライン情報の正規化が行われる。
【0126】
次のステップ104では、モデリングルールデータベース22及び工程モデリング事例データベース24を用いてモデルを合成する処理が実行される。このモデル合成処理では、ステップ104Aにおいて選択ルールに従って工程モデル事例データベース22から工程モデル(または基本モデル)を選択することによって工程モデルを生成し、ステップ104Bにおいて代入ルールを用いて工程表の属性を生成した工程モデルに代入することにより属性を設定し、ステップ104Cにおいて前後モデルとの接続を定める属性に基づいて前後モデルとの接続を設定し、ステップ104Dにいて全工程に適用するか否かを判断する。全工程に適用しない場合には、ステップ104Aに戻って再度工程モデルを生成する処理、属性設定処理、前後モデルとの接続処理を実行する。
【0127】
一方、 全工程に適用する場合には、ステップ104Eにおいてその他の付加モデルの生成を行う。
【0128】
次のステップ106では、メンバの配置、属性の変更、工程モデルの追加があるか否かを判断し、追加がある場合にはステップ108でメンバの配置、属性の変更、工程モデルの追加を行う。次のステップ110では、モデル分解部40によって合成されたモデルを基本モデルデータベースに基づいて基本モデル単位の集合に分割すると共に、工程モデルが持つ属性を基本モデルが持つ属性に変更する処理を行う。次のステップ112では、分割されたモデルの配置、属性の変更、基本モデルの追加があるか否かを判断し、追加がある場合にはステップ114でモデルの配置、属性の変更、モデルの追加を行い、ステップ116で実用モデルに変換する。そして、この実用モデルを用いてシミュレーションを行う。
具体例
以下、機械加工を行うフローラインのシミュレーションモデリングを例にとり、本実施の形態の具体的な例を説明する。この例では、ライン設計を行う計画者が、表計算ソフト等を用いてライン情報を記述し、このライン情報を本発明実施の形態の自動モデリングシステムに入力することでモデルを生成する。
(1)基本モデルデータ
図3及び図4は、表計算ソフト上で定義した基本モデルデータの例を示すものである。基本モデルデータは、大別して、個々の設備モデルパターン(設備クラスと呼ぶ)に関する情報(図3に示す1頁目)と、各設備クラスが持つ属性情報(図4に示す2頁目)とで構成されている。このデータは、シミュレーションに先立ち、ライブラリとして予め作成しておく。
【0129】
1頁目に含まれる情報は下記の通りである。
<1頁目に含まれる情報>
・クラス名:本モデリングシステム上での設備クラス名(モデルのタイプ名)。
・実クラス名:シミュレータ上での設備クラスの名称(シミュレーションモデルへの変換で必要)。
・インスタンス名:設備作成時に付けられる設備名の候補。
・その設備クラスを作成対象として表示するか/しないか、実際の設備モデルを作成可能か/不可能か等を示すタグ情報。
・カテゴリ:分類(設備/管理/制御 等)。
・アイコン色:作成された設備モデルをシステム上に表示するためのアイコンの形状属性。
・親クラス:親クラスの名称。
・概要:クラスの機能概要。
・制約条件等:制約条件等のドキュメント。
また、2頁目に含まれる情報は下記の通りである。
<2頁目に含まれる情報>
・クラス名:対象クラス名。
・変数名:上記クラスの持つ本システム上での属性名。
・実変数名:シミュレータ上での属性名。この属性名は、シミュレーションモデルへの変換で必要となる。
・可視/非可視情報。
・属性(変数)のタイプ(public/private/const 等)。
・特殊な属性を示すタグ。これらの情報は、設備間のフロー(ワークの流れ)や、設備配置の情報等、モデリング用のフォームからの情報を設備属性に反映させる際に必要となる。(例:該当設備の前の設備の名前に関する属性にはconnect_I、後の設備についてはconnect_o、該当設備の配置に関する属性にはlocation 等のようにタグ付けする。)
・属性のデフォルト値。
・選択項目リスト。
・属性に関するドキュメント。
【0130】
上記2つの表は最終的には、1つの階層構造のデータとしてXML形式で保存され、参照される。
【0131】
図5は、XMLデータのスキーマ(データ構造)の例を示すものである。
【0132】
図6及び図7は、表計算ソフト上での工程モデルデータの例を示すものである。工程モデルデータは、大別して、個々の複合設備パターンに関する情報(図6の1頁目)と、各複合設備クラスが持つ属性情報(図7の2頁目)とで構成される。このデータも、シミュレーションに先立ち、ライブラリとして予め作成しておく。実際に使用するデータは一つの階層構造を持ったXML形式のデータを用いる。
【0133】
1頁目に含まれる情報は、下記の通りである。
<1頁目に含まれる情報>
・グループ名:複合設備クラスの名称。
・インスタンス名:複合設備作成時に付けられる名前の候補。
・アイコン色等:作成された複合設備を示すアイコンの形状属性。
・複合設備を構成する設備メンバの(仮の)名称。
・メンバのタイプ(基本設備/複合設備)。
・メンバが属すクラスの名称。
・メンバの複合設備内での相対的位置情報等。
・複合設備の機能概要、制約条件等のドキュメント。
【0134】
2頁目に含まれる情報は、下記の通りである。
<2頁目に含まれる情報>
・対象クラス名。
・上記クラスの持つ本システム上での属性の名前。これらの属性は、元々設備メンバが持つ属性であり、工程モデル中でユニークな名前となるよう、”メンバ名_ + 変数名”のような名前で管理される。
・シミュレータ上での属性名。シミュレーションモデルへの変換で必要となる。・属性(変数)のタイプ(public/private/const 等)
・特殊な属性を示すタグ。これらの情報は、基本的に設備メンバの持つ属性を継承する。
・属性のデフォルト値。
・選択項目リスト。
・属性に関するドキュメント。
【0135】
上記2つの表は、一つの階層構造のデータとしてXML形式で保存され、参照される。図8は、XMLデータのスキーマを示す。
【0136】
以下、図9(A)、(B)に工程モデルの例を示す。図は、検査工程をモデル化したものである。MC0において検査のための一定時間が経過する。その後のCHG1において、不良ワークのみを選別して、OUTPUT0に排出させ、良品は次工程に流す(例えば、良品はA、不良品はBというように異なるワーク名称で分類されている)。この工程モデルでは、MC0の不良品発生比率や検査時間等が属性として登録されている。
【0137】
また、図9(C)は、パレット循環型のトランスファーマシンを示す。CHG1でワークとパレットを分離し、パレットはCVS4→CHG0へと流れて再びワークと合体し、ワークだけが次工程へ流れる。
【0138】
次に、上記で述べた工程モデルの定義方法について説明する。工程モデルの目的は、複数のモデルの集合を登録し、モデリングの際、登録時と同様の属性設定で再構築することにある。
【0139】
ここで説明する工程モデル定義システムは、Microsoft Excel(商品名)のマクロで作成したプログラムであり、設備モデルの表示や、設備間のフローを意味する矢印の表示の機能で、Excelの持つ機能を利用する。
(1)前準備
基本モデルデータおよび工程モデルデータを読み込む。
(2)設備配置
メンバとして登録する複数の設備を一覧メニューから選択し、それぞれフォーム上に配置する。(基本モデルだけでなく、工程モデルも選択可能)
(3)フロー設定
配置した設備アイコン同士を、線(矢印)によって繋ぐことで、設備間のフロー(ワークの流れ)を設定する。
(4)属性設定
設備の持つ属性を一覧のメニューで表示し、必要に応じてこれを編集する。
(5)工程モデル属性の設定
▲1▼ここでは、選択した設備メンバ(複数)の属性情報(多数)の分類を行い、工程モデルという一つのオブジェクトが持つ属性として再設定する。複合設備の属性は以下の様に分類される。
・設備メンバ間の接続に関する属性(前の設備名、後ろの設備名等、ワークの流れを示す)。
・外部モデルとの接続に関する属性。
・メンバの相対的位置関係に関する属性。
・その工程モデルにおいて、固定の値としたい属性。
・その工程モデルにおいて、変更可能な値としたい属性。
【0140】
このように分類する理由は、設備メンバの全ての属性を保存するのは非効率(多くの属性が基本モデル等のデフォルト値のまま)であるため、重要な属性のみを登録するためである。また、登録時の属性のままメンバを再構築しても、設備モデルの名前付けの問題(同じ工程モデルから生成した他のモデルの名前とのバッティング)が起こり、登録時の絶対的位置を保持しても、再構築の際、望ましい位置とはならず、更に、登録時の状態で固定したい属性と、ユーザに開放してパラメータとして編集を許可したい属性とが存在するので、パラメータを設けることで、登録したモデルの再利用範囲を広げることができる。
【0141】
これらの理由から、再利用性の高い工程モデルの定義と基本モデル再構築を実現するため、上記の様な分類が必要となる。
【0142】
▲2▼先ず、登録すべき基本モデル群を選択し、「モデル編集」処理に入ると、図10に示すメニュー画面が表示される。
【0143】
この時点で既に、工程モデルの属性候補として幾つかの項目がリストアップされている。これらは、各メンバの持つ全属性の中から、以下のような特徴を持ったものを自動的に選択し、表示している。
・(3)で設定しておいた設備メンバ間のフロー(前の設備名,後の設備名)に関わる属性
・(4)で設定した設備メンバ属性
・配置に関する属性(工程モデル群の基準座標からの相対的位置に変換されている)
▲3▼次に、選択したメンバの中から、対象となる工程モデルへのワークの入口となるメンバと、出口となるメンバを選択する。この結果、工程モデルの属性候補に、新たにフローに関する属性情報が追加される(上図、MC0の”後設備名”とCVS3の”前設備名”)。
【0144】
▲4▼更に、ある値に固定したい属性を、設備メンバの持つ全属性リストの中から選択し、工程モデルの属性項目に追加する。
【0145】
▲5▼同様に、ユーザに開放してパラメータとして編集を許可させたい属性を、設備メンバの持つ全属性リストの中から選択し、工程モデルの属性項目に追加する。(全ての属性を変数として登録することも可能)
▲6▼この工程モデルの名称や、実際のモデルを生成する際に用いるモデル名候補(例えば”MC_ST0”, ”MC_ST1”のように番号付けが行われる)、この工程モデルの機能や制約を説明するドキュメント等を入力する。
【0146】
▲7▼登録を行う。この結果、上記で説明した工程モデルデータ(ここではXML形式の階層構造テキスト)が追加登録される。
【0147】
シミュレーションの入力となるデータには様々なものがあり、精度の高いシミュレーションを行うためには、モデルの持つ全ての属性について正確なデータを入手し、入力を行う必要がある。
【0148】
しかしながら、全てのシミュレーション解析において、必ずしも正確な全データが必要なわけではない。例えば、新規ライン設計において、実際のラインの故障頻度に関するデータを得ることは不可能であるが、解析の目的が複数の設計案の相対的な比較が目的であれば、それは設定しないか、或いは過去の類似工程におけるMTBF,MTTR等で代用すれば充分である場合もある。
【0149】
このように、入力データの精度レベルを如何に設定するかはケースバイケースであり、本来、シミュレーションの専門家がライン計画者と協議を行い、決定すべき問題である。
【0150】
これを自動的に行い、計画者自身はモデリングを実施できるようにするため、本実施の形態では、入力情報決定用テーブル(表)を用いた管理法を適用する。
【0151】
この入力情報決定用テーブルでは、シミュレーションへの入力データが、シミュレーション解析の目的に対してどの程度の必要性を持つかを定義しており、次項でのデータ入力において、最初にシミュレーションの目的を設定すると、各入力データのレベルが自動的に設定される。
工程表の作成
自動モデリングのための重要な入力情報、すなわち、ライン情報データ(工程表)は、Excel等で記述した表データで定義される。
【0152】
ユーザは、データ入力に先立ち、先ず解析目的をリストの中から選択する。この結果、各データ項目に対して、入力の必要性が表示される。
【0153】
ユーザはこの表を埋め、「モデル自動生成」ボタンを押すことでモデル生成処理)を実行する。この際、入力情報決定部で「必須」や「実データ必要」として登録されている属性項目についていずれの工程についても設定をしなかった場合、入力を促すワーニングやエラー等が表示される。これに従うことで、本来シミュレーションの専門家でない計画者でも、各データの重要性を理解し、不適切なモデリングを行うことが防止できる。
【0154】
また、この表には、工程の内容とは別に、後で行うモデル自動生成の際に用いる推論エンジンでどのようなルールデータベースと事例データベースを用いるかの選択を行うためのキーワード(例えば、「自動化加工ライン」、「手組み工程」等)が含まれている。
工程モデルの自動生成
自動生成モジュールの起動と同時に、基本モデルデータおよび工程モデルデータを読み込む。
【0155】
次に、ライン情報データを読み込む。この際、データに記述された内容(語句)は正規化処理を受け、後の処理において参照しやすいデータ形式に変換される。正規化処理の例を表2に示す。表の正規化データは、標準語に相当し、キーワードは、同意義語に相当する。
【0156】
【表2】
【0157】
工程モデル生成では、入力されたライン情報を分析し、各工程に対して適切な工程モデルを選択・生成し、更に作成した工程モデルに対してライン情報のデータを反映させる。また、工程フローを工程モデルに反映させる。これは以下の様なアルゴリズムで行われる。
【0158】
Step1:ライン内の全行程データのうち、次のStep2を未実施であり、なお且つ対象工程の上流工程が存在しないもの(即ち先頭の工程)についてStep2を実行する。次に、Step2で作成された工程モデル群についてStep3,4を実行する。
【0159】
Step2:対象工程について、以下を実行する。
【0160】
Step2.1:対象工程について、工程のタイプ、その他の属性、本工程の前工程の出口設備モデルのリスト(上流が複数の場合、合流用の設備を作成する等の対応を行うため)等を参照し、工程モデル又は基本モデルを一つ又は複数生成する。また、作成したモデルのうち、最も上流に位置する設備モデルを1つ求める。
【0161】
Step2.2:対象工程の次工程(下流)に対して更にStep2を再帰的に実行する(ただし、次工程が無ければこのStep2を抜ける。また次工程が既にStep2を適用済みの場合はStep2.3へ進む)。この際、上記Step2.1で作成された工程モデルのうち、工程内で最も下流に位置する一つ又は複数のモデル(即ち工程の出口設備モデル)を、次工程に対する上流モデルとして設定する。
【0162】
Step2.3:上記Step2.2で作成された次工程モデルのうち、工程内で最も上流に位置する一つのモデル(即ち次工程の入口設備モデル)を、本工程の出口設備群の下流設備として登録する。また、次工程の入口設備モデルの上流設備として、本工程の出口設備モデルを登録し、二つの工程の設備の流れを定義する。
【0163】
Step3:モデリング画面のフォーム上に、一連の工程モデル群が上流から下流まで直線的に(並列に複数のモデルが存在する場合は、流れに対し垂直に並べる)並ぶよう配置を行う。
【0164】
Step4:予め設定しておいたライン最大長データに従い、最大長を超える設備モデルについては、改行を行うように設備のフローを折り曲げる。この処理は、全ての設備が定められた領域に入るまで繰り返す。
【0165】
なお、本実施例においてStep2.1の実際の論理処理は、推論エンジン中のルールデータベースで記述されたロジックに従って行われる。
【0166】
次の表3にメタルールの例を示し、表4にルール群の例を示す。
【0167】
【表3】
【0168】
【表4】
【0169】
上記処理に従って工程モデルの生成と描画を行った結果(工程モデル生成後の状態)を図10に示す。図において四角形が工程モデルである。
工程モデルの分解
以下のアルゴリズムを用いて、上記のようにして作成した工程モデルを、基本モデルの組み合せになるまで詳細に分解する。
【0170】
Step1:ライン内の全工程モデルデータのうち、次のStep2を未実施であり、なお且つ対象工程モデルの上流モデルが存在しないもの(即ち先頭のモデル)についてStep2を実行する。
【0171】
Step2:対象モデルが工程モデルである場合はStep2.1、基本モデルである場合はStep2.2を実行する。その後、Step2.3、Step2.4を実行する。
【0172】
Step2.1:
(1)工程モデルに登録されているメンバである基本モデル又は工程モデル(メンバという)を、登録されている位置に生成する。この際、モデル名称を<工程モデル名>+”_”+<登録されているメンバ名>というルールで付けることで、ライン上でユニークなモデルにする。
(2)工程モデルの持つ属性変数の中で、生成したメンバに関するものを、そのメンバに適用する。
(3)上記属性の中で、モデル間の接続に関するもの(上流・下流モデル名を設定)である場合、その変数がメンバ間の接続を意味するものである場合は次の(3−1)、工程モデル外のモデルとの接続を意味するものである場合は次の(3−2)を実行する。
(3−1):登録された上流又は下流設備モデル名の先頭に<工程モデル名>+”_”を追加する(上記(1)の名前付けルールに対応)。
(3−2):その属性が、工程モデルへの入力となるモデルを定義するものである場合は、その属性名称を、「入力リスト」に登録する。また、工程モデルの出力となるモデルを定義するものである場合は、その属性名称を、「出力リスト」に登録する(いずれも複数可)。
(4)(3−1)で設定した、メンバ間の接続属性に従い、メンバ同士のフローを定義(上流・下流モデル名を設定)する。
(5)メンバ自身が工程モデルである場合は、その工程モデルに対してStep2を適用する。
【0173】
Step2.2:対象基本モデルの属性の中で、モデル間の接続に関するもの(上流・下流モデル名を設定)である場合、その属性が、モデルへの入力となるモデルを定義するものである場合は、その属性名称を、「入力リスト」に登録する。また、工程モデルの出力となるモデルを定義するものである場合は、その属性名称を、「出力リスト」に登録する(いずれも複数可)。
【0174】
Step2.3:対象モデル(複合又は基本)の下流工程モデル(一つ又は複数)が存在しない場合はStep2を抜ける。下流モデルのうち、Step2を未実施であるものに対して、Step2を適用する。
【0175】
Step2.4:下流工程モデルの中で「入力リスト」に登録されている設備と、本工程モデルの「出力リスト」として登録されている設備モデルを接続する(それぞれの名称を登録し合う)。
【0176】
上記処理に従って工程モデルの分解と描画を行った結果(工程モデル分解,基本モデル生成後の状態)を図11に示す。各基本モデルは、工程モデルが存在していた位置に、登録時と同様に作られる。
配置・属性変更
工程モデル生成や基本モデル生成後、生成されたモデルが所望のラインと異なる場合、手直しをする必要がある。この場合、配置・属性の変更、新しい設備モデルの追加・削除等の機能を用いることになる。
配置変更
自動生成されたモデルの配置は、もともと自動的に決定されたものであるため、基本的に、実際のラインでの配置とは異なる。離散系シミュレーションにおいて、設備配置は必ずしもシミュレーション精度に影響を及ぼさないが、視覚効果や目視によるライン挙動のチェック等を考慮すると配置の調整機能が必要となる。
本システムでは、設備群が表示されたるフォーム上で、マウス操作によって設備アイコンを動かすことで、配置を変更できる。フォーム上での配置変更結果は、「生成モデル記憶部」に登録され、シミュレーションモデルファイル生成時に、基本モデルが持つ、配置属性データに反映され、記録される。
シミュレーションモデルファイル生成
多くのシミュレーションソフトが、テキスト形式のモデルファイルをサポートしており、シミュレータ固有の書式に添って、外部ツールでシミュレーションモデルファイルを作成することは可能である。
【0177】
【発明の効果】
以上説明したように本発明によれば、シミュレータに特化した特別な訓練、操作をできるだけ行わず、シミュレーションモデルを自動的に生成することができる、という効果が得られる。
【0178】
また、本発明において上記のように、ライン計画者でもモデリング、ひいてはシミュレーションを実施できることにより、以下の様な効果が得られる。
(1)詳細なデータが完全に揃わないライン設計初期段階においても、ある程度定量的に生産性を知ることができ、ライン設計の基本方針に関して、設計後期で後戻りすることを防ぐことができる。これにより、生産システム構築のリードタイム短縮と設計の高品質化を図ることができる。
(2)入力データの誤りによるシミュレーションの失敗(実ラインとの不整合)を防ぐ効果がある。例えば、計画者から解析専任者を通してシミュレータへデータが渡る過程でのミスを防止することができる。また、計画者は、シミュレーションの結果が、入力データの問題から、当初予想したものに対して異なることに対して気付き易い。更に、ライン設計情報は計画において日々変更されることが多いが、計画者自身はそうした情報に常に接しているため、データの陳腐化による結果の不整合を防止できる。
(4)計画者自身が生産システム構築・改善の試行錯誤,検証を行うことが容易であり、ライン設計ノウハウを計画者自身が身に付けることに効果がある。
(5)解析専任者にとっても、自動化によって、従来のモデリング手段と比較して格段に迅速なモデリングが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態のシミュレーションモデルの自動生成装置のブロック図である。
【図2】本発明の実施の啓形態のモデルを自動生成する処理手順を示す流れ図である。
【図3】基本モデルデータの1頁目の例を示す図である。
【図4】基本モデルデータの1頁目の例を示す図である。
【図5】基本モデルデータのXMLデータのスキーマの例を示す図である。
【図6】工程モデルデータの1ページ目の例を示す図である。
【図7】工程モデルデータの1ページ目の例を示す図である。
【図8】工程モデルデータののXMLデータのスキーマの例を示す図である。
【図9】(A)、(B)、(C)は、工程モデルの例を示す図である。
【図10】工程モデル生成後の状態を示す図である。
【図11】工程モデルを分割して基本モデル生成後の状態を示す図である。
【符号の説明】
12 入力情報決定部
20 同義語データベース
22 モデリングルールデータベース
24 工程モデリング事例データベース
26 基本モデルデータベース
【発明の属する技術分野】
本発明は、シミュレーションモデルの自動生成装置に係り、特に、生産ラインの設計・改善時において、ラインの挙動を事前に検証する検証時に行われるシミュレーションの入力データとなるシミュレーションモデルを自動作成するシミュレーションモデルの自動生成装置に関するものである。
【0002】
【従来の技術】
生産ラインの挙動を事前に検証するためのシミュレーションとして、市販の複数のシミュレータが知られている。これらのシミュレータの殆どが、専用のモデリング機能や解析機能を備えている。一般的に、生産ラインのシミュレータを利用するためには、モデリングや解析における様々な専門的知識を必要とし、利用するにあたって以下のような困難さが存在する。
【0003】
1)シミュレータのモデリング操作(具体的には、▲1▼ラインを流れるワークの種類を定義し、▲2▼設備を選択して配置し、▲3▼パラメータを設定し、▲4▼ワークの流れを定義する等)に習熟ことが必要であるので、設計者等にはモデリング操作が困難である。ここで生成、配置する設備モデルの数は、解析対象や、シミュレーションツールに依存するが、数十、時には数百に上る場合もある。
【0004】
2)モデルの属性(パラメータ)の概念や、名称が、計画者にとって聞き慣れない語句で表現されており、故障等で用いる乱数等、設定にノウハウや知識を必要とするパラメータが多く、また、設備数や個々の設備のパラメータが多く、入力に手間がかかる。
【0005】
3)モデルの機能、仕様(一例として、コンベヤ速度の単位は何か、故障の分布にはどのような種類があるか等)を正確に理解する必要があり、理解していないとモデリング操作は困難である。
【0006】
4)実際の設備機器をどのように抽象化するかのノウハウが必要であり(一例として、搬送機を動きのある物体で表現するか、移動時間だけをパラメータとするか、簡略化してよい設備と詳細化すべき設備をどう分けるか等)、また、標準モデルの組み合わせで複雑なシステムを構成することにもノウハウが必要であり、これらのノウハウが無いとモデリング操作が困難である。
【0007】
5)その他、モデルの挙動について計画者(解析依頼者)と解析担当者との間で検証が必要であり、また、シミュレーションソフトが高価で、モデリングを行う環境が不足している。
【0008】
上記のような困難さが存在するため、専任のエキスパートがシミュレーションを実施する場合が多い。このため、計画者のペースで試行錯誤を行うことは困難であり、解析専任者に依頼が集中する場合には、重要案件をタイムリーにシミュレーションで検討できない可能性がある。
【0009】
ライン設計上のノウハウは、実際に試行錯誤を行い、多くの案件を処理する解析専任者が蓄積しがちで、計画者のスキルアップや意識向上に繋がり難い面を持っている。
【0010】
正確なシミュレーションを行うためには、計画者と解析専任者との間のコミュニケーションが必要不可欠であるが、その反面、解析リードタイムが長くかかる、という問題がある。
【0011】
ライン設計の手順、結果の出力形式は様々だが、多くの場合、ライン設計者は、設計結果を、各工程間の緒元やフローを「工程フローチャート」や表1に示す「工程表」等(以下、「工程表」という。)に記載する。その内容は、各工程における処理時間(サイクルタイム)や前後工程との繋がり、処理内容を記したコメント等で、本来、シミュレーションのための書類ではないので、特に設計の初期段階においては、一般的にシミュレーションで用いるモデルの詳細度に比較して情報量が少ない。
【0012】
【表1】
【0013】
このため、シミュレーション専門家は、この工程表を分析すると共に、設計者への聞き取り等を行い、過去の知見に基づいてモデルを作成している。
【0014】
一方、従来では、各工程に対応する部分的なモデルを作成、保存、再利用することでモデリングを効率化できるシミュレーションソフトウェアも販売されている(例:Tecnomatix社のSIMPLE++等)。
【0015】
【発明が解決しようとする課題】
しかしながら、これらのソフトウエアでは、モデリング作業の効率化は図れるものの、そのシミュレータや部分的モデルの内容を熟知した専門家でなければ活用することは困難であり、モデリングを自動化してライン設計者自身を支援し得るものではない。
【0016】
本発明は、ライン設計者が、通常の設計業務の中で作成した前述の「工程表」の様な設計情報を入力として利用し、シミュレータに特化した特別な訓練、操作をできるだけ行わず、シミュレーションモデルを作成することができるようにし、これにより従来困難であった設計者自身によるシミュレーションを実行可能にすることを目的とする。
【0017】
【課題を解決するための手段】
モデルの自動生成には、幾つかの課題が存在する。例えば、シミュレータが持つモデル(例えば、加工機械、バッファ、搬送機器等)に関する情報無しにはモデルを作成することはできず、そのための何らかのデータベースが必要である。
【0018】
また、生産ラインのシミュレーションでは、一般的に一つの工程をモデル化する場合、シミュレータが持つモデルを複数組み合わせることになる。すなわち、工程の概念とモデルとは一対一の対応関係にはないため、単純な変換作業では自動生成できない。
【0019】
更に、シミュレーションモデルには、例えばライン内を流れるワークの生成や排出を行うモデルやワークの流れのみを制御するモデル等、本来物理的に存在しない(すなわち、工程表上にも存在しない)がシミュレーションのためには不可欠なモデルが存在する。
【0020】
多くの場合、工程表に書かれた属性名、工程名、及び単位等は、シミュレーションモデルが持つそれらとは、一致していない。
【0021】
このような理由から、設計情報を元にシミュレーションモデルを自動的に作成するためには、シミュレーション専門家が持つ様々な知識(暗黙知)を形式知としてデータ化し、これを用いて適切なラインの内容を類推し、モデルを合成する必要がある。
【0022】
専門家の知識を利用するアプローチとしては、いわゆるエキスパートシステムを構築し、利用することが考えられる。一般的にエキスパートシステムは、ルールデータベース(知識ベース)のシステムであるが、上記の様なシミュレーションモデリングにおける知識を全てルールデータベースで記述するには非常に膨大な量のルールの記述が必要であり、専門家からのルールの取得も困難である。例えば、幾何学的な配置や、接続関係、属性の設定等は、データの形式で保持するのは容易であるが、論理的に記述することに向いていない。
【0023】
ルール以外のアプローチとして、事例の利用が考えられる。モデリングに関する知識・ノウハウの内容は、過去に作成されたラインのモデル(すなわち、事例)に全て集約・内包されると言ってもよい。ただし、個々のラインモデルは、あくまで対象のラインを模擬したものであり、新たな設計要件に対してそのまま利用することは殆ど不可能である。
【0024】
一方、生産ラインの特徴として、ライン中に多数存在する各作業工程については、その構成にある種のパターンが存在する。このパターンは、企業や工場、対象となる製品・作業・処理によって当然ながら異なる。前述の様に、ライン全体のモデルは事例としての再利用性が低いが、この工程レベルのモデルは、再利用性が高い。本発明等はこの点に着目し、モデリング作業上の知識を、どのような場面(工程)で、何を(どんな工程モデル事例を)、どのように(どのような属性、接続で)作成するか、という様に分類、整理することにより、ある程度体系化できる点に着目し、知識を、工程レベルのモデリング事例を収めたデータ、工程の選択や属性設定の方法を記述したルール、設計者が用いる言葉と、シミュレーションモデルで用いる言葉の対応表、及びルールやモデリング事例自体の選択に関するメタルール等に分けてデータ化し、これらを組み合わせた推論エンジンを用いることでラインモデリングの自動化を図っている。
【0025】
上記目的を達成するために本発明は、工程情報を入力するための入力手段と、複数のメンバを接続して表されると共に属性によって分類された工程モデルを複数個記憶した工程モデリング事例データベースと、シミュレーションモデルで扱うことができる単位の基本モデルを属性と共に複数個記憶した基本モデルデータベースと、入力された工程情報から該工程情報に対応する工程モデルを選択するための選択ルール、及び該工程情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したルールデータベースと、前記工程モデリング事例データベースに記憶された工程モデル、及び前記ルールデータベースに記憶されたルール群に基づいて、入力された工程情報に対応する工程モデルを選択し、かつ該工程情報に含まれるデータを工程モデルが持つ属性に代入する処理を行ってシミュレーションモデルを生成する生成手段と、前記生成手段によって生成されたシミュレーションモデルを前記基本モデル単位の集合に分割すると共に、工程モデルが持つ属性を該基本モデルが持つ属性に変更するモデル分解手段と、を含んで構成したものである。
【0026】
本発明では、複数のメンバを接続して表されると共に属性によって分類された工程モデルを複数個記憶した工程モデリング事例データベースと、シミュレーションモデルで扱うことができる単位の基本モデルを属性と共に複数個記憶した基本モデルデータベースと、入力された工程情報から該工程情報に対応する工程モデルを選択するための選択ルール、及び該工程情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したルールデータベースとが設けられている。
【0027】
生成手段は、入力手段から入力された工程情報、工程モデリング事例データベースに記憶された工程モデル、及び前記ルールデータベースに記憶されたルール群に基づいて、入力された工程情報に対応する工程モデルを選択し、かつ該工程情報に含まれるデータを工程モデルが持つ属性に代入する処理を行ってシミュレーションモデルを生成する。
【0028】
生成手段によって生成されたシミュレーションモデルは、モデル分解手段によって、基本モデル単位の集合に分割されると共に、工程モデルが持つ属性が基本モデルが持つ属性に変更される。
【0029】
これによって、シニュレータが解釈可能なシミュレーションモデルを自動的に生成することができる。
【0030】
本発明には、標準語に対応させて同義語を記憶した同義語データベースと、前記同義語データベースを用いて前記入力手段から入力された工程情報を標準語に正規化した後、前記生成手段に入力する正規化手段を更に設けることができる。
【0031】
これによって、専門的な語句を知らなくても、同義語を入力するだけで、自動的に専門的な標準語に正規化することができる。
【0032】
前記工程モデリング事例データベースには、工程モデル内の各メンバのタイプ及び識別子に関する属性、工程モデル内のメンバの相対位置関係に関する属性、及び工程モデル内のメンバの外部工程モデルとの接続(前後関係定義)に関する属性を含む属性によって分類された複数の工程モデルを記憶することができる。
【0033】
前記ルールデータベースには、前記工程情報に含まれる接続に関する属性に基づいて、選択された工程モデルと外部工程モデルとを接続するための接続ルールを更に記憶することができる。
【0034】
また、前記ルールデータベースには、作成すべきラインの分類情報に基づいて、分類情報に対応するルールを含むルール群を選択するためのメタルールを更に記憶することもでき、また、シミュレーション実行のために必要なモデルを追加するためのルール、及び工程情報に工程の列数に関する情報が含まれていた場合に該列数に関する情報から対応する工程モデルを複製するためのルールの少なくとも一方を記憶することもできる。
【0035】
そして、前記基本モデルには、基本モデル自身のタイプ名、生成したモデルの内容をシミュレータが解釈できる形式に変換するための属性情報を含ませることができる。
【0036】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0037】
図1に示すように、本発明の実施の形態におけるシミュレーションモデルの自動生成装置10には、工程設計者が作成した工程表を修正したり、工程表に新たな情報を追加する等によって、自動生成装置10に入力するライン情報(入力情報)を決定して入力するための入力手段としての入力情報決定部12が接続されている。
【0038】
また、自動生成装置10には、自動生成装置で変換されたシミュレーションを実行するための実行モデルを格納するためのシミュレーションモデルファイル14が接続され、このシミュレーションモデルファイル14にはシミュレーションを実行するためのシミュレータ16が接続されている。
【0039】
自動生成装置10には、標準語に対応させて同義語を記憶した同義語データベース20、入力されたライン情報からライン情報に対応する工程モデルを選択するための選択ルール、及びライン情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したモデリングルールデータベース(モデリングルールベース)22、複数のメンバを接続して表した工程モデルを複数個記憶した工程モデリング事例データベース(工程モデリング事例ベース)24、及び、シミュレーションモデルで扱うことができる単位の基本モデルを属性と共に複数個記憶した基本モデルデータベース26が設けられている。
【0040】
モデリングルールデータベース22には、モデリングルールデータベース22にモデリングルールを記述するためのモデリングルール記述部28が接続され、工程モデリング事例データベース24には、工程モデリング事例データベース24に工程モデリング事例を登録するための工程モデリング事例登録部30が接続されている。
【0041】
同義語データベース20には、入力されたライン情報を同義語データベース20を用いて標準語に正規化するライン情報正規化部32が接続されている。
【0042】
ライン情報正規化部32には、正規化されたライン情報、すなわち工程設計情報を格納する工程設計情報格納部34が接続されており、工程設計情報格納部34には、モデリングルールデータベース22と工程モデリング事例データベース24とを用いて、シミュレーションモデルを合成するモデル合成部36が接続されている。モデル合成部は、モデリングルールデータベース22及び工程モデリング事例データベース24と共に推論エンジンを構成する。
【0043】
モデル合成部36には、基本モデルデータベースを用いて、シミュレーションモデルを基本モデル単位の集合に分割するモデル分割部40、工程モデルが持つ属性を基本モデルが持つ属性に変更する属性変更部42に接続された生成モデル記憶部38が接続されている。生成モデル記憶部38は、基本モデル単位の集合に分割され、かつ属性が基本モデルが持つ属性に変更された生成モデル、その前の段階の工程モデルの集合を記憶する。
【0044】
また、生成モデル記憶部38には、生成モデルをシミュレータで実行する実行用モデルに変換する実行用モデル変換部44が接続されている。
【0045】
次に、図1の各部の詳細について説明する。まず、最初に各データベースに格納されているデータについて説明する。
【0046】
推論エンジンは、モデリングに関する知識を用いて、工程表を元にシミュレーションモデルの合成を行うためのものであり、データベース22、24を含んで構成されている。
【0047】
推論エンジンのモデリングルールデータベース22には、ユーザが作成する工程表を入力として、工程モデリング事例データベース24からの適切なモデリング事例の検索、工程表に書かれた緒元の代入処理等のルールが格納されている。ルールの記述には幾つかの方法が考えられるが、例えば、IF−THENルール等の形式で記述することができる。
【0048】
モデリングルールデータベース22は、工程内の詳細なモデル情報を持たないが、以下で説明する事例データベース24がその内容を補っている。また、事例データベース24は、事例データベース自身ではその利用法に関する知識を持たないが、このルールデータベースを用いて利用法に関する知識を補うことができる。このように、ルールデータベース及び事例データベースの各データベースは、各々簡潔な記述でありながら、互いに不得意な知識を補完し合うことで、全体としては専門家と同レベルの知識を体系化し得る。
【0049】
これらの知識(推論エンジン)を利用することで、シミュレーションに関する知識の無い者であっても通常の設計業務の出力である工程表を用意するだけで、詳細なシミュレーションモデルを自動生成することが可能である。
【0050】
ルールデータベースに格納されるルール群としては、以下のようなものがある。
【0051】
▲1▼工程情報から、その工程に対応する工程モデルを選択するための選択ルール。
【0052】
このルールは、工程モデルを作成するために必要である。作成される工程モデルは、一つとは限らず、また基本モデルを作成する場合もある。関連するモデルの要素としては、工程モデリング事例データベースの工程モデル内の各メンバのタイプ及び識別子、工程モデル生成時の名前の候補、基本モデルデータベースの基本モデル自身の名称、基本モデルを生成する際の名前の候補があり、参照する工程情報の例としては、工程名、処理名、前後バッファの有無、前後工程の有無等がある。
【0053】
▲2▼工程情報に含まれる種々のデータを工程モデルが持つ属性に代入するための代入ルール。
【0054】
このルールは、工程情報をモデルにマッピングするために必要なルールである。関連するモデルの要素としては、工程モデリング事例データベースのユーザが変数として扱うメンバの属性、登録時に任意に追加する属性、及び工程モデル自身の属性、基本モデルデータベースの属性情報があり、参照するデータの例としては、処理名、サイクルタイム、バッファサイズ、故障頻度等がある。
【0055】
▲3▼工程情報のうち前後工程に関する情報から選択ルールによって選択した工程モデルと前後の工程モデルとを接続する接続ルール。
【0056】
このルールは、工程同士を接続することで、工程フローからモデルのフローにマッピングし、ラインを形成するために必要なルールである。関連すモデルの要素としては、工程モデリング事例データベースの工程モデル内のメンバの名前が記録された属性、基本モデルデータベースの他のモデルとの接続に関する属性があり、参照する工程情報としては前後工程の有無、前後工程名等がある。
【0057】
▲4▼シミュレーション実行のために必要なモデル(シミュレータのモデル)を追加するためのルール。
【0058】
このルールは、シミュレーション実行のためには、工程情報と無関係な管理用のモデルを生成する必要があることから必要なルールである。関連すモデルの要素としては、工程モデリング事例データベースの基本モデル自身の名称、及び属性情報があり、追加すべき管理用のモデルの例としては、実行停止用のタイマ、ワークの生成及び消去、及び工場稼動スケジュール等がある。
【0059】
▲5▼工程情報内の工程の列数に関する情報から工程情報に対応する工程を複製するための複製ルール。
【0060】
このルールを用いることにより、単列、二列、三列等の工程パターンを全て工程モデルとして個別に登録し、管理する必要が無いため、基本的な工程モデルだけを持てばよくなる。
【0061】
▲6▼作成すべきラインの分類情報から上記ルール群を選択するためのメタルール。
【0062】
ルール群は、対象によって適用範囲が限定されるので、適正なモデリングを行うためにこのメタルールが必要である。ライン分類の例としては、自動化機械加工ライン、手組ラインなどがある。
【0063】
工程モデリング事例データベース24には、工程種類別に、工程を構成する複数のシミュレーションモデル(設備モデル)の種類、配置、属性、前後接続関係等を記述したモデリング事例に関するデータが格納されている。
【0064】
工程モデリング事例データベース24は、複数の設備モデル群の属性を一つの事例として保存したモデル(工程モデル)の集合体である。工程モデルは、以下に示す属性が与えられて登録されている。
【0065】
▲1▼工程モデル内の各メンバのタイプ及び識別子(名称)を表す属性。
【0066】
この属性は、工程モデルの分解時に、各メンバを生成するために必要である。例えば、メンバ名「CV1」は、工程分解後に「CV1_OP1」という名称のコンベアとして生成される。
【0067】
▲2▼工程モデル内のメンバの位置、または位置及び姿勢に関する属性。
【0068】
この属性は、工程モデルの分解時に、各メンバを登録時と同様な位置関係に配置するために必要な属性である。この属性は、工程モデルの基本座標からの相対位置で定義することができる。
【0069】
▲3▼工程モデル内のメンバの属性であって外部工程モデルとの接続(前後関係で定義)に関する属性。
【0070】
この属性は、工程モデル分解時に、工程同士の接続情報を各々の工程モデル内のメンバの接続情報に変換するために必要な属性である。例えば、対象となるメンバ名と接続情報を収めるべきそのメンバの属性名が該当する。
【0071】
▲4▼工程モデル内のメンバの名前が記録された属性(工程モデル内のメンバ同士の接続に関する属性等が該当する)。
【0072】
この属性は、工程モデル分解時に、各メンバの名前をライン内においてユニークな名称に変換するのに合わせて必要である。例えば、メンバ名「CV1」の属性が与えられたメンバを工程モデル「OP1」に分解後、ユニークな名称を「CV1_OP1」に変換する。
【0073】
▲5▼その他、工程モデル内のメンバの属性であって、保存すべき属性。
【0074】
この属性は、工程モデル分解時に、生成されたメンバの属性を登録時と同様に再設定するために必要である。この属性は、基本的には、メンバ属性のうちの非デフォルト属性(ユーザによって変更された値)である。
【0075】
上記の▲1▼〜▲5▼の属性は、工程モデルを構成するメンバが持つ属性へのリンクとなっている。なお、接続とは、例えば、モデル「コンベヤ1」が持つ属性「後設備」に「コンベヤ2」を入力し、更に「コンベヤ2」の属性「前設備」に「コンベヤ1」を入力する等の処理である。
【0076】
その他、工程モデル事例データベースには更に以下の属性を用いるようにしてもよい。
【0077】
・工程モデル内のメンバの属性であって、ユーザが変数として取り扱う属性。
【0078】
工程モデルに対して、ユーザが変更可能なこの属性を選択しておくことにより、工程モデル生成後の属性編集が容易になる。一般に、全メンバの属性項目は、非情に膨大になるため、閲覧性が悪く、編集し難いので、変数として取り扱える属性を選択しておくのが効果的である。
【0079】
・登録時に任意に追加する属性。この属性により、任意の論理式を実行し、工程モデル内メンバの属性等を参照、操作することができる。
【0080】
この属性によって、複数のメンバの属性を一括して変更したり、属性同士の値を関係づけるようにすると効果的である。例えば、属性A変更時の論理式記述の例として、CV1 バッファサイズ=val(A)、CV2 バッファサイズ=val(A)がある。
【0081】
・工程モデル自身の名称(タイプ)を表す属性。
【0082】
この属性は、ルール適用、または手動により工程モデルを生成する際等に必要である。
【0083】
・工程モデル生成時の名前の候補を表す属性。
【0084】
この属性は、ルール適用、手動により工程モデルを生成する際等に必要である。
この工程モデル生成時の名前は、ルール側で名前付けしてもよい。
【0085】
・工程モデルを表示するための図形情報に関する属性。
【0086】
この属性は、システム上で、工程モデルのアイコンを整列させる際、その大きさを知るために使用される。例えば、アイコンの幅、高さ、イメージファイル名等である。
【0087】
・そのモデルが工程モデルであることを示す識別子を表す属性。
【0088】
この属性は、そのモデルを分解処理の対象とするために用いるものである。
【0089】
ライン情報正規化部32は、工程表に書かれた項目名、工程種類名、単位等のライン情報を標準語に正規化(Canonicalization)する処理である前処理を行う。この前処理では、工程設計者とシミュレーション専門家とが各々用いる語彙をデータ化した同義語データベース20を用いて語句の変換を行う。
【0090】
上記の構成により、暗黙知となっているモデリングに関する専門家の知識が、大別して、同義語データベース20、モデリングルールデータベース22、工程モデリング事例データベース24の3つに分けて登録される。知識のうち、モデリングルールデータベース22及び工程モデリング事例データベース24が主体であり、同義語データベース20は補足的である。同義語データベース20以外にも、例えば、ラインの実績データベースとのリンク情報、及びモデルに関するドキュメント情報等を補足的な知識として用いることができる。
【0091】
上記の工程モデリング事例データベース24に格納された工程モデルは、単なるモデリング結果の記録(または、基本モデルの集合体)ではなく、一つの新しい設備モデルのように再利用できるものである。ソフトウェア的に見ると、「オブジェクト化」されている。例えば、前後工程との接続や、属性の設定、複製等、ルールデータベースからの簡単な要求(オペレーション)に従ってモデルの内容を様々に変更可能となっている。その具体例、理由を以下に示す。
(1)作成した工程モデルに対して、ルールデータベースに従って前後の工程(工程モデル)との接続を指示するだけで、実際のシミュレーションモデルとなるメンバ設備に対する接続の設定を行うことができる。これは、工程モデリング事例データベース24に、工程モデルに対して外部モデルを接続した場合、どのメンバに対して実際に接続をすべきかを表す属性が登録されているためである。
(2)ライン全体をモデル化する際、同じ工程モデルを複数含んでいても、各々の工程内メンバの名称が全てユニークになるよう設定する必要がある。同様に、メンバ間の接続属性として保存されている前後の設備名についても、ユニークな名称に変更する必要がある。工程モデルでは、メンバ間の接続に関する属性を分類して記録しているため、工程モデルを分解して基本モデルを生成する際、メンバ間の接続に関して保存した属性を抽出し、名前付けをやり直すことができる(例えば、「OP10」という工程モデルを分解する場合、メンバであるコンベヤ「CV1」の名称は「OP10_CV1」の様に変換できる)。
(3)工程モデルは、事例としての再利用性は高いが、全てのデータが新しい設計要件にマッチするわけではないため、変数属性を設けてカスタマイズできることが非常に重要となる。このため、工程モデル登録時のままで用いるべき属性と、ユーザが変更すべき変数とすべき属性とを分類している。工程モデル及びそのメンバは、非常に多くの属性を持つが、ユーザは、変数となる属性のみメニュー上で見ることができるため、工程モデルに対する属性の変更が容易となる。
(4)登録時に任意に追加する属性を用いて定義した変数に対して入力、属性変更を行うと、他のメンバの属性に対して数式を適用し、瞬時に多くの属性設定が可能となる(例えば、メンバである6台の加工設備の属性「加工時間」を全て同じ値に設定する等)。こうした属性間の関連性の設定は、属性の一括変更や属性の変数の関連付けに適している。
(5)工程モデルデータの作成の際、メンバ間の接続に関する属性、位置情報に関する属性等のリストアップは自動的に行われる。これは、メンバとなる設備に関する基本モデルが、その属性として事例データベースの属性と同様の分類情報を持つためである。工程モデル登録の際、システムはこれらの分類情報を検索し、属性のリストアップを行う。
【0092】
同義語データベース20を用いることにより、設計者が普段から用いる言葉、形式で書かれた表であっても、予めデータを正規化することで推論におけるあいまいさが排除され、比較的簡易なルールの記述によって適切なモデルの構築が可能である。例えば、ルール記述において、項目名が「A」又は「B」又は「C」ならば・・・といった記述が不要となる。この部分は、入力となる工程表の記述法に関する制約やユーザに求められる知識に関する制約を減少させる効果がある。
【0093】
基本モデルデータベース(基本モデルデータ)26は、シミュレーションソフトで扱う様々なモデルの属性項目(パラメータ)を格納したデータベースであり、シミュレーションソフトが持つ基本的なモデルについて、それが保持する属性に関する情報を格納している。
【0094】
属性項目の内容は、設備モデル毎に異なり、例えば以下の様なものがある。以下は、極一部の例であり、実際には一つの設備に対して数十の項目が存在している。
【0095】
▲1▼基本モデル自身の名称(タイプ名)を表す属性。この名称は、本発明システム内で用いる名称と、シミュレータが解釈可能な基本モデルの名称との両方を示す。
【0096】
この属性は、基本モデル生成時、及び本システムで作成したラインモデルの内容をシミュレータが解釈できる形式に変換する際に必要である。例えば、多くのシミュレータは、conveyor、machine、AGV等、英語の名称を用いている。
【0097】
▲2▼属性情報(属性の名称(本システム内で用いる名称とシミュレータ上のモデルの属性名の両方)、値等を含む)。
【0098】
この属性情報は、本システムで作成したラインモデルの内容をシミュレータが解釈できる形式に変換するのに必要である。例えば、属性「故障間隔」は、シミュレータ上のモデル属性「MTBF」に変換される。この属性情報には、基本的に位置属性、接続情報属性、その他の属性等全てを含む。
【0099】
▲3▼基本モデルを生成する際の名前の候補に関する属性。
【0100】
この属性は、基本モデルを単独で追加する場合(工程内メンバでない場合)に必要である。なお、工程分解時のモデル生成では、すでにメンバとして名前が付けられているので、必要は無い。
【0101】
▲4▼他のモデルとの接続(前後関係)に関する属性。
【0102】
基本モデルを単独で追加する場合、他のモデルと接続するのに必要である。工程分解時のモデル生成では、すでにこの属性を識別できているので、特に分類する必要は無い。
【0103】
▲5▼基本モデルの位置、位置及び姿勢等の位置情報に関する属性。
【0104】
基本モデルを単独で追加する場合に、追加した基本モデルを配置する際に必要である。工程分解時のモデル生成では、すでにこの属性を識別できているので、特に分類する必要は無い。
【0105】
▲6▼基本モデルを表示するための図形情報に関する属性。
【0106】
工程分解等で基本モデルを生成し配置する場合に、そのモデルのアイコンの大きさを知るために必要である。例えば、アイコンの幅、高さ、イメージファイル名等がある。
【0107】
▲7▼そのモデルが基本モデルであることを示す識別子を表す属性。
【0108】
基本モデルを分解処理の対象から除外するために必要である。
【0109】
その他、生産ラインのシミュレーションモデルには、例えば以下のような属性が不可されるべきであろう。
・加工設備の、部品1個あたりの加工時間
・機械の故障頻度(MTBF,MTTR,乱数分布のタイプ)
・コンベヤバッファの容量
・AGV(無人搬送台車)の搬送速度
・ワークを受ける、又は渡す設備の選択方法
基本モデルデータは、これらのデータを自動モデリングシステム上で参照し、変更する場合や、モデル出力時、シミュレータの持つ属性へと変換する際に利用(参照)される。
【0110】
基本モデルデータは、シミュレータで用いるモデルの情報と自動モデリングシステム上での(基本)モデル情報との間の概念の対応表を持っている。これにより以下の様な効果がある。
【0111】
▲1▼種類の異なるシミュレーションソフト及びモデルを使っていても、自動モデリングシステム上では常に同じ概念、同じ名称、同じ制御ロジックを使ってモデリングができるため、モデリングに関してシミュレータ毎に習熟する必要が無い。
【0112】
▲2▼シミュレータの持つ設備名や属性名が英語や、理解しにくい言葉であっても、本システム上では、より理解しやすい名称でモデリングができるため、計画者にとって扱い易い。例えば、”setup”という属性名を、”段取替え”に置換えられる。
【0113】
▲3▼シミュレータ上の一つの設備モデルに対して、名称やパラメータ設定のデフォルト値を変えた亜種のモデルを複数定義できる。例えば、”マシン”の亜種として”検査装置”を作成でき、このモデルに不良品発生に関する属性を与えること等である。これにより、計画者は、”マシン”という抽象的なモデルを使い、パラメータ設定によって詳細なモデルを作成するのではなく、最初から”検査装置”のような詳細なモデルをすぐに使用することができる。
【0114】
▲4▼工程モデル同士の組み合せも登録・利用可能であり、ライン単位でのモデル事例蓄積・再利用が可能となる。しかも最終的には通常のシミュレータのモデリング機能を使って作成した大規模なモデルと同様の詳細度を持ったシミュレーションモデルが作られる
▲5▼目的に応じて入力データの内容の詳細度を予め規定するため、即ち入力データの質をシステム自身が管理することになり、単にラフなモデルを簡単に作成するのではなく、シミュレーションの精度を落とすことの無いモデリングが可能となる。
【0115】
▲6▼本発明では、モデル情報をすべてテキスト情報で管理しており、高価なシミュレーションソフトが無くとも、Excel等に本手法をプログラム化して埋め込み、これを用いることでシミュレーションモデルを作成でき、これまで小人数の解析専任者が行ってきたモデリングを、より多くの計画者が実施できる。
【0116】
次に、図1のシミュレーションモデルの自動生成装置(本システム)の各部の作用に付いて説明する。
【0117】
入力情報決定部12は、ラインシミュレーションの目的に応じて、シミュレーションの精度を確保するため、工程表に対してどのような設計データの入力が必須となるかを決定する。
【0118】
工程表は、上記入力必須データ項目に基づき、生産ラインの製造工程のフロー、各工程での処理時間、故障頻度等の設計情報を入力する(ユーザに入力させる、又はファイル等から情報を抽出する)。
【0119】
ライン情報正規化部32は、入力情報決定部12から入力された工程情報であるライン情報を同義語データベース20を用いて標準語に正規化した後、工程設計情報格納部34に登録する。
【0120】
モデル合成部36は、工程設計情報格納部34に登録されたライン情報を参照し、各工程に対して推論エンジンを呼び出す。モデル合成部から呼び出された推論エンジンは、モデリング事例データベース22及びモデリングルールデータベース24を用いて、ライン全体のモデルを自動的に生成する。生成されたモデルは、生成モデル記憶部に記憶される。
【0121】
モデル分解部40は、推論エンジンで生成された工程モデルを、基本モデル(シミュレーションソフトが持つモデル概念に等しい)の集合に分解すると共に、工程モデル間のフロー情報や属性値を、各基本モデルが持つ属性に変更する。
【0122】
属性変更部42は、工程モデル又は基本モデルの配置や形状,属性等を必要に応じて画面上で変更する(自動生成結果の補正)。
【0123】
実行用モデル変換部44は、生成されて基本モデルの集合に分解されたモデルデータを、シミュレーションソフトが解釈、実行可能なデータ形式に変換する。
【0124】
次に、上記の自動生成装置10によるモデルを自動生成する処理手順について図2のフローチャートを用いて説明する。
【0125】
ステップ100において、入力情報決定部12から工程表に記載されたライン情報が入力されると、ステップ102において、ライン情報正規化部32によって、同義語データベース20を用いてライン情報の正規化が行われる。
【0126】
次のステップ104では、モデリングルールデータベース22及び工程モデリング事例データベース24を用いてモデルを合成する処理が実行される。このモデル合成処理では、ステップ104Aにおいて選択ルールに従って工程モデル事例データベース22から工程モデル(または基本モデル)を選択することによって工程モデルを生成し、ステップ104Bにおいて代入ルールを用いて工程表の属性を生成した工程モデルに代入することにより属性を設定し、ステップ104Cにおいて前後モデルとの接続を定める属性に基づいて前後モデルとの接続を設定し、ステップ104Dにいて全工程に適用するか否かを判断する。全工程に適用しない場合には、ステップ104Aに戻って再度工程モデルを生成する処理、属性設定処理、前後モデルとの接続処理を実行する。
【0127】
一方、 全工程に適用する場合には、ステップ104Eにおいてその他の付加モデルの生成を行う。
【0128】
次のステップ106では、メンバの配置、属性の変更、工程モデルの追加があるか否かを判断し、追加がある場合にはステップ108でメンバの配置、属性の変更、工程モデルの追加を行う。次のステップ110では、モデル分解部40によって合成されたモデルを基本モデルデータベースに基づいて基本モデル単位の集合に分割すると共に、工程モデルが持つ属性を基本モデルが持つ属性に変更する処理を行う。次のステップ112では、分割されたモデルの配置、属性の変更、基本モデルの追加があるか否かを判断し、追加がある場合にはステップ114でモデルの配置、属性の変更、モデルの追加を行い、ステップ116で実用モデルに変換する。そして、この実用モデルを用いてシミュレーションを行う。
具体例
以下、機械加工を行うフローラインのシミュレーションモデリングを例にとり、本実施の形態の具体的な例を説明する。この例では、ライン設計を行う計画者が、表計算ソフト等を用いてライン情報を記述し、このライン情報を本発明実施の形態の自動モデリングシステムに入力することでモデルを生成する。
(1)基本モデルデータ
図3及び図4は、表計算ソフト上で定義した基本モデルデータの例を示すものである。基本モデルデータは、大別して、個々の設備モデルパターン(設備クラスと呼ぶ)に関する情報(図3に示す1頁目)と、各設備クラスが持つ属性情報(図4に示す2頁目)とで構成されている。このデータは、シミュレーションに先立ち、ライブラリとして予め作成しておく。
【0129】
1頁目に含まれる情報は下記の通りである。
<1頁目に含まれる情報>
・クラス名:本モデリングシステム上での設備クラス名(モデルのタイプ名)。
・実クラス名:シミュレータ上での設備クラスの名称(シミュレーションモデルへの変換で必要)。
・インスタンス名:設備作成時に付けられる設備名の候補。
・その設備クラスを作成対象として表示するか/しないか、実際の設備モデルを作成可能か/不可能か等を示すタグ情報。
・カテゴリ:分類(設備/管理/制御 等)。
・アイコン色:作成された設備モデルをシステム上に表示するためのアイコンの形状属性。
・親クラス:親クラスの名称。
・概要:クラスの機能概要。
・制約条件等:制約条件等のドキュメント。
また、2頁目に含まれる情報は下記の通りである。
<2頁目に含まれる情報>
・クラス名:対象クラス名。
・変数名:上記クラスの持つ本システム上での属性名。
・実変数名:シミュレータ上での属性名。この属性名は、シミュレーションモデルへの変換で必要となる。
・可視/非可視情報。
・属性(変数)のタイプ(public/private/const 等)。
・特殊な属性を示すタグ。これらの情報は、設備間のフロー(ワークの流れ)や、設備配置の情報等、モデリング用のフォームからの情報を設備属性に反映させる際に必要となる。(例:該当設備の前の設備の名前に関する属性にはconnect_I、後の設備についてはconnect_o、該当設備の配置に関する属性にはlocation 等のようにタグ付けする。)
・属性のデフォルト値。
・選択項目リスト。
・属性に関するドキュメント。
【0130】
上記2つの表は最終的には、1つの階層構造のデータとしてXML形式で保存され、参照される。
【0131】
図5は、XMLデータのスキーマ(データ構造)の例を示すものである。
【0132】
図6及び図7は、表計算ソフト上での工程モデルデータの例を示すものである。工程モデルデータは、大別して、個々の複合設備パターンに関する情報(図6の1頁目)と、各複合設備クラスが持つ属性情報(図7の2頁目)とで構成される。このデータも、シミュレーションに先立ち、ライブラリとして予め作成しておく。実際に使用するデータは一つの階層構造を持ったXML形式のデータを用いる。
【0133】
1頁目に含まれる情報は、下記の通りである。
<1頁目に含まれる情報>
・グループ名:複合設備クラスの名称。
・インスタンス名:複合設備作成時に付けられる名前の候補。
・アイコン色等:作成された複合設備を示すアイコンの形状属性。
・複合設備を構成する設備メンバの(仮の)名称。
・メンバのタイプ(基本設備/複合設備)。
・メンバが属すクラスの名称。
・メンバの複合設備内での相対的位置情報等。
・複合設備の機能概要、制約条件等のドキュメント。
【0134】
2頁目に含まれる情報は、下記の通りである。
<2頁目に含まれる情報>
・対象クラス名。
・上記クラスの持つ本システム上での属性の名前。これらの属性は、元々設備メンバが持つ属性であり、工程モデル中でユニークな名前となるよう、”メンバ名_ + 変数名”のような名前で管理される。
・シミュレータ上での属性名。シミュレーションモデルへの変換で必要となる。・属性(変数)のタイプ(public/private/const 等)
・特殊な属性を示すタグ。これらの情報は、基本的に設備メンバの持つ属性を継承する。
・属性のデフォルト値。
・選択項目リスト。
・属性に関するドキュメント。
【0135】
上記2つの表は、一つの階層構造のデータとしてXML形式で保存され、参照される。図8は、XMLデータのスキーマを示す。
【0136】
以下、図9(A)、(B)に工程モデルの例を示す。図は、検査工程をモデル化したものである。MC0において検査のための一定時間が経過する。その後のCHG1において、不良ワークのみを選別して、OUTPUT0に排出させ、良品は次工程に流す(例えば、良品はA、不良品はBというように異なるワーク名称で分類されている)。この工程モデルでは、MC0の不良品発生比率や検査時間等が属性として登録されている。
【0137】
また、図9(C)は、パレット循環型のトランスファーマシンを示す。CHG1でワークとパレットを分離し、パレットはCVS4→CHG0へと流れて再びワークと合体し、ワークだけが次工程へ流れる。
【0138】
次に、上記で述べた工程モデルの定義方法について説明する。工程モデルの目的は、複数のモデルの集合を登録し、モデリングの際、登録時と同様の属性設定で再構築することにある。
【0139】
ここで説明する工程モデル定義システムは、Microsoft Excel(商品名)のマクロで作成したプログラムであり、設備モデルの表示や、設備間のフローを意味する矢印の表示の機能で、Excelの持つ機能を利用する。
(1)前準備
基本モデルデータおよび工程モデルデータを読み込む。
(2)設備配置
メンバとして登録する複数の設備を一覧メニューから選択し、それぞれフォーム上に配置する。(基本モデルだけでなく、工程モデルも選択可能)
(3)フロー設定
配置した設備アイコン同士を、線(矢印)によって繋ぐことで、設備間のフロー(ワークの流れ)を設定する。
(4)属性設定
設備の持つ属性を一覧のメニューで表示し、必要に応じてこれを編集する。
(5)工程モデル属性の設定
▲1▼ここでは、選択した設備メンバ(複数)の属性情報(多数)の分類を行い、工程モデルという一つのオブジェクトが持つ属性として再設定する。複合設備の属性は以下の様に分類される。
・設備メンバ間の接続に関する属性(前の設備名、後ろの設備名等、ワークの流れを示す)。
・外部モデルとの接続に関する属性。
・メンバの相対的位置関係に関する属性。
・その工程モデルにおいて、固定の値としたい属性。
・その工程モデルにおいて、変更可能な値としたい属性。
【0140】
このように分類する理由は、設備メンバの全ての属性を保存するのは非効率(多くの属性が基本モデル等のデフォルト値のまま)であるため、重要な属性のみを登録するためである。また、登録時の属性のままメンバを再構築しても、設備モデルの名前付けの問題(同じ工程モデルから生成した他のモデルの名前とのバッティング)が起こり、登録時の絶対的位置を保持しても、再構築の際、望ましい位置とはならず、更に、登録時の状態で固定したい属性と、ユーザに開放してパラメータとして編集を許可したい属性とが存在するので、パラメータを設けることで、登録したモデルの再利用範囲を広げることができる。
【0141】
これらの理由から、再利用性の高い工程モデルの定義と基本モデル再構築を実現するため、上記の様な分類が必要となる。
【0142】
▲2▼先ず、登録すべき基本モデル群を選択し、「モデル編集」処理に入ると、図10に示すメニュー画面が表示される。
【0143】
この時点で既に、工程モデルの属性候補として幾つかの項目がリストアップされている。これらは、各メンバの持つ全属性の中から、以下のような特徴を持ったものを自動的に選択し、表示している。
・(3)で設定しておいた設備メンバ間のフロー(前の設備名,後の設備名)に関わる属性
・(4)で設定した設備メンバ属性
・配置に関する属性(工程モデル群の基準座標からの相対的位置に変換されている)
▲3▼次に、選択したメンバの中から、対象となる工程モデルへのワークの入口となるメンバと、出口となるメンバを選択する。この結果、工程モデルの属性候補に、新たにフローに関する属性情報が追加される(上図、MC0の”後設備名”とCVS3の”前設備名”)。
【0144】
▲4▼更に、ある値に固定したい属性を、設備メンバの持つ全属性リストの中から選択し、工程モデルの属性項目に追加する。
【0145】
▲5▼同様に、ユーザに開放してパラメータとして編集を許可させたい属性を、設備メンバの持つ全属性リストの中から選択し、工程モデルの属性項目に追加する。(全ての属性を変数として登録することも可能)
▲6▼この工程モデルの名称や、実際のモデルを生成する際に用いるモデル名候補(例えば”MC_ST0”, ”MC_ST1”のように番号付けが行われる)、この工程モデルの機能や制約を説明するドキュメント等を入力する。
【0146】
▲7▼登録を行う。この結果、上記で説明した工程モデルデータ(ここではXML形式の階層構造テキスト)が追加登録される。
【0147】
シミュレーションの入力となるデータには様々なものがあり、精度の高いシミュレーションを行うためには、モデルの持つ全ての属性について正確なデータを入手し、入力を行う必要がある。
【0148】
しかしながら、全てのシミュレーション解析において、必ずしも正確な全データが必要なわけではない。例えば、新規ライン設計において、実際のラインの故障頻度に関するデータを得ることは不可能であるが、解析の目的が複数の設計案の相対的な比較が目的であれば、それは設定しないか、或いは過去の類似工程におけるMTBF,MTTR等で代用すれば充分である場合もある。
【0149】
このように、入力データの精度レベルを如何に設定するかはケースバイケースであり、本来、シミュレーションの専門家がライン計画者と協議を行い、決定すべき問題である。
【0150】
これを自動的に行い、計画者自身はモデリングを実施できるようにするため、本実施の形態では、入力情報決定用テーブル(表)を用いた管理法を適用する。
【0151】
この入力情報決定用テーブルでは、シミュレーションへの入力データが、シミュレーション解析の目的に対してどの程度の必要性を持つかを定義しており、次項でのデータ入力において、最初にシミュレーションの目的を設定すると、各入力データのレベルが自動的に設定される。
工程表の作成
自動モデリングのための重要な入力情報、すなわち、ライン情報データ(工程表)は、Excel等で記述した表データで定義される。
【0152】
ユーザは、データ入力に先立ち、先ず解析目的をリストの中から選択する。この結果、各データ項目に対して、入力の必要性が表示される。
【0153】
ユーザはこの表を埋め、「モデル自動生成」ボタンを押すことでモデル生成処理)を実行する。この際、入力情報決定部で「必須」や「実データ必要」として登録されている属性項目についていずれの工程についても設定をしなかった場合、入力を促すワーニングやエラー等が表示される。これに従うことで、本来シミュレーションの専門家でない計画者でも、各データの重要性を理解し、不適切なモデリングを行うことが防止できる。
【0154】
また、この表には、工程の内容とは別に、後で行うモデル自動生成の際に用いる推論エンジンでどのようなルールデータベースと事例データベースを用いるかの選択を行うためのキーワード(例えば、「自動化加工ライン」、「手組み工程」等)が含まれている。
工程モデルの自動生成
自動生成モジュールの起動と同時に、基本モデルデータおよび工程モデルデータを読み込む。
【0155】
次に、ライン情報データを読み込む。この際、データに記述された内容(語句)は正規化処理を受け、後の処理において参照しやすいデータ形式に変換される。正規化処理の例を表2に示す。表の正規化データは、標準語に相当し、キーワードは、同意義語に相当する。
【0156】
【表2】
【0157】
工程モデル生成では、入力されたライン情報を分析し、各工程に対して適切な工程モデルを選択・生成し、更に作成した工程モデルに対してライン情報のデータを反映させる。また、工程フローを工程モデルに反映させる。これは以下の様なアルゴリズムで行われる。
【0158】
Step1:ライン内の全行程データのうち、次のStep2を未実施であり、なお且つ対象工程の上流工程が存在しないもの(即ち先頭の工程)についてStep2を実行する。次に、Step2で作成された工程モデル群についてStep3,4を実行する。
【0159】
Step2:対象工程について、以下を実行する。
【0160】
Step2.1:対象工程について、工程のタイプ、その他の属性、本工程の前工程の出口設備モデルのリスト(上流が複数の場合、合流用の設備を作成する等の対応を行うため)等を参照し、工程モデル又は基本モデルを一つ又は複数生成する。また、作成したモデルのうち、最も上流に位置する設備モデルを1つ求める。
【0161】
Step2.2:対象工程の次工程(下流)に対して更にStep2を再帰的に実行する(ただし、次工程が無ければこのStep2を抜ける。また次工程が既にStep2を適用済みの場合はStep2.3へ進む)。この際、上記Step2.1で作成された工程モデルのうち、工程内で最も下流に位置する一つ又は複数のモデル(即ち工程の出口設備モデル)を、次工程に対する上流モデルとして設定する。
【0162】
Step2.3:上記Step2.2で作成された次工程モデルのうち、工程内で最も上流に位置する一つのモデル(即ち次工程の入口設備モデル)を、本工程の出口設備群の下流設備として登録する。また、次工程の入口設備モデルの上流設備として、本工程の出口設備モデルを登録し、二つの工程の設備の流れを定義する。
【0163】
Step3:モデリング画面のフォーム上に、一連の工程モデル群が上流から下流まで直線的に(並列に複数のモデルが存在する場合は、流れに対し垂直に並べる)並ぶよう配置を行う。
【0164】
Step4:予め設定しておいたライン最大長データに従い、最大長を超える設備モデルについては、改行を行うように設備のフローを折り曲げる。この処理は、全ての設備が定められた領域に入るまで繰り返す。
【0165】
なお、本実施例においてStep2.1の実際の論理処理は、推論エンジン中のルールデータベースで記述されたロジックに従って行われる。
【0166】
次の表3にメタルールの例を示し、表4にルール群の例を示す。
【0167】
【表3】
【0168】
【表4】
【0169】
上記処理に従って工程モデルの生成と描画を行った結果(工程モデル生成後の状態)を図10に示す。図において四角形が工程モデルである。
工程モデルの分解
以下のアルゴリズムを用いて、上記のようにして作成した工程モデルを、基本モデルの組み合せになるまで詳細に分解する。
【0170】
Step1:ライン内の全工程モデルデータのうち、次のStep2を未実施であり、なお且つ対象工程モデルの上流モデルが存在しないもの(即ち先頭のモデル)についてStep2を実行する。
【0171】
Step2:対象モデルが工程モデルである場合はStep2.1、基本モデルである場合はStep2.2を実行する。その後、Step2.3、Step2.4を実行する。
【0172】
Step2.1:
(1)工程モデルに登録されているメンバである基本モデル又は工程モデル(メンバという)を、登録されている位置に生成する。この際、モデル名称を<工程モデル名>+”_”+<登録されているメンバ名>というルールで付けることで、ライン上でユニークなモデルにする。
(2)工程モデルの持つ属性変数の中で、生成したメンバに関するものを、そのメンバに適用する。
(3)上記属性の中で、モデル間の接続に関するもの(上流・下流モデル名を設定)である場合、その変数がメンバ間の接続を意味するものである場合は次の(3−1)、工程モデル外のモデルとの接続を意味するものである場合は次の(3−2)を実行する。
(3−1):登録された上流又は下流設備モデル名の先頭に<工程モデル名>+”_”を追加する(上記(1)の名前付けルールに対応)。
(3−2):その属性が、工程モデルへの入力となるモデルを定義するものである場合は、その属性名称を、「入力リスト」に登録する。また、工程モデルの出力となるモデルを定義するものである場合は、その属性名称を、「出力リスト」に登録する(いずれも複数可)。
(4)(3−1)で設定した、メンバ間の接続属性に従い、メンバ同士のフローを定義(上流・下流モデル名を設定)する。
(5)メンバ自身が工程モデルである場合は、その工程モデルに対してStep2を適用する。
【0173】
Step2.2:対象基本モデルの属性の中で、モデル間の接続に関するもの(上流・下流モデル名を設定)である場合、その属性が、モデルへの入力となるモデルを定義するものである場合は、その属性名称を、「入力リスト」に登録する。また、工程モデルの出力となるモデルを定義するものである場合は、その属性名称を、「出力リスト」に登録する(いずれも複数可)。
【0174】
Step2.3:対象モデル(複合又は基本)の下流工程モデル(一つ又は複数)が存在しない場合はStep2を抜ける。下流モデルのうち、Step2を未実施であるものに対して、Step2を適用する。
【0175】
Step2.4:下流工程モデルの中で「入力リスト」に登録されている設備と、本工程モデルの「出力リスト」として登録されている設備モデルを接続する(それぞれの名称を登録し合う)。
【0176】
上記処理に従って工程モデルの分解と描画を行った結果(工程モデル分解,基本モデル生成後の状態)を図11に示す。各基本モデルは、工程モデルが存在していた位置に、登録時と同様に作られる。
配置・属性変更
工程モデル生成や基本モデル生成後、生成されたモデルが所望のラインと異なる場合、手直しをする必要がある。この場合、配置・属性の変更、新しい設備モデルの追加・削除等の機能を用いることになる。
配置変更
自動生成されたモデルの配置は、もともと自動的に決定されたものであるため、基本的に、実際のラインでの配置とは異なる。離散系シミュレーションにおいて、設備配置は必ずしもシミュレーション精度に影響を及ぼさないが、視覚効果や目視によるライン挙動のチェック等を考慮すると配置の調整機能が必要となる。
本システムでは、設備群が表示されたるフォーム上で、マウス操作によって設備アイコンを動かすことで、配置を変更できる。フォーム上での配置変更結果は、「生成モデル記憶部」に登録され、シミュレーションモデルファイル生成時に、基本モデルが持つ、配置属性データに反映され、記録される。
シミュレーションモデルファイル生成
多くのシミュレーションソフトが、テキスト形式のモデルファイルをサポートしており、シミュレータ固有の書式に添って、外部ツールでシミュレーションモデルファイルを作成することは可能である。
【0177】
【発明の効果】
以上説明したように本発明によれば、シミュレータに特化した特別な訓練、操作をできるだけ行わず、シミュレーションモデルを自動的に生成することができる、という効果が得られる。
【0178】
また、本発明において上記のように、ライン計画者でもモデリング、ひいてはシミュレーションを実施できることにより、以下の様な効果が得られる。
(1)詳細なデータが完全に揃わないライン設計初期段階においても、ある程度定量的に生産性を知ることができ、ライン設計の基本方針に関して、設計後期で後戻りすることを防ぐことができる。これにより、生産システム構築のリードタイム短縮と設計の高品質化を図ることができる。
(2)入力データの誤りによるシミュレーションの失敗(実ラインとの不整合)を防ぐ効果がある。例えば、計画者から解析専任者を通してシミュレータへデータが渡る過程でのミスを防止することができる。また、計画者は、シミュレーションの結果が、入力データの問題から、当初予想したものに対して異なることに対して気付き易い。更に、ライン設計情報は計画において日々変更されることが多いが、計画者自身はそうした情報に常に接しているため、データの陳腐化による結果の不整合を防止できる。
(4)計画者自身が生産システム構築・改善の試行錯誤,検証を行うことが容易であり、ライン設計ノウハウを計画者自身が身に付けることに効果がある。
(5)解析専任者にとっても、自動化によって、従来のモデリング手段と比較して格段に迅速なモデリングが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態のシミュレーションモデルの自動生成装置のブロック図である。
【図2】本発明の実施の啓形態のモデルを自動生成する処理手順を示す流れ図である。
【図3】基本モデルデータの1頁目の例を示す図である。
【図4】基本モデルデータの1頁目の例を示す図である。
【図5】基本モデルデータのXMLデータのスキーマの例を示す図である。
【図6】工程モデルデータの1ページ目の例を示す図である。
【図7】工程モデルデータの1ページ目の例を示す図である。
【図8】工程モデルデータののXMLデータのスキーマの例を示す図である。
【図9】(A)、(B)、(C)は、工程モデルの例を示す図である。
【図10】工程モデル生成後の状態を示す図である。
【図11】工程モデルを分割して基本モデル生成後の状態を示す図である。
【符号の説明】
12 入力情報決定部
20 同義語データベース
22 モデリングルールデータベース
24 工程モデリング事例データベース
26 基本モデルデータベース
Claims (7)
- 工程情報を入力するための入力手段と、
複数のメンバを接続して表されると共に属性によって分類された工程モデルを複数個記憶した工程モデリング事例データベースと、
シミュレーションモデルで扱うことができる単位の基本モデルを属性と共に複数個記憶した基本モデルデータベースと、
入力された工程情報から該工程情報に対応する工程モデルを選択するための選択ルール、及び該工程情報に含まれるデータを工程モデルが持つ属性に代入する代入ルールを含むルール群を記憶したルールデータベースと、
前記工程モデリング事例データベースに記憶された工程モデル、及び前記ルールデータベースに記憶されたルール群に基づいて、入力された工程情報に対応する工程モデルを選択し、かつ該工程情報に含まれるデータを工程モデルが持つ属性に代入する処理を行ってシミュレーションモデルを生成する生成手段と、
前記生成手段によって生成されたシミュレーションモデルを前記基本モデル単位の集合に分割すると共に、工程モデルが持つ属性を該基本モデルが持つ属性に変更するモデル分解手段と、
を含むシミュレーションモデルの自動生成装置。 - 標準語に対応させて同義語を記憶した同義語データベースと、
前記同義語データベースを用いて前記入力手段から入力された工程情報を標準語に正規化した後、前記生成手段に入力する正規化手段と、
を更に含む請求項1に記載のシミュレーションモデルの自動生成装置。 - 前記工程モデリング事例データベースに、
工程モデル内の各メンバのタイプ及び識別子に関する属性、工程モデル内のメンバの相対位置関係に関する属性、及び工程モデル内のメンバの外部工程モデルとの接続に関する属性を含む属性によって分類された複数の工程モデルを記憶した請求項1または請求項2に記載のシミュレーションモデルの自動生成装置。 - 前記ルールデータベースに、前記工程情報に含まれる接続に関する属性に基づいて、選択された工程モデルと外部工程モデルとを接続するための接続ルールを更に記憶した請求項3に記載のシミュレーションモデルの自動生成装置。
- 前記ルールデータベースに、作成すべきラインの分類情報に基づいて、分類情報に対応するルールを含むルール群を選択するためのメタルールを更に記憶した請求項1〜請求項4のいずれか1項記載のシミュレーションモデルの自動生成装置。
- 前記ルールデータベースに、シミュレーション実行のために必要なモデルを追加するためのルール、及び工程情報に工程の列数に関する情報が含まれていた場合に該列数に関する情報から対応する工程モデルを複製するためのルールの少なくとも一方を記憶させた請求項1〜請求項5のいずれか1項に記載のシミュレーションモデルの自動生成装置。
- 前記基本モデルは、基本モデル自身のタイプ名、生成したモデルの内容をシミュレータが解釈できる形式に変換するための属性情報を含む請求項1〜請求項6のいずれか1項に記載のシミュレーションモデルの自動生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003074525A JP2004280719A (ja) | 2003-03-18 | 2003-03-18 | シミュレーションモデルの自動生成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003074525A JP2004280719A (ja) | 2003-03-18 | 2003-03-18 | シミュレーションモデルの自動生成装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004280719A true JP2004280719A (ja) | 2004-10-07 |
Family
ID=33290130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003074525A Pending JP2004280719A (ja) | 2003-03-18 | 2003-03-18 | シミュレーションモデルの自動生成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004280719A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007183817A (ja) * | 2006-01-06 | 2007-07-19 | Sumitomo Heavy Ind Ltd | スケジューリング装置、スケジューリング方法、スケジューリングプログラム、及び該プログラムが記録された記録媒体 |
JP2013206106A (ja) * | 2012-03-28 | 2013-10-07 | Dainippon Screen Mfg Co Ltd | シミュレータおよびシミュレーションシステム |
US9971982B2 (en) | 2011-12-06 | 2018-05-15 | Hitachi, Ltd. | Manufacturing line simulation device, data input assistance device, and data input assistance method |
CN112659118A (zh) * | 2020-11-17 | 2021-04-16 | 广州明珞装备股份有限公司 | 机器人路径信息导出、导入的方法、装置和可读存储介质 |
-
2003
- 2003-03-18 JP JP2003074525A patent/JP2004280719A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007183817A (ja) * | 2006-01-06 | 2007-07-19 | Sumitomo Heavy Ind Ltd | スケジューリング装置、スケジューリング方法、スケジューリングプログラム、及び該プログラムが記録された記録媒体 |
US9971982B2 (en) | 2011-12-06 | 2018-05-15 | Hitachi, Ltd. | Manufacturing line simulation device, data input assistance device, and data input assistance method |
JP2013206106A (ja) * | 2012-03-28 | 2013-10-07 | Dainippon Screen Mfg Co Ltd | シミュレータおよびシミュレーションシステム |
CN112659118A (zh) * | 2020-11-17 | 2021-04-16 | 广州明珞装备股份有限公司 | 机器人路径信息导出、导入的方法、装置和可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Da Xu et al. | AutoAssem: an automated assembly planning system for complex products | |
US8996151B2 (en) | Visualization of product build using precedence transversal method | |
Ayag* | An integrated approach to evaluating conceptual design alternatives in a new product development environment | |
US9026986B2 (en) | Process for development of monitoring tools | |
EP2019371A1 (en) | Three-dimensional process planning | |
US20070106410A1 (en) | Systems and methods for production planning by visualizing products and resources in a manufacturing process | |
JP2004171576A (ja) | 高速チップ管理システム | |
Wy et al. | A data-driven generic simulation model for logistics-embedded assembly manufacturing lines | |
JP2000148814A (ja) | 構成部品データ管理システム及び構成部品データ管理プログラムを格納したコンピュータ読み取り可能な記憶媒体 | |
Qiao et al. | Data driven design and simulation system based on XML | |
Fortin et al. | Manufacturing Process Management: iterative synchronisation of engineering data with manufacturing realities | |
Rozesara et al. | A reverse engineering-based model for innovation process in complex product systems: Multiple case studies in the aviation industry | |
Steingrimsson et al. | Ecosystem for engineering design learning—a comparative analysis | |
JP2004280719A (ja) | シミュレーションモデルの自動生成装置 | |
US9852258B1 (en) | Method and system for implementing a requirements driven closed loop verification cockpit for analog circuits | |
Gill et al. | Logic rules for automated synthesis of function models using evolutionary algorithms | |
du Plessis | A method for CASE tool evaluation | |
US8429600B2 (en) | Distributed collaborative environment definition system and method | |
US20100204961A1 (en) | Integrated system design | |
Luu | Methodology development for parametric CAD modeling in CATIA V5 to aid simulation driven design using turbine volute as a case study | |
Bal et al. | Virtual-reality-based information requirements analysis tool for CIM system implementation: a case study in die-casting industry | |
JPH04181455A (ja) | 画面遷移仕様作成方法 | |
Cooper et al. | Process and product modeling | |
Eklund et al. | Development of a Framework for Concept Selection and Design Automation: Utilizing hybrid modeling for indirect parametric control of subdivision surfaces | |
Liu et al. | Study on visual design environment of cooperative template |