JP6689316B2 - Computer system and learning control method - Google Patents
Computer system and learning control method Download PDFInfo
- Publication number
- JP6689316B2 JP6689316B2 JP2018107962A JP2018107962A JP6689316B2 JP 6689316 B2 JP6689316 B2 JP 6689316B2 JP 2018107962 A JP2018107962 A JP 2018107962A JP 2018107962 A JP2018107962 A JP 2018107962A JP 6689316 B2 JP6689316 B2 JP 6689316B2
- Authority
- JP
- Japan
- Prior art keywords
- plan
- information
- history
- cluster
- learning
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 150
- 238000011156 evaluation Methods 0.000 claims description 60
- 238000004458 analytical method Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 9
- 230000005484 gravity Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect 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/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
-
- 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
- General Factory Administration (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、事象を制御するための処理の順番を規定した計画を生成する計算機システム及びその学習制御方法に関する。 The present invention relates to a computer system that generates a plan that defines the order of processing for controlling events, and a learning control method thereof.
製品の製造計画、並び、業務システムの運用計画及び管理計画等の計画を事前に生成するためには、時間及び空間並びに設備及び人員等のリソースに関する制約を考慮する必要がある。 In order to generate a plan such as a product manufacturing plan, a business system operation plan, and a management plan in advance, it is necessary to consider constraints on time and space and resources such as equipment and personnel.
計画を生成には時間、知識、及び経験等が必要であるため、知識を有さないユーザが手動で計画を生成することは難しいことから、従来は、熟練者が手動で計画を生成していた。そのため、熟練者が生成する計画と同等の質の計画を自動的に生成する計算機又はシステムが求められている。 Since it is difficult for a user who does not have knowledge to manually generate a plan because it requires time, knowledge, experience, etc. to generate a plan, conventionally, an expert manually generates a plan. It was Therefore, there is a demand for a computer or a system that automatically generates a plan with the same quality as a plan generated by a skilled person.
事前に判明していない暗黙知を制約条件として加えて計画を生成する技術として特許文献1に記載の技術が知られている。特許文献1には、「所定事象に関して作成された複数の作成済み計画の情報と、作成済み計画各々の作成に用いられた各利用情報とを格納した記憶装置と、所定事象に関して判明済みの制約条件と各利用情報とを所定アルゴリズムに適用して仮計画を複数作成し、各仮計画と該当仮計画に対応する作成済み計画との各組のうち、計画間の類似度が所定基準以下の非類似の組における作成済み計画とその利用情報とを所定アルゴリズムに適用し、計画間の非類似の要因に対応した新規制約条件を生成し、当該新規制約条件および判明済み制約条件を所定の計画生成手段に提供する制約生成処理を実行する演算装置を備える」計画作成支援装置が記載されている。
The technique described in
事象の制御目的及び環境等の変化に併せて制約条件も変化する。そのため、システムの状態に合わせて、計画を生成するために必要な情報を生成する学習を繰り返し実行する必要がある。 The constraint conditions also change in accordance with changes in the control purpose of the event and the environment. Therefore, it is necessary to repeatedly perform learning for generating information necessary for generating a plan according to the state of the system.
再学習の実行タイミングに起因する問題として、次のような問題がある。再学習の実行タイミングが早い場合、以前の学習結果との差異がない可能性がある。そのため、頻繁な再学習の実行によるシステムの負荷の増大及び演算処理の遅延等が問題となる。一方、再学習の実行タイミングが遅い場合、現在の事象の制御目的及び環境等に適合していない計画が生成される可能性がある。そのため、生成される計画の質が低いという問題がある。 The following problems are caused by the timing of re-learning. If the re-learning execution timing is early, there is a possibility that there is no difference from the previous learning result. Therefore, there are problems such as an increase in system load due to frequent re-learning and delay of arithmetic processing. On the other hand, when the re-learning execution timing is late, there is a possibility that a plan that is not suitable for the control purpose of the current event, the environment, etc. may be generated. Therefore, there is a problem that the quality of the generated plan is low.
従来は、ユーザが再学習の実行タイミングを決定していたため、再学習の実行タイミングに起因する上記のような問題が発生していた。 Conventionally, the user determines the execution timing of the re-learning, so that the above-mentioned problem occurs due to the execution timing of the re-learning.
本発明は、計画を生成するために用いる情報の再学習の実行タイミングを自動的かつ最適に決定するシステム及び方法を提供することを目的とする。 It is an object of the present invention to provide a system and method for automatically and optimally determining execution timing of re-learning of information used for generating a plan.
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、事象を制御するための複数の処理の順番を規定した計画を管理する計算機システムであって、前記計算機システムは、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有する少なくとも一つの計算機を備え、前記処理は、前記事象の制御に関連する項目を少なくとも一つ含み、前記計画は、前記少なくとも一つの項目から算出されるパラメータ及び閾値から定義される制約条件、並びに、過去に生成された前記計画である計画履歴における前記制約条件の適合性の傾向を表す情報である計画パターンに基づいて生成され、前記少なくとも一つの計算機は、前記制約条件を管理するための制約条件情報、前記計画履歴における前記制約条件の適合性の傾向を学習する学習処理により生成された前記計画パターンを管理するための計画パターン情報、並びに、前記計画履歴及び前記計画の質を表す評価値を対応づけたデータを管理するための計画履歴情報を保持し、前記計画履歴情報を用いた前記評価値の変動の分析結果に基づいて、前記計画パターン情報を更新する必要があるか否かを判定し、前記計画パターン情報を更新する必要があると判定された場合、前記計画履歴情報及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報を更新する。 A typical example of the invention disclosed in the present application is as follows. That is, a computer system that manages a plan that defines the order of a plurality of processes for controlling an event, the computer system comprising a computing device, a storage device connected to the computing device, and a computing device connected to the computing device. At least one computer having an interface, the process comprising at least one item related to the control of the event, the plan being defined from parameters and thresholds calculated from the at least one item. Generated according to a constraint pattern, which is a plan pattern that is information indicating a tendency of suitability of the constraint condition in a plan history that is the plan generated in the past, and the at least one computer sets the constraint condition. constraint information for managing raw by the learning process of learning the tendency of compatibility of the constraints in the plan history Planning pattern information for managing the plan patterns, as well as holding the plan history information for managing data that associates an evaluation value representing the plan history and quality of the plan, the plan history information Based on the analysis result of the fluctuation of the evaluation value used, it is determined whether the plan pattern information needs to be updated, and if it is determined that the plan pattern information needs to be updated, the plan history The planned pattern information is updated by executing the learning process again using the information and the constraint condition information.
本発明の一形態によれば、再学習処理の実行タイミングを自動的かつ最適に決定することができる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。 According to the aspect of the present invention, the execution timing of the re-learning process can be automatically and optimally determined. Problems, configurations, and effects other than those described above will be clarified by the following description of the embodiments.
以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。 Embodiments of the present invention will be described below with reference to the drawings. However, the present invention should not be construed as being limited to the description of the embodiments below. It is easily understood by those skilled in the art that the specific configuration can be changed without departing from the idea or the spirit of the present invention.
以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。 In the configurations of the invention described below, the same or similar configurations or functions are designated by the same reference numerals, and overlapping description will be omitted.
本明細書等における「第1」、「第2」、「第3」等の表記は、構成要素を識別するために付するものであり、必ずしも、数又は順序を限定するものではない。 The notations such as “first”, “second”, and “third” in this specification and the like are given to identify components, and do not necessarily limit the number or order.
図面等において示す各構成の位置、大きさ、形状、及び範囲等は、発明の理解を容易にするため、実際の位置、大きさ、形状、及び範囲等を表していない場合がある。したがって、本発明では、図面等に開示された位置、大きさ、形状、及び範囲等に限定されない。 The position, size, shape, range, etc. of each component shown in the drawings and the like may not represent the actual position, size, shape, range, etc. for easy understanding of the invention. Therefore, the present invention is not limited to the position, size, shape, range, etc. disclosed in the drawings and the like.
図1は、実施例1のシステムの構成例を示す図である。 FIG. 1 is a diagram illustrating a configuration example of a system according to the first embodiment.
システムは、計算機100及び対象システム105から構成される。計算機100及び対象システム105は、直接又はネットワークを介して互いに接続される。ネットワークは、例えば、LAN(Local Area Network)及びWAN(Wide Area Network)である。ネットワークの接続方式は有線又は無線のいずれでもよい。なお、計算機100は、ネットワークを介して、ユーザが操作する端末と接続されてもよい。
The system includes a
対象システム105は、計画に基づいた事象の制御が行われるシステムである。対象システム105は、例えば、製品を製造する工場及び空調システム等である。
The
計算機100は、対象システム105における事象を制御するための処理の順番を規定した計画を生成する。実施例1の計算機100は、過去に生成された計画を学習し、学習結果及び制約条件に基づいて新たな計画を生成する。
The
対象システム105における事象の制御に関する熟練者は、一部の制約条件が満たされない場合でも事象を適切に制御できることを知識として保持しており、当該知識に基づいて一部の制約条件を満たさない計画を生成する。計算機100は、前述の知識を取り入れた計画を生成するために、過去に生成された計画を用いて、違反が許容される制約条件及び違反の程度を学習する。計算機100は学習結果を計画パターンとして保持する。計算機100は、計画パターン及び制約条件に基づいて新規計画を生成する。
A person skilled in controlling an event in the
計算機100は、ハードウェアとして、演算装置111、記憶装置112、ネットワークインタフェース113、及びIOインタフェース114を有する。各ハードウェアは、内部バスを介して互いに接続される。なお、計算機100は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等の記憶媒体を有してもよい。
The
演算装置111は、プロセッサ等であり、記憶装置112に格納されるプログラムを実行する。演算装置111がプログラムにしたがって処理を実行することによって特定の機能を実現する機能部として動作する。以下の説明では、機能部を主語に処理を説明する場合、演算装置111が当該機能部を実現するプログラムを実行していることを示す。
The
記憶装置112は、メモリ等であり、演算装置111が実行するプログラム及びプログラムが使用する情報を格納する。また、記憶装置112は、プログラムが一時的に使用するワークエリアを含む。記憶装置112に格納されるプログラム及び情報については後述する。
The
ネットワークインタフェース113は、ネットワークを介して他の装置と接続するためのインタフェースである。IOインタフェース114は、入力装置101及び出力装置102と接続するためのインタフェースである。
The
入力装置101は、例えば、キーボード、マウス等のポインティングデバイス、及びタッチパネル等の装置である。出力装置102は、例えば、ディスプレイ及びプリンタ等の装置である。
The
ここで、記憶装置112に格納されるプログラム及び情報について説明する。記憶装置112は、学習部120、計画生成部121、制約条件管理部122、及び再学習判定部123を実現するプログラムを格納する。また、記憶装置112は、制約条件情報130、計画履歴情報131、クラスタ情報132、及び計画パターン情報133を格納する。
Here, the programs and information stored in the
制約条件情報130は、事象に関する制約条件を管理するための情報である。例えば、時間、空間、設備、及び人員等のリソースに関する制約条件及び製品の強度等の品質に関する制約条件が考えられる。制約条件情報130のデータ構造については図2を用いて説明する。
The
計画履歴情報131は、過去に生成された計画、すなわち、計画履歴を管理するための情報である。計画履歴情報131のデータ構造については図3を用いて説明する。
The
クラスタ情報132は、計画のクラスタリングによって生成されたクラスタを管理するための情報である。クラスタ情報132のデータ構造については図5を用いて説明する。
The
計画パターン情報133は、過去に生成された計画における、制約条件の適合性の傾向を表す情報である計画パターンを管理するための情報である。計画パターン情報133のデータ構造については図6を用いて説明する。
The
計画パターンは、各制約条件の乖離参考値の配列として表される。一つの制約条件の乖離参考値は、過去に生成された複数の計画における制約条件の適合性の傾向を表す指標であり、また、制約条件の重要性を表す指標でもある。一つの制約条件の乖離参考値は、計画履歴における一つの制約条件の乖離度に基づいて算出される。一つの制約条件の乖離度は、一つの計画における一つの制約条件の乖離の程度を示す指標である。 The plan pattern is represented as an array of deviation reference values for each constraint condition. The deviation reference value of one constraint condition is an index indicating the tendency of suitability of constraint conditions in a plurality of plans generated in the past, and is also an index indicating the importance of constraint conditions. The deviation reference value of one constraint condition is calculated based on the deviation degree of one constraint condition in the plan history. The deviation degree of one constraint condition is an index showing the degree of deviation of one constraint condition in one plan.
学習部120は、計画履歴に基づいて、計画の生成に用いる情報を生成又は更新するための学習処理を実行する。より具体的には、学習部120は、対象システム105の稼働前に学習処理を実行することによってクラスタ情報132及び計画パターン情報133を生成する。また、学習部120は、再学習判定部123からの指示を受信した場合、再度、学習処理を実行することによってクラスタ情報132及び計画パターン情報133のいずれかを更新する。以下の説明では、クラスタ情報132及び計画パターン情報133のいずれかを更新するために実行される学習処理を再学習処理と記載する。
The
計画生成部121は、入力データを受信した場合、制約条件情報130及び計画パターン情報133に基づいて、計画を生成する。ここで、入力データは、実行順番が定められていない、対象システム105における事象を制御するための処理に関するデータ(処理データ)の集合である。計画生成部121は、適切な制御を実現するための処理順番を決定することによって計画を生成する。すなわち、計画は、処理順番が定められた処理データの集合である。
When the
制約条件管理部122は、制約条件情報130を管理する。制約条件管理部122は、制約条件の追加、更新、及び削除等を行う。
The constraint
再学習判定部123は、クラスタ情報132及び計画パターン情報133を更新するための再学習処理の実行契機を判定する。
The
なお、計算機100が有する各機能部については、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。
Regarding each functional unit of the
図2は、実施例1の制約条件情報130のデータ構造の一例を示す図である。
FIG. 2 is a diagram illustrating an example of a data structure of the
制約条件情報130は、条件ID201、条件式202、及び閾値203から構成されるエントリを格納する。一つのエントリが一つの制約条件に対応する。
The
条件ID201は、制約条件を識別するための識別情報を格納するフィールドである。条件ID201には、例えば、番号が格納される。
The
条件式202は、制約条件として設定される条件式を格納するフィールドである。条件式は処理に関連する項目から算出されるパラメータ及び閾値を示す変数に基づいて定義される。
The
閾値203は、条件式の閾値として設定される値を格納するフィールドである。
The
図3は、実施例1の計画履歴情報131のデータ構造の一例を示す図である。
FIG. 3 is a diagram illustrating an example of a data structure of the
計画履歴情報131は、計画ID301、格納場所302、タイムスタンプ303、評価値304、クラスタID305、及び特徴量306から構成されるエントリを格納する。一つのエントリが一つの計画履歴に対応する。
The
計画ID301は、計画履歴を識別するための識別情報を格納するフィールドである。計画ID301には、例えば、番号が格納される。
The
格納場所302は、計画履歴の格納場所を示す値を格納するフィールドである。格納場所302には、例えば、計画履歴を格納する記憶領域のアドレスが格納される。
The
タイムスタンプ303は、計画が生成された時刻を格納するフィールドである。なお、タイムスタンプ303に格納される時刻は、システムが管理する時刻でもよいし、また、計算機100が管理する時刻でもよい。
The
評価値304は、計画の質を表す指標である評価値を格納するフィールドである。満たす制約条件の数が多いほど質が高い計画、すなわち、適切な計画として扱う。また、計画履歴に類似する計画を質が高い計画として扱ってもよい。この場合、評価値は、計画履歴との類似性を示す指標として用いることができる。
The
クラスタID305は、特徴量空間において計画が所属するクラスタの識別情報を格納するフィールドである。
The
特徴量306は、特徴量空間において計画を分類する場合に使用する特徴量を格納するフィールドである。
The
ここで、計画のデータ構造について説明する。図4は、実施例1の計画のデータ構造の一例を示す図である。 Here, the data structure of the plan will be described. FIG. 4 is a diagram illustrating an example of the data structure of the plan according to the first embodiment.
計画400は、順番401及び項目402から構成されるエントリを格納する。一つのエントリが一つの処理(処理データ)に対応する。
The
順番401は、処理の実行順番を格納するフィールドである。
An
項目402は、処理に関連する項目を格納するフィールド群である。項目402には、一つ以上のフィールドが含まれる。図4に示す項目402は、材料番号、重さ、及び長さのフィールドを含む。
The
図5は、実施例1のクラスタ情報132のデータ構造の一例を示す図である。
FIG. 5 is a diagram illustrating an example of a data structure of the
クラスタ情報132は、クラスタID501、重心502、及び距離503から構成されるエントリを格納する。一つのエントリが一つのクラスタに対応する。
The
クラスタID501は、クラスタを識別するための識別情報を格納するフィールドである。クラスタID501は、クラスタID305と同一のフィールドである。
The
重心502は、特徴量空間におけるクラスタの重心の座標を格納するフィールドである。
The center of
距離503は、クラスタの大きさを示す距離を格納するフィールドである。例えば、クラスタに所属する計画履歴の特徴量空間における位置と、クラスタの重心との間の距離の最大値が距離503に格納される。
The
図6は、実施例1の計画パターン情報133のデータ構造の一例を示す図である。
FIG. 6 is a diagram illustrating an example of the data structure of the
計画パターン情報133は、パターンID601及び乖離参考値602から構成されるエントリを格納する。一つのエントリが一つの計画パターンに対応する。
The
パターンID601は、計画パターンを識別するための識別情報を格納するフィールドである。なお、一つのクラスタに対して一つの計画パターンが生成される。したがって、パターンID601は、クラスタID501に対応する。
The
乖離参考値602は、クラスタに所属する計画における制約条件の乖離参考値を格納するフィールド群である。乖離参考値602には、制約条件と同一数のフィールドが含まれる。
The
一つの制約条件の乖離参考値は、計画の制約条件の乖離度に基づいて算出される。乖離度は、制約条件の乖離が大きい計画の場合、大きい値となり、制約条件の乖離が小さい計画の場合、小さい値となる。なお、制約条件を満たす計画の乖離度は「0」となる。 The deviation reference value of one constraint condition is calculated based on the deviation degree of the constraint condition of the plan. The deviation degree has a large value in the case of a plan having a large deviation of the constraint conditions, and has a small value in a plan having a small deviation of the constraint conditions. The deviation degree of the plan that satisfies the constraint condition is "0".
次に、各機能部が実行する処理について説明する。まず、計算機100が実行する処理の概要を説明する。計算機100は、対象システム105の計画を生成する前に、予め、学習処理を実行する。学習処理によって、クラスタ情報132及び計画パターン情報133が生成される。計算機100は、入力データを受信した場合、制約条件情報130及び計画パターン情報133に基づいて、入力データから計画を生成する。計算機100は、計画の生成処理と並行して、評価値の変動を監視し、評価値の変動が検知された場合、再学習処理を実行する。以下、各処理の詳細について説明する。
Next, the processing executed by each functional unit will be described. First, the outline of the processing executed by the
図7は、実施例1の学習部120が実行する学習処理を説明するフローチャートである。
FIG. 7 is a flowchart illustrating the learning process executed by the
学習部120は、計画パターン情報133の生成指示を受信した場合、又は、システムの運用が開始された場合、以下で説明する処理を実行する。
The
なお、処理の開始時点では、クラスタ情報132及び計画パターン情報133は、生成されていないものとする。また、処理の開始時点では、計画履歴情報131の各エントリのクラスタID305は空欄であるものとする。
It is assumed that the
学習部120は、計画履歴情報131から計画履歴を取得し(ステップS101)、取得した各計画履歴の特徴量を算出する(ステップS102)。
The
例えば、学習部120は、計画履歴に含まれる各処理データの任意の項目の平均値を特徴量として算出する。図4に示す処理データの場合、重さの平均値及び長さの平均値が特徴量として算出される。なお、本発明は算出する特徴量の種類及び特徴量の算出方法に限定されない。
For example, the
次に、学習部120は、各計画履歴の特徴量に基づいて計画履歴のクラスタリングを実行する(ステップS103)。なお、クラスタリングは公知の技術であるため詳細な説明は省略する。
Next, the
学習部120は、クラスタリングの結果に基づいて、クラスタ情報132を生成する。また、学習部120は、クラスタリングの結果に基づいて、計画履歴情報131の各エントリのクラスタID305に、計画履歴が所属するクラスタの識別情報を設定する。
The
次に、学習部120は、クラスタのループ処理を開始する(ステップS104)。
Next, the
具体的には、学習部120は、クラスタ情報132からターゲットクラスタを選択する。このとき、学習部120は、計画履歴情報131から、クラスタID305にターゲットクラスタの識別情報が設定されるエントリを読み出す。
Specifically, the
次に、学習部120は、計画履歴のループ処理を開始する(ステップS105)。
Next, the
具体的には、学習部120は、ステップS104において読み出されたエントリの中からターゲットエントリ(ターゲット計画履歴)を選択する。
Specifically, the
次に、学習部120は、制約条件のループ処理を開始する(ステップS106)。
Next, the
具体的には、学習部120は、制約条件情報130からターゲット制約条件を選択する。
Specifically, the
次に、学習部120は、ターゲット計画履歴におけるターゲット制約条件の乖離度を算出する(ステップS107)。具体的には、以下のような処理が実行される。
Next, the
学習部120は、ターゲット計画履歴に含まれる処理データを用いて、ターゲット制約条件で定義されたパラメータの値を算出する。学習部120は、パラメータの値及び閾値の比較結果に基づいて、ターゲット制約条件を満たすか否かを判定する。
The
ターゲット制約条件を満たすと判定された場合、学習部120は、乖離度として「0」を算出する。
When it is determined that the target constraint condition is satisfied, the
ターゲット制約条件を満たさないと判定された場合、学習部120は、パラメータの値及び閾値の差の絶対値、又は、パラメータの値及び閾値の比等を乖離度として算出する。
When it is determined that the target constraint condition is not satisfied, the
制約条件のループ処理を実行することによって、一つの計画履歴に対して、制約条件の乖離度の配列が生成される。以上がステップS107の処理の説明である。 By executing the loop processing of the constraint condition, the array of the deviation degree of the constraint condition is generated for one plan history. The above is the description of the process of step S107.
次に、学習部120は、全ての制約条件の処理が完了したか否かを判定する(ステップS108)。すなわち、ターゲット計画履歴について、全ての制約条件の乖離度が算出されたか否かが判定される。
Next, the
全ての制約条件の処理が完了していないと判定された場合、学習部120は、ステップS106に戻り、新たなターゲット制約条件を選択する。
When it is determined that the processing of all constraint conditions is not completed, the
全ての制約条件の処理が完了したと判定された場合、学習部120は、ターゲットクラスタに所属する全ての計画履歴の処理が完了したか否かを判定する(ステップS109)。
When it is determined that the processing of all constraint conditions is completed, the
ターゲットクラスタに所属する全ての計画履歴の処理が完了していないと判定された場合、学習部120は、ステップS105に戻り、新たなターゲット計画履歴を選択する。
When it is determined that the processing of all plan histories belonging to the target cluster has not been completed, the
ターゲットクラスタに所属する全ての計画履歴の処理が完了したと判定された場合、学習部120は、計画パターン情報133に、ターゲットクラスタの計画パターンを登録する(ステップS110)。具体的には、以下のような処理が実行される。
When it is determined that the processing of all the plan histories belonging to the target cluster is completed, the
学習部120は、ターゲットクラスタに所属する全ての計画履歴の各制約条件の乖離度に基づいて、各制約条件の乖離参考値を算出する。例えば、式(1)を用いて一つの制約条件の乖離参考値が算出される。
The
percentileは、配列及び率を変数とするパーセンタイル関数である。R(i)は識別情報が「i」である制約条件の乖離参考値を表す。d(i)は各計画履歴における識別情報が「i」である制約条件の乖離度の配列を表し、pはパーセンタイル演算のパラメータを表す。cはd(i)の要素数を表す。nはd(i)の中で識別情報が「i」である制約条件を満たさなかった計画履歴の数、すなわち、値が「0」ではない要素の数を表す。 "percentile" is a percentile function having array and rate as variables. R (i) represents the deviation reference value of the constraint condition whose identification information is "i". d (i) represents the array of the deviation degree of the constraint condition in which the identification information in each plan history is "i", and p represents the parameter of the percentile calculation. c represents the number of elements of d (i). n represents the number of plan histories that did not satisfy the constraint condition that the identification information is “i” in d (i), that is, the number of elements whose value is not “0”.
なお、前述の乖離参考値の算出方法は一例であって、本発明は乖離参考値の算出方法に限定されない。 The method for calculating the deviation reference value described above is an example, and the present invention is not limited to the method for calculating the deviation reference value.
学習部120は、計画パターン情報133にエントリを追加し、追加されたエントリのパターンID601にターゲットクラスタの識別情報を設定する。また、学習部120は、追加されたエントリの乖離参考値602に、各制約条件の乖離参考値を設定する。以上がステップS110の処理の説明である。
The
次に、学習部120は、全てのクラスタの処理が完了したか否かを判定する(ステップS111)。
Next, the
全てのクラスタの処理が完了していないと判定された場合、学習部120は、ステップS104に戻り、新たなターゲットクラスタを選択する。
When it is determined that the processing of all clusters is not completed, the
全てのクラスタの処理が完了したと判定された場合、学習部120は学習処理を終了する。
When it is determined that the processing of all clusters is completed, the
学習処理によって、クラスタ情報132及び計画パターン情報133が生成され、また、各計画履歴が所属するクラスタが特定される。
By the learning process, the
図8は、実施例1の計画生成部121が実行する処理を説明するフローチャートである。
FIG. 8 is a flowchart illustrating processing executed by the
計算機100は、ネットワークインタフェース103又はIOインタフェース104を介して入力データを受信した場合、以下で説明する処理を開始する。
When the
計画生成部121は、入力データを取得し(ステップS201)、制約条件情報130、計画パターン情報133、及び入力データに基づいて処理の順番を決定することによって、新規計画を生成する(ステップS202)。一つの入力データに対して生成される新規計画の数は二つ以上でもよい。
The
計画生成部121は、原則、全ての制約条件を満たす新規計画を生成する。ただし、実施例1の計画生成部121は、計画パターン情報133に格納される計画パターンに基づいて、一部の制約条件を満たしていない新規計画を生成する。例えば、計画生成部121は、制約条件の閾値に乖離参考値を加算又は乗算することによって、制約条件を補正し、補正された制約条件に基づいて新規計画を生成する。これによって、乖離度が大きい制約条件を満たしていない計画が生成される。
In principle, the
計画の生成方法は、例えば、数理計画法及び線形計画法等を用いることが考えられる。なお、本発明は計画の生成方法に限定されない。計画の生成方法は、制約条件及び生成する計画に応じて選択することができる。 As a plan generation method, for example, a mathematical programming method or a linear programming method may be used. The present invention is not limited to the plan generation method. The plan generation method can be selected according to the constraint condition and the plan to be generated.
次に、計画生成部121は、新規計画の特徴量を算出し(ステップS203)、クラスタ情報132及び特徴量に基づいて新規計画を分類する(ステップS204)。これによって、新規計画が所属するクラスタが特定される。
Next, the
次に、計画生成部121は、新規計画のループ処理を開始する(ステップS205)。
Next, the
具体的には、計画生成部121は、新規計画の中からターゲット新規計画を選択する。
Specifically, the
次に、計画生成部121は、ターゲット新規計画の評価値を算出する(ステップS206)。具体的には、以下のような処理が実行される。
Next, the
計画生成部121は、ターゲット新規計画について、各制約条件の乖離度を算出する。計画生成部121は、各制約条件の乖離度の配列を一時計画パターンとして出力する。
The
計画生成部121は、計画パターン情報133を参照し、パターンID601が、ターゲット新規計画が所属するクラスタの識別情報と一致するエントリを検索する。
The
計画生成部121は、一時計画パターン及び検索されたエントリに対応する計画パターンに基づいて評価値を算出する。例えば、計画生成部121は、式(2)を用いて評価値を算出する。
The
D(i)は新規計画における識別情報が「i」である制約条件の乖離度を表す。εは任意の定数であって、1より十分小さい値である。εは、乖離参考値が「0」である場合に、演算ができなくなることを防ぐための定数である。以上がステップS206の説明である。 D (i) represents the deviation degree of the constraint condition in which the identification information in the new plan is "i". ε is an arbitrary constant, which is a value sufficiently smaller than 1. ε is a constant for preventing the calculation from becoming impossible when the deviation reference value is “0”. The above is the description of step S206.
次に、計画生成部121は、全ての新規計画について処理が完了したか否かを判定する(ステップS207)。
Next, the
全ての新規計画について処理が完了していないと判定された場合、計画生成部121は、ステップS205に戻り、新たなターゲット新規計画を選択する。
When it is determined that the processing has not been completed for all new plans, the
全ての新規計画について処理が完了したと判定された場合、計画生成部121は、評価値に基づいて出力する新規計画を選択する(ステップS208)。
When it is determined that the processing has been completed for all new plans, the
例えば、計画生成部121は、評価値が最も大きい新規計画を選択する。また、計画生成部121は、評価値が高い順に所定の数の新規計画を選択する。
For example, the
次に、計画生成部121は、選択された新規計画を出力する(ステップS209)。その後、計画生成部121は、処理を終了する。
Next, the
このとき、計画生成部121は、新規計画の履歴を計画履歴情報131に格納する。なお、生成された全ての新規計画の履歴を計画履歴情報131に格納してもよいし、選択された新規計画の履歴を計画履歴情報131に格納してもよい。
At this time, the
次に、再学習判定部123が実行する処理について説明する。
Next, the processing executed by the
図9は、実施例1の再学習判定部123が実行する処理の概要を説明するフローチャートである。
FIG. 9 is a flowchart illustrating an outline of the process executed by the
再学習判定部123は、新規計画が生成された場合、実行指示を受信した場合、又は、周期的に、以下で説明する処理を実行する。
The
再学習判定部123は、評価値判定処理を実行する(ステップS301)。評価値判定処理の詳細は図10を用いて説明する。
The
再学習判定部123は、評価値判定処理の出力結果vが「True」であるか否かを判定する(ステップS302)。すなわち、再学習を実行する必要があるか否かが判定される。
The
評価値判定処理の出力結果vが「True」でないと判定された場合、再学習判定部123は、処理を終了する。
When it is determined that the output result v of the evaluation value determination process is not “True”, the
評価値判定処理の出力結果vが「True」であると判定された場合、再学習判定部123は、再学習処理に使用する計画履歴である第一ターゲット計画履歴を選択する(ステップS303)。
When it is determined that the output result v of the evaluation value determination process is “True”, the
具体的には、再学習判定部123は、タイムスタンプ303が現時刻に近いものから順に所定の数の計画履歴を第一ターゲット計画履歴として選択する。すなわち、所定の時間範囲内に含まれる計画履歴が第一ターゲット計画履歴として選択される。
Specifically, the
次に、再学習判定部123は、学習部120に対して、第一ターゲット計画履歴の情報を含む再学習処理の実行指示を出力する(ステップS304)。その後、再学習判定部123は処理を終了する。再学習処理の実行指示に含まれる第一ターゲット計画履歴の情報は、例えば、選択された第一ターゲット計画履歴の識別情報のリストである。
Next, the
学習部120は、再学習処理の実行指示を受信した場合、再学習処理を実行する。再学習処理は、図7に示す学習処理と同様の処理である。ただし、以下で記載するように、再学習処理は学習処理と一部の処理が異なる。
When the
まず、学習部120は、再学習処理の実行指示を受信した場合、第一ターゲット計画履歴に対応するエントリのクラスタID305を初期化し、また、クラスタ情報132及び計画パターン情報133を初期化する。学習部120は、ステップS101では、再学習処理の実行指示に含まれる第一ターゲット計画履歴の情報に基づいて計画履歴情報131から第一ターゲット計画履歴を取得し、ステップS102以降の処理を実行する。すなわち、学習部120は、新しい計画履歴を用いた学習処理を実行する。これによって、現在の事象の制御目的及び環境等の変化等を反映したクラスタ情報132及び計画パターン情報133を生成できる。
First, when the
図10は、実施例1の再学習判定部123が実行する評価値判定処理を説明するフローチャートである。
FIG. 10 is a flowchart illustrating the evaluation value determination process executed by the
再学習判定部123は、計画履歴情報131から、タイムスタンプ303が現時刻に近いものから順に所定の数の計画履歴を取得する(ステップS401)。このとき、再学習判定部123は、取得された計画履歴の評価値304に基づいて、評価値の統計値を算出する。例えば、再学習判定部123は評価値の平均値を算出する。
The
再学習判定部123は、前回算出された評価値の統計値及び新たに算出された評価値の統計値の比較結果に基づいて、評価値が変動しているか否かを判定する(ステップS402)。
The
例えば、再学習判定部123は、新たに算出された評価値の統計値及び前回算出された評価値の統計値の差の絶対値が閾値より大きいか否かを判定する。前述の差の絶対値が閾値より大きい場合、再学習判定部123は評価値が変動していると判定する。
For example, the
評価値が変動している場合、計画を生成するために考慮する制約条件等、計画の生成方針が変化している可能性がある。そのため、これまでの計画履歴の学習結果をそのまま利用した場合、有用な計画を生成できない。 If the evaluation value fluctuates, there is a possibility that the plan generation policy has changed, such as the constraint conditions to be considered for generating the plan. Therefore, if the learning result of the past plan history is used as it is, a useful plan cannot be generated.
したがって、再学習判定部123は、評価値の変動を検知した場合、学習部120に再学習処理の実行指示を出力するように制御する。また、再学習判定部123は、計画履歴情報131に格納される計画履歴から、現在の計画の生成方針を反映している計画履歴を選択する。これによって、有用な学習結果を取得するための再学習処理を効率的に実行することができる。
Therefore, the
評価値が変動していると判定された場合、再学習判定部123は、出力結果vとして「True」を出力し(ステップS403)、その後、評価値判定処理を終了する。
When it is determined that the evaluation value has changed, the
評価値が変動していないと判定された場合、再学習判定部123は、出力結果vとして「False」を出力し(ステップS404)、その後、評価値判定処理を終了する。
When it is determined that the evaluation value has not changed, the
なお、再学習判定部123は、制御パラメータとして保持する前回算出された評価値の統計値を、新たに算出された評価値の統計値に更新する。
The
実施例1によれば、計算機100は、評価値の変動を監視し、評価値の変動を検知した場合、所定の数の計画履歴を選択し、選択された計画履歴を用いた再学習処理を実行する。これによって、再学習処理の実行タイミングを自動的かつ最適に決定することができる。また、計算機100は、再学習処理の結果を用いることによって、現在の計画の生成方針を考慮した計画を生成することができる。
According to the first embodiment, the
実施例2では、再学習判定部123が新規計画の分類結果も考慮する点が実施例1と異なる。以下、実施例1との差異を中心に実施例2について説明する。
The second embodiment differs from the first embodiment in that the
実施例2のシステムの構成は、実施例1のシステムの構成及び計算機100の構成と同一である。また、実施例2の計算機100が保持する情報のデータ構造は、実施例1と同一である。実施例2の学習部120が実行する学習処理は実施例1と同一であり、また、実施例2の計画生成部121が実行する計画の生成処理は実施例1と同一である。
The system configuration of the second embodiment is the same as the system configuration of the first embodiment and the
図11は、実施例2の再学習判定部123が実行する処理の概要を説明するフローチャートである。
FIG. 11 is a flowchart illustrating an outline of processing executed by the
再学習判定部123は、新規計画が生成された場合、以下で説明する処理を実行する。
When a new plan is generated, the
再学習判定部123は、評価値判定処理を実行する(ステップS501)。実施例2の評価値判定処理は実施例1と同一である。
The
次に、再学習判定部123は、クラスタ判定処理を実行する(ステップS502)。クラスタ判定処理の詳細は図12を用いて説明する。
Next, the
再学習判定部123は、評価値判定処理の出力結果vが「True」かつクラスタ判定処理の出力結果cが「True」であるか否かを判定する(ステップS503)。すなわち、クラスタ情報132及び計画パターン情報133を更新するための再学習処理を実行する必要があるか否かが判定される。以下の説明では、ステップS503の判定条件を第一判定条件と記載する。
The
第一判定条件を満たすと判定された場合、再学習判定部123は、第一ターゲット計画履歴を選択する(ステップS504)。ステップS504の処理はステップS303の処理と同一の処理である。
When it is determined that the first determination condition is satisfied, the
次に、再学習判定部123は、学習部120に対して、第一ターゲット計画履歴及びフラグAを含む再学習処理の実行指示を出力する(ステップS505)。その後、再学習判定部123は処理を終了する。
Next, the
ステップS503において、第一判定条件を満たさないと判定された場合、再学習判定部123は、評価値判定処理の出力結果vが「True」かつクラスタ判定処理の出力結果cが「False」であるか否かを判定する(ステップS506)。すなわち、計画パターン情報133を更新するための再学習処理を実行する必要があるか否かが判定される。以下の説明では、ステップS506の判定条件を第二判定条件と記載する。
When it is determined in step S503 that the first determination condition is not satisfied, the
第二判定条件を満たすと判定された場合、再学習判定部123は、新規計画から第二ターゲット計画履歴を選択する(ステップS507)。
When it is determined that the second determination condition is satisfied, the
具体的には、再学習判定部123は、全ての新規計画の中から、評価値が高い順に所定の数の新規計画を第二ターゲット計画履歴として選択する。選択する新規計画の数は、例えば、新規計画の全数の所定の割合とすることが考えられる。
Specifically, the
次に、再学習判定部123は、学習部120に対して、第二ターゲット計画履歴及びフラグBを含む再学習処理の実行指示を出力する(ステップS508)。その後、再学習判定部123は処理を終了する。
Next, the
ステップ506において、第二判定条件を満たさないと判定された場合、再学習判定部123は、評価値判定処理の出力結果vが「False」かつクラスタ判定処理の出力結果cが「True」であるか否かを判定する(ステップS509)。すなわち、クラスタ情報132を更新するための再学習処理を実行する必要があるか否かが判定される。以下の説明では、ステップS509の判定条件を第三判定条件と記載する。
When it is determined in step 506 that the second determination condition is not satisfied, the
第三判定条件を満たすと判定された場合、再学習判定部123は、外れリストを取得する(ステップS510)。外れリストの詳細は図12を用いて説明する。
When it is determined that the third determination condition is satisfied, the
次に、再学習判定部123は、学習部120に対して、外れリスト及びフラグCを含む再学習処理の実行指示を出力する(ステップS511)。その後、再学習判定部123は処理を終了する。
Next, the
ステップS509において、第三判定条件を満たさないと判定された場合、再学習判定部123は処理を終了する。
When it is determined in step S509 that the third determination condition is not satisfied, the
図12は、実施例2の再学習判定部123が実行するクラスタ判定処理の一例を説明するフローチャートである。
FIG. 12 is a flowchart illustrating an example of the cluster determination process executed by the
再学習判定部123は、新規計画を取得し(ステップS601)、新規計画のループ処理を開始する(ステップS602)。具体的には、再学習判定部123は、ターゲット新規計画を選択する。
The
次に、再学習判定部123は、ターゲット新規計画の特徴量を算出する(ステップS603)。計画の特徴量の算出方法はステップS102と同一である。
Next, the
次に、再学習判定部123は、算出された特徴量及びクラスタ情報132を参照し、ターゲット新規計画が所属可能なクラスタが存在するか否かを判定する(ステップS604)。
Next, the
具体的には、再学習判定部123は、クラスタの重心及びターゲット新規計画の特徴量空間の位置の間の距離が、当該クラスタの距離503より小さくなるクラスタを検索する。前述の条件を満たすクラスタが存在する場合、再学習判定部123は、ターゲット新規計画が所属可能なクラスタが存在すると判定する。なお、前述の条件を満たすクラスタが複数存在する場合、再学習判定部123は、距離が最も小さくなるクラスタを選択する。
Specifically, the
ターゲット新規計画が所属可能なクラスタが存在すると判定された場合、再学習判定部123はステップS606に進む。
If it is determined that there is a cluster to which the new target plan can belong, the
ターゲット新規計画が所属可能なクラスタが存在しないと判定された場合、再学習判定部123は、ターゲット新規計画を外れリストに登録し(ステップS605)、その後、ステップS606に進む。
When it is determined that there is no cluster to which the new target plan can belong, the
ステップS606では、再学習判定部123は、全ての新規計画の処理が完了したか否かを判定する(ステップS606)。
In step S606, the
全ての新規計画の処理が完了していないと判定された場合、再学習判定部123は、ステップS602に戻り、新たなターゲット新規計画を選択する。
When it is determined that the processing of all new plans has not been completed, the
全ての新規計画の処理が完了したと判定された場合、再学習判定部123は、新規計画の分類結果に基づいて、新たなクラスタを生成する必要があるか否かを判定する(ステップS607)。
When it is determined that the processing of all the new plans is completed, the
具体的には、再学習判定部123は、外れリストが空であるか否かを判定する。外れリストが空である場合、再学習判定部123は、新たなクラスタを生成する必要がないと判定する。
Specifically, the
新たなクラスタを生成する必要があると判定された場合、再学習判定部123は、出力結果cとして「True」を出力し(ステップS608)、その後、処理を終了する。
When it is determined that a new cluster needs to be generated, the
新たなクラスタを生成する必要がないと判定された場合、再学習判定部123は、出力結果cとして「False」を出力し(ステップS609)、その後、処理を終了する。
When it is determined that it is not necessary to generate a new cluster, the
図13A及び図13Bは、実施例2の学習部120が実行する再学習処理の一例を説明する図である。
13A and 13B are diagrams illustrating an example of the re-learning process performed by the
学習部120は、再学習処理の実行指示に含まれるフラグがフラグAであるか否かを判定する(ステップS701)。
The
再学習処理の実行指示に含まれるフラグがフラグAであると判定された場合、学習部120は、再学習処理の実行指示に基づいて計画履歴情報131から第一ターゲット計画履歴を取得し(ステップS702)、その後、ステップS703からステップS712までの処理を実行する。ステップS703からステップS712までの処理は、ステップS102からステップS111までの処理と同一である。ただし、処理で扱われる計画履歴が第一ターゲット計画履歴である点が異なる。
When it is determined that the flag included in the execution instruction of the re-learning process is the flag A, the
再学習処理の実行指示にフラグAが含まれる場合、学習部120は、クラスタ情報132及び計画パターン情報133を更新するための再学習処理を実行する。
When the instruction for executing the re-learning process includes the flag A, the
再学習処理の実行指示に含まれるフラグがフラグAでないと判定された場合、学習部120は、再学習処理の実行指示に含まれるフラグがフラグBであるか否かを判定する(ステップS713)。
When it is determined that the flag included in the execution instruction of the re-learning process is not the flag A, the
再学習処理の実行指示に含まれるフラグがフラグBであると判定された場合、学習部120は、再学習処理の実行指示に基づいて計画履歴情報131から第二ターゲット計画を取得し(ステップS714)、その後、ステップS705からステップS712までの処理を実行する。
When it is determined that the flag included in the execution instruction of the re-learning process is the flag B, the
再学習処理の実行指示にフラグBが含まれる場合、学習部120は、計画パターン情報133を更新するための学習処理を実行する。
When the instruction for executing the re-learning process includes the flag B, the
再学習処理の実行指示に含まれるフラグがフラグBでないと判定された場合、学習部120は、再学習処理の実行指示に含まれる外れリストを用いてクラスタを生成し(ステップS715)、クラスタ情報132を更新する(ステップS716)。具体的には、学習部120は、クラスタ情報132に、生成されたクラスタの情報を追加する。その後、学習部120は処理を終了する。
When it is determined that the flag included in the execution instruction of the re-learning process is not the flag B, the
実施例2によれば、新規計画の生成時に、クラスタ情報132及び計画パターン情報133のそれぞれについて再学習が必要か否かを判定することができる。これによって、再学習処理の実行タイミングを自動的かつ最適に決定することができる。また、計算機100は、再学習処理の結果を用いることによって、現在の計画の生成方針を考慮した計画を生成することができる。
According to the second embodiment, it is possible to determine whether or not re-learning is necessary for each of the
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。 It should be noted that the present invention is not limited to the above-described embodiments, but includes various modifications. In addition, for example, the above-described embodiment is a detailed description of the configuration in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to one having all the configurations described. Further, a part of the configuration of each embodiment can be added, deleted, or replaced with another configuration.
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。 Further, the above-described respective configurations, functions, processing units, processing means, etc. may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. The present invention can also be realized by a program code of software that realizes the functions of the embodiments. In this case, the storage medium recording the program code is provided to the computer, and the processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code itself and the storage medium storing the program code constitute the present invention. As a storage medium for supplying such a program code, for example, a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, an SSD (Solid State Drive), an optical disk, a magneto-optical disk, a CD-R, a magnetic tape, A non-volatile memory card, ROM or the like is used.
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。 The program code that implements the functions described in the present embodiment can be implemented in a wide range of programs or script languages such as assembler, C / C ++, perl, Shell, PHP, and Java (registered trademark).
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。 Furthermore, by distributing the program code of the software that realizes the functions of the embodiments via a network, the program code is stored in a storage means such as a hard disk or a memory of a computer or a storage medium such as a CD-RW or a CD-R. Alternatively, the processor included in the computer may read and execute the program code stored in the storage unit or the storage medium.
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。 In the above-mentioned embodiments, the control lines and information lines are shown to be necessary for explanation, and not all the control lines and information lines in the product are necessarily shown. All configurations may be connected to each other.
100 計算機
101 入力装置
102 出力装置
103 ネットワークインタフェース
104 IOインタフェース
105 対象システム
111 演算装置
112 記憶装置
113 ネットワークインタフェース
114 IOインタフェース
120 学習部
121 計画生成部
122 制約条件管理部
123 再学習判定部
130 制約条件情報
131 計画履歴情報
132 クラスタ情報
133 計画パターン情報
100
Claims (12)
前記計算機システムは、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有する少なくとも一つの計算機を備え、
前記処理は、前記事象の制御に関連する項目を少なくとも一つ含み、
前記計画は、前記少なくとも一つの項目から算出されるパラメータ及び閾値から定義される制約条件、並びに、過去に生成された前記計画である計画履歴における前記制約条件の適合性の傾向を表す情報である計画パターンに基づいて生成され、
前記少なくとも一つの計算機は、
前記制約条件を管理するための制約条件情報、前記計画履歴における前記制約条件の適合性の傾向を学習する学習処理により生成された前記計画パターンを管理するための計画パターン情報、並びに、前記計画履歴及び前記計画の質を表す評価値を対応づけたデータを管理するための計画履歴情報を保持し、
前記計画履歴情報を用いた前記評価値の変動の分析結果に基づいて、前記計画パターン情報を更新する必要があるか否かを判定し、
前記計画パターン情報を更新する必要があると判定された場合、前記計画履歴情報及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報を更新することを特徴とする計算機システム。 A computer system that manages a plan that defines the order of multiple processes for controlling events,
The computer system includes at least one computer having an arithmetic unit, a storage device connected to the arithmetic unit, and an interface connected to the arithmetic unit,
The process includes at least one item related to control of the event,
The plan is information indicating a constraint condition defined from a parameter and a threshold value calculated from the at least one item, and a tendency of suitability of the constraint condition in a plan history which is the plan generated in the past. Generated based on the planning pattern,
The at least one calculator is
Constraint condition information for managing the constraint condition, plan pattern information for managing the plan pattern generated by a learning process for learning the tendency of conformity of the constraint condition in the plan history, and the plan history And holding plan history information for managing data associated with evaluation values representing the quality of the plan,
Based on the analysis result of the variation of the evaluation value using the plan history information, it is determined whether or not the plan pattern information needs to be updated,
When it is determined that the plan pattern information needs to be updated, the plan pattern information is updated by performing the learning process again using the plan history information and the constraint condition information. And computer system.
前記少なくとも一つの計算機は、前記計画履歴の特徴量に基づくクラスタリングによって生成されたクラスタを管理するためのクラスタ情報を保持し、
前記計画パターン情報は、前記クラスタに所属する前記計画履歴及び前記制約条件情報に基づいて生成された、前記各クラスタの前記計画パターンを格納し、
前記少なくとも一つの計算機は、
順番が規定されていない複数の処理を含む入力データ、前記制約条件情報、及び前記計画パターン情報に基づいて、前記入力データに含まれる複数の処理の順番を決定することによって新規計画を生成し、
前記計画パターン情報及び前記新規計画に基づいて、前記新規計画の前記評価値を算出し、
前記評価値の変動の分析、並びに、前記クラスタ情報及び前記新規計画の特徴量に基づく前記新規計画の分類を実行し、
前記評価値の変動の分析結果及び前記新規計画の分類結果に基づいて、前記計画パターン情報を更新する必要があるか否かを判定することを特徴とする計算機システム。 The computer system according to claim 1, wherein
The at least one computer holds cluster information for managing a cluster generated by clustering based on the feature amount of the plan history,
The plan pattern information stores the plan pattern of each of the clusters generated based on the plan history belonging to the cluster and the constraint condition information,
The at least one calculator is
Input data including a plurality of processes in which the order is not defined, the constraint condition information, and based on the plan pattern information, to generate a new plan by determining the order of the plurality of processes included in the input data,
Based on the plan pattern information and the new plan, calculate the evaluation value of the new plan,
Analysis of the fluctuation of the evaluation value, and the classification of the new plan based on the cluster information and the feature amount of the new plan,
A computer system that determines whether or not the plan pattern information needs to be updated based on the analysis result of the variation of the evaluation value and the classification result of the new plan.
前記少なくとも一つの計算機は、前記評価値の変動の分析結果及び前記新規計画の分類結果に基づいて、前記クラスタ情報を更新する必要があるか否かを判定することを特徴とする計算機システム。 The computer system according to claim 2, wherein
The at least one computer determines whether or not it is necessary to update the cluster information based on the analysis result of the variation of the evaluation value and the classification result of the new plan.
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記少なくとも一つの計算機は、
前記計画パターン情報及び前記クラスタ情報を更新する必要があると判定された場合、所定の時間範囲において生成された前記計画履歴を、第一ターゲット計画履歴として選択し、
前記第一ターゲット計画履歴及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報及び前記クラスタ情報を更新することを特徴とする計算機システム。 The computer system according to claim 3,
The data stored in the plan history information includes the time when the plan history is generated,
The at least one calculator is
When it is determined that the plan pattern information and the cluster information need to be updated, the plan history generated in a predetermined time range is selected as the first target plan history,
A computer system characterized by updating the plan pattern information and the cluster information by executing the learning process again using the first target plan history and the constraint condition information .
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記少なくとも一つの計算機は、
前記クラスタ情報を更新する必要がなく、かつ、前記計画パターン情報を更新する必要があると判定された場合、所定の時間範囲において生成された前記計画履歴の前記評価値及び閾値の比較結果に基づいて、第二ターゲット計画履歴を選択し、
前記第二ターゲット計画履歴及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報を更新することを特徴とする計算機システム。 The computer system according to claim 3,
The data stored in the plan history information includes the time when the plan history is generated,
The at least one calculator is
If it is determined that it is not necessary to update the cluster information, and it is necessary to update the plan pattern information, based on the comparison result of the evaluation value and the threshold value of the plan history generated in a predetermined time range And select the second target plan history,
A computer system that updates the plan pattern information by executing the learning process again using the second target plan history and the constraint condition information .
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記計画パターン情報を更新する必要がなく、かつ、前記クラスタ情報を更新する必要があると判定された場合、前記クラスタ情報にて管理される前記クラスタに所属しない前記新規計画から新たなクラスタを生成し、
前記新たなクラスタの情報を前記クラスタ情報に登録することを特徴とする計算機システム。 The computer system according to claim 3,
The data stored in the plan history information includes the time when the plan history is generated,
When it is determined that the plan pattern information does not need to be updated and the cluster information needs to be updated, a new cluster is generated from the new plan that does not belong to the cluster managed by the cluster information. Then
A computer system characterized in that information on the new cluster is registered in the cluster information.
前記計算機システムは、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有する少なくとも一つの計算機を備え、
前記処理は、前記事象の制御に関連する項目を少なくとも一つ含み、
前記計画は、前記少なくとも一つの項目から算出されるパラメータ及び閾値から定義される制約条件、並びに、過去に生成された前記計画である計画履歴における前記制約条件の適合性の傾向を表す情報である計画パターンに基づいて生成され、
前記少なくとも一つの計算機は、前記制約条件を管理するための制約条件情報、前記計画履歴における前記制約条件の適合性の傾向を学習する学習処理により生成された前記計画パターンを管理するための計画パターン情報、並びに、前記計画履歴及び前記計画の質を表す評価値を対応づけたデータを管理するための計画履歴情報を保持し、
前記学習制御方法は、
前記少なくとも一つの計算機が、前記計画履歴情報を用いた前記評価値の変動の分析結果に基づいて、前記計画パターン情報を更新する必要があるか否かを判定する第1のステップと、
前記計画パターン情報を更新する必要があると判定された場合、前記少なくとも一つの計算機が、前記計画履歴情報及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報を更新する第2のステップと、を含むことを特徴とする学習制御方法。 A learning control method executed by a computer system that manages a plan that defines the order of a plurality of processes for controlling an event,
The computer system includes at least one computer having an arithmetic unit, a storage device connected to the arithmetic unit, and an interface connected to the arithmetic unit,
The process includes at least one item related to control of the event,
The plan is information indicating a constraint condition defined from a parameter and a threshold value calculated from the at least one item, and a tendency of suitability of the constraint condition in a plan history which is the plan generated in the past. Generated based on the planning pattern,
The at least one computer is constraint pattern information for managing the constraint condition, a plan pattern for managing the plan pattern generated by a learning process for learning a tendency of suitability of the constraint condition in the plan history. Retaining information and plan history information for managing data in which the plan history and the evaluation value representing the quality of the plan are associated with each other,
The learning control method,
The at least one computer, based on the analysis result of the variation of the evaluation value using the plan history information, a first step of determining whether it is necessary to update the plan pattern information,
When it is determined that the plan pattern information needs to be updated, the at least one computer uses the plan history information and the constraint condition information to execute the learning process again, thereby the plan pattern. learning control method characterized by comprising a second step of updating the information.
前記少なくとも一つの計算機は、前記計画履歴の特徴量に基づくクラスタリングによって生成されたクラスタを管理するためのクラスタ情報を保持し、
前記計画パターン情報は、前記クラスタに所属する前記計画履歴及び前記制約条件情報に基づいて生成された、前記各クラスタの前記計画パターンを格納し、
前記学習制御方法は、
前記少なくとも一つの計算機が、順番が規定されていない複数の処理を含む入力データ、前記制約条件情報、及び前記計画パターン情報に基づいて、前記入力データに含まれる複数の処理の順番を決定することによって新規計画を生成するステップと、
前記少なくとも一つの計算機が、前記計画パターン情報及び前記新規計画に基づいて、前記新規計画の前記評価値を算出するステップと、を含み、
前記第1のステップは、
前記少なくとも一つの計算機が、前記新規計画を生成した場合、前記評価値の変動の分析、並びに、前記クラスタ情報及び前記新規計画の特徴量に基づく前記新規計画の分類を実行する第3のステップと、
前記少なくとも一つの計算機が、前記評価値の変動の分析結果及び前記新規計画の分類結果に基づいて、前記計画パターン情報を更新する必要があるか否かを判定する第4のステップと、を含むことを特徴とする学習制御方法。 The learning control method according to claim 7, wherein
The at least one computer holds cluster information for managing a cluster generated by clustering based on the feature amount of the plan history,
The plan pattern information stores the plan pattern of each of the clusters generated based on the plan history belonging to the cluster and the constraint condition information,
The learning control method,
The at least one computer determines the order of a plurality of processes included in the input data based on input data including a plurality of processes whose order is not defined, the constraint condition information, and the plan pattern information. Generate a new plan by
The at least one computer, based on the plan pattern information and the new plan, a step of calculating the evaluation value of the new plan,
The first step is
When the at least one computer generates the new plan, a third step of analyzing the fluctuation of the evaluation value and classifying the new plan based on the cluster information and the feature amount of the new plan, ,
A fourth step in which the at least one computer determines whether or not it is necessary to update the plan pattern information based on the analysis result of the variation of the evaluation value and the classification result of the new plan. A learning control method characterized by the above.
前記第4のステップは、前記少なくとも一つの計算機が、前記評価値の変動の分析結果及び前記新規計画の分類結果に基づいて、前記クラスタ情報を更新する必要があるか否かを判定することを特徴とする学習制御方法。 The learning control method according to claim 8, wherein
Said fourth step, said at least one computer, analysis results and the variation of the evaluation value based on the classification result of the new plan, to determine whether it is necessary to update the cluster information A characteristic learning control method.
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記第2のステップは、
前記計画パターン情報及び前記クラスタ情報を更新する必要があると判定された場合、前記少なくとも一つの計算機が、所定の時間範囲において生成された前記計画履歴を、第一ターゲット計画履歴として選択するステップと、
前記少なくとも一つの計算機が、前記第一ターゲット計画履歴及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報及び前記クラスタ情報を更新するステップと、を含むことを特徴とする学習制御方法。 The learning control method according to claim 9, wherein
The data stored in the plan history information includes the time when the plan history is generated,
The second step is
When it is determined that the plan pattern information and the cluster information need to be updated, the at least one computer selects the plan history generated in a predetermined time range as a first target plan history, ,
The at least one computer updates the plan pattern information and the cluster information by executing the learning process again using the first target plan history and the constraint condition information. A learning control method characterized by.
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記第2のステップは、
前記クラスタ情報を更新する必要がなく、かつ、前記計画パターン情報を更新する必要があると判定された場合、前記少なくとも一つの計算機が、所定の時間範囲において生成された前記計画履歴の前記評価値及び閾値の比較結果に基づいて、第二ターゲット計画履歴を選択するステップと、
前記少なくとも一つの計算機が、前記第二ターゲット計画履歴及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報を更新するステップと、を含むことを特徴とする学習制御方法。 The learning control method according to claim 9, wherein
The data stored in the plan history information includes the time when the plan history is generated,
The second step is
If it is determined that it is not necessary to update the cluster information, and that it is necessary to update the plan pattern information, the at least one computer, the evaluation value of the plan history generated in a predetermined time range And selecting a second target planning history based on the threshold comparison result, and
The at least one computer updates the plan pattern information by executing the learning process again using the second target plan history and the constraint condition information. Learning control method.
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記第2のステップは、
前記計画パターン情報を更新する必要がなく、かつ、前記クラスタ情報を更新する必要があると判定された場合、前記少なくとも一つの計算機が、前記クラスタ情報にて管理される前記クラスタに所属しない前記新規計画から新たなクラスタを生成するステップと、
前記少なくとも一つの計算機が、前記新たなクラスタの情報を前記クラスタ情報に登録するステップと、を含むことを特徴とする学習制御方法。 The learning control method according to claim 9, wherein
The data stored in the plan history information includes the time when the plan history is generated,
The second step is
When it is determined that the plan pattern information does not need to be updated and the cluster information needs to be updated, the at least one computer does not belong to the cluster managed by the cluster information. Generating a new cluster from the plan,
The at least one computer registers the information of the new cluster in the cluster information, the learning control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018107962A JP6689316B2 (en) | 2018-06-05 | 2018-06-05 | Computer system and learning control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018107962A JP6689316B2 (en) | 2018-06-05 | 2018-06-05 | Computer system and learning control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019212043A JP2019212043A (en) | 2019-12-12 |
JP6689316B2 true JP6689316B2 (en) | 2020-04-28 |
Family
ID=68846887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018107962A Active JP6689316B2 (en) | 2018-06-05 | 2018-06-05 | Computer system and learning control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6689316B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7449338B2 (en) | 2021-09-03 | 2024-03-13 | 東京エレクトロンデバイス株式会社 | Information processing method, program, information processing device, and information processing system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0588707A (en) * | 1991-09-25 | 1993-04-09 | Hitachi Ltd | Plant operation automating device |
JP2005339587A (en) * | 2002-07-09 | 2005-12-08 | National Institute Of Advanced Industrial & Technology | Production system, method and program |
JP6467264B2 (en) * | 2015-03-30 | 2019-02-06 | 株式会社日立製作所 | Plan creation support apparatus and plan creation support method |
JP6622592B2 (en) * | 2016-01-04 | 2019-12-18 | 株式会社日立製作所 | Production planning support system and support method |
-
2018
- 2018-06-05 JP JP2018107962A patent/JP6689316B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019212043A (en) | 2019-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sabuncuoglu et al. | Hedging production schedules against uncertainty in manufacturing environment with a review of robustness and stability research | |
Lin et al. | Hybrid evolutionary optimisation with learning for production scheduling: state-of-the-art survey on algorithms and applications | |
Pickardt et al. | Evolutionary generation of dispatching rule sets for complex dynamic scheduling problems | |
Xiao et al. | Simulation budget allocation for selecting the top-m designs with input uncertainty | |
Li et al. | A heuristic-search genetic algorithm for multi-stage hybrid flow shop scheduling with single processing machines and batch processing machines | |
CN114756358B (en) | DAG task scheduling method, device, equipment and storage medium | |
US10496436B2 (en) | Method and apparatus for automatically scheduling jobs in computer numerical control machines using machine learning approaches | |
Korani et al. | Review on nature-inspired algorithms | |
JP5949560B2 (en) | Flow line detection processing data distribution system, flow line detection processing data distribution method and program | |
US11513851B2 (en) | Job scheduler, job schedule control method, and storage medium | |
EP3617951A1 (en) | Reward function generation method and computer system | |
US11574165B2 (en) | Optimization system and optimization method | |
JP2018142199A (en) | Learning system and learning method | |
US11416302B2 (en) | Computer system and method for determining of resource allocation | |
Zahid et al. | Investigation of surrogate measures of robustness for project scheduling problems | |
CN104616173A (en) | Method and device for forecasting user loss | |
Zhang et al. | Approximate simulation budget allocation for subset ranking | |
JP6689316B2 (en) | Computer system and learning control method | |
JP6758344B2 (en) | Computer system and learning control method | |
Wenzel et al. | Design of project-oriented calculation models for job priorities by using a customized genetic algorithm | |
Qu | Dynamic Scheduling in Large-Scale Manufacturing Processing Systems Using Multi-Agent Reinforcement Learning | |
Liu et al. | Application of genetic algorithm and fuzzy gantt chart to project scheduling with resource constraints | |
JP7373384B2 (en) | Verification method for computer systems and scheduling systems | |
US20240160494A1 (en) | Job schedule quality prediction and job scheduling | |
Chen et al. | An enhanced nested partitions algorithm using solution value prediction |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190108 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200310 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200331 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200407 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6689316 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |