JP6324163B2 - Process classification apparatus, process classification program, and storage medium - Google Patents

Process classification apparatus, process classification program, and storage medium Download PDF

Info

Publication number
JP6324163B2
JP6324163B2 JP2014069902A JP2014069902A JP6324163B2 JP 6324163 B2 JP6324163 B2 JP 6324163B2 JP 2014069902 A JP2014069902 A JP 2014069902A JP 2014069902 A JP2014069902 A JP 2014069902A JP 6324163 B2 JP6324163 B2 JP 6324163B2
Authority
JP
Japan
Prior art keywords
processes
classification
positive constant
function
groups
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
JP2014069902A
Other languages
Japanese (ja)
Other versions
JP2015191566A (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.)
AZAPA CO., LTD.
Original Assignee
AZAPA CO., LTD.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AZAPA CO., LTD. filed Critical AZAPA CO., LTD.
Priority to JP2014069902A priority Critical patent/JP6324163B2/en
Publication of JP2015191566A publication Critical patent/JP2015191566A/en
Application granted granted Critical
Publication of JP6324163B2 publication Critical patent/JP6324163B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、工業製品の開発工程やシミュレーションモデルに含まれるプロセスを好適に分類できるプロセス分類装置およびプロセス分類プログラムおよび記憶媒体に関する。   The present invention relates to a process classification apparatus, a process classification program, and a storage medium that can suitably classify processes included in industrial product development processes and simulation models.

車両や電子機器類、ソフトウェア等の工業製品を開発する場合、それらの開発工程は、多数の工程を有している。また、多数の工程が複雑に絡み合っている。さらに、各工程の設計に多数の技術者が関与しており、全体像の把握が容易ではない。   When developing industrial products such as vehicles, electronic devices, and software, those development processes include a number of processes. In addition, many processes are complicatedly intertwined. Furthermore, many engineers are involved in the design of each process, and it is not easy to grasp the whole picture.

開発工程が多数の製造工程を含む場合には、関連性の高い工程をひとまとまりのグループにすることが好ましい。技術者が全行程を理解しやすいからである。つまり、工程設計の支援につながる。グループ化する手法として、例えば、モジュラリティを用いるNewman法がある(非特許文献1の2頁目の式(4)等参照)。Newman法は、あるネットワーク上の情報をこれらの情報の関連性に着目してグループ化する非常に一般的な手法である。また、特許文献1には、Newman法を用いて、製造工程における鋳込みをグループ化することにより、成分設計を支援する装置が開示されている。   When a development process includes a large number of manufacturing processes, it is preferable to group highly related processes into a group. This is because it is easy for engineers to understand the entire process. That is, it leads to process design support. As a method of grouping, for example, there is a Newman method using modularity (refer to Formula (4) on page 2 of Non-Patent Document 1). The Newman method is a very general method for grouping information on a certain network by paying attention to the relevance of the information. Further, Patent Document 1 discloses an apparatus that supports component design by grouping castings in a manufacturing process using a Newman method.

特開2012−125795号公報JP 2012-125895 A

Aaron Clauset, M.E.J.Newman, and Cristopher Moore, Finding community structure in very large networks, Physical Review E 70, 066111(2004)Aaron Clauset, M.E.J.Newman, and Cristopher Moore, Finding community structure in very large networks, Physical Review E 70, 066111 (2004)

ところで、工業製品の開発工程においては、試作品の試験結果を設計にフィードバックして再度設計しなおすことがある。このように、後工程の結果を前工程に反映する「戻り」があることが一般的である。このような場合には、反映された結果に基づいて、その前工程は繰り返し実施されることとなる。このように繰り返し実施される工程があると、開発期間は肥大化する。そのため、「戻り」を適切に管理することが重要である。   By the way, in the industrial product development process, the test result of the prototype may be fed back to the design and redesigned. Thus, it is common that there is a “return” that reflects the result of the subsequent process in the previous process. In such a case, the previous process is repeatedly performed based on the reflected result. If there are repeated steps, the development period will be enlarged. Therefore, it is important to manage “return” appropriately.

しかし、Newman法では、「戻り」を適切に取り扱うことが困難である。Newman法の数式には「戻り」を評価する項が盛り込まれていないからである。例えば、Newman法を用いることにより、上流側の工程群(A1)を実施した後に下流側の工程群(A2)を実施するようなグループ化がなされたとする。その場合に、下流側の工程群(A2)の工程から上流側の工程群(A1)の工程にフィードバックする「戻り」が発生することが一般的である。   However, in the Newman method, it is difficult to appropriately handle “return”. This is because the Newman formula does not include a term for evaluating “return”. For example, by using the Newman method, it is assumed that grouping is performed such that the downstream process group (A2) is performed after the upstream process group (A1) is performed. In this case, a “return” that feeds back from the process of the downstream process group (A2) to the process of the upstream process group (A1) generally occurs.

このように、グループ間をまたぐ「戻り」があると、開発工程の全体像が複雑になる。また、上流側の工程群(A1)を担当していた開発グループは、設計、開発を何度も変更することとなり、全体の開発期間の長期化を招く。したがって、「戻り」を考慮したグループ化を実施する必要がある。   Thus, if there is a “return” across groups, the overall picture of the development process becomes complicated. In addition, the development group in charge of the upstream process group (A1) changes the design and development many times, leading to a prolonged overall development period. Therefore, it is necessary to perform grouping considering “return”.

ところで、工業製品の開発工程においては、例えば、SIMULINK(登録商標)のようなシミュレーションモデルを用いることがある。シミュレーションモデルは、複数の処理要素を有する。そして、上流側の処理要素を実行した後に下流側の処理要素を実行する。また、シミュレーションモデルにおいても、工業製品の開発工程と同様に「戻り」が存在する。   By the way, in an industrial product development process, for example, a simulation model such as SIMULLINK (registered trademark) may be used. The simulation model has a plurality of processing elements. Then, after the upstream processing element is executed, the downstream processing element is executed. Also in the simulation model, there is a “return” as in the industrial product development process.

本発明は、前述した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは、プロセス同士の関連性およびプロセス間の「戻り」を考慮したプロセス分類装置およびプロセス分類プログラムおよび記憶媒体を提供することである。ここで、「プロセス」とは、工業製品の開発工程に含まれる1つの工程と、プログラムに含まれる1つの処理内容と、シミュレーションモデルに含まれる1つの処理要素と、を含むものとする。   The present invention has been made to solve the above-described problems of the prior art. That is, the problem is to provide a process classification apparatus, a process classification program, and a storage medium in consideration of the relationship between processes and the “return” between processes. Here, the “process” includes one process included in the industrial product development process, one processing content included in the program, and one processing element included in the simulation model.

第1の態様におけるプロセス分類装置は、複数のプロセスと、複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得部と、複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類部と、を有する。プロセス分類部は、次式で表される

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
a,b:正の定数
c1:正の定数
c2:正の定数
適応関数f1(Qm)を用いてプロセスを分類する。 The process classification apparatus according to the first aspect includes a process information acquisition unit that acquires a plurality of processes, processing order information indicating the processing order of the plurality of processes, and the plurality of processes as one of a plurality of groups. And a process classification unit for classifying. The process classification part is expressed by the following formula:
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
a, b: positive constant
c1: Positive constant
c2: classify processes using positive constant adaptation function f1 (Qm).

このプロセス分類装置は、工業製品の開発工程やシミュレーションモデルに含まれるプロセスを分類する。適応関数f1(Qm)が大きいほど、好適な分類を実施することができる。適応関数f1(Qm)は、モジュラリティQに依存するとともに、フィードバック数fb1にも依存する。そのため、関連の深いプロセス同士を同じグループに分類するとともに、異なるグループにまたがる「戻り」を可能な限り少なくすることができる。   This process classification apparatus classifies processes included in the development process of industrial products and simulation models. The larger the adaptive function f1 (Qm), the more suitable classification can be performed. The adaptation function f1 (Qm) depends on the modularity Q and also on the feedback number fb1. Therefore, it is possible to classify closely related processes into the same group, and to reduce “return” across different groups as much as possible.

第2の態様におけるプロセス分類装置は、複数のプロセスと、複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得部と、複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類部と、を有する。プロセス分類部は、次式で表される

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
n:2以上の自然数
適応関数f2(Qm)を用いて、グループ数の増減とプロセスの分類とを同時に行う。 The process classification apparatus according to the second aspect includes a process information acquisition unit that acquires a plurality of processes and processing order information indicating the processing order of the plurality of processes, and sets the plurality of processes to one of a plurality of groups. And a process classification unit for classifying. The process classification part is expressed by the following formula:
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: Positive constant
n: Increase / decrease the number of groups and classify processes simultaneously using a natural number adaptation function f2 (Qm) of 2 or more.

第3の態様におけるプロセス分類装置は、複数のプロセスと、複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得部と、複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類部と、を有する。プロセス分類部は、次式で表される

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
適応関数f3(Qm)を用いて、グループ数の増減とプロセスの分類とを同時に行う。 The process classification apparatus according to the third aspect includes a process information acquisition unit that acquires a plurality of processes, processing order information indicating the processing order of the plurality of processes, and the plurality of processes as one of a plurality of groups. And a process classification unit for classifying. The process classification part is expressed by the following formula:
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: The increase / decrease of the number of groups and the classification of processes are simultaneously performed using the positive constant adaptation function f3 (Qm).

第4の態様におけるプロセス分類プログラムは、複数のプロセスと、複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得機能と、複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類機能と、をコンピューターに実現させるためのものである。また、プロセス分類機能は、次式で表される

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
a,b:正の定数
c1:正の定数
c2:正の定数
適応関数f1(Qm)を用いてプロセスを分類する。 The process classification program according to the fourth aspect includes a process information acquisition function for acquiring a plurality of processes and processing order information indicating the processing order of the plurality of processes, and the plurality of processes as one of a plurality of groups. This is to allow a computer to realize the process classification function to classify. The process classification function is expressed by the following formula:
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
a, b: positive constant
c1: Positive constant
c2: classify processes using positive constant adaptation function f1 (Qm).

第5の態様におけるプロセス分類プログラムは、複数のプロセスと、複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得機能と、複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類機能と、をコンピューターに実現させるためのものである。また、プロセス分類機能は、次式で表される

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
n:2以上の自然数
適応関数f2(Qm)を用いて、グループ数の増減とプロセスの分類とを同時に行う。 The process classification program according to the fifth aspect includes a process information acquisition function for acquiring a plurality of processes, processing order information indicating the processing order of the plurality of processes, and the plurality of processes in any of a plurality of groups. This is to allow a computer to realize the process classification function to classify. The process classification function is expressed by the following formula:
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: Positive constant
n: Increase / decrease the number of groups and classify processes simultaneously using a natural number adaptation function f2 (Qm) of 2 or more.

第6の態様におけるプロセス分類プログラムは、複数のプロセスと、複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得機能と、複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類機能と、をコンピューターに実現させるためのものである。また、プロセス分類機能は、次式で表される

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
適応関数f3(Qm)を用いて、グループ数の増減とプロセスの分類とを同時に行う。 The process classification program according to the sixth aspect includes a process information acquisition function that acquires a plurality of processes, processing order information that indicates a processing order of the plurality of processes, and the plurality of processes as one of a plurality of groups. This is to allow a computer to realize the process classification function to classify. The process classification function is expressed by the following formula:
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: The increase / decrease of the number of groups and the classification of processes are simultaneously performed using the positive constant adaptation function f3 (Qm).

第7の態様におけるプロセス分類プログラムでは、複数のプロセスは、シミュレーションモデルにおける処理要素である。   In the process classification program according to the seventh aspect, the plurality of processes are processing elements in the simulation model.

第8の態様におけるプロセス分類プログラムでは、複数のプロセスは、工業製品の開発工程における工程である。   In the process classification program according to the eighth aspect, the plurality of processes are steps in an industrial product development process.

第9の態様における記憶媒体は、上記のプロセス分類プログラムが記憶されたものであってコンピューターで読み取り可能なものである。   A storage medium according to the ninth aspect stores the above-described process classification program and is readable by a computer.

本発明では、プロセス同士の関連性およびプロセス間の「戻り」を考慮したプロセス分類装置およびプロセス分類プログラムおよび記憶媒体が提供されている。   In the present invention, a process classification apparatus, a process classification program, and a storage medium are provided in consideration of the relationship between processes and “return” between processes.

第1の実施形態に係るプロセス分類装置で取り扱うブロック図を例示する図である。It is a figure which illustrates the block diagram handled with the process classification apparatus which concerns on 1st Embodiment. 第1の実施形態に係るプロセス分類装置のハードウェアの構成を示す概略構成図である。It is a schematic block diagram which shows the structure of the hardware of the process classification apparatus which concerns on 1st Embodiment. 第1の実施形態に係るプロセス分類装置の制御部の構成を説明するためのブロック図である。It is a block diagram for demonstrating the structure of the control part of the process classification apparatus which concerns on 1st Embodiment. 第1の実施形態に係るプロセス分類装置のフローを示すフローチャートである。It is a flowchart which shows the flow of the process classification apparatus which concerns on 1st Embodiment. 第1の実施形態に係るプロセス分類装置により図1のブロック図をグループ化した後のブロック図を示す図である。It is a figure which shows the block diagram after grouping the block diagram of FIG. 1 by the process classification apparatus which concerns on 1st Embodiment. 図5のブロック図の一部を展開した図(その1)である。FIG. 6 is a first expanded view of a part of the block diagram of FIG. 5. 図5のブロック図の一部を展開した図(その2)である。FIG. 6 is a developed view (part 2) of a part of the block diagram of FIG. Newman法によるグループ化を実施した場合を示す図である。It is a figure which shows the case where grouping by the Newman method is implemented. 第2の適応関数を用いてグループ化した場合を示すブロック図である。It is a block diagram which shows the case where it groups using the 2nd adaptive function. 図9のブロック図の一部を展開した図である。It is the figure which expanded a part of block diagram of FIG.

以下、本発明に係る実施形態について添付図面を参照しつつ説明する。以下の実施形態では、多数のプロセスをグループ化するプロセス分類装置およびプロセス分類プログラムおよび記憶媒体について説明する。以下の実施形態において、プロセスとは、工業製品の開発工程に含まれる1つの工程と、プログラムに含まれる1つの処理内容と、シミュレーションモデルに含まれる1つの処理要素と、を含む概念である。第1の実施形態から第3の実施形態まででは、ロボットアームの制御ソフトウェアの各プロセスを分類する場合を例に挙げて説明する。第4の実施形態では、工業製品の開発工程の各プロセスを分類する場合を例に挙げて説明する。   Embodiments according to the present invention will be described below with reference to the accompanying drawings. In the following embodiments, a process classification apparatus, a process classification program, and a storage medium that group a large number of processes will be described. In the following embodiments, the process is a concept including one process included in the industrial product development process, one processing content included in the program, and one processing element included in the simulation model. From the first embodiment to the third embodiment, a case will be described in which the processes of the robot arm control software are classified. In the fourth embodiment, a case in which each process of the industrial product development process is classified will be described as an example.

(第1の実施形態)
1.ブロック図
図1は、本実施形態のプロセス分類装置により分類されるロボットアームの制御ソフトウェアの処理要素を示すブロック図である。図1の左側には、ロボットアームの制御ソフトウェアの全体図ST1が示されている。そして、全体図ST1は、下位の階層ST2を有している。下位の階層ST2は、さらに下位の階層ST3、ST4を有している。このように、制御ソフトウェアは、階層構造を有している。
(First embodiment)
1. Block Diagram FIG. 1 is a block diagram showing processing elements of robot arm control software classified by the process classification apparatus of this embodiment. On the left side of FIG. 1, an overall view ST1 of the control software for the robot arm is shown. The overall view ST1 has a lower hierarchy ST2. The lower hierarchy ST2 further has lower hierarchy ST3, ST4. Thus, the control software has a hierarchical structure.

また、図1に示すように、ブロック図は、枠で囲まれた処理要素と、一つの処理要素と他の処理要素とをつなぐ結線と、を有している。ここで、処理要素は、プロセスを示している。結線は、処理要素間の関係情報を示している。図1において、処理要素E1と、結線K1とを例示している。結線は、矢印で示されている。この矢印は、矢印の根元の処理要素を実行した後に、矢印の先の処理要素を実行するという実行手順を示している。図1に示すブロック図では、一般に、図1中の左側から右側にかけて処理要素が実行される。つまり、図1中の左側に上流工程が配置されており、右側に下流工程が配置されている。そして、矢印に基づいて、上流側から下流側にデータが受け渡されるとともに処理が進行する。   As shown in FIG. 1, the block diagram includes a processing element surrounded by a frame and a connection line connecting one processing element and another processing element. Here, the processing element indicates a process. The connection indicates relationship information between processing elements. In FIG. 1, the processing element E1 and the connection K1 are illustrated. Connections are indicated by arrows. This arrow indicates an execution procedure in which the processing element at the tip of the arrow is executed after the processing element at the root of the arrow is executed. In the block diagram shown in FIG. 1, processing elements are generally executed from the left side to the right side in FIG. That is, the upstream process is arranged on the left side in FIG. 1, and the downstream process is arranged on the right side. Then, based on the arrow, data is transferred from the upstream side to the downstream side, and the process proceeds.

また、図1には、結線F1が示されている。結線F1は、図1中の右側の処理要素から出て左側の要素に入っている。これは、下流工程の結果を上流工程が用いることを意味している。このように、下流工程の結果を上流工程が再利用することを「戻り」ということとする。   Moreover, the connection F1 is shown by FIG. The connection line F1 exits from the right processing element in FIG. 1 and enters the left element. This means that the upstream process uses the result of the downstream process. Thus, the reuse of the result of the downstream process by the upstream process is referred to as “return”.

この戻りの処理は、可読性や、グループ毎の処理の観点から、適切に管理する必要がある。例えば、仮に、ロボットアームの制御ソフトウェアを複数のプログラムに分割したとする。その場合に、複数のプログラムの間で、データの受け渡しをしなければ、正常にプログラムを実行することができない。そのため、制御ソフトウェアの開発段階でのテストが困難である。したがって、一つのグループから他のグループに入る戻りを少なくすることが好ましい。   This return processing must be appropriately managed from the viewpoint of readability and group-by-group processing. For example, assume that the robot arm control software is divided into a plurality of programs. In that case, the program cannot be executed normally unless data is exchanged between a plurality of programs. Therefore, it is difficult to test the control software at the development stage. Therefore, it is preferable to reduce the return from one group to the other group.

2.プロセス分類装置
本実施形態のプロセス分類装置1は、多数のプロセスを有するシステムについて、プロセスの間の関係の深さの度合いに応じて、グループ化を実施するためのものである。その際には、(1)プロセス間の関係の深さの度合いと、(2)あるグループから異なるグループに戻る「戻り」の少なさと、を考慮したプロセスの分類をすることができる。ここで、本実施形態のプロセスは、ソフトウェアのサブシステムやモジュールを含む。
2. Process classification apparatus The process classification apparatus 1 of this embodiment is for implementing grouping according to the degree of the depth of the relationship between processes about the system which has many processes. In that case, it is possible to classify the processes in consideration of (1) the degree of the depth of the relationship between processes and (2) few “returns” to return from one group to another group. Here, the process of this embodiment includes a software subsystem and module.

本実施形態のプロセス分類装置1のハードウェア構成を図2に示す。プロセス分類装置1は、処理装置10と、入力部20と、表示部30とを有している。処理装置10は、プロセス分類装置1の各種の処理を具体的に行うものである。入力部20は、ユーザーからの入力を受け付けるためのものである。または、他のコンピューターからの出力結果を受け付けるものであってもよい。例えば、キーボードが挙げられる。表示部30は、処理装置10により各種の処理を実行した結果等を表示するためのものである。例えば、ディスプレイが挙げられる。   FIG. 2 shows the hardware configuration of the process classification apparatus 1 of the present embodiment. The process classification device 1 includes a processing device 10, an input unit 20, and a display unit 30. The processing device 10 specifically performs various processes of the process classification device 1. The input unit 20 is for receiving input from the user. Alternatively, an output result from another computer may be accepted. An example is a keyboard. The display unit 30 is for displaying the results of executing various processes by the processing apparatus 10. For example, a display is mentioned.

処理装置10は、制御部100と、不揮発性メモリ200とを有している。制御部100は、各種の制御を行うものである。制御部100は、CPU(C1)と、メモリM1とを有している。制御部100は、CPUC1と、メモリM1とを使用することにより、各種の制御を行う。不揮発性メモリ200には、プログラムP1が格納されている。プログラムP1は、後述するように、コンピューターに実現させるためのプロセス分類プログラムである。これにより、コンピューターは、プロセス分類装置1としての機能を果たす。   The processing device 10 includes a control unit 100 and a nonvolatile memory 200. The control unit 100 performs various controls. The control unit 100 includes a CPU (C1) and a memory M1. The control unit 100 performs various controls by using the CPUC1 and the memory M1. The non-volatile memory 200 stores a program P1. As will be described later, the program P1 is a process classification program to be realized by a computer. As a result, the computer functions as the process classification device 1.

3.制御部
図3は、制御部100における各種の制御を行う各部を説明するためのブロック図である。制御部100の有する各部は、それぞれ、CPUC1の少なくとも一部と、メモリM1の少なくとも一部とを用いて機能を発揮するものである。
3. Control Unit FIG. 3 is a block diagram for explaining each unit that performs various controls in the control unit 100. Each unit of the control unit 100 functions by using at least a part of the CPUC1 and at least a part of the memory M1.

制御部100は、プロセス情報取得部110と、プロセス分類部120と、入力受付部130と、その他の制御部140と、を有している。   The control unit 100 includes a process information acquisition unit 110, a process classification unit 120, an input reception unit 130, and other control units 140.

プロセス情報取得部110は、ブロック図に関する情報を取得する関係情報取得機能を有するものである。つまり、複数のプロセスと、依存元のプロセスと依存先のプロセスとの間の依存関係情報と、複数のプロセスのうちの一部のプロセスが1以上の下位の階層を構成する階層構造と、を取得する。また、その他の情報をも取得する。   The process information acquisition unit 110 has a relationship information acquisition function for acquiring information related to the block diagram. That is, a plurality of processes, dependency relationship information between a dependency source process and a dependency destination process, and a hierarchical structure in which a part of the plurality of processes constitute one or more lower layers, get. Other information is also acquired.

プロセス分類部120は、後述する適応関数を用いてプロセスを分類する。適応関数の値が高いほど、グループ化が好適に行われていることを示している。適応関数については、後述する。   The process classification unit 120 classifies processes using an adaptive function described later. The higher the value of the adaptive function, the better the grouping is performed. The adaptive function will be described later.

入力受付部130は、ユーザーからの入力を受け付けるための入力受付機能を有するものである。入力受付部130は、定数入力受付部131と、グループ数入力受付部132と、を有している。これらは、後述する適応関数のパラメーターについて、ユーザーからの入力を受け付けるためのものである。なお、グループ数入力受付部132については、本実施形態では用いない。第2の実施形態以降で用いる。   The input receiving unit 130 has an input receiving function for receiving input from the user. The input receiving unit 130 includes a constant input receiving unit 131 and a group number input receiving unit 132. These are for receiving input from the user for the parameters of the adaptive function described later. Note that the group number input reception unit 132 is not used in the present embodiment. Used in the second and subsequent embodiments.

4.適応関数(フィットネス関数)
4−1.第1の適応関数
本実施形態では、第1の適応関数が次式(1)で与えられる。

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
a,b:正の定数
c1:正の定数
c2:正の定数
この第1の適応関数f1(Qm)を用いることにより、プロセスを分類することができる。 4). Adaptive function (fitness function)
4-1. First Adaptive Function In the present embodiment, the first adaptive function is given by the following equation (1).
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
a, b: positive constant
c1: Positive constant
c2: Positive constant By using this first adaptive function f1 (Qm), the process can be classified.

ここで、モジュラリティQは、非特許文献1(Aaron Clauset, M.E.J.Newman, and Cristopher Moore, Finding community structure in very large networks, Physical Review E 70, 066111(2004) )の式(4)で定義されるモジュラリティである。フィードバック数fb1は、下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数を表している。つまり、グループをまたがるフィードバックの数である。そのため、あるグループのプロセスから同じグループのプロセスに戻る「戻り」、すなわち、同一グループ内の「戻り」はカウントしない。ここで、フィードバック数fb1は、本発明者らが独自に考案し、導入したものである。定数c1、c2は、0.5以上2.0以下の正の実数である。定数a、bは、ユーザーにより与えられる実数である。これらについては、後述する。   Here, the modularity Q is defined by Equation (4) of Non-Patent Document 1 (Aaron Clauset, MEJ Newman, and Cristopher Moore, Finding community structure in very large networks, Physical Review E 70, 066111 (2004)). Modularity. The feedback number fb1 represents the number of feedback returning from the downstream group process to the upstream group process. That is, the number of feedback across groups. Therefore, “return” returning from a process of a group to the process of the same group, that is, “return” within the same group is not counted. Here, the feedback number fb1 was originally devised and introduced by the present inventors. The constants c1 and c2 are positive real numbers of 0.5 or more and 2.0 or less. The constants a and b are real numbers given by the user. These will be described later.

モジュラリティQは、多くの場合、0から1までの値をとる。しかし、計算上、負の値をとることもある。そのため、本実施形態では、Qm=Q+c1で定義される変形モジュラリティQmを用いる。また、フィードバック数fb1については、ゼロとなる場合が有る。その場合、式(1)において、ゼロで割ることとなる。これを回避するために、fbm=fb1+c2で定義される変形フィードバック数fbmを用いる。そして、第1の適応関数f1(Qm)は、無限大に発散することはない。つまり、第1の適応関数f1(Qm)は、ある条件化で最大値をとる。   The modularity Q often takes a value from 0 to 1. However, it may take a negative value for calculation. Therefore, in the present embodiment, the modified modularity Qm defined by Qm = Q + c1 is used. Further, the feedback number fb1 may be zero. In that case, in Formula (1), it will divide by zero. In order to avoid this, the modified feedback number fbm defined by fbm = fb1 + c2 is used. The first adaptive function f1 (Qm) does not diverge infinitely. That is, the first adaptive function f1 (Qm) takes a maximum value under certain conditions.

4−2.計算方法
プロセスの分類をするために、式(1)の第1の適応関数f1(Qm)を計算する。そして、第1の適応関数f1(Qm)の値が大きくなるように、反復計算を行う。そして、第1の適応関数f1(Qm)の値が収束するまで反復計算を繰り返す。第1の適応関数f1(Qm)の値が収束したか否かについては、第1の適応関数f1(Qm)の上昇幅が予め定めた閾値以下となった場合に、第1の適応関数f1(Qm)の値が収束したと判断する。そうでなければ、反復計算を継続して実施すればよい。
4-2. Calculation Method In order to classify the processes, the first adaptive function f1 (Qm) of Equation (1) is calculated. Then, iterative calculation is performed so that the value of the first adaptive function f1 (Qm) becomes large. Then, the iterative calculation is repeated until the value of the first adaptive function f1 (Qm) converges. Whether or not the value of the first adaptive function f1 (Qm) has converged is determined when the increase width of the first adaptive function f1 (Qm) is equal to or less than a predetermined threshold value. It is determined that the value of (Qm) has converged. Otherwise, iterative calculation may be continued.

このように、式(1)の最大化を行うわけであるが、計算上、必ずしも第1の適応関数f1(Qm)の最大値が得られるわけではない。そして、第1の適応関数f1(Qm)の最大値の90%以上の値であれば、十分である場合がある。   Thus, although the maximization of Expression (1) is performed, the maximum value of the first adaptive function f1 (Qm) is not necessarily obtained in the calculation. A value of 90% or more of the maximum value of the first adaptive function f1 (Qm) may be sufficient.

4−3.第1の適応関数の特徴点
式(1)の右辺は、第1項(a・Qm)と、第2項((b/fbm)・Qm)と、を有する。第1項(a・Qm)は、プロセス間の関連性を評価する項である。第2項((b/fbm)・Qm)は、「戻り」を評価する項である。第1項(a・Qm)は、関連性の強いプロセス同士をまとめるほど大きい値となる。一方、第2項((b/fbm)・Qm)は、「戻り」の数が多いほど、小さい値となり、「戻り」の数が小さいほど、大きい値となる。
4-3. Feature Point of First Adaptive Function The right side of the equation (1) has a first term (a · Qm) and a second term ((b / fbm) · Qm). The first term (a · Qm) is a term for evaluating the relationship between processes. The second term ((b / fbm) · Qm) is a term for evaluating “return”. The first term (a · Qm) is a value that increases as the highly related processes are grouped together. On the other hand, the second term ((b / fbm) · Qm) has a smaller value as the number of “returns” is larger, and a larger value as the number of “returns” is smaller.

このように、第1の適応関数f1(Qm)は、第1項(a・Qm)と、第2項((b/fbm)・Qm)と、の和で表される。そのため、第1の適応関数f1(Qm)が最大となる場合といっても、第1項が大きく第2項が比較的小さい場合と、第1項が比較的小さく第2項が大きい場合とがある。また、第1項の大きさと第2項の大きさとがほぼ等しい場合がある。第1項が大きい場合には、グループ内のプロセス同士の関連性が高い。第2項が大きい場合には、グループをまたぐ「戻り」の数が少ない。第1項と第2項とがほぼ等しい場合には、グループ内のプロセス同士の関連性が適度に高く、グループをまたぐ「戻り」の数が適度に少ない。また、ユーザーが定数a、bを選択して入力することにより、モジュラリティQを優先してグループ化を行うか、「戻り」の減少を優先してグループ化を行うかを選択できる。   Thus, the first adaptive function f1 (Qm) is represented by the sum of the first term (a · Qm) and the second term ((b / fbm) · Qm). Therefore, even when the first adaptive function f1 (Qm) is maximized, the first term is large and the second term is relatively small, and the first term is relatively small and the second term is large. There is. In some cases, the size of the first term is approximately equal to the size of the second term. When the first term is large, the relevance between the processes in the group is high. When the second term is large, the number of “returns” across the group is small. When the first term and the second term are substantially equal, the relationship between the processes in the group is moderately high, and the number of “returns” across the group is moderately small. In addition, when the user selects and inputs the constants a and b, it is possible to select whether to perform the grouping with priority on the modularity Q or to perform the grouping with priority on the reduction of “return”.

4−4.モジュラリティ優先
ここで、モジュラリティQを優先する場合について説明する。グループをまたぐ「戻り」を少なくすることより、グループに分類されるプロセス同士の関連性を高くすることを優先する場合に、モジュラリティQを優先するとよい。この場合には、式(1)において、定数aは、定数bより十分に大きい。ユーザーは、定数bに対して大きい定数aをプロセス分類装置1に入力すればよい。
4-4. Here, the case where priority is given to the modularity Q will be described. Modularity Q may be given priority when priority is given to increasing the relevance between processes classified into groups rather than reducing “returns” across groups. In this case, in formula (1), the constant a is sufficiently larger than the constant b. The user may input a constant a that is larger than the constant b to the process classification apparatus 1.

4−5.「戻り」優先
ここで、グループ間の「戻り」の数の減少を優先する場合について説明する。グループに分類されるプロセス同士の関連性を高くすることより、グループをまたぐ「戻り」を少なくすることを優先する場合に、「戻り」の数の減少を優先するとよい。この場合には、式(1)において、定数bは、定数aより十分に大きい。ユーザーは、定数aに対して大きい定数bをプロセス分類装置1に入力すればよい。
4-5. Here, a case where priority is given to a reduction in the number of “returns” between groups will be described. In the case where priority is given to reducing “returns” across groups rather than increasing the relevance between processes classified into groups, reduction of the number of “returns” may be given priority. In this case, in equation (1), the constant b is sufficiently larger than the constant a. The user may input a constant b that is larger than the constant a into the process classification device 1.

5.プロセスの分類方法
本実施形態におけるプロセスの分類方法について図4のフローチャートを用いて説明する。まず、プロセス分類装置1は、ソフトウェアのプログラムを読み込む(S101)。このとき、プロセス情報取得部110は、複数のプロセスと、プロセスとプロセスとの間の関係情報と、を読み取る。
5. Process Classification Method The process classification method in the present embodiment will be described with reference to the flowchart of FIG. First, the process classification apparatus 1 reads a software program (S101). At this time, the process information acquisition unit 110 reads a plurality of processes and relationship information between the processes.

通常、プログラムは、複数のサブルーチンを有している。サブルーチンは、本実施形態でいうところのグループに該当する。そのため、読み取った段階で、既にグループに分けられた状態である。本実施形態のプロセス分類装置1は、この読み込んだ状態を初期状態として用いることができる。または、この読み込んだ状態以外の初期状態を用いることもできる。   Usually, a program has a plurality of subroutines. The subroutine corresponds to the group in the present embodiment. Therefore, it has already been divided into groups at the stage of reading. The process classification apparatus 1 of the present embodiment can use this read state as an initial state. Alternatively, an initial state other than the read state can be used.

次に、入力受付部130の定数入力受付部131が、適応関数の計算に用いる定数の入力を受け付ける(S102)。例えば、ユーザーが入力部20に定数a、bの値を直接入力する。もしくは、定数a、bを入力したファイルを予め用意しておき、そのファイルから定数a、bの値を読み込むこととしてもよい。または、定数a、b以外で、適応関数の計算に用いる定数の入力を受け付けてもよい。例えば、定数c1、c2等である。   Next, the constant input receiving unit 131 of the input receiving unit 130 receives an input of a constant used for calculating the adaptive function (S102). For example, the user directly inputs the values of constants a and b into the input unit 20. Alternatively, a file in which the constants a and b are input may be prepared in advance, and the values of the constants a and b may be read from the file. Alternatively, an input of a constant other than the constants a and b used for calculating the adaptive function may be accepted. For example, constants c1, c2, etc.

次に、プロセス分類部120が、適応関数の計算を行う(S103)。そして、適応関数の値が収束していれば(S104:Yes)、S105に進み、適応関数の値が収束していなければ(S104:No)、S103に戻り再び適応関数を計算する。そして、適応関数が収束したところで(S104:Yes)、グループ化した結果を表示する(S105)。このグループ化した結果については、メモリM1等に保持するとよい。   Next, the process classification unit 120 calculates an adaptive function (S103). If the value of the adaptive function has converged (S104: Yes), the process proceeds to S105. If the value of the adaptive function has not converged (S104: No), the process returns to S103 and the adaptive function is calculated again. When the adaptive function has converged (S104: Yes), the grouped result is displayed (S105). The grouped result may be stored in the memory M1 or the like.

この適応関数の計算に際して、複数の初期条件を用意する。例えば、10個の初期条件である。次に、10個の初期条件のそれぞれに対して適応関数を計算する。そして、10個の適応関数のうち、最も大きい適応関数の値の初期条件に近い複数の条件を用意する。例えば、5個の2次条件である。そして、5個の2次条件に対して適応関数を計算する。そして、5個の適応関数のうち、最も大きい適応関数を採用する。適応関数を最大とするときのグループが、最も好適なグループである。この最も好適なグループは、a、b等の入力する値によって変わる。上記は、あくまで例であり、用意する初期条件、2次条件の個数は、これ以外の数値を用いてもよい。ここで、初期条件、2次条件とは、各プロセスをどのグループに属させるかを指定するバリエーションである。また、3次条件以上を用いて反復計算を実施してもよい。   In calculating the adaptive function, a plurality of initial conditions are prepared. For example, 10 initial conditions. Next, an adaptive function is calculated for each of the ten initial conditions. A plurality of conditions close to the initial condition of the value of the largest adaptive function among the 10 adaptive functions are prepared. For example, five secondary conditions. Then, an adaptive function is calculated for the five secondary conditions. And the largest adaptive function is employ | adopted among five adaptive functions. The group when the adaptation function is maximized is the most preferable group. This most suitable group varies depending on input values such as a and b. The above is only an example, and other numbers may be used as the number of prepared initial conditions and secondary conditions. Here, the initial condition and the secondary condition are variations for designating which group each process belongs to. Further, iterative calculation may be performed using a cubic condition or higher.

6.グループ化の実行(具体例)
6−1.グループ化後の状態
図5は、本実施形態のプロセス分類装置1により、ロボットアームの制御ソフトウェアのプログラムを分類した後の状態を例示する図である。つまり、プロセス分類装置1は、例えば、図1の状態から図5の状態にグループ化する。プロセス分類装置1は、図5に示すように、サブシステムS1からサブシステムS9までの9個に分類した。
6). Execution of grouping (specific example)
6-1. State after Grouping FIG. 5 is a diagram illustrating a state after the robot arm control software program is classified by the process classification device 1 of the present embodiment. That is, the process classification device 1 groups, for example, from the state of FIG. 1 to the state of FIG. As shown in FIG. 5, the process classification device 1 is classified into nine parts from the subsystem S1 to the subsystem S9.

ここで、サブシステムS1は、軌道関数作成グループである。サブシステムS2は、移動座標取得計算グループである。サブシステムS3は、角度・座標系変換グループである。サブシステムS4は、Y座標位置調整グループである。サブシステムS5は、X座標位置調整グループである。サブシステムS6は、逆運動学計算1グループである。サブシステムS7は、逆運動学計算2グループである。サブシステムS8は、逆運動学計算3グループである。サブシステムS9は、角度ラジアン変換・結果出力グループである。このように、各々のサブシステムが各々のグループに対応している。なお、逆運動学計算については、3つのグループに分かれている。   Here, the subsystem S1 is a trajectory function creation group. The subsystem S2 is a moving coordinate acquisition calculation group. The subsystem S3 is an angle / coordinate system conversion group. The subsystem S4 is a Y coordinate position adjustment group. The subsystem S5 is an X coordinate position adjustment group. Subsystem S6 is a group of inverse kinematic calculations. Subsystem S7 is an inverse kinematics calculation 2 group. Subsystem S8 is an inverse kinematics calculation 3 group. The subsystem S9 is an angle radian transform / result output group. Thus, each subsystem corresponds to each group. Inverse kinematic calculations are divided into three groups.

図6は、サブシステムS1の詳細を示す。図6に示すように、サブシステムS1の内部では、矢印F2、F3、F4、F5、F6で表される戻りが存在してる。前述のとおり、グループ化の前後で、全体図ST1における戻りの総数は変わらない。そのため、サブシステムの内部に戻りを閉じ込める代わりに、サブシステムをまたぐような戻りを生じさせないようにすることができる。   FIG. 6 shows details of the subsystem S1. As shown in FIG. 6, there are returns represented by arrows F2, F3, F4, F5, and F6 within the subsystem S1. As described above, the total number of returns in the overall view ST1 does not change before and after grouping. Therefore, instead of confining the return inside the subsystem, it is possible to prevent the return from crossing the subsystem.

図7は、サブシステムS3、S4、S5の内部を表示したものである。サブシステムS3、S4、S5の内部には、戻りは含まれていない。   FIG. 7 shows the inside of the subsystems S3, S4, and S5. No return is included in the subsystems S3, S4, and S5.

6−2.グループ化の効果
図5は、「戻り」を優先した場合の結果である。そのため、図5には、あるサブシステムから他のサブシステムに戻る「戻り」は存在しない。なお、グループ化の前後で、全体図ST1における戻りの総数は変わらない。その代わりに、例えば、図6に示すように、サブシステムS1の中のあるプロセスから別のプロセスに戻る「戻り」は存在する。つまり、「戻り」はグループの内部に閉じ込められており、グループをまたぐ「戻り」は存在しない。
6-2. Effect of Grouping FIG. 5 shows the result when priority is given to “return”. Therefore, in FIG. 5, there is no “return” for returning from one subsystem to another. Note that the total number of returns in the overall view ST1 does not change before and after grouping. Instead, as shown in FIG. 6, for example, there is a “return” to return from one process in the subsystem S1 to another process. That is, the “return” is confined within the group, and there is no “return” across the group.

本実施形態のグループ化により、上記のように、簡潔で明確なグループ分けを実施することができた。また、グループをまたぐ「戻り」がほとんど存在しない。つまり、サブシステムの独立性が高い。そのため、このソフトウェアの開発する場合には、サブシステムS1〜S9のいずれを先に開発してもよい。もちろん、別々の開発グループが別個に開発を行ってもよい。また、プログラムのテストを実施する際にも、サブシステムS1〜S9を単独で実施することができる。また、下流のサブシステムのテストを実施した後に、上流のサブシステムのテストを実施する必要はない。   By the grouping of the present embodiment, it was possible to carry out a simple and clear grouping as described above. Also, there is almost no “return” across groups. In other words, the subsystem is highly independent. Therefore, when developing this software, any of the subsystems S1 to S9 may be developed first. Of course, separate development groups may perform development separately. In addition, the subsystems S1 to S9 can be implemented independently when the program test is performed. Also, it is not necessary to test the upstream subsystem after testing the downstream subsystem.

7.Newman法によるグループ化
図8に、従来のNewman法によるグループ化を実施した結果を示す。図8に示すように、関連性の高いプロセスを複数のグループに分類することができた。しかし、図8の矢印F7、F8に示すように、グループにまたがる「戻り」がある程度発生してしまう。そのため、サブシステムの単独でのテストを実施することは容易ではない。また、担当者ごとの分担が本実施形態ほど容易ではない。
7). Grouping by Newman Method FIG. 8 shows the result of grouping by the conventional Newman method. As shown in FIG. 8, highly related processes could be classified into a plurality of groups. However, as shown by arrows F7 and F8 in FIG. 8, a “return” across the group occurs to some extent. Therefore, it is not easy to test the subsystem alone. Also, the assignment of each person in charge is not as easy as this embodiment.

8.本実施形態の効果
一般に、プログラムは、開発が進むにつれて巨大化する。また、開発が進むにつれて、初期に導入したパラメーターとは異なるパラメーターを導入することも多い。そこで、本実施形態のグループ化を実施することにより、プログラムのうち、関連性の高いプログラム群を一つのグループとして取り扱うこととする。これにより、プログラムの可読性は、向上する。また、1つのプロジェクトを、複数人で分担する場合に、担当者を決めやすい。例えば、グループ化した1つのグループを1人の担当者が開発することとすればよいからである。また、プログラム全体をテストする際にも、1つのグループ毎にテストを順に実施することができる。そのため、デバッグの作業も効率化することができる。
8). Effects of this embodiment Generally, a program becomes larger as development progresses. Also, as development progresses, parameters that are different from the parameters introduced in the initial stage are often introduced. Therefore, by carrying out the grouping of the present embodiment, a highly related program group among the programs is handled as one group. Thereby, the readability of the program is improved. In addition, when one project is shared by multiple people, it is easy to decide the person in charge. For example, one person in charge may develop one grouped group. In addition, when testing the entire program, the tests can be sequentially performed for each group. Therefore, debugging work can be made more efficient.

9.変形例
9−1.記憶媒体
本実施形態では、プロセス分類装置1およびプロセス分類プログラムP1について説明した。しかし、プロセス分類プログラムP1の記録された記憶媒体にももちろん適用することができる。この記憶媒体は、プロセス分類プログラムP1を記憶したコンピューター読み取り可能な記憶媒体である。記憶媒体として、例えば、CDROM、DVDROM等が挙げられる。もちろん、これ以外のものであってもよい。
9. Modification 9-1. Storage Medium In the present embodiment, the process classification device 1 and the process classification program P1 have been described. However, the present invention can also be applied to a storage medium in which the process classification program P1 is recorded. This storage medium is a computer-readable storage medium that stores the process classification program P1. Examples of the storage medium include CDROM and DVDROM. Of course, it may be other than this.

9−2.依存元および依存先
本実施形態では、依存元と依存先とを有する依存関係情報を用いることとした。しかし、依存元と依存先とに分かれていない双方向の関係であっても、同様に適用することができる。
9-2. Dependency Source and Dependency Destination In this embodiment, dependency relationship information having a dependency source and a dependency destination is used. However, even a bidirectional relationship that is not divided into a dependency source and a dependency destination can be similarly applied.

10.本実施形態のまとめ
以上詳細に説明したように、本実施形態のプロセス分類装置1は、第1の適応関数f1(Qm)を用いて多数のプロセスをグループ化する装置である。これにより、プロセス間の関連性と「戻り」の数との双方を考慮してグループ化を実施することができる。このグループ化により、多数のプロセスやプログラムの可読性を向上させることができる。また、工程やプログラムの分割を好適に行うことができる。そのため、プログラムの開発を各担当者に好適に分配して開発を行うことができる。そして、テストも順に実施することができる。
10. Summary of the present embodiment As described in detail above, the process classification device 1 of the present embodiment is a device that groups a number of processes using the first adaptive function f1 (Qm). As a result, the grouping can be performed in consideration of both the relationship between the processes and the number of “returns”. This grouping can improve the readability of many processes and programs. In addition, it is possible to suitably divide processes and programs. Therefore, the development of the program can be suitably distributed to each person in charge. Tests can also be performed in order.

なお、本実施例は単なる例示にすぎない。したがって当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。   In addition, a present Example is only a mere illustration. Therefore, naturally, various improvements and modifications can be made without departing from the scope of the invention.

(第2の実施形態)
第2の実施形態について説明する。本実施形態では、第1の実施形態の適応関数とは異なる適応関数を用いる。それ以外の点については、第1の実施形態と同様である。そのため、適応関数について説明する。
(Second Embodiment)
A second embodiment will be described. In the present embodiment, an adaptation function different from the adaptation function of the first embodiment is used. The other points are the same as in the first embodiment. Therefore, the adaptive function will be described.

1.適応関数(フィットネス関数)
1−1.第2の適応関数
本実施形態では、次の第2の適応関数を用いる。

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数(自然数)
n:2以上の自然数
この第2の適応関数f2(Qm)を用いることにより、グループ数の増減とプロセスの分類とを同時に行うことができる。 1. Adaptive function (fitness function)
1-1. Second Adaptive Function In this embodiment, the following second adaptive function is used.
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: Positive constant (natural number)
n: Natural number equal to or greater than 2 By using the second adaptive function f2 (Qm), increase / decrease of the number of groups and classification of processes can be performed simultaneously.

1−2.グループ数(第2の適応関数)
式(3)は、グループ関数Grmを有している。グループ関数Grmは、定数c3を有している。そして、定数c3については、ユーザーから入力を受けるようになっている。変数Grが定数c3に近いほど、グループ関数Grmは大きい値をとる。そのため、反復計算を繰り返すにつれ、変数Grは、定数c3に近い自然数となる。
1-2. Number of groups (second adaptive function)
Equation (3) has a group function Grm. The group function Grm has a constant c3. The constant c3 is input from the user. The closer the variable Gr is to the constant c3, the larger the group function Grm. Therefore, as the iterative calculation is repeated, the variable Gr becomes a natural number close to the constant c3.

例えば、ユーザーがグループ数を「5」程度にしたいと考えた場合に、定数c3に「5」を入力する。グループ数入力受付部132は、ユーザーによる「5」の入力を受け付ける。そして、グループ数入力受付部132は、定数c3に「5」を入力する。   For example, when the user wants to set the number of groups to about “5”, “5” is input to the constant c3. The group number input receiving unit 132 receives an input of “5” by the user. Then, the group number input receiving unit 132 inputs “5” to the constant c3.

第2の適応関数f2(Qm)を用いて、反復計算を行うにしたがって、変数Grは、例えば、「4」、「5」、「6」等の値をとる。モジュラリティQや、フィードバック数fb1の影響もあるため、必ずしも変数Grの値が「5」のままであるとは限らない。グループ関数Grmの関数形を考えると、変数Grの値は、「5」に近い自然数になりやすい傾向がある。   As the iterative calculation is performed using the second adaptive function f2 (Qm), the variable Gr takes values such as “4”, “5”, “6”, and the like. Because of the influence of the modularity Q and the feedback number fb1, the value of the variable Gr does not always remain “5”. Considering the function form of the group function Grm, the value of the variable Gr tends to be a natural number close to “5”.

このようにプロセス分類部120は、複数のプロセスが属するグループの数を増減させつつ、グループ化を実施する。すなわち、プロセス分類部120は、グループ数を増減させるグループ数増減機能を有する。   In this way, the process classification unit 120 performs grouping while increasing or decreasing the number of groups to which a plurality of processes belong. That is, the process classification unit 120 has a group number increasing / decreasing function for increasing / decreasing the number of groups.

2.グループ化の実行(具体例)
図9に第2の適応関数を用いた結果を示す。図9は、式(3)において、定数c3の値を5とした場合の結果である。図9に示すように、サブシステムが6個作成されている。
2. Execution of grouping (specific example)
FIG. 9 shows the results using the second adaptive function. FIG. 9 shows the result when the value of the constant c3 is set to 5 in Equation (3). As shown in FIG. 9, six subsystems are created.

図10は、サブシステムのうち、逆運動学計算・角度ラジアン変換・結果出力グループを展開したところを示す図である。   FIG. 10 is a diagram showing a state where the inverse kinematic calculation, the angle radian transform, and the result output group are expanded in the subsystem.

第2の適応関数f2(Qm)は、第1の適応関数f1(Qm)と関数形が異なっている。しかし、モジュラリティQおよびフィードバック数fb1の双方を考慮したグループ化を実施することができる。また、第2の適応関数f2(Qm)を用いることにより、ユーザーは、グループ数の大まかな指定を行うことができる。   The second adaptive function f2 (Qm) is different in function form from the first adaptive function f1 (Qm). However, grouping considering both the modularity Q and the feedback number fb1 can be performed. Also, by using the second adaptive function f2 (Qm), the user can roughly specify the number of groups.

(第3の実施形態)
第3の実施形態について説明する。本実施形態では、第1の実施形態の適応関数とは異なる適応関数を用いる。それ以外の点については、第1の実施形態と同様である。そのため、適応関数について説明する。
(Third embodiment)
A third embodiment will be described. In the present embodiment, an adaptation function different from the adaptation function of the first embodiment is used. The other points are the same as in the first embodiment. Therefore, the adaptive function will be described.

1.適応関数(フィットネス関数)
1−1.第3の適応関数
本実施形態では、次の第3の適応関数を用いる。

Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数(自然数)
この第3の適応関数f3(Qm)を用いることにより、グループ数の増減とプロセスの分類とを同時に行うことができる。 1. Adaptive function (fitness function)
1-1. Third Adaptive Function In the present embodiment, the following third adaptive function is used.
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: Positive constant (natural number)
By using the third adaptive function f3 (Qm), the increase / decrease of the number of groups and the classification of processes can be performed simultaneously.

1−2.グループ数(第3の適応関数)
式(5)は、グループ関数Grmを有している。グループ関数Grmは、定数c3を有している。そして、定数c3については、ユーザーから入力を受けるようになっている。変数Grが定数c3に近いほど、グループ関数Grmは大きい値をとる。そのため、反復計算を繰り返すにつれ、変数Grは、定数c3に近い自然数となる。このように、グループ関数Grmにより影響を受ける点は、第2の実施形態と同様である。
1-2. Number of groups (third adaptive function)
Equation (5) has a group function Grm. The group function Grm has a constant c3. The constant c3 is input from the user. The closer the variable Gr is to the constant c3, the larger the group function Grm. Therefore, as the iterative calculation is repeated, the variable Gr becomes a natural number close to the constant c3. As described above, the point affected by the group function Grm is the same as in the second embodiment.

第3の適応関数f3(Qm)は、第2の適応関数f2(Qm)と関数形が異なっている。しかし、モジュラリティQおよびフィードバック数fb1の双方を考慮したグループ化を実施することができる。また、ユーザーは、グループ数の大まかな指定をすることもできる。   The third adaptive function f3 (Qm) is different in function form from the second adaptive function f2 (Qm). However, grouping considering both the modularity Q and the feedback number fb1 can be performed. The user can also specify a rough number of groups.

(第4の実施形態)
第4の実施形態について説明する。第1の実施形態から第3の実施形態まででは、ロボットアームの制御ソフトウェアのプログラムをグループ化することとした。しかし、その他に、工業製品の開発工程のグループ化を実施してもよい。
(Fourth embodiment)
A fourth embodiment will be described. From the first embodiment to the third embodiment, the robot arm control software programs are grouped. However, the industrial product development process may be grouped.

例えば、冷蔵庫の開発工程をグループ化することを考える。この開発工程では、前工程の後に後工程を実施するようになっている。そして、前工程と後工程とは、矢印で表される結線で接続されている。また、後工程の結果を前工程にフィードバックする「戻り」がある。そのため、第1の実施形態から第3の実施形態までで説明した第1の適応関数f1(Qm)や、第2の適応関数f2(Qm)や、第3の適応関数f3(Qm)を用いてグループ化することができる。   For example, consider grouping the development process of a refrigerator. In this development process, a post process is performed after the pre process. The pre-process and the post-process are connected by a connection represented by an arrow. In addition, there is a “return” that feeds back the result of the subsequent process to the previous process. Therefore, the first adaptive function f1 (Qm), the second adaptive function f2 (Qm), or the third adaptive function f3 (Qm) described in the first to third embodiments is used. Can be grouped together.

例えば、このようなグループ化を実施することにより、グループ間の戻りがなく、グループ数が「7」という結果が得られたとする。すると、開発の人員を7つのグループに分けて、各々のグループが開発することとすればよい。このように、あるグループの結果を他のグループにフィードバックすることにより、再度同じプロセスを踏襲することを回避することができる。ただし、同じグループ内で同じプロセスを何度もトライする場合もある。また、あるグループの結果を他のグループにフィードバックする戻りが多少存在するとしても、その戻りの数を低減させることができれば、開発期間の短縮という効果は得られる。   For example, by performing such grouping, it is assumed that there is no return between groups and the result is that the number of groups is “7”. Then, it suffices to divide the development personnel into seven groups and develop each group. In this way, by feeding back the result of one group to another group, it is possible to avoid following the same process again. However, the same process may be tried many times within the same group. Even if there are some returns that feed back the results of one group to other groups, the effect of shortening the development period can be obtained if the number of returns can be reduced.

このように、後工程の結果を前工程にフィードバックする戻りを好適に管理することができる。また、開発期間の短縮を行うことができる。以上のように、工業製品の開発工程を設計する設計工程を好適に行うことができる。   In this way, it is possible to suitably manage the return in which the result of the post-process is fed back to the pre-process. In addition, the development period can be shortened. As described above, a design process for designing an industrial product development process can be suitably performed.

また、上記のグループ化について、同様に、シミュレーションモデルに適用することもできる。上流から下流へ実行される多数のプロセスがあり、戻りが存在するからである。   Similarly, the above grouping can be applied to a simulation model. This is because there are many processes that run from upstream to downstream, and there are returns.

P1…プログラム
1…プロセス分類装置
10…処理装置
20…入力部
30…表示部
C1…CPU
M1…メモリ
100…制御部
110…プロセス情報取得部
120…プロセス分類部
130…入力受付部
200…不揮発性メモリ
P1 ... Program 1 ... Process classification device 10 ... Processing device 20 ... Input unit 30 ... Display unit C1 ... CPU
M1 ... Memory 100 ... Control unit 110 ... Process information acquisition unit 120 ... Process classification unit 130 ... Input reception unit 200 ... Non-volatile memory

Claims (9)

複数のプロセスと、前記複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得部と、
前記複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類部と、
を有し、
前記プロセス分類部は、
次式で表される
Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
a,b:正の定数
c1:正の定数
c2:正の定数
適応関数f1(Qm)を用いてプロセスを分類すること
を特徴とするプロセス分類装置。
A process information acquisition unit for acquiring a plurality of processes, and processing order information representing a processing order of the plurality of processes;
And processes the classification section for classifying the plurality of process to one of multiple groups,
Have
The process classification unit
It is expressed by the following formula
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
a, b: positive constant
c1: Positive constant
c2: A process classification apparatus for classifying processes using a positive constant adaptive function f1 (Qm).
複数のプロセスと、前記複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得部と、
前記複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類部と、
を有し、
前記プロセス分類部は、
次式で表される
Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
n:2以上の自然数
適応関数f2(Qm)を用いて、グループ数の増減と前記プロセスの分類とを同時に行うこと
を特徴とするプロセス分類装置。
A process information acquisition unit for acquiring a plurality of processes, and processing order information representing a processing order of the plurality of processes;
And processes the classification section for classifying the plurality of process to one of multiple groups,
Have
The process classification unit
It is expressed by the following formula
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: Positive constant
n: A process classification apparatus that performs increase / decrease in the number of groups and classification of the processes at the same time using a natural number adaptation function f2 (Qm) of 2 or more.
複数のプロセスと、前記複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得部と、
前記複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類部と、
を有し、
前記プロセス分類部は、
次式で表される
Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
適応関数f3(Qm)を用いて、グループ数の増減と前記プロセスの分類とを同時に行うこと
を特徴とするプロセス分類装置。
A process information acquisition unit for acquiring a plurality of processes, and processing order information representing a processing order of the plurality of processes;
And processes the classification section for classifying the plurality of process to one of multiple groups,
Have
The process classification unit
It is expressed by the following formula
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: A process classification apparatus that performs increase / decrease of the number of groups and classification of the processes at the same time using a positive constant adaptation function f3 (Qm).
複数のプロセスと、前記複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得機能と、
前記複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類機能と、
をコンピューターに実現させるためのプロセス分類プログラムにおいて、
前記プロセス分類機能は、
次式で表される
Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
a,b:正の定数
c1:正の定数
c2:正の定数
適応関数f1(Qm)を用いてプロセスを分類すること
を特徴とするプロセス分類プログラム。
A process information acquisition function for acquiring a plurality of processes and processing order information representing the processing order of the plurality of processes;
A process classification function for classifying the plurality of processes into one of a plurality of groups;
In the process classification program for realizing
The process classification function is
It is expressed by the following formula
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
a, b: positive constant
c1: Positive constant
c2: A process classification program for classifying processes using a positive constant adaptation function f1 (Qm).
複数のプロセスと、前記複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得機能と、
前記複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類機能と、
をコンピューターに実現させるためのプロセス分類プログラムにおいて、
前記プロセス分類機能は、
次式で表される
Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
n:2以上の自然数
適応関数f2(Qm)を用いて、グループ数の増減と前記プロセスの分類とを同時に行うこと
を特徴とするプロセス分類プログラム。
A process information acquisition function for acquiring a plurality of processes and processing order information representing the processing order of the plurality of processes;
A process classification function for classifying the plurality of processes into one of a plurality of groups;
In the process classification program for realizing
The process classification function is
It is expressed by the following formula
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: Positive constant
n: A process classification program for performing increase / decrease in the number of groups and classification of the processes at the same time using a natural number adaptation function f2 (Qm) of 2 or more.
複数のプロセスと、前記複数のプロセスの処理順序を表す処理順序情報と、を取得するプロセス情報取得機能と、
前記複数のプロセスを複数のグループのうちのいずれかに分類するプロセス分類機能と、
をコンピューターに実現させるためのプロセス分類プログラムにおいて、
前記プロセス分類機能は、
次式で表される
Figure 0006324163
Q:Newman法におけるモジュラリティ
fb1:下流のグループのプロセスから上流のグループのプロセスに戻るフィードバックの個数
Gr:グループ数
a,b:正の定数
c1:正の定数
c2:正の定数
c3:正の定数
適応関数f3(Qm)を用いて、グループ数の増減と前記プロセスの分類とを同時に行うこと
を特徴とするプロセス分類プログラム。
A process information acquisition function for acquiring a plurality of processes and processing order information representing the processing order of the plurality of processes;
A process classification function for classifying the plurality of processes into one of a plurality of groups;
In the process classification program for realizing
The process classification function is
It is expressed by the following formula
Figure 0006324163
Q: Modularity in the Newman method
fb1: Number of feedbacks returning from the downstream group process to the upstream group process
Gr: Number of groups
a, b: positive constant
c1: Positive constant
c2: positive constant
c3: A process classification program for performing increase / decrease of the number of groups and classification of the processes at the same time by using a positive constant adaptation function f3 (Qm).
請求項4から請求項6までのいずれか1項に記載のプロセス分類プログラムにおいて、
前記複数のプロセスは、
シミュレーションモデルにおける処理要素であること
を特徴とするプロセス分類プログラム。
In the process classification program according to any one of claims 4 to 6,
The plurality of processes are:
A process classification program characterized by being a processing element in a simulation model.
請求項4から請求項6までのいずれか1項に記載のプロセス分類プログラムにおいて、
前記複数のプロセスは、
工業製品の開発工程における工程であること
を特徴とするプロセス分類プログラム。
In the process classification program according to any one of claims 4 to 6,
The plurality of processes are:
A process classification program characterized by being a process in the development process of industrial products.
請求項4から請求項8までのいずれか1項に記載のプロセス分類プログラムが記憶されたものであってコンピューターで読み取り可能なことを特徴とする記憶媒体。 A storage medium in which the process classification program according to any one of claims 4 to 8 is stored and readable by a computer.
JP2014069902A 2014-03-28 2014-03-28 Process classification apparatus, process classification program, and storage medium Active JP6324163B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014069902A JP6324163B2 (en) 2014-03-28 2014-03-28 Process classification apparatus, process classification program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014069902A JP6324163B2 (en) 2014-03-28 2014-03-28 Process classification apparatus, process classification program, and storage medium

Publications (2)

Publication Number Publication Date
JP2015191566A JP2015191566A (en) 2015-11-02
JP6324163B2 true JP6324163B2 (en) 2018-05-16

Family

ID=54425977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014069902A Active JP6324163B2 (en) 2014-03-28 2014-03-28 Process classification apparatus, process classification program, and storage medium

Country Status (1)

Country Link
JP (1) JP6324163B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290775A (en) * 2020-04-02 2020-06-16 麒麟软件有限公司 Automatic classification method and system for software package types of Linux system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07141166A (en) * 1993-11-19 1995-06-02 Ricoh Co Ltd Program analyzing method using cluster analysis

Also Published As

Publication number Publication date
JP2015191566A (en) 2015-11-02

Similar Documents

Publication Publication Date Title
US10963783B2 (en) Technologies for optimized machine learning training
KR102165943B1 (en) Machine-learning design enablement platform
CN111492381A (en) Simultaneous training of functional subnetworks of a neural network
CN111832739A (en) Data processing method and related product
US11423284B2 (en) Subgraph tile fusion in a convolutional neural network
US20160124731A1 (en) Automated code-generation for cross-language development, testing, and integration
US8744811B2 (en) Harness design support method and harness design support apparatus
JP4853312B2 (en) Behavioral synthesis apparatus, method, and program having test bench generation function
CN108876893A (en) Method, apparatus, system and the computer storage medium of three-dimensional facial reconstruction
WO2021025075A1 (en) Training device, inference device, training method, inference method, program, and computer-readable non-transitory storage medium
JP2020107042A (en) Learning model generation device, learning model generation method, and program
EP3667544B1 (en) Designing a structural product
US20170255724A1 (en) Enhanced Global Design Variables Used In Structural Topology Optimization Of A Product In An Impact Event
JP6324163B2 (en) Process classification apparatus, process classification program, and storage medium
CN109906472A (en) It is dominant the improved system and method for the element quality in surface grids for three-dimensional quadrangle
Li et al. Mimonet: Multi-input multi-output on-device deep learning
WO2022174499A1 (en) Method and apparatus for predicting text prosodic boundaries, computer device, and storage medium
US20170293701A1 (en) Goal-driven computer aided design workflow
JP7463346B2 (en) Tool and method for designing and validating data flow systems with formal models - Patents.com
US10706193B1 (en) Computer processing during simulation of a circuit design
JP2018092374A5 (en)
JP2011186991A (en) Method, program and system for solving ordinary differential equation
US8627273B2 (en) Model checking of liveness property in a phase abstracted model
US8065641B2 (en) Automatically creating manufacturing test rules pertaining to an electronic component
US9256405B1 (en) Code generation based on regional upsampling-based delay insertion

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180308

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180410

R150 Certificate of patent or registration of utility model

Ref document number: 6324163

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250