Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7694151B2 - System design learning device, system design learning method and program - Google Patents
[go: Go Back, main page]

JP7694151B2 - System design learning device, system design learning method and program - Google Patents

System design learning device, system design learning method and program Download PDF

Info

Publication number
JP7694151B2
JP7694151B2 JP2021087757A JP2021087757A JP7694151B2 JP 7694151 B2 JP7694151 B2 JP 7694151B2 JP 2021087757 A JP2021087757 A JP 2021087757A JP 2021087757 A JP2021087757 A JP 2021087757A JP 7694151 B2 JP7694151 B2 JP 7694151B2
Authority
JP
Japan
Prior art keywords
system design
design
learning
conversion rule
conversion
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
JP2021087757A
Other languages
Japanese (ja)
Other versions
JP2022063209A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to US17/495,012 priority Critical patent/US20220114311A1/en
Publication of JP2022063209A publication Critical patent/JP2022063209A/en
Application granted granted Critical
Publication of JP7694151B2 publication Critical patent/JP7694151B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、システム設計学習装置、システム設計学習方法およびプログラムに関する。 The present invention relates to a system design learning device, a system design learning method, and a program.

特許文献1には、抽象的なシステム構成の未確定な部分に具体化規則を適用して具体化することによって、未確定な部分が含まれていない具体的なシステム構成を導出するシステム設計技術が開示されている。
また、非特許文献1には、特許文献1に示されるような技術において、適用可能な規則の何れかを選択する処理を、強化学習で学習する技術が開示されている。
Patent Document 1 discloses a system design technique that derives a concrete system configuration that does not include uncertain parts by applying concretization rules to the uncertain parts of an abstract system configuration and concretizing them.
Furthermore, Non-Patent Document 1 discloses a technique in which a process of selecting one of the applicable rules in the technique disclosed in Patent Document 1 is learned by reinforcement learning.

国際公開第2019/216082号International Publication No. 2019/216082

丸山貴志、外4名、「探索型ネットワーク設計導出方式の強化学習による探索の効率化」、信学技報、vol. 118、no. 483、ICM2018-71、pp. 123-128、2019年3月Takashi Maruyama and 4 others, "Improving the efficiency of search by reinforcement learning for search-based network design derivation method," IEICE Technical Report, vol. 118, no. 483, ICM2018-71, pp. 123-128, March 2019.

特許文献1に例示されるシステム設計技術など、システム構成の部分に変換規則を適用する場合、どの変換規則を適用するか、さらには、どの変換規則をどの順番で適用するかによって、得られる結果が異なることが考えられる。特に、特許文献1に例示されるシステム設計技術などにおいては、どの変換規則を適用するか、さらには、どの変換規則をどの順番で適用するかによって、システム設計に失敗することも考えられる。すなわち、係るシステム設計技術においては、具体的なシステム構成の導出に必ず成功するとは限らず、例えば、システム構成に未確定な部分が含まれているにも関わらず、適用可能な変換規則が無くなってしまうことも考えられる。 When applying conversion rules to parts of a system configuration, such as the system design technology exemplified in Patent Document 1, it is conceivable that the results obtained will differ depending on which conversion rules are applied and in what order they are applied. In particular, in the system design technology exemplified in Patent Document 1, it is conceivable that the system design will fail depending on which conversion rules are applied and in what order they are applied. In other words, such system design technology is not necessarily successful in deriving a specific system configuration, and it is conceivable that, for example, there will be no applicable conversion rules even if the system configuration includes undetermined parts.

これに対し、システム設計に成功する可能性を高める観点から、システム構成に応じた変換について、非特許文献1に例示される強化学習などの学習(機械学習)を行うことが考えられる。
ただし、システム構成に関する学習を行う場合、システム構成が多様であることから、システム設計時に対象となるシステム構成が、学習時に対象となるシステム構成とは異なることが考えられる。このようにシステム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なる場合であっても、有効な学習を行えることが好ましい。
In response to this, from the viewpoint of increasing the possibility of successful system design, it is conceivable to carry out learning (machine learning) such as reinforcement learning exemplified in Non-Patent Document 1 for conversion according to the system configuration.
However, when learning about system configurations, since there are many different system configurations, it is conceivable that the system configuration targeted at the time of system design may differ from the system configuration targeted at the time of learning. Even if the system configuration targeted at the time of system design differs from the system configuration targeted at the time of learning, it is preferable to be able to carry out effective learning.

本発明は、上述の課題を解決することのできるシステム設計学習装置、システム設計学習方法およびプログラムを提供することを目的としている。 The present invention aims to provide a system design learning device, a system design learning method, and a program that can solve the above-mentioned problems.

本発明の第1の態様によれば、システム設計学習装置は、システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行う変換規則適用手段と、前記設計結果に基づいて、前記システム設計に対する評価値を決定する設計評価手段と、前記システム設計に対する評価値に基づいて、前記システム設計における個々の部品の変換に関する評価値を決定する規則適用評価手段と、前記部品の変換に関する評価値を含む学習データに基づいて、前記変換規則の適用対象となる部品の選択について学習する学習手段と、を備える。 According to a first aspect of the present invention, a system design learning device includes a conversion rule application means for performing system design by repeatedly applying conversion rules to components of a system to be designed, the components being designated as system requirements, until a design result of the system design is obtained, a design evaluation means for determining an evaluation value for the system design based on the design result, a rule application evaluation means for determining an evaluation value for the conversion of each component in the system design based on the evaluation value for the system design, and a learning means for learning about the selection of components to which the conversion rules are applied, based on learning data including the evaluation values for the conversion of the components.

本発明の第2の態様によれば、コンピュータが、システム設計学習方法は、システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行うことと、前記設計結果に基づいて、前記システム設計に対する評価値を決定することと、前記システム設計に対する評価値に基づいて、前記システム設計における個々の部品の変換に関する評価値を決定することと、前記部品の変換に関する評価値を含む学習データに基づいて、前記変換規則の適用対象となる部品の選択について学習することと、を含む。 According to a second aspect of the present invention, a system design learning method by a computer includes: performing system design by repeatedly applying conversion rules to components of a system to be designed, for a system to be designed, whose system requirements are given, until a design result of the system design is obtained; determining an evaluation value for the system design based on the design result; determining an evaluation value for the conversion of each component in the system design based on the evaluation value for the system design; and learning about selection of components to which the conversion rules are to be applied based on learning data including the evaluation values for the conversion of the components.

本発明の第3の態様によれば、プログラムは、コンピュータに、システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行うことと、前記設計結果に基づいて、前記システム設計に対する評価値を決定することと、前記システム設計に対する評価値に基づいて、前記システム設計における個々の部品の変換に関する評価値を決定することと、前記部品の変換に関する評価値を含む学習データに基づいて、前記変換規則の適用対象となる部品の選択について学習することと、を実行させるためのプログラムである。 According to a third aspect of the present invention, the program causes a computer to perform the following steps: design a system by repeatedly applying conversion rules to components of a system to be designed, for which system requirements are given, until a design result of the system design is obtained; determine an evaluation value for the system design based on the design result; determine an evaluation value for the conversion of each component in the system design based on the evaluation value for the system design; and learn about the selection of components to which the conversion rules are to be applied based on learning data including the evaluation values for the conversion of the components.

この発明によれば、システム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なる場合であっても有効な学習を行えると期待される。 This invention is expected to enable effective learning even if the system configuration targeted during system design differs from the system configuration targeted during learning.

第1実施形態に係るシステム設計学習装置の機能構成を示す概略ブロック図である。FIG. 1 is a schematic block diagram showing a functional configuration of a system design learning apparatus according to a first embodiment. 第1実施形態に係るシステム設計学習装置が扱うシステム要件の例を示す図である。FIG. 2 is a diagram showing an example of system requirements handled by the system design learning device according to the first embodiment. 第1実施形態に係る変換規則適用前のシステム要件の例を示す図である。FIG. 2 is a diagram showing an example of system requirements before application of a conversion rule according to the first embodiment. 第1実施形態に係る変換規則適用後のシステム要件の例を示す図である。FIG. 11 is a diagram showing an example of system requirements after application of conversion rules according to the first embodiment. 第1実施形態に係る変換規則適用部が生成するシステム設計の履歴情報の例を示す図である。4 is a diagram showing an example of system design history information generated by a conversion rule application unit according to the first embodiment; FIG. 第1実施形態に係る統合データの例を示す図である。FIG. 4 is a diagram showing an example of integrated data according to the first embodiment; 第1実施形態に係る統合データにおけるノードと部品との対応関係の例を示す図である。10 is a diagram showing an example of a correspondence relationship between nodes and parts in integrated data according to the first embodiment; FIG. 第1実施形態に係るシステム設計学習装置が学習データを生成して学習を行う処理手順の例を示すフローチャートである。1 is a flowchart showing an example of a processing procedure in which the system design learning device according to the first embodiment generates learning data and performs learning. 第1実施形態に係るシステム設計学習装置がシステム設計を行う処理手順の例を示すフローチャートである。4 is a flowchart showing an example of a processing procedure for the system design learning device according to the first embodiment to perform system design. 第1実施形態に係るシステム設計学習装置が統合データのノードに示される評価値を更新する処理手順の例を示すフローチャートである。11 is a flowchart showing an example of a processing procedure in which the system design learning device according to the first embodiment updates an evaluation value indicated at a node of integrated data. 第1実施形態に係るシステム設計学習装置が学習データを生成する処理手順の例を示すフローチャートである。11 is a flowchart showing an example of a processing procedure for generating learning data by the system design learning device according to the first embodiment. 第1実施形態に係るシステム設計学習装置がシステム構成の評価値を算出する処理手順の例を示すフローチャートである。11 is a flowchart illustrating an example of a processing procedure in which the system design learning device according to the first embodiment calculates an evaluation value of a system configuration. 第2実施形態に係るシステム設計学習装置の機能構成を示す概略ブロック図である。FIG. 11 is a schematic block diagram showing a functional configuration of a system design learning apparatus according to a second embodiment. 第2実施形態に係るシステム設計学習装置200が学習データを生成して学習を行う処理手順の例を示すフローチャートである。13 is a flowchart showing an example of a processing procedure in which the system design learning device 200 according to the second embodiment generates learning data and performs learning. 第2実施形態に係る具体化部品検出部296が具体化する部品の計算を行う処理手順の例を示すフローチャートである。13 is a flowchart illustrating an example of a processing procedure for calculating parts to be instantiated by an instantiation part detection unit 296 according to the second embodiment. 第3実施形態に係るシステム設計学習装置の構成の例を示す図である。FIG. 13 is a diagram illustrating an example of the configuration of a system design learning apparatus according to a third embodiment. 第4実施形態に係るシステム設計学習方法における処理の手順の例を示すフローチャートである。13 is a flowchart showing an example of a processing procedure in a system design learning method according to the fourth embodiment. 少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。FIG. 1 is a schematic block diagram illustrating a configuration of a computer according to at least one embodiment.

以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。 The following describes embodiments of the present invention, but the following embodiments do not limit the scope of the invention. Furthermore, not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention.

<第1実施形態>
図1は、第1実施形態に係るシステム設計学習装置の機能構成を示す概略ブロック図である。図1に示す構成で、システム設計学習装置100は、通信部110と、表示部120と、操作入力部130と、記憶部180と、制御部190とを備える。制御部190は、変換規則適用部191と、設計評価部192と、規則適用評価部193と、学習データ生成部194と、学習部195とを備える。
First Embodiment
Fig. 1 is a schematic block diagram showing the functional configuration of a system design learning apparatus according to the first embodiment. In the configuration shown in Fig. 1, the system design learning apparatus 100 includes a communication unit 110, a display unit 120, an operation input unit 130, a storage unit 180, and a control unit 190. The control unit 190 includes a conversion rule application unit 191, a design evaluation unit 192, a rule application evaluation unit 193, a learning data generation unit 194, and a learning unit 195.

システム設計学習装置100は、システム設計を自動的または半自動的に行う。そして、システム設計学習装置100は、システム設計の結果に基づいて、システム設計の処理を学習する。システム設計学習装置100は、学習結果を用いたシステム設計と、システム設計の結果を用いた学習とを繰り返す。
システム設計学習装置100は、パソコン(Personal Computer;PC)またはワークステーション(Workstation)などのコンピュータを用いて構成されていてもよい。あるいは、システム設計学習装置100がASIC(Application Specific Integrated Circuit)を用いて構成されるなど、システム設計学習装置100専用のハードウェアを用いて構成されていてもよい。
The system design learning device 100 performs system design automatically or semi-automatically. Then, the system design learning device 100 learns the system design process based on the result of the system design. The system design learning device 100 repeats system design using the learning result and learning using the result of the system design.
The system design learning device 100 may be configured using a computer such as a personal computer (PC) or a workstation. Alternatively, the system design learning device 100 may be configured using hardware dedicated to the system design learning device 100, such as an application specific integrated circuit (ASIC).

システム設計では、システム設計学習装置100は、設計対象システムのシステム要件を取得する。ここでいうシステム要件は、システムが備えるべき構成を記述した情報である。
システム設計学習装置100に入力されるシステム要件では、設計対象システムの構成要素を抽象的に記述することが可能である。システム設計学習装置100は、取得したシステム要件に対して、予め定められた変換規則を繰り返し適用することで、システムを配備(Deployment)可能なレベルにまでシステム要件を具体化する。
In the system design, the system design learning device 100 acquires system requirements for the system to be designed. The system requirements here are information describing the configuration that the system should have.
The components of the system to be designed can be described abstractly in the system requirements input to the system design learning device 100. The system design learning device 100 concretizes the system requirements to a level at which the system can be deployed by repeatedly applying predetermined conversion rules to the acquired system requirements.

具体的には、設計対象システムは1つ以上の部品を含んで構成される。システム設計学習装置100は、設計対象システムに含まれる部品の何れか1つを選択し、選択した部品を具体化する変換規則を適用する。システム設計学習装置100は、部品の選択および変換規則の適用を繰り返すことでシステム設計を行う。 Specifically, the system to be designed is composed of one or more components. The system design learning device 100 selects one of the components included in the system to be designed, and applies a transformation rule that concretizes the selected component. The system design learning device 100 performs system design by repeatedly selecting components and applying transformation rules.

ここでいう部品は、あるシステムの一部を構成可能な部分である。システム設計学習装置100が行うシステム設計では、部品に対して変換規則が適用され、設計対象システムが部品単位で具体化される。システム要件に示されるシステムの部品を、システム要件の部品とも称する。
また本開示において、「部品」は、成果物として求めたいシステムの構成に応じて、それ以上は具体的な構成に変換できない程度まで最大限具体化された構成を表す場合や、所望の程度まで具体化された構成(例えばある機能を実現する機能モジュール)を表す場合等が想定される。このため個々の部品の具体化の度合いは、一義的に定まるものではない。また、「部品」は、例えば「サーバ」等の単位で定義されてもよいし、より細かく、例えば「CPU」、「メモリ」、「ハードディスク」等の単位で定義されてもよいし、より粗く、例えば「顔認識を行うシステム」等の単位で定義されてもよい。このため個々の部品が定義される単位は、一義的に定まるものではない。
The components referred to here are parts that can constitute a part of a system. In the system design performed by the system design learning device 100, conversion rules are applied to the components, and the system to be designed is realized on a component-by-component basis. The components of the system indicated in the system requirements are also referred to as system requirement components.
In addition, in this disclosure, it is assumed that a "component" may represent a configuration that is specified to the maximum extent that it cannot be converted into a more specific configuration, or a configuration that is specified to a desired extent (e.g., a functional module that realizes a certain function), depending on the configuration of the system desired as a deliverable. Therefore, the degree of specification of each component is not uniquely determined. Furthermore, a "component" may be defined in units such as "server", or more precisely in units such as "CPU", "memory", "hard disk", or more coarsely in units such as "system that performs face recognition". Therefore, the unit in which each component is defined is not uniquely determined.

以下では、システム設計学習装置100が対象とするシステムがICT(Information and Communication Technology、情報通信技術)システムである場合を例に説明する。ただし、システム設計学習装置100が対象とするシステムの分野は特定の分野に限定されない。
システム要件に変換規則を適用することを変換と称する。システム要件に変換規則を複数回適用してもよいことを明示する場合、変換系列と称する。したがって、変換系列は、1つ以上の変換の直列接続で示される。
In the following, a case will be described in which the system targeted by the system design learning device 100 is an ICT (Information and Communication Technology) system. However, the field of the system targeted by the system design learning device 100 is not limited to a specific field.
The application of a transformation rule to a system requirement is called a transformation. When it is specified that a transformation rule may be applied multiple times to a system requirement, it is called a transformation sequence. Thus, a transformation sequence is represented by a serial connection of one or more transformations.

図2は、システム設計学習装置100が扱うシステム要件の例を示す図である。図2は、システム設計学習装置100が不審者検知システムを設計する場合の、設計対象のシステム要件の例を示している。
図2の例では、システム設計学習装置100が扱うシステム要件が有向グラフの形式で記述され、ノードおよびエッジのそれぞれに、属性情報が付加されている。ノードおよびエッジの何れも部品の例に該当する。
Fig. 2 is a diagram showing an example of system requirements handled by the system design learning device 100. Fig. 2 shows an example of system requirements to be designed when the system design learning device 100 designs a suspicious person detection system.
2, the system requirements handled by the system design learning device 100 are described in the form of a directed graph, and attribute information is added to each of the nodes and edges. Both the nodes and edges are examples of components.

例えば、ノードには、そのノードが示す機能または機器などの名称または識別情報が属性情報として付加されていてもよい。図2の例の場合、ノードN101は、カメラ機能(撮影機能)を示す。ノードN102およびN109は、何れもネットワークスイッチを示す。ノードN103およびN110は、何れもルータを示す。ノードN104は、顔認証機能を示す。ノードN105は、クラウド基盤を示す。ノードN106は、WAN(Wide Area Network、広域通信網)を示す。ノードN107は、モニタ機能(画像表示機能)を示す。ノードN108は、サーバ装置を示す。 For example, a node may be assigned the name or identification information of the function or device that the node represents as attribute information. In the example of FIG. 2, node N101 represents a camera function (photographing function). Nodes N102 and N109 both represent network switches. Nodes N103 and N110 both represent routers. Node N104 represents a face recognition function. Node N105 represents a cloud platform. Node N106 represents a WAN (Wide Area Network). Node N107 represents a monitor function (image display function). Node N108 represents a server device.

また、ノードには、そのノードの抽象度も属性情報として付加されていてもよい。図2の例の場合、ノードN101、N104、N105、および、N107は、抽象的なノードである。一方、ノードN102、N103、N106、N108、N109、および、N110は、具体的なノードである。ここで、抽象的なノードとは、予め定められた変換規則を少なくとも1回参照することにより、現在よりも具体的な構成を表すノードに変換できるノードである。一方、具体的なノード(即ち、配備可能なレベルに具体化されたノード)は、当該変換規則を参照しても、これ以上は具体的な構成を表すノードには変換することができないノードである。 The node may also have its abstraction level added as attribute information. In the example of FIG. 2, nodes N101, N104, N105, and N107 are abstract nodes. Meanwhile, nodes N102, N103, N106, N108, N109, and N110 are concrete nodes. Here, an abstract node is a node that can be converted into a node that represents a more concrete configuration than the current one by referring to a predetermined conversion rule at least once. Meanwhile, a concrete node (i.e., a node that has been concretized to a deployable level) is a node that cannot be converted into a node that represents a more concrete configuration even by referring to the conversion rule.

システム設計学習装置100は、抽象的なノードを具体化するように、システム要件に当該変換規則を適用する。例えば、システム設計学習装置100は、図2に例示されるシステム要件に、カメラ機能を示すノードN101を、カメラ(撮像装置)のノードと、カメラを制御する制御装置のノードとを含む部分グラフ(Subgraph)に変換する変換規則を適用してもよい。 The system design learning device 100 applies the conversion rule to the system requirements so as to make the abstract nodes concrete. For example, the system design learning device 100 may apply a conversion rule to the system requirements illustrated in FIG. 2, which converts node N101 indicating a camera function into a subgraph including a node for a camera (imaging device) and a node for a control device that controls the camera.

また、図2の例では、エッジE101、E105、および、E109のそれぞれの属性情報「join」と、エッジE103およびE107のそれぞれの属性情報「http」が示されている。「join」は、所属関係を示す。例えば、ノードN101が示すカメラ機能は、ノードN102が示すネットワークスイッチが形成するLAN(Local Area Network)に含まれる。ノードN104が示す顔認証機能は、ノードN105が示すクラウド基盤上に設けられる。ノードN107が示すモニタ機能は、ノードN108が示すサーバ装置を用いて制御される。 In the example of FIG. 2, the attribute information "join" of each of the edges E101, E105, and E109, and the attribute information "http" of each of the edges E103 and E107 are shown. "Join" indicates an affiliation relationship. For example, the camera function indicated by node N101 is included in the LAN (Local Area Network) formed by the network switch indicated by node N102. The face recognition function indicated by node N104 is provided on the cloud platform indicated by node N105. The monitor function indicated by node N107 is controlled using the server device indicated by node N108.

「http」は、HTTP(Hyper Text Transfer Protocol)を用いた通信を示す。例えば、エッジE103は、ノードN101が示すカメラ機能からノードN105が示す顔認証機能へ、HTTPでデータを送信することを示している。エッジE107は、ノードN105が示す顔認証機能からノードN107が示すモニタ機能へ、HTTPでデータを送信することを示している。 "http" indicates communication using HTTP (Hyper Text Transfer Protocol). For example, edge E103 indicates that data is transmitted by HTTP from the camera function indicated by node N101 to the face recognition function indicated by node N105. Edge E107 indicates that data is transmitted by HTTP from the face recognition function indicated by node N105 to the monitor function indicated by node N107.

また、エッジにも、そのエッジの抽象度も属性情報として付加されていてもよい。図2の例の場合、エッジE101、E103、E105、E107およびE109は、抽象的なエッジである。一方、エッジE102、E104、E106、E108、E110およびE111は、具体的なエッジである。ここで、抽象的なエッジとは、予め定められた変換規則を少なくとも1回参照することにより、現在よりも具体的な構成を表すエッジに変換できるエッジである。一方、具体的なエッジは、当該変換規則を参照しても、これ以上は具体的な構成を表すエッジには変換することができないエッジ(即ち、配備可能なレベルに具体化されたエッジ)である。 The edge may also have its abstraction level added as attribute information. In the example of FIG. 2, edges E101, E103, E105, E107, and E109 are abstract edges. On the other hand, edges E102, E104, E106, E108, E110, and E111 are concrete edges. Here, an abstract edge is an edge that can be converted into an edge that represents a more concrete configuration than the current one by referring to a predetermined conversion rule at least once. On the other hand, a concrete edge is an edge that cannot be converted into an edge that represents a more concrete configuration even by referring to the conversion rule (i.e., an edge that has been concretized to a deployable level).

システム設計学習装置100が用いる変換規則には、エッジを具体化する変換規則が含まれていてもよい。
図3は、変換規則適用前のシステム要件の例を示す図である。
図3に示されるシステム要件では、ノードN201が示すカメラ機能が、ノードN202が示すワークステーションに接続される。また、ノードN203が示す顔認証機能が、ノードN204が示すワークステーション上で実行される。エッジE201は、ノードN201が示すカメラ機能から、ノードN203が示す顔認証機能へ、HTTPでデータを送信することを示していることとする。
The conversion rules used by the system design learning device 100 may include a conversion rule for instantiating an edge.
FIG. 3 is a diagram showing an example of system requirements before the conversion rules are applied.
3, a camera function indicated by node N201 is connected to a workstation indicated by node N202. A face recognition function indicated by node N203 is executed on a workstation indicated by node N204. An edge E201 indicates that data is transmitted by HTTP from the camera function indicated by node N201 to the face recognition function indicated by node N203.

図4は、変換規則適用後のシステム要件の例を示す。図4は、図3に示されるシステム要件に変換規則を適用した例を示している。
図4では、図3のエッジE201に代えて、エッジE211が設けられている。エッジE211は、ノードN202が示すワークステーションから、ノードN204が示すワークステーションへTCP(Transmission Control Protocol)を用いてデータを送信することを示していることとする。即ち、図4は、図3のシステム要件に対する変換規則の適用により、HTTPを用いた通信が、TCPを用いた通信に具体化する変換が行われたことが表されている。
4 shows an example of system requirements after applying the conversion rules. FIG. 4 shows an example of applying the conversion rules to the system requirements shown in FIG.
In Fig. 4, an edge E211 is provided instead of the edge E201 in Fig. 3. The edge E211 indicates that data is transmitted from the workstation indicated by node N202 to the workstation indicated by node N204 using TCP (Transmission Control Protocol). That is, Fig. 4 shows that the application of the conversion rules to the system requirements in Fig. 3 has resulted in conversion from communication using HTTP to communication using TCP.

ただし、システム設計学習装置100が対象とするシステムは、部品を含むいろいろなシステムとすることができる。システム設計学習装置100が対象とするシステムの表現方法は、部品の種類を特定して変換規則を適用可能ないろいろな表現方法とすることができる。 However, the system targeted by the system design learning device 100 can be various systems that include components. The method of expressing the system targeted by the system design learning device 100 can be various methods to which conversion rules can be applied by identifying the type of component.

予め定められた複数の変換規則のうち、システム設計学習装置100がシステム要件にどの変換規則を適用するかによって、さらには、システム設計学習装置100がシステム要件に複数の変換規則を適用する順番によって、変換後のシステム要件が表す内容(構成)が異なるという事象が生じる。特に、システム要件に適用する変換規則によって、さらには、システム要件に複数の変換規則を適用する順番によって、システム設計学習装置100がシステム設計に成功する場合と、失敗する場合とに分かれる。換言すると、システム設計学習装置100の目的は、システムを配備(Deployment)可能なレベルにシステム要件を具体化することである。しかしながら、システム設計学習装置100は、システムの構成要素の一部が抽象的に記述されたままであるのに、それ以上は適用可能な変換規則が無くなることは、典型的(原則的)には、システム設計学習装置100によるシステム設計の失敗を意味する。 Depending on which of the multiple predetermined conversion rules the system design learning device 100 applies to the system requirements, and further depending on the order in which the system design learning device 100 applies the multiple conversion rules to the system requirements, the content (configuration) of the converted system requirements may differ. In particular, depending on the conversion rule applied to the system requirements and further depending on the order in which the multiple conversion rules are applied to the system requirements, the system design learning device 100 may succeed or fail in system design. In other words, the purpose of the system design learning device 100 is to concretize the system requirements to a level at which the system can be deployed. However, when some of the system components remain abstractly described, and there are no more applicable conversion rules, this typically (in principle) means that the system design learning device 100 has failed in system design.

システム設計学習装置100がシステム設計に成功する可能性を高めるために、システム要件に対して適用する変換規則を学習しておくことが考えられる。ただし、一般的にシステムの規模および構成はさまざまであることに起因して、有効な学習を行えないことが考えられる。
例えば、システム要件の入力に対して、適用する一連の変換規則を出力するシステム設計モデルを学習する場合、システム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なることが考えられる。これにより、システム設計時に与えられるシステム要件が、学習データとして与えられるシステム要件と異なり、適用すべき一連の変換規則を適切に決定できないことが考えられる。
In order to increase the possibility that the system design learning device 100 will succeed in system design, it is possible to learn conversion rules to be applied to system requirements. However, since systems generally vary in scale and configuration, it is considered that effective learning cannot be performed.
For example, when learning a system design model that outputs a set of conversion rules to be applied to input system requirements, it is possible that the system configuration that is the target at the time of system design differs from the system configuration that is the target at the time of learning. As a result, it is possible that the system requirements given at the time of system design differ from the system requirements given as learning data, and it is impossible to appropriately determine the set of conversion rules to be applied.

そこで、システム設計学習装置100は、変換規則の適用の繰り返しによるシステム設計の結果に基づいて、個々の変換規則の適用に対する評価を決定する。そして、システム設計学習装置100は、変換規則の適用に対する評価を、変換規則の適用対象の部品ごとに集計して、部品に対する評価を決定する。システム設計学習装置100は、部品に対する評価を用いて、システム要件の入力に対して、そのシステム要件に示される部品ごとの評価を出力する部品評価モデルを学習する。 The system design learning device 100 then determines an evaluation for the application of each conversion rule based on the results of the system design obtained by repeatedly applying the conversion rules. The system design learning device 100 then aggregates the evaluations for the application of the conversion rules for each component to which the conversion rules are applied, and determines an evaluation for the components. The system design learning device 100 uses the evaluations for the components to learn a component evaluation model that, in response to an input system requirement, outputs an evaluation for each component indicated in the system requirement.

そして、システム設計学習装置100は、学習した部品評価モデルを用いて、入力されるシステム要件に対して変換規則の適用を繰り返すことによるシステム設計を行う。
システム設計学習装置100が、部品評価モデルを用いて、現在のシステム要件に1つの変換規則を適用して得られるシステム要件を評価するようにしてもよい。そして、システム設計学習装置100が、現在のシステム要件に適用可能な変換規則のうち、変換規則適用後のシステム要件の評価が最も高くなる変換規則を選択し適用するようにしてもよい。
Then, the system design learning device 100 uses the learned component evaluation model to perform system design by repeatedly applying the conversion rules to the input system requirements.
The system design learning device 100 may use the component evaluation model to evaluate system requirements obtained by applying one conversion rule to the current system requirements. The system design learning device 100 may then select and apply, from among the conversion rules applicable to the current system requirements, a conversion rule that will result in the highest evaluation of the system requirements after application of the conversion rule.

あるいは、システム設計学習装置100が、現在のシステム要件の部品のうち、評価が最も高い部品を、変換規則適用対象の部品として選択するようにしてもよい。
ここでいう現在のシステム要件は、システム設計学習装置100に入力されるシステム要件、または、当該入力されるシステム要件に変換規則を適用したシステム要件である。システム要件の評価は、例えばシステム要件に含まれる部品の評価値の最大値にて算出される。
あるいは、システム設計学習装置100が、システム要件の評価値として、そのシステム要件に含まれる部品の評価値の合計、または、最小値など、最大値以外の値を算出するようにしてもよい。
Alternatively, the system design learning device 100 may select the component with the highest evaluation among the components of the current system requirements as the component to which the conversion rule is applied.
The current system requirement here is the system requirement input to the system design learning device 100, or the system requirement obtained by applying the conversion rule to the input system requirement. The evaluation of the system requirement is calculated, for example, as the maximum evaluation value of the components included in the system requirement.
Alternatively, the system design learning device 100 may calculate, as the evaluation value of a system requirement, a value other than the maximum value, such as the sum of the evaluation values of the components included in the system requirement or a minimum value.

システム設計学習装置100が対象とする分野で用いられるシステムの構成がシステムごとに異なっていても、共通の部品、あるいは、類似する部品が用いられることが期待される。システム設計学習装置100が、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステムに用いられる部品と同一の部品または類似の部品が、学習時に対象となるシステムにも用いられていることが期待される。この点で、システム設計学習装置100が、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なる場合でも有効な学習を行うことができる。 Even if the configurations of systems used in the field targeted by the system design learning device 100 differ from system to system, it is expected that common or similar parts will be used. By having the system design learning device 100 learn about conversion on a component-by-component basis, it is expected that the same or similar parts as those used in the target system during system design will also be used in the target system during learning. In this regard, by having the system design learning device 100 learn about conversion on a component-by-component basis, effective learning can be performed even if the system configuration targeted during system design differs from the system configuration targeted during learning.

通信部110は、他の装置と通信を行う。例えば通信部110が、設計対象となるシステム要件を他の装置から受信するようにしてもよい。
表示部120は、例えば液晶パネルまたはLED(Light Emitting Diode、発光ダイオード)パネル等の表示画面を備え、各種画像を表示する。例えば、表示部120が、システム設計学習装置100がシステム設計に成功したか否か、および、システム設計に成功した場合のシステム要件を示すなど、システム設計学習装置100によるシステム設計の結果を表示するようにしてもよい。
操作入力部130は、例えばキーボードおよびマウス等の入力デバイスを備え、ユーザ操作を受け付ける。例えば操作入力部130が、システム設計を開始するよう指示するユーザ操作を受け付けるようにしてもよい。
The communication unit 110 communicates with other devices. For example, the communication unit 110 may receive system requirements to be designed from the other devices.
The display unit 120 has a display screen, such as a liquid crystal panel or an LED (Light Emitting Diode) panel, and displays various images. For example, the display unit 120 may display the results of the system design by the system design learning device 100, such as whether the system design by the system design learning device 100 has succeeded in the system design and the system requirements when the system design has been successful.
The operation input unit 130 includes input devices such as a keyboard and a mouse, and receives user operations. For example, the operation input unit 130 may receive a user operation to instruct the start of system design.

記憶部180は、各種データを表示する。例えば記憶部180は、部品評価モデル、入力されるシステム要件および現在のシステム要件などのシステム要件、および、適用規則を記憶する。記憶部180は、システム設計学習装置100が備える記憶デバイスを用いて構成される。
制御部190は、システム設計学習装置100の各部を制御して各種処理を行う。制御部190の機能は、システム設計学習装置100が備えるCPU(Central Processing Unit、中央処理装置)が記憶部180からプログラムを読み出して実行することで実行される。
The storage unit 180 displays various data. For example, the storage unit 180 stores a component evaluation model, system requirements such as input system requirements and current system requirements, and application rules. The storage unit 180 is configured using a storage device included in the system design learning apparatus 100.
The control unit 190 performs various processes by controlling each unit of the system design learning device 100. The functions of the control unit 190 are performed by a CPU (Central Processing Unit) included in the system design learning device 100 reading and executing a program from the storage unit 180.

変換規則適用部191は、システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行う。変換規則適用部191は、変換規則適用手段の例に該当する。
システム設計の成功(システム設計に成功すること)には、システムを配備可能なレベルで具体化されたシステム要件を得られることが含まれる。
The conversion rule application unit 191 performs system design by repeatedly applying conversion rules to components of a system to be designed, for which system requirements are given, until a design result of the system is obtained. The conversion rule application unit 191 corresponds to an example of a conversion rule application means.
Successful system design involves getting the system requirements specified at a level where the system can be deployed.

システム設計の失敗(システム設計に失敗すること)には、システムを配備可能なレベルで具体化されたシステム要件を得られないことが確定することが含まれる。例えば、システム要件が、システムを配備可能なレベルまで具体化されておらず、かつ、そのシステム要件に適用可能な変換規則がない場合、変換規則適用部191は、システム設計に失敗したと判定する。 A system design failure (failure to design a system) includes determining that system requirements cannot be specified to a level at which the system can be deployed. For example, if the system requirements are not specified to a level at which the system can be deployed and there are no conversion rules that can be applied to the system requirements, the conversion rule application unit 191 determines that the system design has failed.

また、変換規則によっては、システム要件に対する変換規則の適用がループに陥ることが考えられる。システム要件に適用可能な変換規則がある場合でも、ループを形成しない変換系列(1回以上の変換規則の適用)が無い場合、変換規則適用部191は、システム設計に失敗したと判定する。 In addition, depending on the conversion rule, it is possible that the application of the conversion rule to the system requirements will result in a loop. Even if there is a conversion rule that can be applied to the system requirements, if there is no conversion sequence that does not form a loop (application of the conversion rule one or more times), the conversion rule application unit 191 determines that the system design has failed.

変換規則適用部191が、システム設計における変換規則の適用を所定回数繰り返してもシステム設計に成功していない場合についても、システム設計に失敗したと判定するようにしてもよい。すなわち、システム設計の失敗に、システム設計における変換規則の適用を所定回数繰り返してもシステム設計に成功しないことが含まれていてもよい。 The conversion rule application unit 191 may also determine that the system design has failed if the system design is not successful even after the application of the conversion rules in the system design is repeated a predetermined number of times. In other words, the failure of the system design may include the case where the system design is not successful even after the application of the conversion rules in the system design is repeated a predetermined number of times.

変換規則適用部191は、システム設計を行う際、システム設計の履歴情報を生成する。変換規則適用部191が生成する履歴情報は、システム要件の評価値、および、システム要件に含まれる部品の評価値を決定し、学習データを生成するために用いられる。
図5は、変換規則適用部191が生成するシステム設計の履歴情報の例を示す図である。図5の例で、変換規則適用部191は、システム設計の履歴情報として構成パスと部品パスとを生成している。
When designing a system, the conversion rule application unit 191 generates history information of the system design. The history information generated by the conversion rule application unit 191 is used to determine evaluation values of system requirements and evaluation values of components included in the system requirements, and to generate learning data.
Fig. 5 is a diagram showing an example of system design history information generated by the conversion rule application unit 191. In the example of Fig. 5, the conversion rule application unit 191 generates a configuration path and a component path as the system design history information.

構成パスは、初期のシステム要件から最終のシステム要件まで、変換規則が適用されるごとのシステム要件を時系列に示す。ここでいう初期のシステム要件は、システム設計の対象のシステム要件として、システム設計学習装置100に与えられるシステム要件である。初期のシステム要件は、システム設計学習装置100の外部から与えられてもよい。あるいは、システム設計学習装置100が、学習データ取得用の初期のシステム要件を生成するようにしてもよい。
ここでいう最終のシステム要件は、システム設計の設計結果が得られたときのシステム要件である。ここでいうシステム設計の設計結果は、システム設計について評価可能な何らかの結果とすることができる。以下では、設計結果として、システム設計の成功または失敗の結果が得られた場合を例に説明するが、これに限定されない。
The configuration path shows the system requirements in chronological order, from the initial system requirements to the final system requirements, each time the conversion rule is applied. The initial system requirements here are system requirements provided to the system design learning device 100 as system requirements to be subjected to system design. The initial system requirements may be provided from outside the system design learning device 100. Alternatively, the system design learning device 100 may generate the initial system requirements for acquiring learning data.
The final system requirements here are system requirements when the design result of the system design is obtained. The design result of the system design here can be any result that can be evaluated for the system design. In the following, an example will be described in which the design result is a success or failure of the system design, but this is not limiting.

図5の例では、初期のシステム要件から最終のシステム要件を得られるまでの変換規則の適用回数をN回としている。Nは正の整数である。
図5の例では、構成パスは、N+1個のシステム要件の時系列データとして構成されている。部品パスは、N個の部品の時系列データとして構成されている。
部品パスに示される、i回目の変換対象の部品は、構成パス中で時系列順にi個目のシステム要件に含まれる。ここでは、iは、1≦i≦Nの整数である。
5, the number of times that the conversion rules are applied from the initial system requirements to the final system requirements is set to N, where N is a positive integer.
5, the configuration path is configured as time-series data of N+1 system requirements, and the part path is configured as time-series data of N parts.
The component to be converted the i-th time, which is indicated in the component path, is included in the i-th system requirement in chronological order in the configuration path, where i is an integer such that 1≦i≦N.

最終のシステム要件は、変換規則をN回適用した後のシステム要件に該当する。最終のシステム要件では、システム設計の成功または失敗の結果が得られるので、設計評価部192が、1回のシステム設計に対する評価値を決定することができる。例えば、設計評価部192が、システム設計の結果が成功の場合は、1回のシステム設計の評価値を1にし、システム設計の結果が失敗の場合は、1回のシステム設計の評価値を0にするようにしてもよい。 The final system requirements correspond to the system requirements after applying the conversion rules N times. The final system requirements result in the success or failure of the system design, so the design evaluation unit 192 can determine an evaluation value for each system design. For example, the design evaluation unit 192 may set the evaluation value of each system design to 1 if the system design results in a success, and set the evaluation value of each system design to 0 if the system design results in a failure.

初期のシステム要件から最終のシステム要件に至るまでの一連の、部品選択と変換規則適用との繰り返しを、1回のシステム設計、または単にシステム設計と称する。
変換規則適用部191が、システム設計の履歴情報として、システム要件の履歴および変換規則の適用対象の部品の履歴に加えて、適用された変換規則の履歴を示す履歴情報を生成するようにしてもよい。
A series of iterations of component selection and application of transformation rules from the initial system requirements to the final system requirements is called a system design round, or simply system design.
The conversion rule application unit 191 may generate, as system design history information, history information indicating the history of applied conversion rules in addition to the history of system requirements and the history of components to which conversion rules are applied.

設計評価部192は、システム設計の設計結果に基づいて、システム設計に対する評価値を決定する。上記のように、変換規則適用部191がシステム設計に成功した場合、設計評価部192が、システム設計の評価値を1に決定するようにしてもよい。変換規則適用部191がシステム設計に失敗した場合、設計評価部192が、システム設計の評価値を0に決定するようにしてもよい。
設計評価部192は、設計評価手段の例に該当する。
The design evaluation unit 192 determines an evaluation value for the system design based on the design result of the system design. As described above, if the conversion rule application unit 191 succeeds in the system design, the design evaluation unit 192 may determine the evaluation value of the system design to be 1. If the conversion rule application unit 191 fails in the system design, the design evaluation unit 192 may determine the evaluation value of the system design to be 0.
The design evaluation unit 192 corresponds to an example of a design evaluation means.

設計評価部192が、システム設計の成功または失敗の結果に加えて、変換規則適用部191がシステム設計に成功した場合、得られたシステムの評価指標値に基づいて、システム設計に対する評価値を決定するようにしてもよい。ここでのシステムの評価指標値としていろいろな種類の評価指標値を用いることができる。例えば、設計評価部192が、システムの処理速度の評価指標値、信頼性の評価指標値、構築コストの評価指標値、運用コストの評価指標値、またはこれらの組み合わせを用いるようにしてもよいが、これらに限定されない。 The design evaluation unit 192 may determine an evaluation value for the system design based on the evaluation index value of the system obtained when the conversion rule application unit 191 succeeds in the system design, in addition to the result of the success or failure of the system design. Various types of evaluation index values can be used as the evaluation index value of the system here. For example, the design evaluation unit 192 may use, but is not limited to, an evaluation index value of the system's processing speed, an evaluation index value of reliability, an evaluation index value of construction costs, an evaluation index value of operation costs, or a combination of these.

設計評価部192が、システムに用いられる部品に基づいてシステムの評価指標値を算出する計算式を予め記憶しておくようにしてもよい。あるいは、設計評価部192が、システム要件の入力に対してシステムの評価指標値を出力するモデルを学習にて予め取得しておくようにしてもよい。 The design evaluation unit 192 may store in advance a formula for calculating the evaluation index value of the system based on the components used in the system. Alternatively, the design evaluation unit 192 may acquire in advance through learning a model that outputs the evaluation index value of the system in response to the input of the system requirements.

規則適用評価部193は、システム設計に対する評価値に基づいて、システム設計における個々の部品の変換に関する評価値を決定する。具体的には、規則適用評価部193は、システム設計の複数の履歴を同一の部品について統合したデータに基づいて、部品の変換に関する評価値を部品ごとに決定する。システム設計の複数の履歴を同一の部品について統合したデータを、統合データと称する。
規則適用評価部193は、規則適用評価手段の例に該当する。
The rule application evaluation unit 193 determines an evaluation value for conversion of each component in the system design based on the evaluation value for the system design. Specifically, the rule application evaluation unit 193 determines an evaluation value for conversion of a component for each component based on data obtained by integrating multiple system design histories for the same component. Data obtained by integrating multiple system design histories for the same component is referred to as integrated data.
The rule application evaluation unit 193 corresponds to an example of a rule application evaluation means.

図6は、統合データの例を示す図である。図6は、統合データが木(Tree)で示される場合の例を示している。図6に例示される木のノードはシステム要件を示し、エッジは変換規則を示す。エッジは、変換規則適用前のノードから変換規則適用後のノードへの向きに張られる。1つのノードから出る複数のエッジは、同一のシステム要件に適用可能な複数の変換規則を示す。 Figure 6 is a diagram showing an example of integrated data. Figure 6 shows an example of integrated data displayed as a tree. The nodes of the tree shown in Figure 6 represent system requirements, and the edges represent transformation rules. The edges are extended from the node before the transformation rule is applied to the node after the transformation rule is applied. Multiple edges coming out of one node represent multiple transformation rules that can be applied to the same system requirement.

ノードN301は、根(Root)である。ノードN302は、葉(Leaf)の1つである。例えばノードN301からノードN302までの経路のように、根から葉までの1つの経路は、1つのシステム設計を示す。この場合、葉が示すシステム要件が配備可能なレベルに具体化されていれば、設計評価部192は、システム設計の結果を成功と評価する。一方、葉が示すシステム要件が配備可能なレベルまでは具体化されていなければ、設計評価部192は、システム設計の結果を失敗と評価する。 Node N301 is the root. Node N302 is one of the leaves. For example, one path from the root to a leaf, such as the path from node N301 to node N302, represents one system design. In this case, if the system requirements represented by the leaf are specified to a deployable level, the design evaluation unit 192 evaluates the result of the system design as a success. On the other hand, if the system requirements represented by the leaf are not specified to a deployable level, the design evaluation unit 192 evaluates the result of the system design as a failure.

システム設計開始時のノードは、根に限定されない。例えば、設計対象のシステム要件としてある程度具体化されたシステム要件がシステム設計学習装置100に入力される場合、根以外のノードがシステム設計開始時のノードになり得る。
また、システム設計終了時のノードは、葉に限定されない。例えば、変換規則の1つとして、具体化された部品を具体化された別の部品に置き換える規則が含まれている場合、葉以外のノードでシステム要件が配備可能なレベルに具体化されてシステム設計が終了となることが考えられる。
The node at the start of system design is not limited to the root. For example, when system requirements that are specified to a certain extent as system requirements to be designed are input to the system design learning device 100, a node other than the root can be the node at the start of system design.
In addition, the node at the end of the system design is not limited to a leaf. For example, if one of the transformation rules includes a rule to replace an instantiated part with another instantiated part, the system design may end with the system requirements instantiated to a deployable level at a node other than a leaf.

統合データは、システム設計に用いられる変換規則に応じて、木に限定されずいろいろな有効グラフで表され得る。例えば、第一のシステム要件に対して、異なる変換系列の何れを適用しても同じ第二のシステム要件を得られる場合、統計データでは、第一ノードから第二ノードへの経路が複数存在することになる。この場合、統合データがラティス(Lattice)で示されていてもよい。 The integrated data can be represented by various directed graphs, not limited to trees, depending on the transformation rules used in the system design. For example, if the same second system requirement can be obtained by applying different transformation sequences to a first system requirement, then in the statistical data, there will be multiple paths from the first node to the second node. In this case, the integrated data may be represented as a lattice.

また、あるシステム要件に変換規則を1回以上適用してそのシステム要件に戻るような変換規則がある場合、統合データがループを含む有効グラフで示されていてもよい。このようなループから抜け出す経路が無く、かつ、ループに含まれる何れのノードでも配備可能なレベルに具体化されたシステム要件を得られない場合、設計評価部192が、そのループに含まれるノードについてシステム設計の結果を失敗と評価するようにしてもよい。 In addition, if there is a conversion rule that applies the conversion rule one or more times to a certain system requirement and returns to the system requirement, the integrated data may be represented as an effective graph that includes a loop. If there is no path out of such a loop and none of the nodes included in the loop can obtain a system requirement that is specified to a deployable level, the design evaluation unit 192 may evaluate the result of the system design for the nodes included in the loop as a failure.

統合データが互いに独立した2つ以上の部分グラフを含んでいてもよい。ここでいう、2つの部分グラフが互いに独立していることは、2つの部分グラフのうち第一の部分グラフから第二の部分グラフに至る経路が無く、かつ、第二の部分グラフから第一の部分グラフに至る経路も無いことである。例えば、統合データが森(Forest)で示されていてもよい。 The integrated data may include two or more subgraphs that are independent of each other. In this case, two subgraphs are independent of each other if there is no path from the first subgraph to the second subgraph, and no path from the second subgraph to the first subgraph. For example, the integrated data may be represented as a forest.

図7は、統合データにおけるノードと部品との対応関係の例を示す図である。図7に示されるシステム要件が、統合データではノードで示される。
図7の例では、変換規則適用前のシステム要件が3つの部品P11、P12およびP13を備えている。部品P11には、3つの変換規則R11、R12およびR13を適用可能である。部品P12には、1つの変換規則R14を適用可能である。部品P13には、2つの変換規則R15およびR16を適用可能である。
7 is a diagram showing an example of the correspondence between nodes and parts in the integrated data. The system requirements shown in FIG. 7 are represented by nodes in the integrated data.
In the example of Fig. 7, the system requirements before application of the conversion rules include three parts P11, P12, and P13. Three conversion rules R11, R12, and R13 can be applied to the part P11. One conversion rule R14 can be applied to the part P12. Two conversion rules R15 and R16 can be applied to the part P13.

上述したように、統合データのエッジは変換規則を示す有向エッジである。この有向エッジの始端(始点側の端部)は、変換前のシステム要件を示すノードに接続され、終端(終点側の端部)は、変換後のシステム要件を示すノードに接続される。
また、1つのノードから出るエッジは、図7に例示されるように、そのノードが示すシステム要件に含まれる部品ごとにグルーピングされる。このグルーピングが統合データに示されていてもよい。例えば、図7のように、統合データのノードに構成要件の部品が示され、エッジの始点が何れかの部品に接続されることで、グルーピングが示されていてもよい。
As described above, the edges of the integrated data are directed edges that indicate the conversion rules. The start end (the end on the starting point side) of the directed edge is connected to a node that indicates the system requirement before conversion, and the end end (the end on the ending point side) is connected to a node that indicates the system requirement after conversion.
In addition, edges coming out of one node are grouped for each component included in the system requirement indicated by the node, as exemplified in Fig. 7. This grouping may be indicated in the integrated data. For example, as shown in Fig. 7, components of the configuration requirements may be indicated in the nodes of the integrated data, and the starting point of an edge may be connected to one of the components to indicate the grouping.

システム要件が備える部品の個数、1つの部品に適用可能な変換規則の個数は、何れも特定の個数に限定されない。システム要件が備える部品の個数は、変換規則の適用前と適用後とで異なっていてもよい。部品に適用可能な変換規則の個数は、部品ごとに異なっていてもよい。 The number of components in a system requirement and the number of conversion rules that can be applied to one component are not limited to a specific number. The number of components in a system requirement may be different before and after the application of the conversion rules. The number of conversion rules that can be applied to a component may be different for each component.

また、図7の例では、システム設計学習装置100が、システム要件の評価値、および、システム要件における部品ごとの評価値を算出することを示している。
システム要件の評価値は、統合データにおけるノードに書き込まれる。
一方、システム要件における部品ごとの評価値は、学習データの生成時に算出され、学習データに組み込まれる。
統合データのノードには、システム要件における部品の評価値の格納領域を設ける必要はない。
Further, the example of FIG. 7 shows that the system design learning device 100 calculates an evaluation value of the system requirement and an evaluation value for each component in the system requirement.
The evaluation values of the system requirements are written to nodes in the integrated data.
On the other hand, the evaluation value for each component in the system requirements is calculated when the learning data is generated and incorporated into the learning data.
There is no need to provide a storage area for the evaluation values of parts in the system requirements in the nodes of the integrated data.

学習データ生成部194は、部品評価モデルの学習のための学習データを生成する。特に、学習データ生成部194は、部品の変換に関する評価値を含む学習データを生成する。具体的には、学習データ生成部194は、システム要件と、そのシステム要件に含まれる部品のうち何れかの部品と、そのシステム要件におけるその部品の評価値と、を含む学習データを生成する。 The learning data generation unit 194 generates learning data for learning the component evaluation model. In particular, the learning data generation unit 194 generates learning data including evaluation values related to component transformation. Specifically, the learning data generation unit 194 generates learning data including a system requirement, any one of the components included in the system requirement, and an evaluation value of that component in the system requirement.

学習部195は、学習データ生成部194が生成する、部品の変換に関する評価値を含む学習データに基づいて、変換規則の適用対象となる部品の選択について学習する。具体的には、学習部195は、部品評価モデルの学習を行う。
学習部195は、学習手段の例に該当する。
The learning unit 195 learns about the selection of parts to which the conversion rules are applied, based on the learning data including evaluation values related to the conversion of parts generated by the learning data generation unit 194. Specifically, the learning unit 195 performs learning of a part evaluation model.
The learning unit 195 corresponds to an example of a learning means.

あるいは、システム設計学習装置100が行うシステム設計に共通して変換規則が予め定められている場合、学習部195が、システム要件に適用する変換規則の選択について学習するようにしてもよい。すなわち、学習部195が、システム要件に含まれる部品の選択からさらに細分化された、その部品に適用可能な変換規則の選択について学習するようにしてもよい。具体的には、学習部195が、システム要件の入力を受けてそのシステム要件に適用可能な変換規則のそれぞれの評価値を出力する変換規則評価モデルの学習を行うようにしてもよい。 Alternatively, when conversion rules are previously determined commonly for the system designs performed by the system design learning device 100, the learning unit 195 may learn about the selection of conversion rules to be applied to the system requirements. That is, the learning unit 195 may learn about the selection of conversion rules applicable to the components that are further subdivided from the selection of components included in the system requirements. Specifically, the learning unit 195 may learn a conversion rule evaluation model that receives an input of a system requirement and outputs an evaluation value for each of the conversion rules that can be applied to the system requirement.

図8は、システム設計学習装置100が学習データを生成して学習を行う処理手順の例を示すフローチャートである。
図8の処理で、システム設計学習装置100は、学習対象のシステム要件を取得する(ステップS11)。システム設計学習装置100が、設計対象のシステム要件として与えられるシステム要件を、学習対象のシステム要件としても用いるようにしてもよい。あるいは、システム設計学習装置100が、設計対象のシステム要件とは別に、学習対象のシステム要件を取得するようにしてもよい。
FIG. 8 is a flowchart showing an example of a processing procedure in which the system design learning device 100 generates learning data and performs learning.
In the process of Fig. 8, the system design learning device 100 acquires the system requirements of the learning target (step S11). The system design learning device 100 may use the system requirements given as the system requirements of the design target as the system requirements of the learning target as well. Alternatively, the system design learning device 100 may acquire the system requirements of the learning target separately from the system requirements of the design target.

次に、制御部190は、学習の終了条件が成立しているか否かを判定する(ステップS12)。学習の終了条件は、学習時間、学習回数(ステップS12からS24のループを繰り返した回数)、学習誤差の大きさ等に基づくものであってもよいが、これらに限定されない。 Next, the control unit 190 determines whether or not a learning termination condition is met (step S12). The learning termination condition may be based on, but is not limited to, the learning time, the number of learning iterations (the number of times the loop from step S12 to S24 has been repeated), the size of the learning error, etc.

終了条件が成立していると制御部190が判定した場合(ステップS12:YES)、システム設計学習装置100は、図8の処理を終了する。
一方、終了条件が成立していないと制御部190が判定した場合(ステップS12:NO)、変換規則適用部191は、学習対象のシステム要件に対するシステム設計を行う(ステップS21)。具体的には、変換規則適用部191は、学習対象のシステム要件に対して、システム設計成功または失敗の結果を得られるまで変換規則の適用を繰り返す。システム設計の際、変換規則適用部191は、構成パスおよび部品パスを生成する。また、システム設計で出現したシステム要件を示す統合データのノードが無い場合、変換規則適用部191は、システム設計で出現したシステム要件を示すノードを統合データに追加する。
When the control unit 190 determines that the end condition is met (step S12: YES), the system design learning device 100 ends the process of FIG.
On the other hand, if the control unit 190 determines that the termination condition is not satisfied (step S12: NO), the conversion rule application unit 191 performs system design for the system requirements of the learning target (step S21). Specifically, the conversion rule application unit 191 repeats application of the conversion rules to the system requirements of the learning target until the system design is successful or unsuccessful. During system design, the conversion rule application unit 191 generates a configuration path and a component path. Furthermore, if there is no node in the integrated data indicating the system requirement that appeared in the system design, the conversion rule application unit 191 adds a node indicating the system requirement that appeared in the system design to the integrated data.

図8では、システム設計学習装置100が、ステップS11でシステム要件を複数取得し、ステップS21で、個々のシステム要件に対する設計を行う場合の例を示している。あるいは、システム設計学習装置100が、ステップS11でシステム要件を取得することに代えて、ステップS21を実行するごとにシステム要件を1つ取得し、取得したシステム要件に対してシステム設計を行うようにしてもよい。 Figure 8 shows an example in which the system design learning device 100 acquires multiple system requirements in step S11, and performs design for each system requirement in step S21. Alternatively, instead of acquiring system requirements in step S11, the system design learning device 100 may acquire one system requirement each time step S21 is executed, and perform system design for the acquired system requirements.

また、システム設計学習装置100が、ステップS21の処理を行うごとに異なるシステム要件に対してシステム設計を行うようにしてもよい。あるいは、システム設計学習装置100が、以前のステップS21の処理でシステム設計を行ったシステム要件と同じシステム要件に対して、以前のステップS21での設計における変換系列とは異なる変換系列によるシステム設計を行うことがあってもよい。 The system design learning device 100 may also design a system for different system requirements each time it performs the processing of step S21. Alternatively, the system design learning device 100 may design a system using a conversion sequence different from the conversion sequence used in the previous design in step S21 for the same system requirements as those used in the previous processing of step S21.

次に、設計評価部192は、変換規則適用部191が行ったシステム設計に対する評価値を決定する(ステップS22)。
例えば、設計評価部192は、変換規則適用部191がシステム設計に成功したか失敗したかに基づいて、システム設計に成功した場合は、システム設計に対する評価値を1に設定し、システム設計に失敗した場合は、システム設計に対する評価値を0に設定する。
あるいは、変換規則適用部191がシステム設計に成功した場合、設計評価部192が、得られたシステムの評価値に基づいて、システム設計に対する評価値を決定するようにしてもよい。
Next, the design evaluation unit 192 determines an evaluation value for the system design performed by the conversion rule application unit 191 (step S22).
For example, based on whether the conversion rule application unit 191 has succeeded or failed in the system design, the design evaluation unit 192 sets the evaluation value for the system design to 1 if the system design is successful, and sets the evaluation value for the system design to 0 if the system design is unsuccessful.
Alternatively, if the conversion rule application unit 191 succeeds in the system design, the design evaluation unit 192 may determine an evaluation value for the system design based on the obtained evaluation value of the system.

次に、規則適用評価部193が、ステップS22で決定されたシステム設計の評価値に基づいて、統合データのノードの評価値を更新する(ステップS23)。例えば、規則適用評価部193は、統合データのノードの評価値を、そのノードの子のノードの評価値のうち最も大きい評価値(評価が最も高い評価値)に決定する。 Next, the rule application evaluation unit 193 updates the evaluation value of the node of the integrated data based on the evaluation value of the system design determined in step S22 (step S23). For example, the rule application evaluation unit 193 determines the evaluation value of the node of the integrated data to be the largest evaluation value (the evaluation value with the highest evaluation) among the evaluation values of the child nodes of that node.

次に、規則適用評価部193が、システム要件に含まれる部品の評価値を決定し、部品パス中の各部品の評価値を決定し、学習データ生成部194が学習データを生成して保存する(ステップS24)。
そして、学習部195は、学習データ生成部194が生成した学習データを用いて、部品評価モデルの学習を行う(ステップS25)。上述したように、部品評価モデルは、システム要件の入力に対して、そのシステム要件に示される部品ごとの評価を出力するモデルである。
ステップS25の後、処理がステップS12へ戻る。
Next, the rule application evaluation unit 193 determines evaluation values of the components included in the system requirements and each component in the component path, and the learning data generation unit 194 generates and stores learning data (step S24).
Then, the learning unit 195 learns the part evaluation model using the learning data generated by the learning data generating unit 194 (step S25). As described above, the part evaluation model is a model that outputs, in response to an input of a system requirement, an evaluation for each part indicated in the system requirement.
After step S25, the process returns to step S12.

図9は、システム設計学習装置100がシステム設計を行う処理手順の例を示すフローチャートである。システム設計学習装置100は、図8のステップS21で図9の処理を行う。図8のステップS21について上述したように、システム設計学習装置100は、システム設計の際に構成パスおよび部品パスを生成し、また、統合データのノードを設定する。
図9の処理では、システム要件を値にとる変数として、「現在の構成」変数および「次の構成」変数を用いる。「現在の構成」変数の値として示されるシステム要件を、「現在の構成」と表記する。「次の構成」変数の値として示されるシステム要件を、「次の構成」と表記する。
Fig. 9 is a flowchart showing an example of a processing procedure for system design performed by the system design learning device 100. The system design learning device 100 performs the processing of Fig. 9 in step S21 of Fig. 8. As described above for step S21 of Fig. 8, the system design learning device 100 generates configuration paths and component paths during system design, and also sets nodes of integrated data.
In the process of Fig. 9, a "current configuration" variable and a "next configuration" variable are used as variables whose values are system requirements. The system requirement indicated as the value of the "current configuration" variable is referred to as the "current configuration." The system requirement indicated as the value of the "next configuration" variable is referred to as the "next configuration."

図9の処理で、変換規則適用部191は、図8のステップS11で受け取ったシステム要件を「現在の構成」変数に格納する(ステップS101)。すなわち、変換規則適用部191は、「現在の構成」変数の初期値として、図8のステップS11で受け取ったシステム要件を設定する。
次に、変換規則適用部191は、「現在の構成」が統合データにおけるノードとして登録されているか否かを判定する(ステップS102)。例えば、変換規則適用部191は、統合データにおける各ノードに示されるシステム要件と、「現在の構成」とを比較する。
In the process of Fig. 9, the conversion rule application unit 191 stores the system requirement received in step S11 of Fig. 8 in a "current configuration" variable (step S101). That is, the conversion rule application unit 191 sets the system requirement received in step S11 of Fig. 8 as the initial value of the "current configuration" variable.
Next, the conversion rule application unit 191 determines whether the "current configuration" is registered as a node in the integrated data (step S102). For example, the conversion rule application unit 191 compares the system requirements indicated in each node in the integrated data with the "current configuration".

「現在の構成」が統合データにおけるノードとして登録されていないと判定した場合(ステップS102:NO)、変換規則適用部191は、「現在の構成」を統合データにおけるノードとして登録する(ステップS103)。システム要件を統合データにおけるノードとして登録するとは、そのシステム要件を示すノードを新たに設けることである。
次に、変換規則適用部191は、システム設計の終了条件が成立しているか否かを判定する(ステップS104)。例えば、変換規則適用部191が、「現在の構成」に適用できる具体化規則が一つもない場合、あるいは、「現在の構成」が配備可能なレベルまで具体化されている場合に、システム設計の終了条件が成立していると判定するようにしてもよい。
If it is determined that the "current configuration" is not registered as a node in the integrated data (step S102: NO), the conversion rule application unit 191 registers the "current configuration" as a node in the integrated data (step S103). Registering a system requirement as a node in the integrated data means creating a new node indicating that system requirement.
Next, the conversion rule application unit 191 determines whether or not a termination condition for the system design is satisfied (step S104). For example, the conversion rule application unit 191 may determine that the termination condition for the system design is satisfied when there is no instantiation rule that can be applied to the "current configuration" or when the "current configuration" has been instantiated to a level where it can be deployed.

終了条件が成立していないと判定した場合(ステップS104:NO)、変換規則適用部191は、「現在の構成」から具体化する部品を一つ選択して変換規則を適用する(ステップS111)。変換規則の適用により、変換規則適用部191は、部品を具体化する。
変換規則適用部191は、ステップS111での変換規則適用後のシステム要件を「次の構成」変数に格納する(ステップS112)。
If it is determined that the termination condition is not satisfied (step S104: NO), the conversion rule application unit 191 selects one component to be instantiated from the "current configuration" and applies the conversion rule to it (step S111). By applying the conversion rule, the conversion rule application unit 191 instantiates the component.
The conversion rule application unit 191 stores the system requirements after applying the conversion rules in step S111 in the "next configuration" variable (step S112).

次に、変換規則適用部191は、「次の構成」が統合データにおけるノードとして登録されているか否かを判定する(ステップS113)。例えば、変換規則適用部191は、統合データにおける各ノードに示されるシステム要件と、「次の構成」とを比較する。
「次の構成」が統合データにおけるノードとして登録されていないと判定した場合(ステップS113:NO)、変換規則適用部191は、「次の構成」を統合データにおけるノードとして登録する(ステップS121)。具体的には、変換規則適用部191は、「次の構成」を示すノードを統合データに設ける。そして、変換規則適用部191は、統合データ上で「現在の構成」を示すノードを親ノードとし、「次の構成」を示すノードを子ノードとするエッジをノード間に張る。このエッジは、ステップS111での変換規則の適用を示す。
Next, the conversion rule application unit 191 determines whether the "next configuration" is registered as a node in the integrated data (step S113). For example, the conversion rule application unit 191 compares the system requirements indicated in each node in the integrated data with the "next configuration".
If it is determined that the "next configuration" is not registered as a node in the integrated data (step S113: NO), the conversion rule application unit 191 registers the "next configuration" as a node in the integrated data (step S121). Specifically, the conversion rule application unit 191 provides a node indicating the "next configuration" in the integrated data. Then, the conversion rule application unit 191 sets an edge between the nodes in which the node indicating the "current configuration" in the integrated data is the parent node and the node indicating the "next configuration" is the child node. This edge indicates the application of the conversion rule in step S111.

そして、変換規則適用部191は、「次の構成」を、「現在の構成」変数に格納する(ステップS122)。
ステップS122の後、処理がステップS104へ遷移する。
一方、ステップS113で、「次の構成」が統合データにおけるノードとして登録されていると変換規則適用部191が判定した場合(ステップS113:YES)、処理がステップS122に遷移する。したがって、この場合、変換規則適用部191は、ステップS121における統合データのノードを設定する処理は行わない。
Then, the conversion rule application unit 191 stores the "next configuration" in the "current configuration" variable (step S122).
After step S122, the process proceeds to step S104.
On the other hand, if the conversion rule application unit 191 determines in step S113 that the "next configuration" is registered as a node in the integrated data (step S113: YES), the process proceeds to step S122. Therefore, in this case, the conversion rule application unit 191 does not perform the process of setting a node in the integrated data in step S121.

一方、ステップS104で、終了条件が成立していると判定した場合(ステップS104:YES)、変換規則適用部191は、今回の図9の処理で出現したシステム要件を時系列順に並べたものを構成パスとする(ステップS131)。さらに、変換規則適用部191は、構成パス中のシステム要件に含まれる部品のうち、ステップS111で変換規則の適用対象として選択した部品を時系列順に並べたものを部品パスとする(ステップS132)。
ステップS132の後、システム設計学習装置100は、図9の処理を終了する。
On the other hand, if it is determined in step S104 that the termination condition is met (step S104: YES), the conversion rule application unit 191 sets the system requirements that appeared in the current process of Fig. 9 in chronological order as a configuration path (step S131). Furthermore, the conversion rule application unit 191 sets the components selected as targets for application of the conversion rules in step S111 in chronological order among the components included in the system requirements in the configuration path as a component path (step S132).
After step S132, the system design learning device 100 ends the process of FIG.

一方、ステップS102で、「現在の構成」が統合データのノードとして既に登録されていると変換規則適用部191が判定した場合、処理がステップS104に遷移する。したがって、この場合、変換規則適用部191は、ステップS103における統合データのノードを設定する処理は行わない。 On the other hand, if the conversion rule application unit 191 determines in step S102 that the "current configuration" has already been registered as a node of the integrated data, the process transitions to step S104. Therefore, in this case, the conversion rule application unit 191 does not perform the process of setting a node of the integrated data in step S103.

図10は、システム設計学習装置100が統合データのノードに示される評価値を更新する処理手順の例を示すフローチャートである。システム設計学習装置100は、図8のステップS23で図10の処理を行う。
図10の処理では、システム要件の評価値を値にとる変数として「更新候補の評価値」変数を用いる。また、図10の処理では、構成パスに含まれるシステム要件の何れか1つを指すポインタを値にとる変数として「更新対象の構成」変数を用いる。「更新候補の評価値」変数の値として示される評価値を、「更新候補の評価値」と表記する。「更新対象の構成」変数の値が指すシステム要件を「更新対象の構成」と表記する。
10 is a flowchart showing an example of a processing procedure for updating an evaluation value indicated at a node of integrated data by the system design learning device 100. The system design learning device 100 performs the processing of FIG.
In the process of Fig. 10, an "evaluation value of update candidate" variable is used as a variable that takes as its value the evaluation value of a system requirement. Also, in the process of Fig. 10, a "configuration to be updated" variable is used as a variable that takes as its value a pointer to one of the system requirements included in the configuration path. The evaluation value indicated as the value of the "evaluation value of update candidate" variable is referred to as the "evaluation value of update candidate." The system requirement pointed to by the value of the "configuration to be updated" variable is referred to as the "configuration to be updated."

図10の処理で、規則適用評価部193は、構成パスの最後のノードが示すシステム要件を、「更新対象の構成」とする(ステップS201)。すなわち、規則適用評価部193は、「更新対象の構成」変数の値が構成パスの最後のノードを指すように、「更新対象の構成」変数の値を設定する。構成パスのノードは、構成パスに含まれる個々のシステム要件である。
また、規則適用評価部193は、「更新候補の評価値」変数の初期値を、図8のステップS22で決定したシステム設計の評価値に設定する(ステップS202)。
10, the rule application evaluation unit 193 sets the system requirement indicated by the last node of the configuration path as the "configuration to be updated" (step S201). That is, the rule application evaluation unit 193 sets the value of the "configuration to be updated" variable so that the value of the "configuration to be updated" variable points to the last node of the configuration path. The nodes of the configuration path are the individual system requirements included in the configuration path.
Furthermore, the rule application evaluation unit 193 sets the initial value of the "evaluation value of update candidate" variable to the evaluation value of the system design determined in step S22 of FIG. 8 (step S202).

次に、規則適用評価部193は、統合データで「更新対象の構成」を表すノードの評価値を決定する(ステップS203)。統合データのノードの評価値は、そのノードが示すシステム要件の評価値である。
具体的には、規則適用評価部193は、統合データで「更新対象の構成」を表すノードの評価値と、「更新候補の評価値」とを比較する。「更新候補の評価値」のほうが大きい場合、規則適用評価部193は、統合データで「更新対象の構成」を表すノードの評価値を、「更新候補の評価値」に更新する。一方、統合データで「更新対象の構成」を表すノードの評価値のほうが大きい場合、規則適用評価部193は、統合データで「更新対象の構成」を表すノードの評価値をそのままの値とする。
なお、ノードの評価値が未設定の場合、規則適用評価部193は、そのノードの評価値として0が設定されているものと見做して処理を行う。
Next, the rule application evaluation unit 193 determines an evaluation value of a node representing the "configuration to be updated" in the integrated data (step S203). The evaluation value of a node in the integrated data is the evaluation value of the system requirement indicated by that node.
Specifically, the rule application evaluation unit 193 compares the evaluation value of the node representing the "configuration to be updated" in the integrated data with the "evaluation value of the update candidate." If the "evaluation value of the update candidate" is greater, the rule application evaluation unit 193 updates the evaluation value of the node representing the "configuration to be updated" in the integrated data to the "evaluation value of the update candidate." On the other hand, if the evaluation value of the node representing the "configuration to be updated" in the integrated data is greater, the rule application evaluation unit 193 leaves the evaluation value of the node representing the "configuration to be updated" in the integrated data unchanged.
If an evaluation value for a node has not been set, the rule application evaluation unit 193 performs processing assuming that the evaluation value for that node is set to 0.

次に、規則適用評価部193は、「更新候補の評価値」の値を更新する(ステップS204)。具体的には、規則適用評価部193は、「更新候補の評価値」に、ステップS203で、統合データで「更新対象の構成」を表すノードの評価値に決定した値を設定する。
次に、規則適用評価部193は、「更新対象の構成」が構成パスの最初のシステム要件か否かを判定する(ステップS205)。
Next, the rule application evaluation unit 193 updates the value of the "evaluation value of the update candidate" (step S204). Specifically, the rule application evaluation unit 193 sets the "evaluation value of the update candidate" to the value determined in step S203 as the evaluation value of the node representing the "configuration to be updated" in the integrated data.
Next, the rule application evaluation unit 193 determines whether the "configuration to be updated" is the first system requirement in the configuration path (step S205).

「更新対象の構成」が構成パスの最初のシステム要件であると規則適用評価部193が判定した場合(ステップS205:YES)、システム設計学習装置100は、図10の処理を終了する。
一方、「更新対象の構成」が構成パスの最初のシステム要件ではないと判定した場合(ステップS205:NO)、規則適用評価部193は、構成パス上で「更新対象の構成」の一つ前のシステム要件を「更新対象の構成」とする(ステップS211)。
ステップS211の後、処理がステップS203に戻る。
When the rule application evaluation unit 193 determines that the "configuration to be updated" is the first system requirement of the configuration path (step S205: YES), the system design learning device 100 ends the processing of FIG.
On the other hand, if it is determined that the "configuration to be updated" is not the first system requirement in the configuration path (step S205: NO), the rule application evaluation unit 193 sets the system requirement immediately preceding the "configuration to be updated" on the configuration path as the "configuration to be updated" (step S211).
After step S211, the process returns to step S203.

図11は、システム設計学習装置100が学習データを生成する処理手順の例を示すフローチャートである。システム設計学習装置100は、図8のステップS24で図11の処理を行う。
図11では、構成パスにおける何れかのシステム要件を指すポインタを値にとる変数として「対象構成」変数を用いる。また、図11の処理では、部品パスにおける何れかの部品を指すポインタを値にとる変数として「対象部品」変数を用いる。「対象構成」変数の値として示されるシステム要件を、「対象構成」と表記する。「対象部品」変数の値として示される部品を、「対象部品」と表記する。
11 is a flowchart showing an example of a processing procedure for generating learning data by the system design learning device 100. The system design learning device 100 performs the processing of FIG.
In Figure 11, a "target configuration" variable is used as a variable whose value is a pointer to one of the system requirements in the configuration path. Also, in the process of Figure 11, a "target component" variable is used as a variable whose value is a pointer to one of the components in the component path. A system requirement indicated as the value of the "target configuration" variable is referred to as a "target configuration." A component indicated as the value of the "target component" variable is referred to as a "target component."

図11の処理で、学習データ生成部194は、構成パスの最初のシステム要件を「対象構成」とする(ステップS301)。すなわち、学習データ生成部194は、「対象構成」変数の値が構成パスの最初のシステム要件を指すように、「対象構成」変数の値を設定する。
次に、学習データ生成部194は、部品パスの最初の部品を「対象部品」とする(ステップS302)。すなわち、学習データ生成部194は、「対象部品」変数の値が部品パスの最初の部品を指すように、「対象部品」変数の値を設定する。
そして、学習データ生成部194は、統合データで「対象構成」を表すノードを始点とする有向エッジのうち、「対象部品」にグルーピングされている有向エッジを全て列挙する(ステップS303)。
11, the learning data generation unit 194 sets the first system requirement of the configuration path as the "target configuration" (step S301). That is, the learning data generation unit 194 sets the value of the "target configuration" variable so that the value of the "target configuration" variable indicates the first system requirement of the configuration path.
Next, the learning data generation unit 194 designates the first part in the part path as the "target part" (step S302). That is, the learning data generation unit 194 sets the value of the "target part" variable so that the value of the "target part" variable indicates the first part in the part path.
Then, the learning data generation unit 194 lists all directed edges that are grouped with the "target part" among the directed edges starting from the node representing the "target configuration" in the integrated data (step S303).

学習データ生成部194は、ステップS303で列挙した各有向エッジの終点ノードに記録されている評価値のうち、最大の値のものを、「対象部品」の評価値とする(ステップS304)。
また、学習データ生成部194は、「対象構成」と、「対象部品」と、ステップS304で決定した「対象部品」の評価値との組を学習データとして生成し、生成した学習データを記憶部180に記憶させる(ステップS305)。
The learning data generation unit 194 determines the maximum evaluation value among the evaluation values recorded in the end nodes of each directed edge listed in step S303 as the evaluation value of the "target part" (step S304).
In addition, the learning data generation unit 194 generates a pair of the “target configuration”, the “target part”, and the evaluation value of the “target part” determined in step S304 as learning data, and stores the generated learning data in the memory unit 180 (step S305).

また、学習データ生成部194は、「対象部品」が部品パスの最後の部品か否かを判定する(ステップS306)。すなわち、学習データ生成部194は、「対象部品」変数の値が部品パスの最後の部品を指すか否かを判定する。
「対象部品」が部品パスの最後の部品ではないと判定した場合(ステップS306:NO)、学習データ生成部194は、部品パス上で「対象部品」の一つ後の部品を「対象部品」とする(ステップS311)。すなわち、学習データ生成部194は、「対象部品」変数の値を、部品パス上で一つ後の部品を指すように更新する。
また、学習データ生成部194は、構成パス上で「対象構成」の一つ後のシステム要件を「対象構成」とする(ステップS312)。すなわち、学習データ生成部194は、「対象構成」変数の値を、構成パス上で一つ後のシステム要件を指すように更新する。
ステップS312の後、処理がステップS303へ遷移する。
The learning data generation unit 194 also determines whether the "target part" is the last part in the part path (step S306). That is, the learning data generation unit 194 determines whether the value of the "target part" variable indicates the last part in the part path.
If it is determined that the "target part" is not the last part in the part path (step S306: NO), the learning data generation unit 194 sets the part immediately following the "target part" on the part path as the "target part" (step S311). In other words, the learning data generation unit 194 updates the value of the "target part" variable so that it points to the immediately following part on the part path.
The learning data generation unit 194 also sets the system requirement immediately following the "target configuration" on the configuration path as the "target configuration" (step S312). That is, the learning data generation unit 194 updates the value of the "target configuration" variable so that it points to the system requirement immediately following on the configuration path.
After step S312, the process proceeds to step S303.

一方、ステップS306で、「対象部品」が部品パスの最後の部品であると判定した場合(ステップS306:NO)、システム設計学習装置100は、図11の処理を終了する。この場合、処理が図8のステップS25に遷移する。
なお、図8のステップS24の開始時点で部品パスが空である場合、システム設計学習装置100は、ステップS24の処理を省略する。この場合、システム設計学習装置100は、図11の処理を行わない。
On the other hand, if it is determined in step S306 that the "target part" is the last part in the part path (step S306: NO), the system design learning device 100 ends the processing in Fig. 11. In this case, the processing transitions to step S25 in Fig. 8.
8, if the component path is empty at the start of step S24, the system design learning device 100 omits the process of step S24. In this case, the system design learning device 100 does not perform the process of FIG.

図8のステップS25で、学習部195は、学習データ生成部194が生成した学習データのそれぞれを用いて、部品評価モデルの学習を行う。
この学習で、学習部195は、学習データに示されるシステム要件が部品評価モデルに入力された場合に、学習データに示される部品について部品評価モデルが出力する評価値が、学習データに示される部品の評価値に近づくように、部品評価モデルのパラメータ値を更新する。
In step S25 of FIG. 8, the learning unit 195 uses each of the learning data generated by the learning data generating unit 194 to learn the part evaluation model.
In this learning, the learning unit 195 updates the parameter values of the part evaluation model so that, when the system requirements indicated in the learning data are input to the part evaluation model, the evaluation value output by the part evaluation model for the part indicated in the learning data approaches the evaluation value of the part indicated in the learning data.

図12は、システム設計学習装置100がシステム要件の評価値を算出する処理手順の例を示すフローチャートである。
図12の処理で、規則適用評価部193は、評価対象のシステム要件を取得する(ステップS401)。
FIG. 12 is a flowchart showing an example of a processing procedure in which the system design learning device 100 calculates the evaluation value of a system requirement.
In the process of FIG. 12, the rule application evaluation unit 193 acquires the system requirements to be evaluated (step S401).

そして、規則適用評価部193は、図8のステップS25で学習済みの部品評価モデルを用いて、評価対象のシステムに含まれる各部品の評価値を算出する(ステップS402)。
具体的には、規則適用評価部193は、評価対象のシステム要件を部品評価モデルに入力し、部品評価モデルが出力する各部品の評価値を取得する。
Then, the rule application evaluation unit 193 calculates an evaluation value of each part included in the system to be evaluated using the part evaluation model trained in step S25 of FIG. 8 (step S402).
Specifically, the rule application evaluation unit 193 inputs the system requirements to be evaluated to a component evaluation model, and obtains the evaluation value of each component output by the component evaluation model.

そして、規則適用評価部193は、各部品の評価値を統合して、システム要件全体の評価値を算出する(ステップS403)。規則適用評価部193が、各部品の評価値を統合する方法は、特定の方法に限定されない。例えば、規則適用評価部193が、各部品の評価値を統合した値として、各部品の評価値の最大値、最小値、または平均値の何れかを算出するようにしてもよいが、これらに限定されない。
ステップS403の後、システム設計学習装置100は、図12の処理を終了する。
Then, the rule application evaluation unit 193 integrates the evaluation values of the components to calculate an evaluation value of the entire system requirement (step S403). The method by which the rule application evaluation unit 193 integrates the evaluation values of the components is not limited to a specific method. For example, the rule application evaluation unit 193 may calculate the maximum, minimum, or average of the evaluation values of the components as the integrated value of the evaluation values of the components, but is not limited to these.
After step S403, the system design learning device 100 ends the process of FIG.

以上のように、変換規則適用部191は、システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行う。設計評価部192は、設計結果に基づいて、システム設計に対する評価値を決定する。規則適用評価部193は、システム設計に対する評価値に基づいて、システム設計における個々の部品の変換に関する評価値を決定する。学習部195は、部品の変換に関する評価値を含む学習データに基づいて、変換規則の適用対象となる部品の選択について学習する。 As described above, the conversion rule application unit 191 performs system design by repeatedly applying conversion rules to components of a system to be designed, for which system requirements are given, until a design result for the system design is obtained. The design evaluation unit 192 determines an evaluation value for the system design based on the design result. The rule application evaluation unit 193 determines an evaluation value for the conversion of each component in the system design based on the evaluation value for the system design. The learning unit 195 learns about the selection of components to which conversion rules are applied, based on learning data including evaluation values for the conversion of components.

ここで、システム要件の入力に対して、適用する一連の変換規則を出力するシステム設計モデルを学習する方法では、一般的にシステムの規模および構成はさまざまであることに起因して、システム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なることが考えられる。これにより、システム設計時に与えられるシステム要件が、学習データとして与えられるシステム要件と異なり、適用すべき一連の変換規則を適切に決定できないことが考えられる。このように、システム要件の入力に対して、適用する一連の変換規則を出力するシステム設計モデルを学習する方法では、有効な学習を行えないことが考えられる。 Here, in a method of learning a system design model that outputs a set of conversion rules to be applied in response to input system requirements, it is considered that the system configuration targeted at the time of system design may differ from the system configuration targeted at the time of learning, due to the fact that systems generally vary in scale and configuration. As a result, it is considered that the system requirements given at the time of system design may differ from the system requirements given as learning data, and it may not be possible to appropriately determine the set of conversion rules to be applied. In this way, it is considered that effective learning cannot be performed with a method of learning a system design model that outputs a set of conversion rules to be applied in response to input system requirements.

一方、システム設計学習装置100が対象とする分野で用いられるシステムの構成がシステムごとに異なっていても、共通の部品、あるいは、類似する部品が用いられることが期待される。システム設計学習装置100が、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステムに用いられる部品と同一の部品または類似の部品が、学習時に対象となるシステムにも用いられていることが期待される。この点で、システム設計学習装置100が、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なる場合でも有効な学習を行うことができる。 On the other hand, even if the configurations of systems used in the field targeted by the system design learning device 100 differ from system to system, it is expected that common or similar parts will be used. By having the system design learning device 100 learn about conversion on a component-by-component basis, it is expected that the same or similar parts as those used in the target system during system design will also be used in the target system during learning. In this regard, by having the system design learning device 100 learn about conversion on a component-by-component basis, effective learning can be performed even if the system configuration targeted during system design differs from the system configuration targeted during learning.

また、規則適用評価部193は、前記システム設計の複数の履歴を同一のシステム要件について統合したデータに基づいて、部品の変換に関する評価値をシステム要件の部品ごとに決定する。
これにより、システム設計学習装置100は、複数のシステム設計の結果を集約した学習データを用いて、変換規則の適用対象の部品の選択について学習することができる。システム設計学習装置100によればこの点で、高精度に学習を行えると期待される。
Furthermore, the rule application evaluation unit 193 determines an evaluation value for component conversion for each component of the system requirement based on data obtained by integrating multiple system design histories for the same system requirement.
This allows the system design learning device 100 to learn how to select components to which conversion rules are applied, using learning data that aggregates the results of multiple system designs. In this regard, the system design learning device 100 is expected to be able to perform learning with high accuracy.

また、上記のシステム設計結果は、システム設計に成功したこと、または、システム設計に失敗したことの何れかを表す。
これにより、学習データ生成部194が、システム設計に成功する変換系列が存在する場合に評価が高くなる学習データを生成し、学習部195が、システム設計に成功する可能性が高くなるように学習を行うことが期待される。
The above system design result indicates either a successful system design or a failed system design.
As a result, it is expected that the learning data generation unit 194 will generate learning data that will be highly evaluated when a transformation sequence that will result in successful system design exists, and the learning unit 195 will perform learning in a way that increases the likelihood of successful system design.

ただし、上述したように、システム設計結果は、システム設計に成功したこと、または、システム設計に失敗したことの何れかを表すものに限定されない。
例えば、システム設計結果が、システム設計に成功したこと、システム設計に失敗したこと、システム設計の成否未定の何れかを表すものであってもよい。この場合、設計評価部192が、システム設計に対する評価値を、システム設計に成功した場合、システム設計の成否未定の場合、システム設計に失敗した場合の順に高い評価を示す評価値に決定するようにしてもよい。
However, as described above, the system design result is not limited to indicating either a successful system design or a failed system design.
For example, the system design result may indicate that the system design has been successful, that the system design has failed, or that the success or failure of the system design is undetermined. In this case, the design evaluation unit 192 may determine the evaluation value for the system design to be the evaluation value indicating the highest evaluation in the order of success of the system design, success of the system design is undetermined, and failure of the system design.

また、上記のシステム設計に成功したことは、システムを配備可能なレベルで具体化されたシステム要件を得られたことを含む。
これにより、学習データ生成部194が、システムを配備可能なレベルで具体化可能な変換系列が存在する場合に評価が高くなる学習データを生成し、学習部195が、システムを配備可能なレベルで具体化できる可能性が高くなるように学習を行うことが期待される。
Successful system design also includes having system requirements specified at a level that allows the system to be deployed.
As a result, it is expected that the learning data generation unit 194 will generate learning data that will be highly evaluated when there is a transformation sequence that can be concretized at a level at which the system can be deployed, and that the learning unit 195 will perform learning in a way that increases the likelihood that the system can be concretized at a level at which the system can be deployed.

また、上記のシステム設計に失敗したことは、システムを配備可能なレベルで具体化されたシステム要件を得られないことが確定することを含む。
これにより、学習データ生成部194が、システムを配備可能なレベルで具体化可能な変換系列が存在しない場合に評価が低くなる学習データを生成し、学習部195が、システムを配備可能なレベルで具体化できる可能性が高くなるように学習を行うことが期待される。
Additionally, failure to design the system as described above may include determining whether or not to obtain system requirements specified at a level that allows the system to be deployed.
As a result, it is expected that the learning data generation unit 194 will generate learning data that will be evaluated low when there is no transformation sequence that can be realized at a level at which the system can be deployed, and the learning unit 195 will perform learning in a way that increases the likelihood that the system can be realized at a level at which the system can be deployed.

また、設計評価部192は、設計結果が、システム設計に成功したことを表す場合、得られたシステムの評価指標値に基づいて、システム設計に対する評価値を決定する。
これにより、システム設計学習装置100は、システム設計の成功または失敗の結果だけでなく、例えば、得られるシステムの性能評価を反映した学習データなど、より詳細な学習データを用いて学習を行うことができる。システム設計学習装置100によればこの点で、高精度に学習を行うことができる。
Furthermore, when the design result indicates that the system design is successful, the design evaluation unit 192 determines an evaluation value for the system design based on the obtained system evaluation index value.
This allows the system design learning device 100 to learn using more detailed learning data, such as learning data reflecting not only the results of successful or failed system designs, but also the performance evaluation of the resulting system, etc. In this respect, the system design learning device 100 can perform learning with high accuracy.

この場合の、システム設計に成功したことは、システムを配備可能なレベルで具体化されたシステム要件を得られたことを含むものであってもよいが、これに限定されない。
システム設計に成功したことが、システムを配備可能なレベルで具体化されたシステム要件を得られことという事象の一部となるように定められていてもよい。例えば、システム設計に成功したことは、システムを配備可能なレベルで具体化されたシステム要件を得られ、かつ、設置スペースに関する所定の条件を満たすことであってもよい。
これにより、学習部195は、システムの具体化の条件に加えて他の条件にも対応できるように学習を行うことができる。
In this case, successful system design may include, but is not limited to, having system requirements specified at a level that allows the system to be deployed.
A successful system design may be defined as being part of an event of obtaining system requirements specified at a level at which the system can be deployed, for example, a successful system design may be obtaining system requirements specified at a level at which the system can be deployed and satisfying a predetermined condition regarding installation space.
This allows the learning unit 195 to perform learning so as to be able to deal with other conditions in addition to the conditions for realizing the system.

<第2実施形態>
図13は、第2実施形態に係るシステム設計学習装置の機能構成を示す概略ブロック図である。図13に示す構成で、システム設計学習装置200は、通信部110と、表示部120と、操作入力部130と、記憶部180と、制御部290とを備える。制御部290は、変換規則適用部191と、設計評価部192と、規則適用評価部193と、学習データ生成部194と、学習部195と、具体化部品検出部296とを備える。
Second Embodiment
Fig. 13 is a schematic block diagram showing the functional configuration of a system design learning apparatus according to the second embodiment. In the configuration shown in Fig. 13, a system design learning apparatus 200 includes a communication unit 110, a display unit 120, an operation input unit 130, a storage unit 180, and a control unit 290. The control unit 290 includes a conversion rule application unit 191, a design evaluation unit 192, a rule application evaluation unit 193, a learning data generation unit 194, a learning unit 195, and an instantiation part detection unit 296.

図13の各部のうち図1の各部に対応して同様の機能を有する部分に同一の符号(110、120、130、180、191から195)を付し、ここでは詳細な説明を省略する。
システム設計学習装置200は、制御部290が、制御部190が備える各部に加えてさらに具体化部品検出部296を備える点で、システム設計学習装置100と異なる。また、システム設計学習装置200では、変換規則適用部191が行う処理が、具体化部品検出部296が生成する具体化部品情報を用いる処理に具体化される。
それ以外の点では、システム設計学習装置200はシステム設計学習装置100と同様であり、制御部290は制御部190と同様である。システム設計学習装置200は、システム設計学習装置100の例に該当する。
13, parts having similar functions to those of the parts in FIG. 1 are given the same reference numerals (110, 120, 130, 180, 191 to 195) and detailed description thereof will be omitted here.
The system design learning device 200 differs from the system design learning device 100 in that the control unit 290 further includes a concrete part detection unit 296 in addition to the units included in the control unit 190. Also, in the system design learning device 200, the process performed by the conversion rule application unit 191 is concretized into a process that uses concrete part information generated by the concrete part detection unit 296.
In other respects, the system design learning device 200 is similar to the system design learning device 100, and the control unit 290 is similar to the control unit 190. The system design learning device 200 corresponds to an example of the system design learning device 100.

具体化部品検出部296は、変換規則適用部191がシステム設計に使用可能な変換規則ごとに、その変換規則が具体化する部品を示す具体化部品情報を生成する。具体化部品検出部296は、具体化部品検出手段の例に該当する。
変換規則適用部191がシステム設計に使用可能な変換規則は、予め用意された全ての変換規則であってもよい。例えば、変換規則適用部191がシステム設計に使用可能な変換規則は、記憶部180が記憶する全ての変換規則であってもよい。
The instantiation part detection unit 296 generates instantiation part information indicating a part instantiated by each conversion rule that can be used in system design by the conversion rule application unit 191. The instantiation part detection unit 296 corresponds to an example of an instantiation part detection means.
The conversion rules that the conversion rule application unit 191 can use for system design may be all conversion rules prepared in advance. For example, the conversion rules that the conversion rule application unit 191 can use for system design may be all conversion rules stored in the storage unit 180.

あるいは、予め用意された変換規則のうち一部の変換規則が、変換規則適用部191がシステム設計に使用可能な変換規則となっていてもよい。例えば、記憶部180が、システムの種類ごとに、その種類のシステムの設計に使用可能な変換規則を記憶するようにしてもよい。
あるいは、変換規則が回路に組み込まれてハードウェア的に実装されるなど、変換規則適用部191がシステム設計に使用可能な変換規則が、記憶部180が変換規則を記憶する方法以外の方法で実装されていてもよい。
Alternatively, some of the conversion rules prepared in advance may be conversion rules that can be used for system design by the conversion rule application unit 191. For example, the storage unit 180 may store, for each type of system, conversion rules that can be used for designing the system of that type.
Alternatively, the conversion rules that the conversion rule application unit 191 can use in system design may be implemented in a manner other than the manner in which the memory unit 180 stores the conversion rules, such as by incorporating the conversion rules into a circuit and implementing them in hardware.

変換規則が具体化する部品は、変換規則適用前のシステム要件に含まれ、かつ、変換規則適用後のシステム要件には含まれない部品として検出することができる。例えば、図3に示されるシステム要件を、図4に示されるシステム要件に変換する変換規則では、図3のエッジE201で示される通信手段が、変換規則適用前のシステム要件に含まれ、かつ、変換規則適用前のシステム要件には含まれない部品の例に該当する。この変換規則では、エッジE201で示される通信手段を、図4のエッジE211で示される通信手段に具体化する。 The components that the conversion rules instantiate can be detected as components that are included in the system requirements before the conversion rules are applied, but are not included in the system requirements after the conversion rules are applied. For example, in the conversion rules that convert the system requirements shown in FIG. 3 into the system requirements shown in FIG. 4, the communication means shown by edge E201 in FIG. 3 is an example of a component that is included in the system requirements before the conversion rules are applied, but is not included in the system requirements before the conversion rules are applied. In this conversion rule, the communication means shown by edge E201 is instantiated into the communication means shown by edge E211 in FIG. 4.

記憶部180は、図3に例示される変換規則適用前のシステム要件と、図3に例示される変換規則適用後のシステム要件とを含む変換規則を記憶する。この変換規則は、変換規則適用前のシステム要件を左辺とし、変換規則適用後のシステム要件を右辺とした式で表すことができる。以下では、変換規則適用前のシステム要件を、変換規則の左辺、あるいは単に左辺とも称する。変換規則適用後のシステム要件を、変換規則の右辺、あるいは単に右辺とも称する。 The storage unit 180 stores conversion rules including the system requirements before application of the conversion rules illustrated in FIG. 3 and the system requirements after application of the conversion rules illustrated in FIG. 3. The conversion rules can be expressed as an equation with the system requirements before application of the conversion rules on the left side and the system requirements after application of the conversion rules on the right side. Hereinafter, the system requirements before application of the conversion rules are also referred to as the left side of the conversion rules, or simply the left side. The system requirements after application of the conversion rules are also referred to as the right side of the conversion rules, or simply the right side.

上記のように、変換規則が、変換規則適用前のシステム要件と、変換規則適用後のシステム要件とを用いて表される場合、変換対象のシステム要件に適用可能な変換規則を検出する方法の1つとして、実際に変換規則の適用を試みる方法が考えられる。ここでいう、システム要件に対して変換規則の適用を試みることは、実際に変換が行われるか否かにかかわらず、システム要件に変換規則を適用する処理を行うことである。 As described above, when a conversion rule is expressed using system requirements before the conversion rule is applied and system requirements after the conversion rule is applied, one method for detecting a conversion rule that can be applied to the system requirements to be converted is to actually attempt to apply the conversion rule. In this case, attempting to apply a conversion rule to a system requirement means performing a process of applying the conversion rule to the system requirement, regardless of whether or not the conversion is actually performed.

変換対象のシステム要件に対して変換規則の適用を試みて、部品の具体化が行われた場合、その変換規則は、変換対象のシステムに適用可能であると判定することができる。一方、部品の具体化が行われなかった場合、その変換規則は、変換対象のシステムに適用できないと判定することができる。 When an attempt is made to apply a conversion rule to the system requirements to be converted, and a component is instantiated, it can be determined that the conversion rule is applicable to the system to be converted. On the other hand, if a component is not instantiated, it can be determined that the conversion rule is not applicable to the system to be converted.

例えば、第1実施形態にかかる変換規則適用部191が、図9のステップS111で、この方法を用いて変換規則の候補を検出し、検出した候補のうちの何れか1つを、変換対象のシステム要件に適用する変換規則として選択するようにしてもよい。
この場合、変換規則適用部191は、システム設計に使用可能な変換規則の各々について、「現在の構成」として示される変換対象のシステム要件への適用を試みる。そして、変換規則適用部191は、変換規則の適用を試みる前のシステム要件と、変換規則の適用を試みた後のシステム要件とを比較して、具体化された部品の有無を判定する。
For example, the conversion rule application unit 191 according to the first embodiment may use this method to detect candidates for conversion rules in step S111 of FIG. 9, and select one of the detected candidates as the conversion rule to be applied to the system requirements to be converted.
In this case, the conversion rule application unit 191 attempts to apply each of the conversion rules available for system design to the system requirements to be converted, which are indicated as “current configuration.” The conversion rule application unit 191 then compares the system requirements before attempting to apply the conversion rules with the system requirements after attempting to apply the conversion rules, to determine whether any parts have been instantiated.

具体化された部品があると判定した場合、変換規則適用部191は、その変換規則は「現在の構成」に適用可能であると判定することができる。一方、具体化された部品がないと判定した場合、変換規則適用部191は、その変換規則は「現在の構成」に適用できないと判定することができる。 If it is determined that there is a concretized part, the conversion rule application unit 191 can determine that the conversion rule is applicable to the "current configuration". On the other hand, if it is determined that there is no concretized part, the conversion rule application unit 191 can determine that the conversion rule is not applicable to the "current configuration".

変換規則適用部191は、「現在の構成」に適用可能であると判定した変換規則を候補として、候補のうちの何れか1つを、変換対象のシステム要件に適用する変換規則として選択する。
ただし、第1実施形態にかかる変換規則適用部191が、変換対象のシステム要件に適用する変換規則を選択する方法は、特定の方法に限定されない。
The conversion rule application unit 191 determines, as candidates, the conversion rules that it has determined to be applicable to the "current configuration," and selects one of the candidates as the conversion rule to be applied to the system requirements to be converted.
However, the method in which the conversion rule application unit 191 according to the first embodiment selects a conversion rule to be applied to a system requirement to be converted is not limited to a specific method.

システム設計に使用可能な変換規則のうち、変換対象のシステム要件に適用可能な変換規則を検出する処理は、システム設計学習装置100に限らず、システム要件に変換規則を適用することによる部品の具体化を繰り返してシステム設計を行う装置に一般的に必要な処理である。 The process of detecting conversion rules that can be applied to the system requirements to be converted from among the conversion rules that can be used in system design is not limited to the system design learning device 100, but is generally required for devices that perform system design by repeatedly instantiating components by applying conversion rules to the system requirements.

変換対象のシステム要件に対して変換規則の適用を試みることで、変換対象のシステム要件に適用可能な変換規則を検出する方法では、システム設計に使用可能な全ての変換規則について、変換対象のシステム要件への適用を試みる必要がある。この点で、この方法は計算コストが高い。特に、この方法では、システム設計に使用可能な変換規則の個数が多いほど、また、システム要件に変換規則を適用する回数が多いほど、計算コストが高くなる。 In a method for detecting conversion rules that can be applied to the system requirements to be converted by attempting to apply the conversion rules to the system requirements to be converted, it is necessary to attempt to apply all conversion rules that can be used in the system design to the system requirements to be converted. In this respect, this method has a high computational cost. In particular, with this method, the greater the number of conversion rules that can be used in the system design and the greater the number of times that conversion rules are applied to the system requirements, the higher the computational cost.

上記のように、変換規則が、変換規則適用前のシステム要件と、変換規則適用後のシステム要件とを用いて表される場合、変換対象のシステム要件に適用可能な変換規則を検出するもう1つの方法として、変換対象のシステム要件が、変換規則の左辺として示されるシステム要件を含むか否かを判定する方法が考えられる。具体的には、変換対象のシステム要件の一部で、変換規則の左辺として示されるシステム要件と一致するものがあるか否かを、例えば変換対象のシステム要件のいろいろな部分についてパターンマッチングを行って判定することが考えられる。 As described above, when a conversion rule is expressed using system requirements before the conversion rule is applied and system requirements after the conversion rule is applied, another method for detecting a conversion rule applicable to the system requirements to be converted is to determine whether the system requirements to be converted include a system requirement shown as the left-hand side of the conversion rule. Specifically, it can be determined whether any part of the system requirements to be converted matches the system requirement shown as the left-hand side of the conversion rule, for example by performing pattern matching on various parts of the system requirements to be converted.

実際に変換規則の適用を試みる方法、および、変換対象のシステム要件が、変換規則の左辺として示されるシステム要件を含むか否かを判定する方法の何れも、部分グラフ同型性判定問題と呼ばれるNP(Non-Deterministic Polynomial)完全問題に帰着し、この点で、計算コストが高い。特に、これらの方法の何れも、システム設計に使用可能な変換規則の個数が多いほど、変換対象のシステム要件の規模が大きいほど、また、システム要件に変換規則を適用する回数が多いほど、計算コストが高くなる。
変換対象のシステム要件に適用可能な変換規則を検出するための計算コストが高いことで、システム設計に要する時間が増大する。
Both the method of actually trying to apply the conversion rule and the method of determining whether the system requirement to be converted includes the system requirement shown as the left-hand side of the conversion rule result in a non-deterministic polynomial (NP) complete problem called the subgraph isomorphism determination problem, and in this respect, the computational cost is high. In particular, with both of these methods, the computational cost increases the more conversion rules available for system design, the larger the scale of the system requirement to be converted, and the more times the conversion rules are applied to the system requirements.
The computational cost of finding conversion rules applicable to the system requirements to be converted increases the time required for system design.

そこで、具体化部品検出部296は、予め、変換規則適用部191がシステム設計に使用可能な変換規則の各々について具体化部品情報を生成し、変換規則とその変換規則が具体化する部品を示す具体化部品情報とを紐付けておく。ここでいう予めは、変換規則適用部191がシステム設計の処理を行う前であってもよい。例えば、ここでいう予めは、変換規則適用部191が図8のステップS21の処理を行うよりも過去であってもよい。 The concrete part detection unit 296 therefore generates concrete part information in advance for each conversion rule that the conversion rule application unit 191 can use in system design, and links the conversion rule to the concrete part information indicating the part that the conversion rule concretizes. "In advance" here may be before the conversion rule application unit 191 processes the system design. For example, "in advance" here may be before the conversion rule application unit 191 processes step S21 in FIG. 8.

具体化部品検出部296が、変換規則と具体化部品情報とを紐付ける方法は、特定の方法に限定されない。
例えば、記憶部180が、左辺、右辺、および、具体化部品情報の各項目を有するデータテーブルの形式で、1行に1つの変換規則を記憶しておくようにしてもよい。そして、具体化部品検出部296が、個々の変換規則について生成する具体化部品情報を、その変換規則が格納されている行の具体化部品情報の欄に書き込むようにしてもよい。
あるいは、記憶部180が、変換規則と具体化部品情報とを別々の情報として記憶しておくようにしてもよい。そして、具体化部品検出部296が、1つの変換規則と、その変換規則が具体化する部品を示す具体化部品情報との間にリンクを張ることで、変換規則と具体化部品情報とを紐付けるようにしてもよい。
The method by which the instantiation part detection unit 296 links the conversion rule with the instantiation part information is not limited to a specific method.
For example, the storage unit 180 may store one conversion rule per row in the form of a data table having items for the left side, right side, and instantiation part information. The instantiation part detection unit 296 may then write the instantiation part information generated for each conversion rule in the instantiation part information column of the row in which the conversion rule is stored.
Alternatively, the storage unit 180 may store the conversion rule and the concrete part information as separate information. Then, the concrete part detection unit 296 may link one conversion rule with the concrete part information indicating a part that the conversion rule embodies, thereby linking the conversion rule with the concrete part information.

具体化部品検出部296は、各変換規則について左辺と右辺を比較し、左辺に存在しており、かつ、右辺には存在していない部品を検出する。具体化部品検出部296は、検出した部品が、その変換規則が具体化する部品であると判断し、その変換規則がその部品を具体化することを示す具体化部品情報を生成する。具体化部品検出部296が、上記のように、具体化部品情報を記憶部180に記憶させるようにしてもよい。 The instantiation part detection unit 296 compares the left side and the right side of each conversion rule, and detects parts that are present on the left side and not present on the right side. The instantiation part detection unit 296 determines that the detected parts are parts that are instantiated by that conversion rule, and generates instantiation part information indicating that that conversion rule instantiates that part. The instantiation part detection unit 296 may store the instantiation part information in the storage unit 180, as described above.

具体化部品検出部296が、具体化部品情報を予め生成しておくことで、変換規則適用部191は、具体化部品情報を参照して、システム設計に使用可能な変換規則のうち、変換対象のシステム要件に適用する変換規則の候補を絞り込むことができる。
具体的には、変換規則適用部191は、具体化部品情報に示される部品が、変換対象のシステム要件に含まれるか否かを判定する。具体化部品情報に示される部品が、変換対象のシステム要件に含まれると判定した場合、変換規則適用部191は、その具体化部品情報に紐付けられる変換規則を、変換対象のシステム要件に適用する変換規則の候補に含める。一方、具体化部品情報に示される部品が、変換対象のシステム要件に含まれないと判定した場合、変換規則適用部191は、その具体化部品情報に紐付けられる変換規則を、変換対象のシステム要件に適用する変換規則の候補に含めない。
By having the concrete part detection unit 296 generate concrete part information in advance, the conversion rule application unit 191 can refer to the concrete part information and narrow down the candidate conversion rules to be applied to the system requirements to be converted from among the conversion rules that can be used in system design.
Specifically, the conversion rule application unit 191 determines whether or not the part indicated in the concrete part information is included in the system requirements to be converted. If it is determined that the part indicated in the concrete part information is included in the system requirements to be converted, the conversion rule application unit 191 includes the conversion rule linked to the concrete part information in the candidates for the conversion rule to be applied to the system requirements to be converted. On the other hand, if it is determined that the part indicated in the concrete part information is not included in the system requirements to be converted, the conversion rule application unit 191 does not include the conversion rule linked to the concrete part information in the candidates for the conversion rule to be applied to the system requirements to be converted.

この場合の、変換対象のシステム要件に適用される変換規則の候補は、変換対象のシステム要件に適用可能であるための必要条件を満たす。変換規則の左辺が、具体化される部品に加えて他の部品も含んでいる場合、具体化される部品と他の部品との関係を示していることが考えられる。変換対象のシステム要件が、具体化される部品を含むことに加えて、具体化される部品と他の部品との関係も満たす場合、変換対象のシステム要件に適用される変換規則の候補は、変換対象のシステムに適用可能である。 In this case, the candidate conversion rules to be applied to the system requirements to be converted satisfy the necessary conditions for being applicable to the system requirements to be converted. If the left-hand side of the conversion rule includes other components in addition to the component to be instantiated, it is possible that it indicates the relationship between the component to be instantiated and the other components. If the system requirements to be converted, in addition to including the component to be instantiated, also satisfy the relationship between the component to be instantiated and the other components, the candidate conversion rules to be applied to the system requirements to be converted are applicable to the system to be converted.

一般的に、変換対象のシステム要件に適用される変換規則の候補には、具体化される部品と他の部品との関係を満たさず適用不可能な変換規則が含まれることが多いと考えられる。
一方、システム要件が適切に与えられ、部品評価モデルの学習が適切に行われていれば、変換対象のシステム要件に適用される変換規則の候補に、少なくとも1つは適用可能な変換規則が含まれると期待される。この場合、変換規則適用部191は、変換対象のシステム要件に適用する変換規則の候補の中から、変換対象のシステム要件に適用可能な変換規則を検出する。システム要件に適用可能か否かの判定対象となる変換規則の候補が絞り込まれている点で、計算コストが低いことが期待される。
In general, candidates for conversion rules to be applied to the system requirements to be converted are likely to include conversion rules that are inapplicable because they do not satisfy the relationships between the parts to be instantiated and other parts.
On the other hand, if the system requirements are appropriately given and the component evaluation model is appropriately trained, it is expected that the candidates for conversion rules to be applied to the system requirements to be converted include at least one applicable conversion rule. In this case, the conversion rule application unit 191 detects a conversion rule applicable to the system requirements to be converted from among the candidates for conversion rules to be applied to the system requirements to be converted. Since the candidates for conversion rules to be judged as to whether they are applicable to the system requirements are narrowed down, it is expected that the calculation cost will be low.

あるいは、変換規則適用部191が、変換対象のシステム要件に適用する変換規則の候補から直接、変換対象のシステム要件に適用する変換規則を選択するようにしてもよい。具体的には、変換規則適用部191が、変換対象のシステム要件に適用する変換規則の候補の何れかの、変換対象のシステム要件への適用を試みることで、その候補が変換対象のシステム要件に適用可能か否かを判定するようにしてもよい。この場合、変換対象のシステム要件に適用する変換規則の候補が絞り込まれている点で、変換対象のシステム要件に適用する変換規則を選択する処理の計算コストが低いことが期待される。 Alternatively, the conversion rule application unit 191 may directly select a conversion rule to be applied to the system requirements to be converted from among the candidate conversion rules to be applied to the system requirements to be converted. Specifically, the conversion rule application unit 191 may attempt to apply one of the candidate conversion rules to the system requirements to be converted to the system requirements to be converted, and determine whether or not the candidate is applicable to the system requirements to be converted. In this case, since the candidate conversion rules to be applied to the system requirements to be converted are narrowed down, it is expected that the computational cost of the process of selecting a conversion rule to be applied to the system requirements to be converted will be low.

また、具体化部品検出部296が生成する具体化部品情報は、いろいろなシステム要件について、そのシステム要件に適用される変換規則の候補の検出に用いることができる。したがって、具体化部品検出部296は、変換規則適用部191がシステム設計の処理を行う前に具体化部品情報を生成しておけばよく、変換規則適用部191がシステム要件に変換規則を適用するごとに具体化部品情報を生成する必要はない。この点で、変換規則適用部191がシステム要件に変換規則を適用する回数が多くなっても、計算コストの増加が小さいことが期待される。 The concrete part information generated by the concrete part detection unit 296 can be used to detect candidates for conversion rules to be applied to various system requirements. Therefore, the concrete part detection unit 296 only needs to generate the concrete part information before the conversion rule application unit 191 performs the system design process, and does not need to generate the concrete part information each time the conversion rule application unit 191 applies a conversion rule to a system requirement. In this respect, it is expected that the increase in calculation cost will be small even if the conversion rule application unit 191 applies the conversion rules to system requirements more frequently.

図14は、システム設計学習装置200が学習データを生成して学習を行う処理手順の例を示すフローチャートである。システム設計学習装置200が、図8の処理に代えて図14の処理を行うようにしてもよい。
図14の処理で、システム設計学習装置200は、学習対象のシステム要件を取得する(ステップS511)。システム設計学習装置200が、設計対象のシステム要件として与えられるシステム要件を、学習対象のシステム要件としても用いるようにしてもよい。あるいは、システム設計学習装置200が、設計対象のシステム要件とは別に、学習対象のシステム要件を取得するようにしてもよい。
14 is a flowchart showing an example of a processing procedure for generating learning data and performing learning by the system design learning device 200. The system design learning device 200 may perform the processing in FIG. 14 instead of the processing in FIG.
In the process of Fig. 14, the system design learning device 200 acquires the system requirements of the learning target (step S511). The system design learning device 200 may use the system requirements given as the system requirements of the design target as the system requirements of the learning target as well. Alternatively, the system design learning device 200 may acquire the system requirements of the learning target separately from the system requirements of the design target.

次に、具体化部品検出部296は、変換規則適用部191がシステム設計に使用可能な変換規則の各々について、その変換規則によって具体化される部品を検出して具体化部品情報を生成する(ステップS512)。上記のように、具体化部品検出部296が、具体化部品情報を記憶部180に記憶させるようにしてもよい。 Next, the concrete part detection unit 296 detects parts that are concreted by the conversion rule for each conversion rule that the conversion rule application unit 191 can use in system design, and generates concrete part information (step S512). As described above, the concrete part detection unit 296 may store the concrete part information in the storage unit 180.

次に、制御部290は、学習の終了条件が成立しているか否かを判定する(ステップS513)。学習の終了条件は、学習時間、学習回数(ステップS513からS525のループを繰り返した回数)、学習誤差の大きさ等に基づくものであってもよいが、これらに限定されない。 Next, the control unit 290 determines whether or not a learning termination condition is met (step S513). The learning termination condition may be based on, but is not limited to, the learning time, the number of learning iterations (the number of times the loop from step S513 to step S525 has been repeated), the size of the learning error, etc.

終了条件が成立していると制御部290が判定した場合(ステップS513:YES)、システム設計学習装置200は、図14の処理を終了する。
一方、終了条件が成立していないと制御部290が判定した場合(ステップS513:NO)、処理がステップS521へ進む。
ステップS521からS525における処理は、ステップS521で変換規則適用部191が具体化部品情報を用いてシステム設計を行う点を除いて、図8のステップS21からS25における処理と同様である。
If the control unit 290 determines that the end condition is met (step S513: YES), the system design learning device 200 ends the processing of FIG.
On the other hand, if the control unit 290 determines that the end condition is not met (step S513: NO), the process proceeds to step S521.
The processing in steps S521 to S525 is the same as the processing in steps S21 to S25 in FIG. 8, except that in step S521, the conversion rule application section 191 performs system design using the instantiation component information.

図14のステップS521における処理は、図8のステップS21における処理の例に該当する。例えば、図14のステップS521でシステム設計学習装置200が図9の処理を行う場合、変換規則適用部191は、ステップS111の処理で具体化部品情報を参照する。具体的には、ステップS111の処理で変換規則適用部191が、選択した部品に適用する変換規則を、その部品を示す具体化部品情報に紐付けられる変換規則の中から1つ選択するようにしてもよい。
ステップS525の後、処理がステップS513へ戻る。
The process in step S521 in Fig. 14 corresponds to an example of the process in step S21 in Fig. 8. For example, when the system design learning device 200 performs the process in Fig. 9 in step S521 in Fig. 14, the conversion rule application unit 191 refers to the instantiation part information in the process of step S111. Specifically, in the process of step S111, the conversion rule application unit 191 may select one conversion rule to be applied to the selected part from among the conversion rules linked to the instantiation part information indicating the part.
After step S525, the process returns to step S513.

上記のステップS111の処理で、変換規則適用部191が、「現在の構成」から具体化する部品を1つ選択する際、部品評価モデルを用いるようにしてもよい。例えば、変換規則適用部191が、「現在の構成」として示されるシステム要件を部品評価モデルに入力し、「現在の構成」の部品ごとの評価を取得するようにしてもよい。そして、変換規則適用部191が、評価が最も高い部品を、具体化する部品として選択するなど、得られた部品ごとの評価に基づいて、具体化する部品を選択するようにしてもよい。 In the processing of step S111 described above, the conversion rule application unit 191 may use a component evaluation model when selecting one component to be instantiated from the "current configuration". For example, the conversion rule application unit 191 may input the system requirements shown as the "current configuration" into a component evaluation model and obtain an evaluation for each component of the "current configuration". The conversion rule application unit 191 may then select the component to be instantiated based on the obtained evaluation for each component, such as selecting the part with the highest evaluation as the part to be instantiated.

学習部195による学習について上述したように、部品評価モデルは、システム設計に成功する変換系列が存在する場合に高い評価を出力する。変換規則適用部191が、部品評価モデルによる評価が高い部品を選択することで、システム設計に成功する可能性が高くなると期待される。 As described above regarding the learning by the learning unit 195, the component evaluation model outputs a high evaluation when there is a conversion sequence that is successful in system design. It is expected that the conversion rule application unit 191 will select components that are highly evaluated by the component evaluation model, thereby increasing the possibility of successful system design.

上記のステップS111の処理で、変換規則適用部191が、変換規則候補のうち、選択した部品に適用する変換規則を選択する際、部品評価モデルを用いるようにしてもよい。
例えば、変換規則適用部191が、「現在の構成」として示されるシステム要件に変換規則候補の各々を適用して、変換規則候補ごとに変換規則適用後のシステム要件を取得するようにしてもよい。そして、変換規則適用部191が、変換規則適用後のシステム要件それぞれを部品評価モデルに入力して、変換規則候補ごとに変換規則適用後のシステム要件に対する評価を取得するようにしてもよい。
In the process of step S111 described above, when the conversion rule application unit 191 selects a conversion rule to be applied to the selected part from among the conversion rule candidates, a part evaluation model may be used.
For example, the conversion rule application unit 191 may apply each of the conversion rule candidates to the system requirements shown as the "current configuration" to obtain system requirements after the conversion rules are applied for each conversion rule candidate. The conversion rule application unit 191 may then input each of the system requirements after the conversion rules are applied to a component evaluation model to obtain an evaluation of the system requirements after the conversion rules are applied for each conversion rule candidate.

上記のように、部品評価モデルは、システム要件の入力に対して、そのシステム要件に示される部品ごとの評価を出力する。そこで、変換規則適用部191が、部品ごとの評価に基づいて、システム要件全体に対する評価を算出する。例えば、システム設計学習装置100について上述したように、変換規則適用部191が、部品ごとの評価値の最大値をシステム要件全体に対する評価値として算出するようにしてもよい。 As described above, the component evaluation model outputs an evaluation for each component indicated in the system requirements in response to the input of the system requirements. The conversion rule application unit 191 then calculates an evaluation for the entire system requirements based on the evaluation for each component. For example, as described above for the system design learning device 100, the conversion rule application unit 191 may calculate the maximum value of the evaluation values for each component as the evaluation value for the entire system requirements.

変換規則適用部191が、変換規則適用後のシステム要件に対する評価が最も高い変換規則候補を選択するなど、変換規則適用後のシステム要件に対する評価に基づいて、変換規則候補のうちの何れか1つを、選択した部品に適用する変換規則として選択するようにしてもよい。 The conversion rule application unit 191 may select one of the conversion rule candidates as the conversion rule to be applied to the selected component based on the evaluation of the system requirements after the conversion rules are applied, such as by selecting the conversion rule candidate that has the highest evaluation for the system requirements after the conversion rules are applied.

変換規則適用部191が、部品評価モデルを用いて変換規則適用後のシステム要件に対する評価を計算し、変換規則適用後のシステム要件の評価が高い変換規則を選択することで、システム設計に成功する可能性が高くなると期待される。 The conversion rule application unit 191 uses the component evaluation model to calculate the evaluation of the system requirements after applying the conversion rules, and selects the conversion rules that give a high evaluation of the system requirements after applying the conversion rules, which is expected to increase the chances of successful system design.

図15は、具体化部品検出部296が、具体化する部品の計算を行う処理手順の例を示すフローチャートである。具体化部品検出部296は、図14のステップS512で図15の処理を行う。
図15の処理で、具体化部品検出部296は、ステップS541で未選択の変換規則があるか確認する(ステップS531)。ステップS541の処理を1回も行っていない場合、具体化部品検出部296が、システム設計に使用可能な全ての変換規則を未選択であると判定するようにしてもよい。
未選択の変換規則がないと判定した場合(ステップS531:NO)、具体化部品検出部296は、図15の処理を終了する。
15 is a flowchart showing an example of a processing procedure for calculating parts to be instantiated by the instantiation part detection unit 296. The instantiation part detection unit 296 performs the processing of FIG.
15, the embodiment part detection unit 296 checks whether there is any conversion rule that has not been selected in step S541 (step S531). If the process of step S541 has not been performed even once, the embodiment part detection unit 296 may determine that all conversion rules that can be used in system design have not been selected.
If it is determined that there is no unselected conversion rule (step S531: NO), the embodiment part detection unit 296 ends the process of FIG.

一方、ステップS531で未選択の変換規則があると判定した場合(ステップS531:YES)、具体化部品検出部296は、未選択の変換規則のうち1つの変換規則を選択する(ステップS541)。
以下の説明では、具体化部品検出部296が、ステップS541を繰り返し実行するうち最新のステップS541の実行で選択した変換規則を対象変換規則とも称する。
On the other hand, if it is determined in step S531 that there are unselected conversion rules (step S531: YES), the instantiation part detection unit 296 selects one conversion rule from the unselected conversion rules (step S541).
In the following description, the conversion rule selected by the embodiment part detection unit 296 in the latest execution of step S541 among the repeated executions of step S541 will also be referred to as the target conversion rule.

次に、具体化部品検出部296は、対象変換規則の左辺と右辺とを比較する(ステップS542)。
次に、具体化部品検出部296は、対象変換規則の左辺にあり右辺にはない部品を検出し、検出した部品を、対象変換規則が具体化する部品として示す具体化部品情報を生成する(ステップS543)。上記のように具体化部品検出部296は、変換規則と、その変換規則が具体化する部品を示す具体化部品情報とを紐付ける。具体化部品検出部296が、具体化部品情報を記憶部180に記憶させるようにしてもよい。
ステップS543の後、処理がステップS531へ遷移する。
Next, the instantiation part detection unit 296 compares the left and right sides of the target conversion rule (step S542).
Next, the concrete part detection unit 296 detects parts that are on the left side of the target conversion rule but not on the right side, and generates concrete part information that indicates the detected parts as parts that are concreted by the target conversion rule (step S543). As described above, the concrete part detection unit 296 links the conversion rule with the concrete part information that indicates the parts that are concreted by the conversion rule. The concrete part detection unit 296 may store the concrete part information in the storage unit 180.
After step S543, the process transitions to step S531.

具体化部品情報は、変換規則毎に、その変換規則が具体化する部品を示す。システム設計学習装置200は、学習時および設計時の何れにおいても、具体化部品情報を参照することで、システム要件に変換規則を適用するごとに、各変換規則が具体化する部品を逐一検出する必要が無くなる。システム設計学習装置200によれば、この点で学習の過程でかかる計算コスト、および、設計の過程でかかる計算コストの何れも改善することができる。 The instantiation part information indicates, for each conversion rule, the parts that the conversion rule instantiates. By referencing the instantiation part information both during learning and during design, the system design learning device 200 eliminates the need to detect the parts that each conversion rule instantiates each time it applies a conversion rule to a system requirement. In this respect, the system design learning device 200 can improve both the computational costs incurred during the learning process and the computational costs incurred during the design process.

システム要件に変換規則を適用した次状態を選択する方法の1つとして、システム設計に使用可能な全ての変換規則について、変換対象のシステム要件への適用を試みる方法が考えられる。この方法では、例えば、変換規則ごとに、変換規則の適用を試みた後のシステム要件に対する評価値を算出し、算出した評価値に基づいて、次状態としてのシステム要件を選択する。
しかしながら、この方法では、全ての変換規則の適用を試みる必要がある点で、計算コストが高い。
One method for selecting the next state after applying conversion rules to a system requirement is to try to apply all conversion rules available for system design to the system requirement to be converted. In this method, for example, an evaluation value for the system requirement after the application of the conversion rule is attempted is calculated for each conversion rule, and the system requirement as the next state is selected based on the calculated evaluation value.
However, this method is computationally expensive since it is necessary to try to apply all the conversion rules.

一方、システム設計学習装置200では、変換規則適用部191は、学習時および設計時の何れも、システム要件に変換規則を適用した次状態を選択する際、部品評価モデルを用いて得られる部品ごとの評価に基づいて、具体化する部品を選択することができる。そして、変換規則適用部191は、現在状態としてのシステム要件に対し、選択した部品を具体化する変換規則のみの適用を試み、その結果導出される各次状態候補のいずれかから、次状態としてのシステム要件を選択することができる。 On the other hand, in the system design learning device 200, the conversion rule application unit 191 can select the components to be instantiated based on the evaluation of each component obtained using the component evaluation model when selecting the next state by applying the conversion rules to the system requirements, both during learning and design. The conversion rule application unit 191 then attempts to apply only the conversion rules that instantiate the selected components to the system requirements as the current state, and can select the system requirement as the next state from among the next state candidates derived as a result.

システム設計学習装置200によれば、適用を試みる変換規則は、選択された部品を具体化するもののみであり、この点で、上記の方法と比較して計算コストが低い。システム設計学習装置200によれば、この点で、学習に要する時間、および、設計に要する時間の何れも短いことが期待される。 The system design learning device 200 attempts to apply only the transformation rules that instantiate the selected components, and in this respect, the calculation cost is lower than that of the above-mentioned methods. In this respect, the system design learning device 200 is expected to require shorter learning times and shorter design times.

第2実施形態において、変換規則適用部191が、次状態候補の中から次状態を選択する方法として、いろいろな方法が考えられる。例えば、変換規則適用部191が、図12に示される評価方法を用いて得られるシステム要件の評価値に基づいて、次状態を選択するようにしてもよい。その際、変換規則適用部191が、評価値が最大のシステム要件を次状態として選択するようにしてもよいし、それ以外のシステム要件を選択するようにしてもよい。あるいは、変換規則適用部191が、図12に示される評価方法を用いず、次状態を無作為に選択するようにしてもよい。 In the second embodiment, various methods are possible for the conversion rule application unit 191 to select a next state from among the next state candidates. For example, the conversion rule application unit 191 may select the next state based on the evaluation value of the system requirement obtained using the evaluation method shown in FIG. 12. In this case, the conversion rule application unit 191 may select the system requirement with the largest evaluation value as the next state, or may select a system requirement other than the above. Alternatively, the conversion rule application unit 191 may select the next state randomly without using the evaluation method shown in FIG. 12.

以上のように、具体化部品検出部296は、変換規則適用部191がシステム設計に使用可能な変換規則ごとに、その変換規則が具体化する部品を示す具体化部品情報を生成する。変換規則適用部191は、システム設計に用いる変換規則を、具体化部品情報に基づいて決定する。
変換規則適用部191は、システム設計に用いる変換規則を、具体化部品情報に基づいて決定することで、変換規則の決定ごとにシステム要件に適用可能な変換規則を求める必要がなく、システム設計学習装置200によれば、この点で、学習に要する時間、および、設計に要する時間の何れも短いことが期待される。
As described above, the instantiation part detection unit 296 generates instantiation part information indicating the parts instantiated by each conversion rule that the conversion rule application unit 191 can use in system design. The conversion rule application unit 191 determines the conversion rules to be used in system design based on the instantiation part information.
The conversion rule application unit 191 determines the conversion rules to be used in system design based on the concrete component information, so there is no need to find conversion rules applicable to the system requirements each time a conversion rule is determined. In this respect, according to the system design learning device 200, it is expected that both the time required for learning and the time required for design will be short.

また、学習部195は、システム要件の入力に対して、そのシステム要件に示される部品ごとの評価を出力する部品評価モデルの学習を行う。変換規則適用部191は、システム要件に示される各部品に対する部品評価モデルの評価に基づいて、変換規則の適用対象の部品を選択し、選択した部品に適用可能であると具体化部品情報で示される変換規則である変換規則候補のうち1つの変換規則を選択し、選択した部品に、選択した変換規則を適用する。
変換規則適用部191が、部品評価モデルによる評価に基づいて部品を選択することで、システム設計に成功する可能性が高くなると期待される。
Furthermore, the learning unit 195 learns a component evaluation model that outputs an evaluation for each component indicated in a system requirement when the system requirement is input. The conversion rule application unit 191 selects a component to which a conversion rule is to be applied based on the evaluation of the component evaluation model for each component indicated in the system requirement, selects one conversion rule from among the conversion rule candidates that are conversion rules indicated in the instantiated component information as applicable to the selected component, and applies the selected conversion rule to the selected component.
It is expected that the conversion rule application unit 191 will have a higher chance of succeeding in system design by selecting components based on evaluations using the component evaluation model.

また、変換規則適用部191は、変換規則候補ごとの、その変換規則候補をシステム要件に適用して得られる変換規則適用後のシステム要件に対する部品評価モデルの評価に基づいて、変換規則候補のうち1つの変換規則を、選択した部品に適用する変換規則として選択する。
変換規則適用部191が、部品評価モデルを用いて得られる変換規則適用後のシステム要件に対する評価に基づいて変換規則を選択することで、システム設計に成功する可能性が高くなると期待される。
In addition, the conversion rule application unit 191 selects one of the conversion rule candidates as the conversion rule to be applied to the selected component based on an evaluation of the component evaluation model for each conversion rule candidate against the system requirements after application of the conversion rule obtained by applying the conversion rule candidate to the system requirements.
It is expected that the conversion rule application unit 191 will be more likely to succeed in system design by selecting a conversion rule based on an evaluation of the system requirements after application of the conversion rule, obtained using a component evaluation model.

<第3実施形態>
図16は、第3実施形態に係るシステム設計学習装置の構成の例を示す図である。図16に示すシステム設計学習装置610は、変換規則適用部611と、設計評価部612と、規則適用評価部613と、学習部614と、を備える。
かかる構成で、変換規則適用部611は、システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行う。設計評価部612は、設計結果に基づいて、システム設計に対する評価値を決定する。規則適用評価部613は、システム設計に対する評価値に基づいて、システム設計における個々の部品の変換に関する評価値を決定する。学習部614は、部品の変換に関する評価値を含む学習データに基づいて、変換規則の適用対象となる部品の選択について学習する。
変換規則適用部611は、変換規則適用手段の例に該当する。設計評価部612は、設計評価手段の例に該当する。規則適用評価部613は、規則適用評価手段の例に該当する。学習部614は、学習手段の例に該当する。
Third Embodiment
Fig. 16 is a diagram showing an example of the configuration of a system design learning apparatus according to the third embodiment. A system design learning apparatus 610 shown in Fig. 16 includes a conversion rule application unit 611, a design evaluation unit 612, a rule application evaluation unit 613, and a learning unit 614.
In this configuration, the conversion rule application unit 611 performs system design by repeatedly applying conversion rules to components of a system to be designed, for which system requirements are given, until a design result of the system design is obtained. The design evaluation unit 612 determines an evaluation value for the system design based on the design result. The rule application evaluation unit 613 determines an evaluation value for the conversion of each component in the system design based on the evaluation value for the system design. The learning unit 614 learns about the selection of components to which conversion rules are applied, based on learning data including evaluation values for component conversion.
The conversion rule application unit 611 corresponds to an example of a conversion rule application means. The design evaluation unit 612 corresponds to an example of a design evaluation means. The rule application evaluation unit 613 corresponds to an example of a rule application evaluation means. The learning unit 614 corresponds to an example of a learning means.

上述したように、システム要件の入力に対して、適用する一連の変換規則を出力するシステム設計モデルを学習する方法では、一般的にシステムの規模および構成はさまざまであることに起因して、有効な学習を行えないことが考えられる。
一方、システム設計学習装置610が対象とする分野で用いられるシステムの構成がシステムごとに異なっていても、共通の部品、あるいは、類似する部品が用いられることが期待される。システム設計学習装置610が、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステムに用いられる部品と同一の部品または類似の部品が、学習時に対象となるシステムにも用いられていることが期待される。この点で、システム設計学習装置610が、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なる場合でも有効な学習を行うことができる。
As described above, the method of learning a system design model that outputs a set of conversion rules to be applied in response to input system requirements may not be able to provide effective learning, due to the fact that systems generally vary in size and configuration.
On the other hand, even if the configurations of systems used in the field targeted by the system design learning device 610 are different for each system, it is expected that common parts or similar parts will be used. By having the system design learning device 610 learn about conversion on a part-by-part basis, it is expected that the same parts or similar parts as those used in the target system during system design will also be used in the target system during learning. In this regard, by having the system design learning device 610 learn about conversion on a part-by-part basis, effective learning can be performed even if the system configuration targeted during system design is different from the system configuration targeted during learning.

<第4実施形態>
図17は、第4実施形態に係るシステム設計学習方法における処理の手順の例を示すフローチャートである。
図17に示す処理は、変換規則を適用すること(ステップS611)と、設計を評価すること(ステップS612)と、規則適用を評価すること(ステップS613)と、学習を行うこと(ステップS614)と、を含む。
Fourth Embodiment
FIG. 17 is a flowchart showing an example of a processing procedure in the system design learning method according to the fourth embodiment.
The process shown in FIG. 17 includes applying transformation rules (step S611), evaluating the design (step S612), evaluating the rule application (step S613), and learning (step S614).

変換規則を適用すること(ステップS611)では、システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行う。設計を評価すること(ステップS612)では、設計結果に基づいて、システム設計に対する評価値を決定する。規則適用を評価すること(ステップS613)では、システム設計に対する評価値に基づいて、システム設計における個々の部品の変換に関する評価値を決定する。学習を行うこと(ステップS614)では、部品の変換に関する評価値を含む学習データに基づいて、変換規則の適用対象となる部品の選択について学習する。 In applying the conversion rules (step S611), a system is designed by repeatedly applying the conversion rules to the components of the system to be designed, for which system requirements are given, until a design result of the system design is obtained. In evaluating the design (step S612), an evaluation value for the system design is determined based on the design result. In evaluating the rule application (step S613), an evaluation value for the conversion of each component in the system design is determined based on the evaluation value for the system design. In learning (step S614), learning is performed on the selection of components to which the conversion rules are applied, based on learning data including evaluation values for the conversion of components.

上述したように、システム要件の入力に対して、適用する一連の変換規則を出力するシステム設計モデルを学習する方法では、一般的にシステムの規模および構成はさまざまであることに起因して、有効な学習を行えないことが考えられる。
一方、図17に示す処理の対象とする分野で用いられるシステムの構成がシステムごとに異なっていても、共通の部品、あるいは、類似する部品が用いられることが期待される。図17に示す処理で、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステムに用いられる部品と同一の部品または類似の部品が、学習時に対象となるシステムにも用いられていることが期待される。この点で、図17に示す処理で、部品単位で変換に関する学習を行うことで、システム設計時に対象となるシステム構成が学習時に対象となるシステム構成と異なる場合でも有効な学習を行うことができる。
As described above, the method of learning a system design model that outputs a set of conversion rules to be applied in response to input system requirements may not be able to provide effective learning, due to the fact that systems generally vary in size and configuration.
On the other hand, even if the configurations of systems used in the field targeted by the process shown in Fig. 17 are different for each system, it is expected that common parts or similar parts will be used. By performing learning about conversion on a part-by-part basis in the process shown in Fig. 17, it is expected that the same parts or similar parts as those used in the target system at the time of system design will also be used in the target system at the time of learning. In this respect, by performing learning about conversion on a part-by-part basis in the process shown in Fig. 17, effective learning can be performed even if the system configuration targeted at the time of system design is different from the system configuration targeted at the time of learning.

図18は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
図18に示す構成で、コンピュータ700は、CPU710と、主記憶装置720と、補助記憶装置730と、インタフェース740とを備える。
FIG. 18 is a schematic block diagram illustrating a configuration of a computer according to at least one embodiment.
In the configuration shown in FIG. 18, a computer 700 includes a CPU 710 , a main memory device 720 , an auxiliary memory device 730 , and an interface 740 .

上記のシステム設計学習装置100、システム設計学習装置200および、システム設計学習装置610のうち何れか1つ以上が、コンピュータ700に実装されてもよい。その場合、上述した各処理部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。また、CPU710は、プログラムに従って、上述した各記憶部に対応する記憶領域を主記憶装置720に確保する。 Any one or more of the above-mentioned system design learning device 100, system design learning device 200, and system design learning device 610 may be implemented in the computer 700. In this case, the operation of each of the above-mentioned processing units is stored in the auxiliary storage device 730 in the form of a program. The CPU 710 reads the program from the auxiliary storage device 730, expands it in the main storage device 720, and executes the above-mentioned processing according to the program. The CPU 710 also secures memory areas in the main storage device 720 corresponding to each of the above-mentioned memory units according to the program.

システム設計学習装置100がコンピュータ700に実装される場合、制御部190およびその各部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
また、CPU710は、プログラムに従って、記憶部180に対応する記憶領域を主記憶装置720に確保する。
通信部110による通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。
表示部120による表示は、インタフェース740が表示画面を備え、CPU710の制御に従って各種画像を表示することで実行される。操作入力部130によるユーザ操作の受け付けは、インタフェース740が入力デバイスを備えてユーザ操作を受け付け、受け付けたユーザ操作を示す信号をCPU710に出力することで実行される。
When the system design learning device 100 is implemented in the computer 700, the operations of the control unit 190 and each of its units are stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing according to the program.
Furthermore, the CPU 710 reserves a memory area corresponding to the memory unit 180 in the main memory device 720 in accordance with the program.
The communication by the communication unit 110 is executed by the interface 740 having a communication function and performing communication under the control of the CPU 710 .
Display by the display unit 120 is performed by the interface 740 having a display screen and displaying various images under the control of the CPU 710. Reception of a user operation by the operation input unit 130 is performed by the interface 740 having an input device, receiving the user operation, and outputting a signal indicating the received user operation to the CPU 710.

システム設計学習装置200がコンピュータ700に実装される場合、制御部290およびその各部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
また、CPU710は、プログラムに従って、記憶部180に対応する記憶領域を主記憶装置720に確保する。
通信部110による通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。
表示部120による表示は、インタフェース740が表示画面を備え、CPU710の制御に従って各種画像を表示することで実行される。操作入力部130によるユーザ操作の受け付けは、インタフェース740が入力デバイスを備えてユーザ操作を受け付け、受け付けたユーザ操作を示す信号をCPU710に出力することで実行される。
When the system design learning device 200 is implemented in the computer 700, the operation of the control unit 290 and each of its units is stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing according to the program.
Furthermore, the CPU 710 reserves a memory area corresponding to the memory unit 180 in the main memory device 720 in accordance with the program.
The communication by the communication unit 110 is executed by the interface 740 having a communication function and performing communication under the control of the CPU 710 .
Display by the display unit 120 is performed by the interface 740 having a display screen and displaying various images under the control of the CPU 710. Reception of a user operation by the operation input unit 130 is performed by the interface 740 having an input device, receiving the user operation, and outputting a signal indicating the received user operation to the CPU 710.

システム設計学習装置610がコンピュータ700に実装される場合、変換規則適用部611と、設計評価部612と、規則適用評価部613と、学習部614との動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。 When the system design learning device 610 is implemented in the computer 700, the operations of the conversion rule application unit 611, the design evaluation unit 612, the rule application evaluation unit 613, and the learning unit 614 are stored in the auxiliary storage device 730 in the form of a program. The CPU 710 reads the program from the auxiliary storage device 730, expands it in the main storage device 720, and executes the above processing according to the program.

なお、システム設計学習装置100、システム設計学習装置200、および、システム設計学習装置610の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。ここでいう「コンピュータシステム」とは、OS(オペレーティングシステム)や周辺機器等のハードウェアを含む。
「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
In addition, a program for realizing all or part of the functions of system design learning device 100, system design learning device 200, and system design learning device 610 may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read into a computer system and executed to process each part. The "computer system" here includes hardware such as an OS (operating system) and peripheral devices.
"Computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, ROMs (Read Only Memory), and CD-ROMs (Compact Disc Read Only Memory), as well as storage devices such as hard disks built into computer systems. The above-mentioned program may be one that realizes part of the above-mentioned functions, or may realize the above-mentioned functions in combination with a program already recorded in the computer system.

以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。 The above describes an embodiment of the present invention in detail with reference to the drawings, but the specific configuration is not limited to this embodiment, and design changes and the like that do not deviate from the gist of the present invention are also included.

100、200、610 システム設計学習装置
110 通信部
120 表示部
130 操作入力部
180 記憶部
190、290 制御部
191、611 変換規則適用部
192、612 設計評価部
193、613 規則適用評価部
194 学習データ生成部
195、614 学習部
296 具体化部品検出部
100, 200, 610 System design learning device 110 Communication unit 120 Display unit 130 Operation input unit 180 Memory unit 190, 290 Control unit 191, 611 Conversion rule application unit 192, 612 Design evaluation unit 193, 613 Rule application evaluation unit 194 Learning data generation unit 195, 614 Learning unit 296 Instantiation part detection unit

Claims (11)

システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行う変換規則適用手段と、
前記設計結果に基づいて、前記システム設計に対する評価値を決定する設計評価手段と、
前記システム設計に対する評価値に基づいて、前記システム設計における個々の部品の変換に関する評価値を決定する規則適用評価手段と、
前記部品の変換に関する評価値を含む学習データに基づいて、前記変換規則の適用対象となる部品の選択について学習する学習手段と、
を備えるシステム設計学習装置。
a conversion rule application means for repeatedly applying conversion rules to components of a system to be designed, the components being designated as system requirements, to perform system design until a design result of the system design is obtained;
a design evaluation means for determining an evaluation value for the system design based on the design result;
a rule application evaluation means for determining an evaluation value for each transformation of an individual component in the system design based on the evaluation value for the system design;
a learning means for learning about selection of a part to which the conversion rule is applied based on learning data including an evaluation value related to the conversion of the part;
A system design learning device comprising:
前記規則適用評価手段は、前記システム設計の複数の履歴を同一のシステム要件について統合したデータに基づいて、前記部品の変換に関する評価値をシステム要件の部品ごとに決定する、
請求項1に記載のシステム設計学習装置。
the rule application evaluation means determines an evaluation value regarding the conversion of the component for each component of the system requirement based on data obtained by integrating a plurality of system design histories for the same system requirement;
2. The system design learning device according to claim 1.
前記設計結果は、前記システム設計に成功したこと、または、前記システム設計に失敗したことの何れかを表す、
請求項1または請求項2に記載のシステム設計学習装置。
The design result indicates either a success or a failure of the system design.
3. The system design learning device according to claim 1 or 2.
前記システム設計に成功したことは、システムを配備可能なレベルで具体化されたシステム要件を得られたことを含む、
請求項3に記載のシステム設計学習装置。
Successful system design includes obtaining system requirements specified at a level that allows the system to be deployed;
4. The system design learning device according to claim 3.
前記システム設計に失敗したことは、システムを配備可能なレベルで具体化されたシステム要件を得られないことが確定することを含む、
請求項3または請求項4に記載のシステム設計学習装置。
The system design failure includes determining that the system requirements cannot be specified at a level that allows the system to be deployed.
5. The system design learning device according to claim 3 or 4.
前記設計評価手段は、前記設計結果が、前記システム設計に成功したことを表す場合、得られたシステムの評価指標値に基づいて、前記システム設計に対する評価値を決定する、
請求項1から5の何れか一項に記載のシステム設計学習装置。
the design evaluation means determines an evaluation value for the system design based on the obtained system evaluation index value when the design result indicates that the system design is successful;
The system design learning device according to any one of claims 1 to 5.
前記変換規則適用手段が前記システム設計に使用可能な変換規則ごとに、その変換規則が具体化する部品を示す具体化部品情報を生成する具体化部品検出手段をさらに備え、 前記変換規則適用手段は、前記システム設計に用いる前記変換規則を、前記具体化部品情報に基づいて決定する、
請求項1から6の何れか一項に記載のシステム設計学習装置。
The conversion rule application means further comprises an instantiation component detection means for generating instantiation component information indicating a component instantiated by each conversion rule usable for the system design, the conversion rule application means determining the conversion rule to be used for the system design based on the instantiation component information.
The system design learning device according to any one of claims 1 to 6.
前記学習手段は、システム要件の入力に対して、そのシステム要件に示される部品ごとの評価を出力する部品評価モデルの学習を行い、
前記変換規則適用手段は、前記システム要件に示される各部品に対する前記部品評価モデルの評価に基づいて、前記変換規則の適用対象の前記部品を選択し、選択した部品に適用可能であると前記具体化部品情報で示される前記変換規則である変換規則候補のうち1つの変換規則を選択し、選択した部品に、選択した変換規則を適用する、
請求項7に記載のシステム設計学習装置。
the learning means learns a component evaluation model that outputs an evaluation for each component indicated in a system requirement in response to the input of the system requirement;
the conversion rule application means selects the part to which the conversion rule is to be applied based on an evaluation of the part evaluation model for each part indicated in the system requirements, selects one conversion rule from among conversion rule candidates which are indicated in the instantiated part information as being applicable to the selected part, and applies the selected conversion rule to the selected part.
The system design learning device according to claim 7.
前記変換規則適用手段は、前記変換規則候補ごとの、その変換規則候補を前記システム要件に適用して得られる変換規則適用後のシステム要件に対する前記部品評価モデルの評価に基づいて、前記変換規則候補のうち1つの変換規則を、前記選択した部品に適用する変換規則として選択する、
請求項8に記載のシステム設計学習装置。
the conversion rule application means selects, for each of the conversion rule candidates, one of the conversion rule candidates as a conversion rule to be applied to the selected component, based on an evaluation of the component evaluation model with respect to the system requirements after application of the conversion rule obtained by applying the conversion rule candidate to the system requirements.
The system design learning apparatus according to claim 8.
コンピュータが、
システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行うことと、
前記設計結果に基づいて、前記システム設計に対する評価値を決定することと、
前記システム設計に対する評価値に基づいて、前記システム設計における個々の部品の変換に関する評価値を決定することと、
前記部品の変換に関する評価値を含む学習データに基づいて、前記変換規則の適用対象となる部品の選択について学習することと、
を含むシステム設計学習方法。
The computer
performing a system design by repeatedly applying transformation rules to components of a system to be designed, for which system requirements are given, until a design result of the system design is obtained;
determining an evaluation value for the system design based on the design result;
determining estimates for transformations of individual components in the system design based on the estimates for the system design;
learning a selection of a part to which the conversion rule is applied based on learning data including an evaluation value related to the conversion of the part;
A method for learning systems design, including:
コンピュータに、
システム要件を示される設計対象システムに対して、その設計対象システムの部品への変換規則の適用を繰り返すことによるシステム設計を、そのシステム設計の設計結果が得られるまで行うことと、
前記設計結果に基づいて、前記システム設計に対する評価値を決定することと、
前記システム設計に対する評価値に基づいて、前記システム設計における個々の部品の変換に関する評価値を決定することと、
前記部品の変換に関する評価値を含む学習データに基づいて、前記変換規則の適用対象となる部品の選択について学習することと、
を実行させるためのプログラム。
On the computer,
performing a system design by repeatedly applying transformation rules to components of a system to be designed, for which system requirements are given, until a design result of the system design is obtained;
determining an evaluation value for the system design based on the design result;
determining estimates for transformations of individual components in the system design based on the estimates for the system design;
learning a selection of a part to which the conversion rule is applied based on learning data including an evaluation value related to the conversion of the part;
A program for executing.
JP2021087757A 2020-10-09 2021-05-25 System design learning device, system design learning method and program Active JP7694151B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/495,012 US20220114311A1 (en) 2020-10-09 2021-10-06 System design learning device, system design learning method, and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020171169 2020-10-09
JP2020171169 2020-10-09

Publications (2)

Publication Number Publication Date
JP2022063209A JP2022063209A (en) 2022-04-21
JP7694151B2 true JP7694151B2 (en) 2025-06-18

Family

ID=81255309

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021087757A Active JP7694151B2 (en) 2020-10-09 2021-05-25 System design learning device, system design learning method and program

Country Status (1)

Country Link
JP (1) JP7694151B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2025031156A (en) * 2023-08-25 2025-03-07 メタウォーター株式会社 Driving plan generating method, driving plan generating program, and driving plan generating device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04137073A (en) * 1990-09-28 1992-05-12 Toshiba Corp Design drawing device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
八鍬 豊 外3名,「強化学習を用いたICTシステム設計の自動化における学習収束性の改善」,電子情報通信学会技術研究報告 [オンライン],一般社団法人電子情報通信学会,2020年06月22日,第120巻, 第80号,pp.39-46,[検索日 2020.08.03], インターネット:<URL: https://www.ieice.org/ken/user/index.php?cmd=download&p=weGs&t=IEICE-IBISML&l=d605c29d8557ef2838c888d0f0ad9acb1daa572ea0b2a70713706a7d6d39f07e&lang=>

Also Published As

Publication number Publication date
JP2022063209A (en) 2022-04-21

Similar Documents

Publication Publication Date Title
US20210390416A1 (en) Variable parameter probability for machine-learning model generation and training
US20200210847A1 (en) Ensembling of neural network models
US20190122096A1 (en) Automated evaluation of neural networks using trained classifier
KR102203252B1 (en) Method and system for collaborative filtering based on generative adversarial networks
US11972335B2 (en) System and method for improving classification in adversarial machine learning
CN109684190B (en) Software testing apparatus and method
EP0159463A2 (en) Probabilistic learning system
JP7480670B2 (en) MOTION PLANNING APPARATUS, MOTION PLANNING METHOD, AND MOTION PLANNING PROGRAM
JP2009282686A (en) Apparatus and method for learning classification model
JP5123759B2 (en) Pattern detector learning apparatus, learning method, and program
KR20170073059A (en) Game of artificial intelligence system and method for making artificial intelligence of game character using the same
JP4265296B2 (en) Change point detection apparatus, change point detection method, and change point detection program
JP7694151B2 (en) System design learning device, system design learning method and program
JP7822919B2 (en) Information processing device, information processing method, program, and circuit information
US20240157969A1 (en) Methods and systems for determining control decisions for a vehicle
US8522226B2 (en) Control structure refinement of loops using static analysis
JPWO2020152848A1 (en) Recognizer training equipment, recognition equipment, data processing systems, data processing methods, and programs
JP5528214B2 (en) Learning control system and learning control method
JP7127687B2 (en) Hypothetical Inference Device, Hypothetical Inference Method, and Program
JP7050028B2 (en) Computer system and machine learning control method
KR102255470B1 (en) Method and apparatus for artificial neural network
CN115270971B (en) Decision-assisted switching-constrained multi-model maneuvering target tracking method and device
US20240202408A1 (en) System design learning apparatus, system designlearning method, and computer-readable recording medium
US20220114311A1 (en) System design learning device, system design learning method, and recording medium
JP7508838B2 (en) Partial extraction device, part extraction method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240408

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20240408

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250324

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: 20250507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250520

R150 Certificate of patent or registration of utility model

Ref document number: 7694151

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150