JP6689316B2 - Computer system and learning control method - Google Patents

Computer system and learning control method Download PDF

Info

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
Application number
JP2018107962A
Other languages
Japanese (ja)
Other versions
JP2019212043A (en
Inventor
全之輔 秋山
全之輔 秋山
誠 佐保田
誠 佐保田
小林 雄一
雄一 小林
馬場 恒彦
恒彦 馬場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2018107962A priority Critical patent/JP6689316B2/en
Publication of JP2019212043A publication Critical patent/JP2019212043A/en
Application granted granted Critical
Publication of JP6689316B2 publication Critical patent/JP6689316B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing 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 Patent Document 1 is known as a technique for generating a plan by adding tacit knowledge that is not known in advance as a constraint condition. Patent Document 1 describes "a storage device that stores information on a plurality of created plans created for a predetermined event and usage information used to create each created plan, and constraints that have been found for the predetermined event. Applying conditions and each usage information to a predetermined algorithm to create multiple tentative plans, and in each pair of each tentative plan and the created plan corresponding to the relevant tentative plan, the similarity between the plans is below a predetermined standard. Apply the created plans and their usage information in dissimilar sets to a predetermined algorithm, generate new constraint conditions corresponding to dissimilar factors between plans, and set the new constraint conditions and known constraint conditions to a predetermined plan. A plan creation support device is described, which is provided with an arithmetic device that executes the constraint generation processing provided to the generation means.

特開2016−189079号公報JP, 2016-189079, A

事象の制御目的及び環境等の変化に併せて制約条件も変化する。そのため、システムの状態に合わせて、計画を生成するために必要な情報を生成する学習を繰り返し実行する必要がある。   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.

実施例1のシステムの構成例を示す図である。1 is a diagram showing a configuration example of a system of Example 1. FIG. 実施例1の制約条件情報のデータ構造の一例を示す図である。FIG. 6 is a diagram showing an example of a data structure of constraint condition information according to the first embodiment. 実施例1の計画履歴情報のデータ構造の一例を示す図である。FIG. 5 is a diagram showing an example of a data structure of plan history information according to the first embodiment. 実施例1の計画のデータ構造の一例を示す図である。FIG. 5 is a diagram showing an example of a data structure of a plan of the first embodiment. 実施例1のクラスタ情報のデータ構造の一例を示す図である。FIG. 6 is a diagram showing an example of a data structure of cluster information according to the first embodiment. 実施例1の計画パターン情報のデータ構造の一例を示す図である。FIG. 6 is a diagram showing an example of a data structure of plan pattern information according to the first embodiment. 実施例1の学習部が実行する学習処理を説明するフローチャートである。5 is a flowchart illustrating a learning process executed by a learning unit according to the first embodiment. 実施例1の計画生成部が実行する処理を説明するフローチャートである。6 is a flowchart illustrating a process executed by the plan generation unit according to the first embodiment. 実施例1の再学習判定部が実行する処理の概要を説明するフローチャートである。5 is a flowchart illustrating an outline of processing executed by a re-learning determination unit according to the first embodiment. 実施例1の再学習判定部が実行する評価値判定処理を説明するフローチャートである。6 is a flowchart illustrating an evaluation value determination process executed by a re-learning determination unit according to the first embodiment. 実施例2の再学習判定部が実行する処理の概要を説明するフローチャートである。9 is a flowchart illustrating an outline of processing executed by a re-learning determination unit according to the second embodiment. 実施例2の再学習判定部が実行するクラスタ判定処理の一例を説明するフローチャートである。11 is a flowchart illustrating an example of cluster determination processing executed by a re-learning determination unit according to the second embodiment. 実施例2の学習部が実行する再学習処理の一例を説明する図である。FIG. 9 is a diagram illustrating an example of re-learning processing executed by a learning unit according to the second embodiment. 実施例2の学習部が実行する再学習処理の一例を説明する図である。FIG. 9 is a diagram illustrating an example of re-learning processing executed by a learning unit according to the second embodiment.

以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。   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 computer 100 and a target system 105. The computer 100 and the target system 105 are connected to each other directly or via a network. The network is, for example, a LAN (Local Area Network) and a WAN (Wide Area Network). The network connection method may be wired or wireless. The computer 100 may be connected to a terminal operated by the user via a network.

対象システム105は、計画に基づいた事象の制御が行われるシステムである。対象システム105は、例えば、製品を製造する工場及び空調システム等である。   The target system 105 is a system that controls events based on a plan. The target system 105 is, for example, a factory that manufactures products, an air conditioning system, or the like.

計算機100は、対象システム105における事象を制御するための処理の順番を規定した計画を生成する。実施例1の計算機100は、過去に生成された計画を学習し、学習結果及び制約条件に基づいて新たな計画を生成する。   The computer 100 creates a plan that defines the order of processing for controlling events in the target system 105. The computer 100 according to the first embodiment learns a plan generated in the past and generates a new plan based on the learning result and the constraint condition.

対象システム105における事象の制御に関する熟練者は、一部の制約条件が満たされない場合でも事象を適切に制御できることを知識として保持しており、当該知識に基づいて一部の制約条件を満たさない計画を生成する。計算機100は、前述の知識を取り入れた計画を生成するために、過去に生成された計画を用いて、違反が許容される制約条件及び違反の程度を学習する。計算機100は学習結果を計画パターンとして保持する。計算機100は、計画パターン及び制約条件に基づいて新規計画を生成する。   A person skilled in controlling an event in the target system 105 holds as knowledge that an event can be appropriately controlled even when some constraint conditions are not satisfied, and a plan that does not satisfy some constraint conditions based on the knowledge. To generate. In order to generate a plan that incorporates the above-described knowledge, the computer 100 uses the plans that have been generated in the past to learn the constraint conditions that allow violation and the degree of violation. The computer 100 holds the learning result as a plan pattern. The computer 100 creates a new plan based on the plan pattern and constraints.

計算機100は、ハードウェアとして、演算装置111、記憶装置112、ネットワークインタフェース113、及びIOインタフェース114を有する。各ハードウェアは、内部バスを介して互いに接続される。なお、計算機100は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等の記憶媒体を有してもよい。   The computer 100 has a computing device 111, a storage device 112, a network interface 113, and an IO interface 114 as hardware. Each hardware is connected to each other via an internal bus. The computer 100 may have a storage medium such as an HDD (Hard Disk Drive) and an SSD (Solid State Drive).

演算装置111は、プロセッサ等であり、記憶装置112に格納されるプログラムを実行する。演算装置111がプログラムにしたがって処理を実行することによって特定の機能を実現する機能部として動作する。以下の説明では、機能部を主語に処理を説明する場合、演算装置111が当該機能部を実現するプログラムを実行していることを示す。   The arithmetic unit 111 is a processor or the like, and executes a program stored in the storage device 112. The arithmetic unit 111 operates as a functional unit that realizes a specific function by executing processing according to a program. In the following description, when the processing is described with the functional unit as the subject, it is shown that the arithmetic unit 111 is executing a program that realizes the functional unit.

記憶装置112は、メモリ等であり、演算装置111が実行するプログラム及びプログラムが使用する情報を格納する。また、記憶装置112は、プログラムが一時的に使用するワークエリアを含む。記憶装置112に格納されるプログラム及び情報については後述する。   The storage device 112 is a memory or the like, and stores a program executed by the arithmetic device 111 and information used by the program. The storage device 112 also includes a work area that is temporarily used by the program. The programs and information stored in the storage device 112 will be described later.

ネットワークインタフェース113は、ネットワークを介して他の装置と接続するためのインタフェースである。IOインタフェース114は、入力装置101及び出力装置102と接続するためのインタフェースである。   The network interface 113 is an interface for connecting to another device via a network. The IO interface 114 is an interface for connecting to the input device 101 and the output device 102.

入力装置101は、例えば、キーボード、マウス等のポインティングデバイス、及びタッチパネル等の装置である。出力装置102は、例えば、ディスプレイ及びプリンタ等の装置である。   The input device 101 is, for example, a device such as a keyboard, a pointing device such as a mouse, and a touch panel. The output device 102 is, for example, a device such as a display and a printer.

ここで、記憶装置112に格納されるプログラム及び情報について説明する。記憶装置112は、学習部120、計画生成部121、制約条件管理部122、及び再学習判定部123を実現するプログラムを格納する。また、記憶装置112は、制約条件情報130、計画履歴情報131、クラスタ情報132、及び計画パターン情報133を格納する。   Here, the programs and information stored in the storage device 112 will be described. The storage device 112 stores programs that realize the learning unit 120, the plan generation unit 121, the constraint condition management unit 122, and the re-learning determination unit 123. The storage device 112 also stores the constraint condition information 130, the plan history information 131, the cluster information 132, and the plan pattern information 133.

制約条件情報130は、事象に関する制約条件を管理するための情報である。例えば、時間、空間、設備、及び人員等のリソースに関する制約条件及び製品の強度等の品質に関する制約条件が考えられる。制約条件情報130のデータ構造については図2を用いて説明する。   The constraint condition information 130 is information for managing constraint conditions regarding an event. For example, there may be constraint conditions regarding resources such as time, space, equipment, and personnel, and constraint conditions regarding quality such as product strength. The data structure of the constraint condition information 130 will be described with reference to FIG.

計画履歴情報131は、過去に生成された計画、すなわち、計画履歴を管理するための情報である。計画履歴情報131のデータ構造については図3を用いて説明する。   The plan history information 131 is information for managing a plan generated in the past, that is, a plan history. The data structure of the plan history information 131 will be described with reference to FIG.

クラスタ情報132は、計画のクラスタリングによって生成されたクラスタを管理するための情報である。クラスタ情報132のデータ構造については図5を用いて説明する。   The cluster information 132 is information for managing a cluster generated by clustering of plans. The data structure of the cluster information 132 will be described with reference to FIG.

計画パターン情報133は、過去に生成された計画における、制約条件の適合性の傾向を表す情報である計画パターンを管理するための情報である。計画パターン情報133のデータ構造については図6を用いて説明する。   The plan pattern information 133 is information for managing a plan pattern, which is information indicating the tendency of suitability of constraint conditions in plans generated in the past. The data structure of the plan pattern information 133 will be described with reference to FIG.

計画パターンは、各制約条件の乖離参考値の配列として表される。一つの制約条件の乖離参考値は、過去に生成された複数の計画における制約条件の適合性の傾向を表す指標であり、また、制約条件の重要性を表す指標でもある。一つの制約条件の乖離参考値は、計画履歴における一つの制約条件の乖離度に基づいて算出される。一つの制約条件の乖離度は、一つの計画における一つの制約条件の乖離の程度を示す指標である。   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 learning unit 120 executes a learning process for generating or updating information used for generating a plan based on the plan history. More specifically, the learning unit 120 generates the cluster information 132 and the plan pattern information 133 by executing the learning process before the target system 105 starts operating. Further, when the learning unit 120 receives the instruction from the re-learning determination unit 123, the learning unit again executes the learning process to update either the cluster information 132 or the plan pattern information 133. In the following description, the learning process executed to update either the cluster information 132 or the plan pattern information 133 will be referred to as a re-learning process.

計画生成部121は、入力データを受信した場合、制約条件情報130及び計画パターン情報133に基づいて、計画を生成する。ここで、入力データは、実行順番が定められていない、対象システム105における事象を制御するための処理に関するデータ(処理データ)の集合である。計画生成部121は、適切な制御を実現するための処理順番を決定することによって計画を生成する。すなわち、計画は、処理順番が定められた処理データの集合である。   When the plan generation unit 121 receives the input data, the plan generation unit 121 generates a plan based on the constraint condition information 130 and the plan pattern information 133. Here, the input data is a set of data (process data) regarding a process for controlling an event in the target system 105, the execution order of which is not defined. The plan generation unit 121 generates a plan by determining the processing order for realizing appropriate control. That is, the plan is a set of processing data in which the processing order is determined.

制約条件管理部122は、制約条件情報130を管理する。制約条件管理部122は、制約条件の追加、更新、及び削除等を行う。   The constraint condition management unit 122 manages the constraint condition information 130. The constraint condition management unit 122 adds, updates, and deletes constraint conditions.

再学習判定部123は、クラスタ情報132及び計画パターン情報133を更新するための再学習処理の実行契機を判定する。   The re-learning determination unit 123 determines the timing of performing the re-learning process for updating the cluster information 132 and the plan pattern information 133.

なお、計算機100が有する各機能部については、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。   Regarding each functional unit of the computer 100, a plurality of functional units may be integrated into one functional unit, or one functional unit may be divided into a plurality of functional units for each function.

図2は、実施例1の制約条件情報130のデータ構造の一例を示す図である。   FIG. 2 is a diagram illustrating an example of a data structure of the constraint condition information 130 according to the first embodiment.

制約条件情報130は、条件ID201、条件式202、及び閾値203から構成されるエントリを格納する。一つのエントリが一つの制約条件に対応する。   The constraint condition information 130 stores an entry including a condition ID 201, a conditional expression 202, and a threshold 203. One entry corresponds to one constraint condition.

条件ID201は、制約条件を識別するための識別情報を格納するフィールドである。条件ID201には、例えば、番号が格納される。   The condition ID 201 is a field that stores identification information for identifying the constraint condition. A number is stored in the condition ID 201, for example.

条件式202は、制約条件として設定される条件式を格納するフィールドである。条件式は処理に関連する項目から算出されるパラメータ及び閾値を示す変数に基づいて定義される。   The conditional expression 202 is a field that stores a conditional expression set as a constraint condition. The conditional expression is defined based on the parameters calculated from the items related to the processing and the variable indicating the threshold value.

閾値203は、条件式の閾値として設定される値を格納するフィールドである。   The threshold value 203 is a field that stores a value set as a threshold value of a conditional expression.

図3は、実施例1の計画履歴情報131のデータ構造の一例を示す図である。   FIG. 3 is a diagram illustrating an example of a data structure of the plan history information 131 according to the first embodiment.

計画履歴情報131は、計画ID301、格納場所302、タイムスタンプ303、評価値304、クラスタID305、及び特徴量306から構成されるエントリを格納する。一つのエントリが一つの計画履歴に対応する。   The plan history information 131 stores an entry including a plan ID 301, a storage location 302, a time stamp 303, an evaluation value 304, a cluster ID 305, and a feature amount 306. One entry corresponds to one plan history.

計画ID301は、計画履歴を識別するための識別情報を格納するフィールドである。計画ID301には、例えば、番号が格納される。   The plan ID 301 is a field that stores identification information for identifying the plan history. A number is stored in the plan ID 301, for example.

格納場所302は、計画履歴の格納場所を示す値を格納するフィールドである。格納場所302には、例えば、計画履歴を格納する記憶領域のアドレスが格納される。   The storage location 302 is a field that stores a value indicating the storage location of the plan history. The storage location 302 stores, for example, the address of the storage area for storing the plan history.

タイムスタンプ303は、計画が生成された時刻を格納するフィールドである。なお、タイムスタンプ303に格納される時刻は、システムが管理する時刻でもよいし、また、計算機100が管理する時刻でもよい。   The time stamp 303 is a field that stores the time when the plan was generated. The time stored in the time stamp 303 may be the time managed by the system or the time managed by the computer 100.

評価値304は、計画の質を表す指標である評価値を格納するフィールドである。満たす制約条件の数が多いほど質が高い計画、すなわち、適切な計画として扱う。また、計画履歴に類似する計画を質が高い計画として扱ってもよい。この場合、評価値は、計画履歴との類似性を示す指標として用いることができる。   The evaluation value 304 is a field that stores an evaluation value that is an index indicating the quality of the plan. The more constraints that are satisfied, the better the quality of the plan, that is, it is treated as an appropriate plan. Further, a plan similar to the plan history may be treated as a high quality plan. In this case, the evaluation value can be used as an index indicating the similarity with the plan history.

クラスタID305は、特徴量空間において計画が所属するクラスタの識別情報を格納するフィールドである。   The cluster ID 305 is a field that stores identification information of the cluster to which the plan belongs in the feature amount space.

特徴量306は、特徴量空間において計画を分類する場合に使用する特徴量を格納するフィールドである。   The feature amount 306 is a field for storing the feature amount used when classifying plans in the feature amount space.

ここで、計画のデータ構造について説明する。図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 plan 400 stores an entry composed of an order 401 and an item 402. One entry corresponds to one process (process data).

順番401は、処理の実行順番を格納するフィールドである。   An order 401 is a field that stores the order of execution of processing.

項目402は、処理に関連する項目を格納するフィールド群である。項目402には、一つ以上のフィールドが含まれる。図4に示す項目402は、材料番号、重さ、及び長さのフィールドを含む。   The item 402 is a field group that stores items related to processing. Item 402 includes one or more fields. Item 402 shown in FIG. 4 includes material number, weight, and length fields.

図5は、実施例1のクラスタ情報132のデータ構造の一例を示す図である。   FIG. 5 is a diagram illustrating an example of a data structure of the cluster information 132 according to the first embodiment.

クラスタ情報132は、クラスタID501、重心502、及び距離503から構成されるエントリを格納する。一つのエントリが一つのクラスタに対応する。   The cluster information 132 stores an entry including a cluster ID 501, a center of gravity 502, and a distance 503. One entry corresponds to one cluster.

クラスタID501は、クラスタを識別するための識別情報を格納するフィールドである。クラスタID501は、クラスタID305と同一のフィールドである。   The cluster ID 501 is a field that stores identification information for identifying a cluster. The cluster ID 501 is the same field as the cluster ID 305.

重心502は、特徴量空間におけるクラスタの重心の座標を格納するフィールドである。   The center of gravity 502 is a field that stores the coordinates of the center of gravity of the cluster in the feature amount space.

距離503は、クラスタの大きさを示す距離を格納するフィールドである。例えば、クラスタに所属する計画履歴の特徴量空間における位置と、クラスタの重心との間の距離の最大値が距離503に格納される。   The distance 503 is a field that stores a distance indicating the size of the cluster. For example, the maximum value of the distance between the position in the feature amount space of the plan history belonging to the cluster and the center of gravity of the cluster is stored in the distance 503.

図6は、実施例1の計画パターン情報133のデータ構造の一例を示す図である。   FIG. 6 is a diagram illustrating an example of the data structure of the plan pattern information 133 according to the first embodiment.

計画パターン情報133は、パターンID601及び乖離参考値602から構成されるエントリを格納する。一つのエントリが一つの計画パターンに対応する。   The plan pattern information 133 stores an entry including a pattern ID 601 and a deviation reference value 602. One entry corresponds to one planning pattern.

パターンID601は、計画パターンを識別するための識別情報を格納するフィールドである。なお、一つのクラスタに対して一つの計画パターンが生成される。したがって、パターンID601は、クラスタID501に対応する。   The pattern ID 601 is a field that stores identification information for identifying a plan pattern. Note that one planning pattern is generated for one cluster. Therefore, the pattern ID 601 corresponds to the cluster ID 501.

乖離参考値602は、クラスタに所属する計画における制約条件の乖離参考値を格納するフィールド群である。乖離参考値602には、制約条件と同一数のフィールドが含まれる。   The deviation reference value 602 is a group of fields that stores the deviation reference value of the constraint condition in the plan belonging to the cluster. The deviation reference value 602 includes the same number of fields as the constraint condition.

一つの制約条件の乖離参考値は、計画の制約条件の乖離度に基づいて算出される。乖離度は、制約条件の乖離が大きい計画の場合、大きい値となり、制約条件の乖離が小さい計画の場合、小さい値となる。なお、制約条件を満たす計画の乖離度は「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 computer 100 will be described. The computer 100 executes a learning process in advance before generating the plan of the target system 105. Cluster information 132 and plan pattern information 133 are generated by the learning process. When receiving the input data, the computer 100 generates a plan from the input data based on the constraint condition information 130 and the plan pattern information 133. The computer 100 monitors the fluctuation of the evaluation value in parallel with the process of generating the plan, and executes the re-learning process when the fluctuation of the evaluation value is detected. The details of each process will be described below.

図7は、実施例1の学習部120が実行する学習処理を説明するフローチャートである。   FIG. 7 is a flowchart illustrating the learning process executed by the learning unit 120 according to the first embodiment.

学習部120は、計画パターン情報133の生成指示を受信した場合、又は、システムの運用が開始された場合、以下で説明する処理を実行する。   The learning unit 120 executes the process described below when the instruction to generate the plan pattern information 133 is received or when the operation of the system is started.

なお、処理の開始時点では、クラスタ情報132及び計画パターン情報133は、生成されていないものとする。また、処理の開始時点では、計画履歴情報131の各エントリのクラスタID305は空欄であるものとする。   It is assumed that the cluster information 132 and the plan pattern information 133 have not been generated at the start of the process. Further, at the start of the process, the cluster ID 305 of each entry of the plan history information 131 is blank.

学習部120は、計画履歴情報131から計画履歴を取得し(ステップS101)、取得した各計画履歴の特徴量を算出する(ステップS102)。   The learning unit 120 acquires the plan history from the plan history information 131 (step S101), and calculates the feature amount of each acquired plan history (step S102).

例えば、学習部120は、計画履歴に含まれる各処理データの任意の項目の平均値を特徴量として算出する。図4に示す処理データの場合、重さの平均値及び長さの平均値が特徴量として算出される。なお、本発明は算出する特徴量の種類及び特徴量の算出方法に限定されない。   For example, the learning unit 120 calculates an average value of arbitrary items of each processing data included in the plan history as a feature amount. In the case of the processing data shown in FIG. 4, the average value of weights and the average value of lengths are calculated as the feature amount. The present invention is not limited to the type of feature quantity to be calculated and the method of calculating the feature quantity.

次に、学習部120は、各計画履歴の特徴量に基づいて計画履歴のクラスタリングを実行する(ステップS103)。なお、クラスタリングは公知の技術であるため詳細な説明は省略する。   Next, the learning unit 120 executes clustering of the plan history based on the feature amount of each plan history (step S103). Since clustering is a known technique, detailed description will be omitted.

学習部120は、クラスタリングの結果に基づいて、クラスタ情報132を生成する。また、学習部120は、クラスタリングの結果に基づいて、計画履歴情報131の各エントリのクラスタID305に、計画履歴が所属するクラスタの識別情報を設定する。   The learning unit 120 generates cluster information 132 based on the result of clustering. Further, the learning unit 120 sets the identification information of the cluster to which the plan history belongs to the cluster ID 305 of each entry of the plan history information 131 based on the clustering result.

次に、学習部120は、クラスタのループ処理を開始する(ステップS104)。   Next, the learning unit 120 starts cluster loop processing (step S104).

具体的には、学習部120は、クラスタ情報132からターゲットクラスタを選択する。このとき、学習部120は、計画履歴情報131から、クラスタID305にターゲットクラスタの識別情報が設定されるエントリを読み出す。   Specifically, the learning unit 120 selects a target cluster from the cluster information 132. At this time, the learning unit 120 reads an entry in which the identification information of the target cluster is set in the cluster ID 305 from the plan history information 131.

次に、学習部120は、計画履歴のループ処理を開始する(ステップS105)。   Next, the learning unit 120 starts loop processing of the plan history (step S105).

具体的には、学習部120は、ステップS104において読み出されたエントリの中からターゲットエントリ(ターゲット計画履歴)を選択する。   Specifically, the learning unit 120 selects a target entry (target plan history) from the entries read in step S104.

次に、学習部120は、制約条件のループ処理を開始する(ステップS106)。   Next, the learning unit 120 starts the loop processing of the constraint condition (step S106).

具体的には、学習部120は、制約条件情報130からターゲット制約条件を選択する。   Specifically, the learning unit 120 selects a target constraint condition from the constraint condition information 130.

次に、学習部120は、ターゲット計画履歴におけるターゲット制約条件の乖離度を算出する(ステップS107)。具体的には、以下のような処理が実行される。   Next, the learning unit 120 calculates the deviation degree of the target constraint condition in the target planning history (step S107). Specifically, the following processing is executed.

学習部120は、ターゲット計画履歴に含まれる処理データを用いて、ターゲット制約条件で定義されたパラメータの値を算出する。学習部120は、パラメータの値及び閾値の比較結果に基づいて、ターゲット制約条件を満たすか否かを判定する。   The learning unit 120 calculates the value of the parameter defined by the target constraint condition using the processing data included in the target plan history. The learning unit 120 determines whether or not the target constraint condition is satisfied based on the comparison result of the parameter value and the threshold value.

ターゲット制約条件を満たすと判定された場合、学習部120は、乖離度として「0」を算出する。   When it is determined that the target constraint condition is satisfied, the learning unit 120 calculates “0” as the deviation degree.

ターゲット制約条件を満たさないと判定された場合、学習部120は、パラメータの値及び閾値の差の絶対値、又は、パラメータの値及び閾値の比等を乖離度として算出する。   When it is determined that the target constraint condition is not satisfied, the learning unit 120 calculates the absolute value of the difference between the parameter value and the threshold value or the ratio between the parameter value and the threshold value as the deviation degree.

制約条件のループ処理を実行することによって、一つの計画履歴に対して、制約条件の乖離度の配列が生成される。以上がステップ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 learning unit 120 determines whether or not the processing of all constraint conditions has been completed (step S108). That is, it is determined whether or not the deviation degrees of all the constraint conditions have been calculated for the target plan history.

全ての制約条件の処理が完了していないと判定された場合、学習部120は、ステップS106に戻り、新たなターゲット制約条件を選択する。   When it is determined that the processing of all constraint conditions is not completed, the learning unit 120 returns to step S106 and selects a new target constraint condition.

全ての制約条件の処理が完了したと判定された場合、学習部120は、ターゲットクラスタに所属する全ての計画履歴の処理が完了したか否かを判定する(ステップS109)。   When it is determined that the processing of all constraint conditions is completed, the learning unit 120 determines whether the processing of all plan histories belonging to the target cluster is completed (step S109).

ターゲットクラスタに所属する全ての計画履歴の処理が完了していないと判定された場合、学習部120は、ステップS105に戻り、新たなターゲット計画履歴を選択する。   When it is determined that the processing of all plan histories belonging to the target cluster has not been completed, the learning unit 120 returns to step S105 and selects a new target plan history.

ターゲットクラスタに所属する全ての計画履歴の処理が完了したと判定された場合、学習部120は、計画パターン情報133に、ターゲットクラスタの計画パターンを登録する(ステップS110)。具体的には、以下のような処理が実行される。   When it is determined that the processing of all the plan histories belonging to the target cluster is completed, the learning unit 120 registers the plan pattern of the target cluster in the plan pattern information 133 (step S110). Specifically, the following processing is executed.

学習部120は、ターゲットクラスタに所属する全ての計画履歴の各制約条件の乖離度に基づいて、各制約条件の乖離参考値を算出する。例えば、式(1)を用いて一つの制約条件の乖離参考値が算出される。   The learning unit 120 calculates the deviation reference value of each constraint condition based on the deviation degree of each constraint condition of all plan histories belonging to the target cluster. For example, the deviation reference value of one constraint condition is calculated using the equation (1).

Figure 0006689316
Figure 0006689316

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 learning unit 120 adds an entry to the plan pattern information 133 and sets the identification information of the target cluster in the pattern ID 601 of the added entry. In addition, the learning unit 120 sets the deviation reference value 602 of the added entry to the deviation reference value of each constraint condition. The above is the description of the process of step S110.

次に、学習部120は、全てのクラスタの処理が完了したか否かを判定する(ステップS111)。   Next, the learning unit 120 determines whether the processing of all clusters has been completed (step S111).

全てのクラスタの処理が完了していないと判定された場合、学習部120は、ステップS104に戻り、新たなターゲットクラスタを選択する。   When it is determined that the processing of all clusters is not completed, the learning unit 120 returns to step S104 and selects a new target cluster.

全てのクラスタの処理が完了したと判定された場合、学習部120は学習処理を終了する。   When it is determined that the processing of all clusters is completed, the learning unit 120 ends the learning processing.

学習処理によって、クラスタ情報132及び計画パターン情報133が生成され、また、各計画履歴が所属するクラスタが特定される。   By the learning process, the cluster information 132 and the plan pattern information 133 are generated, and the cluster to which each plan history belongs is specified.

図8は、実施例1の計画生成部121が実行する処理を説明するフローチャートである。   FIG. 8 is a flowchart illustrating processing executed by the plan generation unit 121 according to the first embodiment.

計算機100は、ネットワークインタフェース103又はIOインタフェース104を介して入力データを受信した場合、以下で説明する処理を開始する。   When the computer 100 receives the input data via the network interface 103 or the IO interface 104, the computer 100 starts the process described below.

計画生成部121は、入力データを取得し(ステップS201)、制約条件情報130、計画パターン情報133、及び入力データに基づいて処理の順番を決定することによって、新規計画を生成する(ステップS202)。一つの入力データに対して生成される新規計画の数は二つ以上でもよい。   The plan generation unit 121 acquires the input data (step S201), and determines the processing order based on the constraint condition information 130, the plan pattern information 133, and the input data to generate a new plan (step S202). . The number of new plans generated for one input data may be two or more.

計画生成部121は、原則、全ての制約条件を満たす新規計画を生成する。ただし、実施例1の計画生成部121は、計画パターン情報133に格納される計画パターンに基づいて、一部の制約条件を満たしていない新規計画を生成する。例えば、計画生成部121は、制約条件の閾値に乖離参考値を加算又は乗算することによって、制約条件を補正し、補正された制約条件に基づいて新規計画を生成する。これによって、乖離度が大きい制約条件を満たしていない計画が生成される。   In principle, the plan generation unit 121 generates a new plan that satisfies all constraint conditions. However, the plan generation unit 121 according to the first embodiment generates a new plan that does not satisfy some constraint conditions based on the plan pattern stored in the plan pattern information 133. For example, the plan generation unit 121 corrects the constraint condition by adding or multiplying the threshold value of the constraint condition with the deviation reference value, and generates a new plan based on the corrected constraint condition. As a result, a plan that does not satisfy the constraint condition that the degree of deviation is large is generated.

計画の生成方法は、例えば、数理計画法及び線形計画法等を用いることが考えられる。なお、本発明は計画の生成方法に限定されない。計画の生成方法は、制約条件及び生成する計画に応じて選択することができる。   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 plan generation unit 121 calculates the feature amount of the new plan (step S203) and classifies the new plan based on the cluster information 132 and the feature amount (step S204). This identifies the cluster to which the new plan belongs.

次に、計画生成部121は、新規計画のループ処理を開始する(ステップS205)。   Next, the plan generation unit 121 starts the loop process of the new plan (step S205).

具体的には、計画生成部121は、新規計画の中からターゲット新規計画を選択する。   Specifically, the plan generation unit 121 selects a target new plan from new plans.

次に、計画生成部121は、ターゲット新規計画の評価値を算出する(ステップS206)。具体的には、以下のような処理が実行される。   Next, the plan generation unit 121 calculates the evaluation value of the target new plan (step S206). Specifically, the following processing is executed.

計画生成部121は、ターゲット新規計画について、各制約条件の乖離度を算出する。計画生成部121は、各制約条件の乖離度の配列を一時計画パターンとして出力する。   The plan generation unit 121 calculates the deviation degree of each constraint condition for the target new plan. The plan generation unit 121 outputs the array of the deviation degree of each constraint condition as a temporary plan pattern.

計画生成部121は、計画パターン情報133を参照し、パターンID601が、ターゲット新規計画が所属するクラスタの識別情報と一致するエントリを検索する。   The plan generation unit 121 refers to the plan pattern information 133, and searches for an entry whose pattern ID 601 matches the identification information of the cluster to which the target new plan belongs.

計画生成部121は、一時計画パターン及び検索されたエントリに対応する計画パターンに基づいて評価値を算出する。例えば、計画生成部121は、式(2)を用いて評価値を算出する。   The plan generation unit 121 calculates an evaluation value based on the temporary plan pattern and the plan pattern corresponding to the retrieved entry. For example, the plan generation unit 121 calculates the evaluation value using Expression (2).

Figure 0006689316
Figure 0006689316

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 plan generation unit 121 determines whether the processing has been completed for all new plans (step S207).

全ての新規計画について処理が完了していないと判定された場合、計画生成部121は、ステップS205に戻り、新たなターゲット新規計画を選択する。   When it is determined that the processing has not been completed for all new plans, the plan generation unit 121 returns to step S205 and selects a new target new plan.

全ての新規計画について処理が完了したと判定された場合、計画生成部121は、評価値に基づいて出力する新規計画を選択する(ステップS208)。   When it is determined that the processing has been completed for all new plans, the plan generation unit 121 selects a new plan to output based on the evaluation value (step S208).

例えば、計画生成部121は、評価値が最も大きい新規計画を選択する。また、計画生成部121は、評価値が高い順に所定の数の新規計画を選択する。   For example, the plan generation unit 121 selects a new plan having the largest evaluation value. Further, the plan generation unit 121 selects a predetermined number of new plans in descending order of evaluation value.

次に、計画生成部121は、選択された新規計画を出力する(ステップS209)。その後、計画生成部121は、処理を終了する。   Next, the plan generation unit 121 outputs the selected new plan (step S209). After that, the plan generation unit 121 ends the process.

このとき、計画生成部121は、新規計画の履歴を計画履歴情報131に格納する。なお、生成された全ての新規計画の履歴を計画履歴情報131に格納してもよいし、選択された新規計画の履歴を計画履歴情報131に格納してもよい。   At this time, the plan generation unit 121 stores the history of the new plan in the plan history information 131. Note that the history of all the generated new plans may be stored in the plan history information 131, or the history of the selected new plan may be stored in the plan history information 131.

次に、再学習判定部123が実行する処理について説明する。   Next, the processing executed by the re-learning determination unit 123 will be described.

図9は、実施例1の再学習判定部123が実行する処理の概要を説明するフローチャートである。   FIG. 9 is a flowchart illustrating an outline of the process executed by the re-learning determination unit 123 according to the first embodiment.

再学習判定部123は、新規計画が生成された場合、実行指示を受信した場合、又は、周期的に、以下で説明する処理を実行する。   The re-learning determination unit 123 executes the process described below when a new plan is generated, when an execution instruction is received, or periodically.

再学習判定部123は、評価値判定処理を実行する(ステップS301)。評価値判定処理の詳細は図10を用いて説明する。   The re-learning determination unit 123 executes an evaluation value determination process (step S301). Details of the evaluation value determination processing will be described with reference to FIG.

再学習判定部123は、評価値判定処理の出力結果vが「True」であるか否かを判定する(ステップS302)。すなわち、再学習を実行する必要があるか否かが判定される。   The re-learning determination unit 123 determines whether or not the output result v of the evaluation value determination processing is “True” (step S302). That is, it is determined whether or not re-learning needs to be executed.

評価値判定処理の出力結果vが「True」でないと判定された場合、再学習判定部123は、処理を終了する。   When it is determined that the output result v of the evaluation value determination process is not “True”, the re-learning determination unit 123 ends the process.

評価値判定処理の出力結果vが「True」であると判定された場合、再学習判定部123は、再学習処理に使用する計画履歴である第一ターゲット計画履歴を選択する(ステップS303)。   When it is determined that the output result v of the evaluation value determination process is “True”, the re-learning determination unit 123 selects the first target plan history, which is the plan history used for the re-learning process (step S303).

具体的には、再学習判定部123は、タイムスタンプ303が現時刻に近いものから順に所定の数の計画履歴を第一ターゲット計画履歴として選択する。すなわち、所定の時間範囲内に含まれる計画履歴が第一ターゲット計画履歴として選択される。   Specifically, the re-learning determination unit 123 selects a predetermined number of plan histories as the first target plan history in order from the one whose time stamp 303 is closer to the current time. That is, the planning history included within the predetermined time range is selected as the first target planning history.

次に、再学習判定部123は、学習部120に対して、第一ターゲット計画履歴の情報を含む再学習処理の実行指示を出力する(ステップS304)。その後、再学習判定部123は処理を終了する。再学習処理の実行指示に含まれる第一ターゲット計画履歴の情報は、例えば、選択された第一ターゲット計画履歴の識別情報のリストである。   Next, the re-learning determination unit 123 outputs an instruction to execute the re-learning process including the information of the first target plan history to the learning unit 120 (step S304). After that, the re-learning determination unit 123 ends the process. The information of the first target plan history included in the execution instruction of the re-learning process is, for example, a list of identification information of the selected first target plan history.

学習部120は、再学習処理の実行指示を受信した場合、再学習処理を実行する。再学習処理は、図7に示す学習処理と同様の処理である。ただし、以下で記載するように、再学習処理は学習処理と一部の処理が異なる。   When the learning unit 120 receives the instruction to execute the relearning process, the learning unit 120 executes the relearning process. The re-learning process is similar to the learning process shown in FIG. 7. However, as will be described below, the re-learning process differs from the learning process in part.

まず、学習部120は、再学習処理の実行指示を受信した場合、第一ターゲット計画履歴に対応するエントリのクラスタID305を初期化し、また、クラスタ情報132及び計画パターン情報133を初期化する。学習部120は、ステップS101では、再学習処理の実行指示に含まれる第一ターゲット計画履歴の情報に基づいて計画履歴情報131から第一ターゲット計画履歴を取得し、ステップS102以降の処理を実行する。すなわち、学習部120は、新しい計画履歴を用いた学習処理を実行する。これによって、現在の事象の制御目的及び環境等の変化等を反映したクラスタ情報132及び計画パターン情報133を生成できる。   First, when the learning unit 120 receives the instruction to execute the re-learning process, the learning unit 120 initializes the cluster ID 305 of the entry corresponding to the first target plan history, and also initializes the cluster information 132 and the plan pattern information 133. In step S101, the learning unit 120 acquires the first target plan history from the plan history information 131 based on the information of the first target plan history included in the execution instruction of the re-learning process, and executes the process of step S102 and subsequent steps. . That is, the learning unit 120 executes the learning process using the new plan history. This makes it possible to generate the cluster information 132 and the plan pattern information 133 that reflect the control purpose of the current event and changes in the environment and the like.

図10は、実施例1の再学習判定部123が実行する評価値判定処理を説明するフローチャートである。   FIG. 10 is a flowchart illustrating the evaluation value determination process executed by the re-learning determination unit 123 according to the first embodiment.

再学習判定部123は、計画履歴情報131から、タイムスタンプ303が現時刻に近いものから順に所定の数の計画履歴を取得する(ステップS401)。このとき、再学習判定部123は、取得された計画履歴の評価値304に基づいて、評価値の統計値を算出する。例えば、再学習判定部123は評価値の平均値を算出する。   The re-learning determination unit 123 acquires a predetermined number of plan histories from the plan history information 131 in order of time stamp 303 closer to the current time (step S401). At this time, the re-learning determination unit 123 calculates the statistical value of the evaluation value based on the acquired evaluation value 304 of the plan history. For example, the re-learning determination unit 123 calculates the average value of the evaluation values.

再学習判定部123は、前回算出された評価値の統計値及び新たに算出された評価値の統計値の比較結果に基づいて、評価値が変動しているか否かを判定する(ステップS402)。   The re-learning determination unit 123 determines whether or not the evaluation value fluctuates based on the comparison result of the statistical value of the evaluation value calculated last time and the statistical value of the newly calculated evaluation value (step S402). .

例えば、再学習判定部123は、新たに算出された評価値の統計値及び前回算出された評価値の統計値の差の絶対値が閾値より大きいか否かを判定する。前述の差の絶対値が閾値より大きい場合、再学習判定部123は評価値が変動していると判定する。   For example, the re-learning determination unit 123 determines whether or not the absolute value of the difference between the newly calculated statistical value of the evaluation value and the previously calculated statistical value of the evaluation value is larger than the threshold value. When the absolute value of the difference is larger than the threshold value, the re-learning determination unit 123 determines that the evaluation value has changed.

評価値が変動している場合、計画を生成するために考慮する制約条件等、計画の生成方針が変化している可能性がある。そのため、これまでの計画履歴の学習結果をそのまま利用した場合、有用な計画を生成できない。   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 re-learning determination unit 123 controls the learning unit 120 to output an instruction to execute the re-learning process when the variation in the evaluation value is detected. Further, the re-learning determination unit 123 selects, from the plan history stored in the plan history information 131, the plan history that reflects the current plan generation policy. As a result, the re-learning process for obtaining a useful learning result can be efficiently executed.

評価値が変動していると判定された場合、再学習判定部123は、出力結果vとして「True」を出力し(ステップS403)、その後、評価値判定処理を終了する。   When it is determined that the evaluation value has changed, the re-learning determination unit 123 outputs “True” as the output result v (step S403), and then ends the evaluation value determination process.

評価値が変動していないと判定された場合、再学習判定部123は、出力結果vとして「False」を出力し(ステップS404)、その後、評価値判定処理を終了する。   When it is determined that the evaluation value has not changed, the re-learning determination unit 123 outputs “False” as the output result v (step S404), and then ends the evaluation value determination process.

なお、再学習判定部123は、制御パラメータとして保持する前回算出された評価値の統計値を、新たに算出された評価値の統計値に更新する。   The re-learning determination unit 123 updates the statistical value of the previously calculated evaluation value held as the control parameter to the statistical value of the newly calculated evaluation value.

実施例1によれば、計算機100は、評価値の変動を監視し、評価値の変動を検知した場合、所定の数の計画履歴を選択し、選択された計画履歴を用いた再学習処理を実行する。これによって、再学習処理の実行タイミングを自動的かつ最適に決定することができる。また、計算機100は、再学習処理の結果を用いることによって、現在の計画の生成方針を考慮した計画を生成することができる。   According to the first embodiment, the computer 100 monitors the fluctuation of the evaluation value and, when detecting the fluctuation of the evaluation value, selects a predetermined number of plan histories and performs the re-learning process using the selected plan histories. Run. Thereby, the execution timing of the re-learning process can be automatically and optimally determined. Further, the computer 100 can generate a plan in consideration of the current plan generation policy by using the result of the re-learning process.

実施例2では、再学習判定部123が新規計画の分類結果も考慮する点が実施例1と異なる。以下、実施例1との差異を中心に実施例2について説明する。   The second embodiment differs from the first embodiment in that the re-learning determination unit 123 also considers the classification result of the new plan. Hereinafter, the second embodiment will be described focusing on the differences from the first embodiment.

実施例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 computer 100. The data structure of the information held by the computer 100 of the second embodiment is the same as that of the first embodiment. The learning process executed by the learning unit 120 of the second embodiment is the same as that of the first embodiment, and the plan generation process executed by the plan generation unit 121 of the second embodiment is the same as that of the first embodiment.

図11は、実施例2の再学習判定部123が実行する処理の概要を説明するフローチャートである。   FIG. 11 is a flowchart illustrating an outline of processing executed by the re-learning determination unit 123 according to the second embodiment.

再学習判定部123は、新規計画が生成された場合、以下で説明する処理を実行する。   When a new plan is generated, the re-learning determination unit 123 executes the process described below.

再学習判定部123は、評価値判定処理を実行する(ステップS501)。実施例2の評価値判定処理は実施例1と同一である。   The re-learning determination unit 123 executes an evaluation value determination process (step S501). The evaluation value determination process of the second embodiment is the same as that of the first embodiment.

次に、再学習判定部123は、クラスタ判定処理を実行する(ステップS502)。クラスタ判定処理の詳細は図12を用いて説明する。   Next, the re-learning determination unit 123 executes cluster determination processing (step S502). Details of the cluster determination process will be described with reference to FIG.

再学習判定部123は、評価値判定処理の出力結果vが「True」かつクラスタ判定処理の出力結果cが「True」であるか否かを判定する(ステップS503)。すなわち、クラスタ情報132及び計画パターン情報133を更新するための再学習処理を実行する必要があるか否かが判定される。以下の説明では、ステップS503の判定条件を第一判定条件と記載する。   The re-learning determination unit 123 determines whether the output result v of the evaluation value determination processing is “True” and the output result c of the cluster determination processing is “True” (step S503). That is, it is determined whether or not the re-learning process for updating the cluster information 132 and the plan pattern information 133 needs to be executed. In the following description, the determination condition of step S503 will be referred to as the first determination condition.

第一判定条件を満たすと判定された場合、再学習判定部123は、第一ターゲット計画履歴を選択する(ステップS504)。ステップS504の処理はステップS303の処理と同一の処理である。   When it is determined that the first determination condition is satisfied, the re-learning determination unit 123 selects the first target plan history (step S504). The process of step S504 is the same as the process of step S303.

次に、再学習判定部123は、学習部120に対して、第一ターゲット計画履歴及びフラグAを含む再学習処理の実行指示を出力する(ステップS505)。その後、再学習判定部123は処理を終了する。   Next, the re-learning determination unit 123 outputs an instruction to execute the re-learning process including the first target plan history and the flag A to the learning unit 120 (step S505). After that, the re-learning determination unit 123 ends the process.

ステップ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 re-learning determination unit 123 determines that the output result v of the evaluation value determination process is “True” and the output result c of the cluster determination process is “False”. It is determined whether or not (step S506). That is, it is determined whether or not the re-learning process for updating the plan pattern information 133 needs to be executed. In the following description, the determination condition of step S506 will be referred to as the second determination condition.

第二判定条件を満たすと判定された場合、再学習判定部123は、新規計画から第二ターゲット計画履歴を選択する(ステップS507)。   When it is determined that the second determination condition is satisfied, the re-learning determination unit 123 selects the second target plan history from the new plan (step S507).

具体的には、再学習判定部123は、全ての新規計画の中から、評価値が高い順に所定の数の新規計画を第二ターゲット計画履歴として選択する。選択する新規計画の数は、例えば、新規計画の全数の所定の割合とすることが考えられる。   Specifically, the re-learning determination unit 123 selects, as the second target plan history, a predetermined number of new plans from the all new plans in descending order of evaluation value. The number of new plans selected may be, for example, a predetermined ratio of the total number of new plans.

次に、再学習判定部123は、学習部120に対して、第二ターゲット計画履歴及びフラグBを含む再学習処理の実行指示を出力する(ステップS508)。その後、再学習判定部123は処理を終了する。   Next, the re-learning determination unit 123 outputs an instruction to execute the re-learning process including the second target plan history and the flag B to the learning unit 120 (step S508). After that, the re-learning determination unit 123 ends the process.

ステップ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 re-learning determination unit 123 determines that the output result v of the evaluation value determination process is “False” and the output result c of the cluster determination process is “True”. It is determined whether or not (step S509). That is, it is determined whether or not the re-learning process for updating the cluster information 132 needs to be executed. In the following description, the determination condition of step S509 is described as the third determination condition.

第三判定条件を満たすと判定された場合、再学習判定部123は、外れリストを取得する(ステップS510)。外れリストの詳細は図12を用いて説明する。   When it is determined that the third determination condition is satisfied, the re-learning determination unit 123 acquires the deviation list (step S510). Details of the deviation list will be described with reference to FIG.

次に、再学習判定部123は、学習部120に対して、外れリスト及びフラグCを含む再学習処理の実行指示を出力する(ステップS511)。その後、再学習判定部123は処理を終了する。   Next, the re-learning determination unit 123 outputs an instruction to execute the re-learning process including the deviation list and the flag C to the learning unit 120 (step S511). After that, the re-learning determination unit 123 ends the process.

ステップS509において、第三判定条件を満たさないと判定された場合、再学習判定部123は処理を終了する。   When it is determined in step S509 that the third determination condition is not satisfied, the re-learning determination unit 123 ends the process.

図12は、実施例2の再学習判定部123が実行するクラスタ判定処理の一例を説明するフローチャートである。   FIG. 12 is a flowchart illustrating an example of the cluster determination process executed by the re-learning determination unit 123 according to the second embodiment.

再学習判定部123は、新規計画を取得し(ステップS601)、新規計画のループ処理を開始する(ステップS602)。具体的には、再学習判定部123は、ターゲット新規計画を選択する。   The re-learning determination unit 123 acquires a new plan (step S601) and starts loop processing of the new plan (step S602). Specifically, the re-learning determination unit 123 selects a target new plan.

次に、再学習判定部123は、ターゲット新規計画の特徴量を算出する(ステップS603)。計画の特徴量の算出方法はステップS102と同一である。   Next, the re-learning determination unit 123 calculates the feature amount of the target new plan (step S603). The method of calculating the plan feature amount is the same as in step S102.

次に、再学習判定部123は、算出された特徴量及びクラスタ情報132を参照し、ターゲット新規計画が所属可能なクラスタが存在するか否かを判定する(ステップS604)。   Next, the re-learning determination unit 123 refers to the calculated feature amount and cluster information 132 and determines whether or not there is a cluster to which the new target plan can belong (step S604).

具体的には、再学習判定部123は、クラスタの重心及びターゲット新規計画の特徴量空間の位置の間の距離が、当該クラスタの距離503より小さくなるクラスタを検索する。前述の条件を満たすクラスタが存在する場合、再学習判定部123は、ターゲット新規計画が所属可能なクラスタが存在すると判定する。なお、前述の条件を満たすクラスタが複数存在する場合、再学習判定部123は、距離が最も小さくなるクラスタを選択する。   Specifically, the re-learning determination unit 123 searches for a cluster in which the distance between the center of gravity of the cluster and the position of the feature amount space of the target new plan is smaller than the distance 503 of the cluster. When there is a cluster that satisfies the above condition, the re-learning determination unit 123 determines that there is a cluster to which the new target plan can belong. If there are a plurality of clusters that satisfy the above-described condition, the re-learning determination unit 123 selects the cluster with the smallest distance.

ターゲット新規計画が所属可能なクラスタが存在すると判定された場合、再学習判定部123はステップS606に進む。   If it is determined that there is a cluster to which the new target plan can belong, the re-learning determination unit 123 proceeds to step S606.

ターゲット新規計画が所属可能なクラスタが存在しないと判定された場合、再学習判定部123は、ターゲット新規計画を外れリストに登録し(ステップS605)、その後、ステップS606に進む。   When it is determined that there is no cluster to which the new target plan can belong, the re-learning determination unit 123 registers the new target plan in the out-of-list (step S605), and then proceeds to step S606.

ステップS606では、再学習判定部123は、全ての新規計画の処理が完了したか否かを判定する(ステップS606)。   In step S606, the re-learning determination unit 123 determines whether or not the processing of all new plans has been completed (step S606).

全ての新規計画の処理が完了していないと判定された場合、再学習判定部123は、ステップS602に戻り、新たなターゲット新規計画を選択する。   When it is determined that the processing of all new plans has not been completed, the re-learning determination unit 123 returns to step S602 and selects a new target new plan.

全ての新規計画の処理が完了したと判定された場合、再学習判定部123は、新規計画の分類結果に基づいて、新たなクラスタを生成する必要があるか否かを判定する(ステップS607)。   When it is determined that the processing of all the new plans is completed, the re-learning determination unit 123 determines whether or not it is necessary to generate a new cluster based on the classification result of the new plans (step S607). .

具体的には、再学習判定部123は、外れリストが空であるか否かを判定する。外れリストが空である場合、再学習判定部123は、新たなクラスタを生成する必要がないと判定する。   Specifically, the re-learning determination unit 123 determines whether or not the removal list is empty. When the deviation list is empty, the re-learning determination unit 123 determines that it is not necessary to generate a new cluster.

新たなクラスタを生成する必要があると判定された場合、再学習判定部123は、出力結果cとして「True」を出力し(ステップS608)、その後、処理を終了する。   When it is determined that a new cluster needs to be generated, the re-learning determination unit 123 outputs “True” as the output result c (step S608), and then ends the processing.

新たなクラスタを生成する必要がないと判定された場合、再学習判定部123は、出力結果cとして「False」を出力し(ステップS609)、その後、処理を終了する。   When it is determined that it is not necessary to generate a new cluster, the re-learning determination unit 123 outputs “False” as the output result c (step S609), and then ends the processing.

図13A及び図13Bは、実施例2の学習部120が実行する再学習処理の一例を説明する図である。   13A and 13B are diagrams illustrating an example of the re-learning process performed by the learning unit 120 according to the second embodiment.

学習部120は、再学習処理の実行指示に含まれるフラグがフラグAであるか否かを判定する(ステップS701)。   The learning unit 120 determines whether the flag included in the instruction for executing the re-learning process is the flag A (step S701).

再学習処理の実行指示に含まれるフラグがフラグ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 learning unit 120 acquires the first target plan history from the plan history information 131 based on the execution instruction of the re-learning process (step S702), and thereafter, the processes of steps S703 to S712 are executed. The processing from step S703 to step S712 is the same as the processing from step S102 to step S111. However, the difference is that the plan history handled in the process is the first target plan history.

再学習処理の実行指示にフラグAが含まれる場合、学習部120は、クラスタ情報132及び計画パターン情報133を更新するための再学習処理を実行する。   When the instruction for executing the re-learning process includes the flag A, the learning unit 120 executes the re-learning process for updating the cluster information 132 and the plan pattern information 133.

再学習処理の実行指示に含まれるフラグがフラグ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 learning unit 120 determines whether the flag included in the execution instruction of the re-learning process is the flag B (step S713). .

再学習処理の実行指示に含まれるフラグがフラグ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 learning unit 120 acquires the second target plan from the plan history information 131 based on the execution instruction of the re-learning process (step S714). ) And thereafter, the processes from step S705 to step S712 are executed.

再学習処理の実行指示にフラグBが含まれる場合、学習部120は、計画パターン情報133を更新するための学習処理を実行する。   When the instruction for executing the re-learning process includes the flag B, the learning unit 120 executes the learning process for updating the plan pattern information 133.

再学習処理の実行指示に含まれるフラグがフラグ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 learning unit 120 generates a cluster using the deviation list included in the execution instruction of the re-learning process (step S715), and the cluster information. 132 is updated (step S716). Specifically, the learning unit 120 adds the generated cluster information to the cluster information 132. Then, the learning unit 120 ends the process.

実施例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 cluster information 132 and the plan pattern information 133 when generating a new plan. Thereby, the execution timing of the re-learning process can be automatically and optimally determined. Further, the computer 100 can generate a plan in consideration of the current plan generation policy by using the result of the re-learning process.

なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。   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 computer 101 input device 102 output device 103 network interface 104 IO interface 105 target system 111 arithmetic device 112 storage device 113 network interface 114 IO interface 120 learning unit 121 plan generation unit 122 constraint condition management unit 123 re-learning determination unit 130 constraint condition information 131 plan history information 132 cluster information 133 plan pattern information

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.
請求項1に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記計画履歴の特徴量に基づくクラスタリングによって生成されたクラスタを管理するためのクラスタ情報を保持し、
前記計画パターン情報は、前記クラスタに所属する前記計画履歴及び前記制約条件情報に基づいて生成された、前記各クラスタの前記計画パターンを格納し、
前記少なくとも一つの計算機は、
順番が規定されていない複数の処理を含む入力データ、前記制約条件情報、及び前記計画パターン情報に基づいて、前記入力データに含まれる複数の処理の順番を決定することによって新規計画を生成し、
前記計画パターン情報及び前記新規計画に基づいて、前記新規計画の前記評価値を算出し、
前記評価値の変動の分析、並びに、前記クラスタ情報及び前記新規計画の特徴量に基づく前記新規計画の分類を実行し、
前記評価値の変動の分析結果及び前記新規計画の分類結果に基づいて、前記計画パターン情報を更新する必要があるか否かを判定することを特徴とする計算機システム。
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.
請求項2に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記評価値の変動の分析結果及び前記新規計画の分類結果に基づいて、前記クラスタ情報を更新する必要があるか否かを判定することを特徴とする計算機システム。
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.
請求項3に記載の計算機システムであって、
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記少なくとも一つの計算機は、
前記計画パターン情報及び前記クラスタ情報を更新する必要があると判定された場合、所定の時間範囲において生成された前記計画履歴を、第一ターゲット計画履歴として選択し、
前記第一ターゲット計画履歴及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報及び前記クラスタ情報を更新することを特徴とする計算機システム。
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 .
請求項3に記載の計算機システムであって、
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記少なくとも一つの計算機は、
前記クラスタ情報を更新する必要がなく、かつ、前記計画パターン情報を更新する必要があると判定された場合、所定の時間範囲において生成された前記計画履歴の前記評価値及び閾値の比較結果に基づいて、第二ターゲット計画履歴を選択し、
前記第二ターゲット計画履歴及び前記制約条件情報を用いて、再度、前記学習処理を実行することによって、前記計画パターン情報を更新することを特徴とする計算機システム。
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 .
請求項3に記載の計算機システムであって、
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記計画パターン情報を更新する必要がなく、かつ、前記クラスタ情報を更新する必要があると判定された場合、前記クラスタ情報にて管理される前記クラスタに所属しない前記新規計画から新たなクラスタを生成し、
前記新たなクラスタの情報を前記クラスタ情報に登録することを特徴とする計算機システム。
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.
請求項7に記載の学習制御方法であって、
前記少なくとも一つの計算機は、前記計画履歴の特徴量に基づくクラスタリングによって生成されたクラスタを管理するためのクラスタ情報を保持し、
前記計画パターン情報は、前記クラスタに所属する前記計画履歴及び前記制約条件情報に基づいて生成された、前記各クラスタの前記計画パターンを格納し、
前記学習制御方法は、
前記少なくとも一つの計算機が、順番が規定されていない複数の処理を含む入力データ、前記制約条件情報、及び前記計画パターン情報に基づいて、前記入力データに含まれる複数の処理の順番を決定することによって新規計画を生成するステップと、
前記少なくとも一つの計算機が、前記計画パターン情報及び前記新規計画に基づいて、前記新規計画の前記評価値を算出するステップと、を含み、
前記第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.
請求項8に記載の学習制御方法であって、
前記第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.
請求項9に記載の学習制御方法であって、
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記第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.
請求項9に記載の学習制御方法であって、
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記第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.
請求項9に記載の学習制御方法であって、
前記計画履歴情報に格納されるデータは、前記計画履歴が生成された時刻を含み、
前記第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.
JP2018107962A 2018-06-05 2018-06-05 Computer system and learning control method Active JP6689316B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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