JPWO2012176925A1 - Configuration management apparatus, configuration management method, and program recording medium for storing configuration management program - Google Patents
Configuration management apparatus, configuration management method, and program recording medium for storing configuration management program Download PDFInfo
- Publication number
- JPWO2012176925A1 JPWO2012176925A1 JP2013521658A JP2013521658A JPWO2012176925A1 JP WO2012176925 A1 JPWO2012176925 A1 JP WO2012176925A1 JP 2013521658 A JP2013521658 A JP 2013521658A JP 2013521658 A JP2013521658 A JP 2013521658A JP WO2012176925 A1 JPWO2012176925 A1 JP WO2012176925A1
- Authority
- JP
- Japan
- Prior art keywords
- devices
- value
- type
- search
- provisional
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0623—Item investigation
- G06Q30/0625—Directed, with specific intent or strategy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/20—Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
Abstract
異なる2つの指標を持つ複数の種類の機器の組合せを導出する構成管理装置において、一方の指標の合計が所定値以上で、他方の指標の合計が最小となる機器の組み合わせを、分岐限定法を用いた検索により、少ない計算量で導出する。In a configuration management apparatus for deriving a combination of a plurality of types of devices having two different indexes, a combination of devices in which the sum of one index is equal to or greater than a predetermined value and the sum of the other index is minimum is determined by a branch and bound method. Derived with a small amount of calculation by the search used.
Description
本発明は、機器の組み合わせを導出する構成管理装置、構成管理方法、及び構成管理プログラムに関し、特に、所定の条件を満たす機器の組み合わせを導出する構成管理装置、構成管理方法、及び構成管理プログラムに関する。 The present invention relates to a configuration management device, a configuration management method, and a configuration management program for deriving a combination of devices, and more particularly to a configuration management device, a configuration management method, and a configuration management program for deriving a combination of devices that satisfy a predetermined condition. .
特許文献1には、性能要件及び価格要件を所定の誤差の範囲で満たす構成を提案対象の構成として出力するシステム提案方法及びシステム提案装置が記載されている。本文献によれば、システム提案装置のシステム構成定義部が、性能評価対象システムの構成要素、構成要素の接続関係、アプリケーションの挙動、各資源の仕様及びパラメタ、性能要件、価格要件を受け付ける。構成要素としては、たとえばデータベース管理システムやサーバ側アプリケーション、クライアント側アプリケーションがある。構成要素の接続関係は、構成要素がどのようにネットワーク接続されているかを示す。アプリケーションの挙動は、例えば、処理のステップ数や、DB(Database)検索関数及びDB更新関数の発行回数である。各資源の仕様及びパラメタは、コンピュータのCPU(Central Processing Unit)数やMIPS(Million Instructions Per Second)値、ディスクのシーク時間、データベース管理システムの設定パラメタ等である。システムの性能は、応答時間である。性能要件は、例えば応答時間5秒のような、システム提案装置が構成を出力するシステムの性能を表す値である。価格要件は、例えば1000万円のような、システム提案装置が構成を出力するシステムの価格を表す値である。
本文献のシステム提案装置の最適構成算出部は、前記性能評価対象システムの構成要素、構成要素の接続関係、アプリケーションの挙動、各資源の仕様及びパラメタを組み合わせた構成を策定し、各構成に対する応答時間を性能シミュレータによって算出する。また、最適構成算出部は、策定した各構成のハードウェア及びソフトウェアの合計価格を算出する。算出した各構成の応答時間と合計価格を基に、最適構成算出部は、性能要件と価格要件を所定の誤差範囲で満たす構成を出力する。これにより、性能要件と価格要件を満たす構成を短時間で出力することができる。
特許文献2には、予め設定された条件に合致する構成要素(部品)を抽出してシステムの構成を決定し、システムの構成を出力するシステム構築機構が記載されている。部品は、例えば、CPUやメモリ、ディスクである。部品を抽出するための条件は、CPUのクロック数や個数、メモリの容量、ディスクの容量等のシステム仕様や、予算や納入日などのユーザ要件である。本文献のシステム構築機構は、抽出機能と判定機能を含む。
抽出機能は、部品諸元表から、システム仕様を満たすCPUやメモリ、ディスクなどの部品を抽出する。判定機能は、抽出機能が抽出した部品から、ユーザ要件のうちの納入期限以前に納入することができない部品を除く。また、判定機能は、採用すると価格の制限を満たさなくなる部品を除く。システム構築機構は、除かれなかった部品の情報を出力する。
特許文献3には、トランザクションの処理時間が所定の応答時間を超える確率が所定の値以下であるシステム構成で、価格が最小になるものを算出する構成導出方法及び構成導出装置が記載されている。特許文献3の構成導出装置は、性能を表す関数である性能関数が制約条件を満たし、かつ、目的関数としての価格関数を最小にするシステム構成を、ラグランジュの未定乗数法により求める。性能関数及び価格関数は、システム構成データを変数とする関数である。制約条件は、性能保証対象のジョブ実行時に、トランザクションの処理時間が、応答時間A以上である確率がB以下であることである。システム構成パラメータは、CPU性能S、CPU数NCPU、全メモリ容量M、I/O(Input/Output)処理速度I、同時実行可能ジョブ数NJである。
特許文献3の構成導出装置は、CPU数を1から増設可能な最大CPU数まで1ずつ増加させながら、次の処理を繰り返す。特許文献3の構成導出装置は、まず、CPU数NCPUを固定した時の最適システムパラメータ(S、M、I)をラグランジュの未定乗数法により算出する。特許文献3の構成導出装置は、次に、計算で得られた最適システムパラメータに対する距離が最も小さい現実のシステムパラメータセットを、価格データから探索する。
特許文献3の構成導出装置は、CPU数を1から増設可能な最大CPU数まで1ずつ増加させて導出した各CPU数における最適化されたシステム構成から、価格が最低になるシステム構成のパラメータセット(NCPU、S、M、I)を決定する。特許文献3の構成導出装置は、次に、算出したシステム変数(S、NCPU、M、I)に対して、同時実行可能ジョブ数NJを算出する。
The optimal configuration calculation unit of the system proposing device of this document formulates a configuration combining the components of the performance evaluation target system, the connection relationship of the components, the behavior of the application, the specifications and parameters of each resource, and the response to each configuration The time is calculated by the performance simulator. In addition, the optimum configuration calculation unit calculates the total price of the hardware and software of each formulated configuration. Based on the calculated response time and total price of each configuration, the optimal configuration calculation unit outputs a configuration that satisfies the performance requirement and the price requirement within a predetermined error range. Thereby, the structure which satisfy | fills performance requirements and price requirements can be output in a short time.
The extraction function extracts components such as a CPU, memory, and disk that satisfy the system specifications from the component specification table. The judgment function excludes parts that cannot be delivered before the delivery deadline in the user requirements from the parts extracted by the extraction function. In addition, the judgment function excludes parts that would not satisfy the price limit when adopted. The system construction mechanism outputs information on the parts that have not been removed.
The configuration deriving device of
The configuration deriving device of
特許文献1のシステム提案装置は、システムの構成要素、各構成要素間の接続関係、アプリケーションの挙動、各資源の使用及びパラメタの指定をそれぞれ組み合わせた複数の構成を策定する。そして、本システム提案装置は、策定した全ての構成の応答時間及び価格を算出し、性能要件及び価格要件を所定の誤差の範囲で満たす構成を出力する。
従って、特許文献1の技術には、一定以上の性能を満たす最も安価な構成を出力することができないという問題があった。
特許文献2のシステム構築機構は、部品の種類毎に定められた条件を満たす部品を種類毎に抽出し、抽出した部品から種類毎に一つずつ選択した部品の合計価格が、所定の値以下になる部品の組み合わせを選択する。
特許文献2の技術には、2種類の指標を持つ複数種類の部品を組み合わせて、組み合わせに含まれる部品の一方の指標の合計値が所定値以上である組み合わせの中で、他方の指標の合計値が最小である組み合わせを選択することができないという問題があった。
特許文献3のシステム構成導出装置は、1から増設可能な最大CPU数までの全てのCPU数について、最適システム構成パラメータを算出し、その中から価格が最低になるシステム構成パラメータセットを選択していた。
特許文献3の技術には、各CPUの性能が同一であることを前提としているという問題があった。
本発明の目的は、異なる2つの指標を持つ複数の種類の機器の組合せに対して、一方の指標の合計が所定値以上で、他方の指標の合計が最小となる機器の組み合わせを、少ない計算量で導出する構成管理装置を提供することにある。The system proposing device of
Therefore, the technique of
The system construction mechanism of
In the technique of
The system configuration deriving device of
The technique of
An object of the present invention is to calculate a combination of a plurality of types of devices having two different indexes with a small number of device combinations in which the total of one index is equal to or greater than a predetermined value and the total of the other index is minimum. The object is to provide a configuration management device derived by quantity.
本発明の構成管理装置は、複数(J)の種類毎に第1の指標値P1と第2の指標値P2に関連付けられる機器で構成され、P1の合計が必要値N以上である機器の集合が充足集合、P2の合計の充足集合中の最小値が最小合計である場合に、機器の種類毎に、P1及びP2を記憶する機器記憶手段と、初期値が前記最小合計以上の値である暫定解と、P2の合計が前記暫定解となる機器の集合である暫定集合を表す情報を記憶する暫定解記憶手段と、1乃至j番目(jは1乃至J−1のいずれかの整数)の種類の機器の台数であるn(1)からn(j)を記憶する探索範囲記憶手段と、Nを入力して、n(j+1)を、0から、それぞれn(1)からn(j)台の1乃至j番目の種類の機器とj+1番目の種類の機器のみで充足集合を構成したときのj+1番目の種類の機器の最小台数p(j+1)以下の所定値(j+1)まで順次増加させながら、n(j+1)を前記探索範囲記憶手段に格納して、N及び1乃至j+1番目の種類の機器のP1及びP2から、1乃至j+1番目の種類の機器の台数が、前記探索範囲記憶手段に格納されているn(1)からn(j+1)である充足集合の集まりである前記探索範囲(j+1)に含まれる集合のP2の合計の下限値を、各機器の台数が整数であるとの制約を外して算出し、前記下限値が前記暫定解より小さい場合、前記探索範囲(j+1)から、P2の合計が前記暫定解より小さい充足集合を抽出し、抽出した前記充足集合のP2の合計及び抽出した前記充足集合を表す情報を、暫定解及び暫定集合として前記暫定解記憶手段に格納し、前記下限値が前記暫定解より大きい場合、前記探索範囲(j+1)の探索を行わない探索実行手段と、前記探索実行手段による探索の実行後、前記暫定集合を最小集合として出力する出力手段とを含む。
本発明の構成管理方法は、複数(J)の種類毎に第1の指標値P1と第2の指標値P2に関連付けられる機器で構成され、P1の合計が必要値N以上である機器の集合が充足集合、P2の合計の充足集合中の最小値が最小合計である場合に、機器の種類毎に、P1及びP2を機器記憶手段に記憶し、初期値が前記最小合計以上の値である暫定解と、P2の合計が前記暫定解となる機器の集合である暫定集合を表す情報を暫定解記憶手段に記憶し、1乃至j番目(jは1乃至J−1のいずれかの整数)の種類の機器の台数であるn(1)からn(j)を探索範囲記憶手段に記憶し、Nを入力して、n(j+1)を、0から、それぞれn(1)からn(j)台の1乃至j番目の種類の機器とj+1番目の種類の機器のみで充足集合を構成したときのj+1番目の種類の機器の最小台数p(j+1)以下の所定値(j+1)まで順次増加させながら、n(j+1)を前記探索範囲記憶手段に格納して、N及び1乃至j+1番目の種類の機器のP1及びP2から、1乃至j+1番目の種類の機器の台数が、前記探索範囲記憶手段に格納されているn(1)からn(j+1)である充足集合の集まりである前記探索範囲(j+1)に含まれる集合のP2の合計の下限値を、各機器の台数が整数であるとの制約を外して算出し、前記下限値が前記暫定解より小さい場合、前記探索範囲(j+1)から、P2の合計が前記暫定解より小さい充足集合を抽出し、抽出した前記充足集合のP2の合計及び抽出した前記充足集合を表す情報を、暫定解及び暫定集合として前記暫定解記憶手段に格納し、前記下限値が前記暫定解より大きい場合、前記探索範囲(j+1)の探索を行わず、前記探索の実行後、前記暫定集合を最小集合として出力する。
本発明の構成管理プログラムは、複数(J)の種類毎に第1の指標値P1と第2の指標値P2に関連付けられる機器で構成され、P1の合計が必要値N以上である機器の集合が充足集合、P2の合計の充足集合中の最小値が最小合計である場合に、コンピュータを、機器の種類毎に、P1及びP2を記憶する機器記憶手段と、初期値が前記最小合計以上の値である暫定解と、P2の合計が前記暫定解となる機器の集合である暫定集合を表す情報を記憶する暫定解記憶手段と、1乃至j番目(jは1乃至J−1のいずれかの整数)の種類の機器の台数であるn(1)からn(j)を記憶する探索範囲記憶手段と、Nを入力して、n(j+1)を、0から、それぞれn(1)からn(j)台の1乃至j番目の種類の機器とj+1番目の種類の機器のみで充足集合を構成したときのj+1番目の種類の機器の最小台数p(j+1)以下の所定値(j+1)まで順次増加させながら、n(j+1)を前記探索範囲記憶手段に格納して、N及び1乃至j+1番目の種類の機器のP1及びP2から、1乃至j+1番目の種類の機器の台数が、前記探索範囲記憶手段に格納されているn(1)からn(j+1)である充足集合の集まりである前記探索範囲(j+1)に含まれる集合のP2の合計の下限値を、各機器の台数が整数であるとの制約を外して算出し、前記下限値が前記暫定解より小さい場合、前記探索範囲(j+1)から、P2の合計が前記暫定解より小さい充足集合を抽出し、抽出した前記充足集合のP2の合計及び抽出した前記充足集合を表す情報を、暫定解及び暫定集合として前記暫定解記憶手段に格納し、前記下限値が前記暫定解より大きい場合、前記探索範囲(j+1)の探索を行わない探索実行手段と、前記探索実行手段による探索の実行後、前記暫定集合を最小集合として出力する出力手段として動作させる。The configuration management apparatus of the present invention is configured of devices associated with the first index value P1 and the second index value P2 for each of a plurality (J) of types, and a set of devices in which the total of P1 is equal to or greater than the necessary value N Is the satisfaction set, and the minimum value in the total satisfaction set of P2 is the minimum total, the device storage means for storing P1 and P2 for each device type, and the initial value is a value equal to or greater than the minimum total Temporary solution storage means for storing information representing a provisional solution and a provisional set in which the sum of P2 is a set of devices that is the provisional solution, and 1st to jth (j is an integer from 1 to J-1) Search range storage means for storing n (1) to n (j), which is the number of devices of the same type, and N, and n (j + 1) is changed from 0 to n (1) to n (j ) Only the 1st to jth types of devices and the j + 1th type of devices form a satisfaction set. N (j + 1) is stored in the search range storage means while sequentially increasing to a predetermined value (j + 1) that is less than or equal to the minimum number p (j + 1) of the j + 1th type of devices, and N and 1 to j + 1th The search that is a collection of satisfying sets in which the number of the first to j + 1 type devices from P1 and P2 of the types of devices is n (1) to n (j + 1) stored in the search range storage means. The lower limit value of the total of P2 of the set included in the range (j + 1) is calculated by removing the restriction that the number of devices is an integer, and when the lower limit value is smaller than the provisional solution, the search range (j + 1) ) From which the sum of P2 is smaller than the provisional solution, and the information indicating the sum of P2 of the extracted fulfillment set and the extracted satisfaction set is stored in the provisional solution storage means as a provisional solution and provisional set. Store Search execution means that does not search the search range (j + 1) when the lower limit value is larger than the provisional solution; and output means that outputs the provisional set as a minimum set after the search is executed by the search execution means; including.
The configuration management method according to the present invention includes a set of devices each of which is associated with the first index value P1 and the second index value P2 for each of a plurality of types (J), and the total of P1 is equal to or greater than the necessary value N. Is the satisfaction set and the minimum value in the total satisfaction set of P2 is the minimum total, P1 and P2 are stored in the device storage means for each type of device, and the initial value is equal to or greater than the minimum total. Information representing a provisional solution and a provisional set in which the sum of P2 is a set of devices for which the total of P2 is the provisional solution is stored in the provisional solution storage means, and 1st to jth (j is an integer from 1 to J-1) N (1) to n (j), which are the number of devices of the type, are stored in the search range storage means, N is input, n (j + 1) is changed from 0 to n (1) to n (j ) When a sufficiency set is composed of only the 1st to jth types of devices and the j + 1th type of devices While sequentially increasing to a predetermined value (j + 1) that is less than or equal to the minimum number p (j + 1) of the j + 1th type devices, n (j + 1) is stored in the search range storage means, and N and the 1st to j + 1th type devices From the devices P1 and P2, the search range (1 to j + 1) is a collection of satisfying sets in which n (1) to n (j + 1) are stored in the search range storage means. j + 1) is calculated by removing the lower limit value of the total of P2 of the set included in the set, and the number of devices is an integer, and when the lower limit value is smaller than the provisional solution, from the search range (j + 1) , P2 is extracted with a sum smaller than the provisional solution, and the information indicating the sum of P2 and the extracted satisfaction set is stored as a provisional solution and provisional set in the provisional solution storage means. ,Previous If the lower limit value is greater than the interim solution, without searching of the search range (j + 1), after the execution of the search, and outputs the provisional set as the minimum set.
The configuration management program of the present invention is composed of devices associated with the first index value P1 and the second index value P2 for each of a plurality (J) of types, and a set of devices in which the total of P1 is equal to or greater than the necessary value N Is the satisfaction set, the minimum value in the total satisfaction set of P2 is the minimum total, the computer is stored for each device type, device storage means for storing P1 and P2, and the initial value is equal to or greater than the minimum total Temporary solution storage means for storing information representing a provisional solution that is a value, and a provisional set that is a set of devices for which the sum of P2 is the provisional solution, and 1st to jth (j is any one of 1 to J-1) Search range storage means for storing n (1) to n (j), which is the number of devices of type (integer), and N, and n (j + 1) is changed from 0 to n (1), respectively. n (j) 1st to jth type devices and j + 1th type devices Storing n (j + 1) in the search range storage means while sequentially increasing to a predetermined value (j + 1) which is less than or equal to the minimum number p (j + 1) of j + 1 type devices when a satisfaction set is configured with From P1 and P2 of N and 1 to j + 1 type devices, the number of 1 to j + 1 type devices is n (1) to n (j + 1) stored in the search range storage means The lower limit value of the total of P2 of the set included in the search range (j + 1) that is a set of sets is calculated by removing the restriction that the number of devices is an integer, and the lower limit value is smaller than the provisional solution. In this case, a satisfaction set in which the sum of P2 is smaller than the provisional solution is extracted from the search range (j + 1), and information indicating the sum of P2 of the extracted satisfaction sets and the extracted satisfaction set is obtained as the provisional solution and the provisional set. As before If the lower limit is larger than the provisional solution, the search execution means that does not search the search range (j + 1) and the temporary set is minimized after the search execution by the search execution means. Operate as output means for outputting as a set.
本発明には、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる2つの指標を持つ複数の種類の機器の組合せを、少ない計算量で導出することができるという効果がある。 In the present invention, a combination of a plurality of types of devices having two different indices that satisfies the condition that the sum of one index is equal to or greater than a predetermined value and that minimizes the other index is minimized with a small amount of calculation. There is an effect that it can be derived.
次に、本発明の実施形態について図面を参照して詳細に説明する。
(第1の実施形態)
図1は本発明の第1の実施形態の構成管理装置1の構成を表すブロック図である。
図1を参照すると、本実施形態の構成管理装置1は、機器記憶部10と、暫定解記憶部11と、探索範囲記憶部12と、探索実行部13と、出力部14を含む。構成管理装置1は、初期解算出部15と、指標取得部16を含んでいてもよい。また、構成管理装置1には、端末2が接続されている。構成管理装置1には、ファイル31を含むサーバ3が接続されていてもよい。なお、サーバ3は存在せず、構成管理装置1がファイル31を含んでいてもよい。
本実施形態の構成管理装置1は、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。機器記憶部10と、暫定解記憶部11と、探索範囲記憶部12は、コンピュータが含むメモリやハードディスク装置により実現することができる。また、探索実行部13と、出力部14と、初期解算出部15と、指標取得部16は、例えば、プログラムを記憶する記録媒体からメモリに読み込まれた、各部の機能を実現するための専用のプログラムと、そのプログラムを実行するプロセッサにより実現することができる。あるいは、機器記憶部10と、暫定解記憶部11と、探索範囲記憶部12と、探索実行部13と、出力部14と、初期解算出部15と、指標取得部16の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
機器記憶部10は、少なくとも2つの異なる指標を持つ複数の種類(J個の種類)の機器の、2つの指標を、種類毎に記憶する。機器は、例えばサーバなどの計算装置やCPU等である。2つの指標のうち、第1の指標(P1)は、例えば、機器の性能を表す指標である。性能を表す指標は、例えば、スループットや、MIPS値、FLOPS(Floating point number Operations Per Second)値等の指標である。また、第1の指標は、例えば、信頼性や可用性等を表す指標であってもよい。2つの指標のうち、第2の指標(P2)は、例えば、機器のコストを表す指標である。コストを表す指標は、例えば、価格、消費電力、排熱量、重量、設置スペース等の、システムの構築や運用の費用に影響する指標である。また、第2の指標は、例えば、機器を構成する部品数などの値であってもよい。複数の機器に対するこれらの2つの指標は、それぞれの機器の2つの指標を合計した値である。
例えば、機器が計算装置であり、第1の指標が性能を表し、第2の指標が価格である場合、複数種類の機器から選択した1台以上の機器の集合で構成される計算機システムの性能は、集合に含まれる機器の、第1の指標の合計で表される。また、この計算機システムの価格は、集合に含まれる機器の、第2の指標の合計である。
以下の説明では、第1の指標の合計が所定値(必要値)を上回る機器の集合(充足集合)のうち、第2の指標の合計が最小となる集合が、最小集合である。最小集合に属する機器の第2の指標の合計が最小合計である。必要値は、例えば、ユーザが、端末2が備える図示しない入力手段を介して、機器構成装置1に入力した値であればよい。また、後述の探索実行部13が、後述の探索を既に行った各充足集合の中で、第2の指標の合計が最小となる集合が暫定集合である。そして、暫定集合に属する機器の第2の指標の合計が暫定解である。
なお、本実施形態では、機器の集合が含みうる各種類の機器の台数に制限はない。一般に、機器の集合が含みうる各種類の機器の台数に制限を設けず、所定の条件下で最適な機器の組合せを導出する問題は、無制限問題と呼ばれる。例えば、複数種類の計算機から選択した1台以上の計算機で構成される情報処理システムを新たに導入する場合に、導入する各種類の機器の台数に制限がなければ、所定の性能を満たし、最もコストの安い計算機を導出する問題は、無制限問題である。
機器記憶部10が記憶する各機器の第1の指標及び第2の指標は、予め与えられていればよい。あるいは、後述するように、指標取得部16が、これらの指標をファイル31から取得してもよい。また、例えば、ユーザが、端末2を介して、これらの指標を構成管理装置1に入力し、機器記憶部10に記憶させてもよい。
初期解算出部15は、例えば、それなりによい解を高い確率で求める手法(ヒューリスティクス)を使って、暫定解の初期値(初期解)を算出する。ヒューリスティクスは、必ず最小合計を算出する方法である必要はない。ヒューリスティクスは、第1の指標の合計が必要値を上回る機器の集合を、最小合計を必ず算出する方法よりおおむね短時間で抽出できる方法であればよい。ヒューリスティクスは必ず最小合計を算出する手法ではないので、初期解算出部15が算出する暫定解の初期値は、最小合計以上の値である。初期解算出部15が使うヒューリスティクスの例については後述する。一般的なヒューリスティクスの例として、遺伝的アルゴリズムや焼きなまし法、ニューラルネットを利用したアルゴリズムなどがある。
初期解算出部15は、算出した暫定解の初期値と、対応する機器の集合(暫定集合の初期値)を表す情報を、暫定解記憶部11に格納する。
暫定解記憶部11は、暫定解と、暫定集合を表す情報を記憶する。暫定解記憶部11が初期状態で記憶する暫定解と、暫定集合を表す情報は、前述のように、例えば初期解算出部15が算出した暫定解の初期値と、暫定集合の初期値を表す情報であればよい。
暫定解記憶部11は、初期状態で、初期解算出部15が算出した暫定解の初期値を記憶せず、コンピュータ上で表現できる十分大きな値を、暫定解としてあらかじめ記憶していてもよい。この場合、暫定解記憶部11は、初期状態では暫定解に対応する暫定集合を記憶していなくてよい。さらに、この場合、初期解算出部15は存在しなくてもよい。ただし、この場合は、探索の効率が低下する可能性が高くなる。
探索範囲記憶部12は、1からj番目(jは1以上J−1以下の整数)の種類の機器の台数である、n(1)からn(j)を記憶する。後述の探索実行部13は、探索範囲記憶部12に格納されている機器の台数を読み出し、読み出した機器の台数に基づき定めた機器の集合を探索の対象とすることができる。例えば、探索範囲記憶部12に、1からj番目の種類の機器の台数であるn(1)からn(j)が格納されている場合、探索実行部13は、1からj番目の種類の機器の台数が、それぞれn(1)からn(j)である機器の集合を探索の対象とすればよい。この場合、探索範囲記憶部12が記憶するn(1)からn(j)は、探索の対象となる機器の集合の集まりである探索範囲を表す。
探索実行部13は、複数種類の機器で構成される機器の集合のうち、第1の指標の合計が必要値以上である集合(前述の充足集合)の集まりである探索範囲から、第2の指標の合計が暫定解以下となる機器の組合せを抽出する探索を行う。探索実行部13は、探索の際、探索範囲を複数の探索範囲に分割する。そして、探索実行部13は、分割した探索範囲毎に最小集合を含む可能性の有無を判定する。探索実行部13は、判定の結果最小集合を含む可能性がない探索範囲を、探索の対象から除外する。探索については、本実施形態の動作の説明において詳細に述べる。探索実行部13が、探索の対象から除外しなかった探索範囲全て対する探索を終了した後の暫定集合が、最小集合である。
出力部14は、探索実行部13による探索の終了後、暫定解記憶部11が記憶する暫定集合を表す情報を、最小集合を表す情報として、端末2に出力する。
端末2は、出力部14が出力する最小集合を表す情報を表示する。端末2による表示は、最小集合にどの種類の機器が何台含まれるか分かる形式であれば、どのような形式の表示であっても構わない。
指標取得部16は、例えばサーバ3が記憶するファイル31に含まれる各機器の第1の指標及び第2の指標を抽出し、機器記憶部10に格納する。
サーバ3は、構成管理装置1と同一の装置であってもよく、例えばネットワークで通信可能に接続された他の装置であってもよい。
ファイル31は、例えば、各機器のベンダがインタネット上で公開している、各機器の仕様が記載された1つ又は複数のウェブページを構成する1つ又は複数のファイルや、各機器の仕様を含むデータベースを構成するファイルである。
指標取得部16は、例えば、端末2の図示しない入力部等を介した、ウェブページ等を特定するURI(Uniform Resource Identifier)等を指定したユーザの指示により、ファイル31を取得する。指標取得部16は、ファイル31に含まれる各機器の第1の指標及び第2の指標を、例えば「性能」や「価格」、「消費電力」、「部品数」などの文字列をキーに抽出する。指標取得部16は、抽出した各機器の第1の指標及び第2の指標を、機器記憶部10に格納する。また、指標取得部16は、端末2の図示しない入力部等を介した、データベースに対するクエリ等を指定した指示により、データベースから第1の指標及び第2の指標を取得してもよい。指標取得部16は、ファイル31から、指標を得るための情報(例えば機器のCPUやクロック数等)を抽出してもよい。そして、指標取得部16は、抽出した情報を元に、指標が格納されているデータベースから第1の指標及び第2の指標を取得してもよい。
なお、指標取得部16、サーバ3及びファイル31は、存在しなくてもよい。その場合、機器記憶部10が、あらかじめ、少なくとも2つの異なる指標を持つ複数の種類(J個の種類)の機器の2つの指標を、種類毎に記憶していればよい。
次に、本実施形態の構成管理装置1の動作について、図面を参照して詳細に説明する。
図2は、本実施形態の構成管理装置1が機器の指標を取得する動作の例を表すフローチャートである。
図2を参照すると、指標取得部16は、まず、例えば端末2の図示しない入力部を介した指示を受け、機器の種類毎の第1の指標及び第2の指標を含むファイル31を取得する(ステップS61)。
指標取得部16は、次に、取得したファイル31から、機器の種類毎の第1の指標及び第2の指標を抽出する(ステップS62)。
指標抽出部16は、抽出した機器の種類毎の第1の指標及び第2の指標を、機器の種類に対応付けて機器記憶部10に格納する(ステップS63)。
図3は、本実施形態の構成管理装置1が最小集合(解)を抽出する動作の例の全体を表すフローチャートである。
図3を参照すると、構成管理装置1の探索実行部13が、まず、端末2の図示しない入力部などを介して、必要値Nを受信する(ステップS1)。
次に、初期解算出部15が、例えば探索実行部13から受信した必要値Nと、機器記憶部10から受信した機器の種類各々の第1の指標及び第2の指標をもとに、ヒューリスティクスを使って暫定解の初期値を算出する(ステップS2)。初期解算出部15は、暫定解に対応する暫定集合を表す情報と共に、暫定解記憶部11に格納する。
本実施形態の初期解算出部15が暫定解の初期値を算出するヒューリスティクスの例は、次の通りである。初期解算出部15は、例えば、機器の種類毎に第2の指標に対する第1の指標の比(指標比)を算出すればよい。そして、初期解算出部15は、指標比が最も大きい種類の機器のみで充足集合を構成した場合の機器の最小台数を算出すればよい。初期解算出部15は、算出した最小台数の、指標比が最も大きい種類の機器で構成される集合を暫定集合の初期値にすればよい。そして、初期解算出部15は、暫定集合の初期値の第2の指標の合計を暫定解の初期値にすればよい。なお、第1の指標が性能を表し、第2の指標がコストを表す場合、指標比はコストパフォーマンス(コスト性能比)を表す。
図5は、機器記憶部10が記憶する機器情報(機器の種類毎の第1の指標及び第2の指標)の一例を表す図である。図5の例では、機器記憶部10は、機種Aから機種Cの3種類の機器の第1の指標及び第2の指標を記憶する。
初期解算出部15はこれらの指標を機器記憶部10から読み出し、機器の種類毎に指標比を算出する。
図6は、図5に示す機器情報の例から算出した指標比を表す図である。図6を参照すると、この場合、指標比が最も大きいのは機種Cであり、その指標比は0.88である。
例えば、必要値Nが15の場合、機種Cの第1の指標は7であり、15/7は約2.14なので、機種Cのみで必要値を満たすためには、3台の機種Cが必要である。3台の機種Cで構成される集合の第2の指標の合計は24である。この場合、初期解算出部15は、暫定解として24を、暫定解記憶部11に格納すればよい。そして、初期解算出部15は、暫定集合として3台の機種Cで構成される集合を表す情報を、暫定解記憶部11に格納すればよい。
図7は、暫定解が24、暫定集合が3台の機種Cで構成される集合である場合の、暫定解記憶部11が記憶する暫定解及び暫定集合を表す情報を表す図である。
次に、探索実行部13が、複数種類の機器をあわせて1台以上含み、第1の指標の合計値が必要値N以上である集合から、第2の指標の合計が最小である最小集合を抽出する処理である探索を行う(ステップS3)。
探索実行部13は、分枝限定法に基づいた探索を行う。詳細は図4の説明で述べるが、分枝限定法に基づく探索は、概略以下の通りである。
探索実行部13は、機器の集合の集まりである探索範囲に対して網羅的に探索を行う前に、探索範囲を複数の探索範囲に分割する。そして、探索実行部13は、分割した探索範囲に最小集合が含まれる可能性の有無の判定を行う。探索実行部13は、探素範囲に含まれる機器の集合で、所定の一部の種類の機器の台数が同じ集合の集まりを、新たな探索範囲にすることで、探索範囲の分割を行えばよい。
前述のように、探索範囲記憶部12がn(1)からn(j)を記憶している場合、探索実行部13は、探索実行部13は、n(1)からn(j)を探索範囲記憶部12から読み出せばよい。そして、探索実行部13は、読み出したn(1)からn(j)によって探索範囲を定めればよい。探索実行部13は、1からj番目の種類の機器の台数がそれぞれn(1)からn(j)である機器の集合の集まりを探索範囲(探索範囲(j))にすればよい。
探索範囲記憶部12がn(1)からn(j)を記憶している場合にこのようにして定まる探索範囲(j)に対して、探索実行部13行う探索が、「探索(j)」である。探索(j)において、探索実行部13は、探索範囲記憶部12から読み出した、n(1)からn(j)によって定めた探索範囲(j)を、複数の探索範囲に分割する。そして、探索実行部13は、分割した探索範囲に最小集合が含まれる可能性の有無の判定を行う。探索実行部13は、たとえば、探索範囲(j)をj+1番目の種類の機器の台数が同じ集合の集まりに分割すればよい。たとえば、探索範囲(j)を分割して、j+1番目の種類の機器の台数n(j+1)がある値である機器の集合を新たな探索範囲にする場合、探索実行部13は、その値のであるn(j+1)を探索範囲記憶部12に記憶させればよい。この場合に探索範囲記憶部12が記憶するn(1)からn(j+1)で定まる探索範囲が探索範囲(j+1)である。また、探索範囲(j+1)に対して探索実行部13が行う探索が、探索(j+1)である。
また、探索(0)は、探索範囲記憶部12がいずれの種類の機器の台数も記憶していない場合の探索範囲に対して、探索実行部13が行う探索である。探索範囲記憶部12がいずれの種類の機器の台数も記憶していない場合の探索範囲は、探索範囲の初期値(探索範囲(0))である。探索範囲(0)については後述する。
探索実行部13は、探索範囲に最小集合が含まれる可能性の有無の判定を、その探索範囲が含む機器の第2の指標の理論上の下限値と暫定解の比較によって行えばよい。探索実行部13は、例えば緩和法を用いてこの下限値を算出すればよい。この下限値が暫定解より大きい場合、その探索範囲に、第2の指標の合計が暫定解より小さい値である集合が含まれる可能性はない。この場合、探索実行部13は、その探索範囲を探索の対象から除外し(枝刈り、pruning)、その探索範囲に対する探索を行わない。下限値が暫定解よりも小さい場合は、これらの集合に、第2の指標の合計が暫定解よる小さい値である集合が含まれる可能性がある。この場合、探索実行部13は、これらの集合に対して探索を実行する。この、探索を行うか否かを判定する判定処理が、限定操作である。
探索実行部13は、探索が必要と判定した探索範囲を、さらに複数の探索範囲に分割し、分割した各探索範囲で探索が必要か不要かを判定してもよい。探索実行部13は、さらに分割した各探索範囲のうち、探索が必要と判定した探索範囲のみで探索を実行すればよい。
探索実行部13は、第2の指標の合計が明らかに最小合計ではない充足集合を、探索範囲に含める必要はない。例えば、1番目の種類の機器のみで充足集合を構成した時の、機器の最小台数p(1)より多くの台数の1番目の種類の機器を含む充足集合の、第2の指標の合計は、明らかに最小合計ではない。探索実行部13は、このような集合を、探索範囲から除外しておけばよい。探索実行部13は、例えば、1番目の種類の機器のみで充足集合を構成した時の機器の最小台数p(1)を算出し、1番目の機器が0台以上p(1)台以下である充足集合の集まりを、探索範囲の初期値(探索範囲(0))にすればよい。探索実行部13が、1番目の種類の機器の第1の指標及び第2の指標を機器記憶部10から読み出し、必要値Nと、読み出した第1の指標及び第2の指標をもとに、p(1)を算出すればよい。なお、機器の種類の順番は任意の順番でよいが、指標比が大きい順または小さい順にすると探索効率が向上する場合がある。
ステップS3の処理については、図4の説明において詳細に述べる。
出力部14は、探索実行部13による探索の終了後、暫定解記憶部11に格納されている暫定集合を表す情報を読み出し、端末2に対して出力する(ステップS4)。
例えば、暫定解記憶部11に格納されている暫定解が20であり、暫定集合を表す情報が、「機種Aが1台、機種Bが1台、機種Cが1台」であることを表す情報であった場合、出力部14は、暫定集合を表す情報を、例えば端末2に、所定の形式で出力すればよい。出力の形式は、例えば「((A,1),(B,1),(C,1))」のようなデータであっても、「機種A:1台、機種B:1台、機種C:1台」のような文字列であってもよい。また、出力部14は、暫定解を出力してもよい。
図4は、ステップS2の探索時の構成管理装置1の動作の例を表すフローチャートである。
図4を参照すると、探索実行部13は、機器の種類の順番を表すj(jは1以上J−1以下のいずれかの整数)を与えられて探索の処理を開始する。
探索範囲記憶部12は、探索の動作の開始時に、1乃至j番目の種類の機器の台数(それぞれn(1)からn(j))を記憶している。探索(j)における探索の対象となる機器の集合は、1番目からj番目の機器の台数がそれぞれn(1)からn(j)である機器の集合である。従って、探索(j)における探索の対象となる機器の集合の集まりである探索範囲(j)は、探索(j)の動作の開始時に探索範囲記憶部12が記憶している各種類の機器の台数n(1)からn(j)によって定まる。ただし、jが0である場合、探索範囲記憶部12に機器の台数は格納されていない。
jが0である場合(ステップS11、N)、探索範囲は初期値(探索範囲(0))である。図3のステップS3の探索(0)は、探索実行部13が、探索範囲(0)に対して、図4に示す処理を行うことを意味する。
jが0より大きい場合(ステップS11、Y)、探索実行部13は、探索範囲記憶部12から、1番目からj−1番目の種類の機器の台数n(1)からn(j)を読み出す(ステップS12)。この場合の探索範囲は、1番目からj番目の機器の台数がそれぞれn(1)からn(j)である機器の集合の集まりである。
次に、探索実行部13は、台数がそれぞれn(1)からn(j)の1乃至j番目の種類の機器とj+1番目の機器で充足集合を構成する場合の、j+1番目の機器の最小台数p(j+1)を算出する(ステップS13)。探索実行部13は、必要値Nと、n(1)からn(j)までの値と、機器記憶部10から読み出した1乃至j+1番目の種類の機器の第1の指標から、p(j+1)の算出を行えばよい。このように、n(1)からn(j)までの値に応じて、1乃至j+1番目の種類の機器のみで充足集合を構成する場合のj+1番目の種類の機器の最小台数p(j+1)を算出する方法が、「細かい方法」である。具体的には、探索実行部13は、まず、それぞれn(1)からn(j)台の1乃至j番目の種類の機器の、第1の指標の合計を算出すればよい。次に探索実行部13は、必要値Nと算出した第1の指標の合計の差を算出すればよい。探索実行部13は、算出した差をj+1番目の種類の機器の第1の指標の値で割り、小数点以下の端数を切り上げた値をp(j+1)にすればよい。探索実行部13は、1番目からj番目の種類の機器の台数がそれぞれn(1)からn(j)であり、j+1番目の種類の機器の台数がp(j+1)+1台以上である集合を、探索の対象にする必要はない。
次に、探索実行部13は、探索の対象となる集合が含むj+1番目の種類の機器の最大台数r(j+1)を算出する(ステップS14)。
本実施形態では、各種類の機器の台数に制限はないので、探索実行部13は、p(j+1)をr(j+1)にすればよい。なお、集合が含むことができるj+1種類の機器の台数に限りがある場合、探索実行部13は、p(j+1)とj+1番目の種類の機器の最大台数のいずれか小さい方を、r(j+1)にすればよい。この場合、r(j+1)の値はp(j+1)以下である。集合が含むことができる機器の種類毎の台数に限りがある場合については、後述の変形例1及び変形例2において詳細に説明する。
あるいは、探索実行部13は、j+1番目の機器のみで充足集合を構成した場合の機器の最小台数を算出し、r(j+1)にしてもよい。このように、機器の集合を構成する1乃至j番目の種類の機器の台数によらず、j+1番目の種類の機器のみで充足集合を構成した場合の最小台数を算出し、探索の対象とする機器の集合のj+1番目の種類の機器の最大台数とする方法が、「荒い方法」である。荒い方法でr(j+1)を算出する場合、探索実行部13は、必要値を各機種の第1の指標で割り、割り切れない場合は小数点以下を切り上げた値を、r(j+1)にすればよい。なお、集合が含むことができるj+1種類の機器の台数に限りがある場合、探索実行部13は、j+1番目の機器のみで充足集合を構成した場合の機器の最小台数とj+1番目の種類の機器の最大台数のいずれか小さい方を、r(j+1)にすればよい。荒い方法でr(j+1)を算出する場合、探索実行部13は、ステップS13の処理を行わなくてよい。
前述の細かい方法でr(j+1)を算出する場合、1番目からj番目の種類の機器の台数によってr(j+1)の値は異なる。しかし、荒い方法でr(j+1)の算出を行う場合、1番目からj番目の種類の機器の台数によらずr(j+1)の値は一定である。例えば、必要値が15である場合、j+1番目の種類の機器が前述の機種Aであれば、r(j+1)は、15/3=5なので、1番目からj番目の種類の機器の台数によらず5である。同様に、j+1番目の種類の機器が前述の機種Bであれば、r(j+1)は、15/5=3なので、1番目からj番目の種類の機器の台数によらず3である。また、j+1番目の種類の機器が前述の機種Cであれば、r(j+1)は、15/7=2.14...なので、1番目からj番目の種類の機器の台数によらず3である。荒い方法で算出したr(j+1)は、細かい方法で算出したr(j+1)以上の値である。
ところで、探索実行部13が探索の対象とする機器の集合を、探索木の形で図示することが可能である。探索実行部13は、探索の対象となる機器の集合を、既存の任意の形式の探索木のデータとして表し、処理を行うこともできる。探索実行部13は、探索時に、探索範囲を適宜探索木に展開し、例えば探索範囲記憶部12に格納してもよい。
図8は、図5に示す機器の例における、探索木の例の一部を表す図である。図8の機種A、機種B、機種Cが、それぞれ1乃至3番目の種類の機器に相当する。
図8の探索木において、円はノードを表し、ノード間を結ぶ線は枝を表す。この探索木は4つの階層をもち、最上部(第1階層)のノードが根ノード、最下層(第4階層)のノードが葉ノード、これらの間にあるノードが中間ノードである。
第2から第4の3つの階層は、1から3番目の種類の機器(順に、機種A、機種B、機種C)に対応する。
最上部以外の各階層のノードに表記された数字は、対応する機種の台数を表している。そして、根ノードから葉ノードへと至る各経路が、機種の集合に対応している。たとえば、図5中の、根ノードから、機種Aの台数0、機種Bの台数0、機種Cの台数3に至る経路は、3台の機種Cの集合を表す。以降の説明では、便宜上、「0台の機種A」に対応するノードを(A,0)と表記し、機器の集合を((A,0),(B,0),(C,3))のように表記する。
例えば、ノード(A,0)に対応するのは、1番目の種類(機種A)の台数n(1)が0である機器の集合の集まりである。すなわち、ノード(A,0)は、n(1)=0で表される探索範囲を表す。同様に、「0台の機種A、0台の機種B」に対応するノード((A,0),(B,0))は、n(1)=0及びn(2)=0で表され、1番目の種類(機種A)の台数n(1)が0、2番目の種類(機種B)の台数n(2)が0である探索範囲を表す。
探索実行部13の動作は、根ノードから最後(J番目)の種類の機器に相当する根ノードまで、各ノードの一段下層のノードを順次展開しながら、機器の集合に相当する根ノードから各葉ノードにいたる経路を、順次探索して最小集合を抽出することに相当する。例えば、図5の例の場合、探索実行部13は、全てのノードを展開するのであれば、まず根ノードで一段下層のノードである(A,0)から(A,5)のノードを展開する。探索実行部13は、次に、(A,0)のノードで一段下層のノードである((A,0),(B,0))から((A,0),(B,3))を展開する。探索実行部13は、ノード((A,0),(B,0))の一段下層のノードは葉ノードなので、一段下層のノードを展開して探索を行う。探索実行部13は、同様に((A,0),(B,1))から((A,0),(B,3))の一段下層のノードを展開して探索を行う。探索実行部13は、ノード(A,0)を含む経路上の全てのノードの展開及び探索が終了すると、同様にノード(A,1)を含む経路上の全てのノードの展開及び探索を行う。ただし、本実施形態の探索実行部13は、以下で説明するように、全てのノードの展開及び探索を行う訳ではない。
探索実行部13は、展開した各ノードにおいて、そのノードを通る経路全てに相当する機器の集合の集まりの、第2の指標の下限値を算出し、その下限値が暫定解を上回る場合は、そのノードを通る経路全てを探索の対象から除外する「枝刈り」を行う。探索実行部13は、途中のノードで枝刈りを行わずに葉ノードを展開した場合に、葉ノードまでの経路に相当する機器の集合の第2の指標の合計を算出し、暫定解と比較する。探索実行部13は、算出した第2の指標の合計が暫定解を下回った場合、その合計を新しい暫定解に、対応する機器の集合を新しい暫定集合にする。
以上の動作において、ステップS14は、各ノードで、一段下層のノードを展開する際の、一段下層のノードへの枝の数を算出することに相当する。
各ノードから一段下層のノードへの枝の数が分岐係数である。種類毎の機器の台数は0台の場合もあるので、例えばj−1番目の機器に対応するノードにおける分岐係数は、そのノードに対応する1乃至j−1番目の機器各々の台数から探索実行部13が算出したr(j)に1を加算した値である。
荒い方法で分岐係数を算出する場合、上位の各ノードから、1段下のノードに対応する機器の種類の分岐係数の数のノードが必ず分岐する。したがって、荒い方法で分岐係数を算出する場合、図5に示す各機器に対応する探索木では、機器の組合せ総数に対応する葉ノードの数は、各機種の分岐係数を積算した6×4×4=96である。
一方、細かい方法は、2番目以上の種類の機器に対応する、第3の階層以下のノードの分枝係数を、根ノードからそのノードまでの経路上のノードに対応する台数の対応する機器の第1の指標の合計と、必要値との差に基づき算出する方法である。
たとえば(A,3)で表されるノードを通る経路に対応する集合の場合、そのノードに対応する3台の機種Aの第1の指標の合計は9である。荒い方法で分岐計数を算出したこのノードの分岐係数は、2番目の機器の種類である機種Bの第1の指標が5なので、15/5=3(前述の荒い方法で算出した機種Bのr(j))に1を加えた4である。しかし、ノード(A,3)以降のノードの第2の指標の合計は、必要値15とノード(A,3)の第1の指標の合計9との差である、6以上であれば充分である。細かい方法で算出した(A,3)で表されるノードの分岐係数は、6を機種Bの第1の指標である5で割った値の小数点以下を切り上げた値に、1を加えた値である3である。
細かい方法には、ノード毎に分岐係数を算出する必要があり、階層が多い場合(機器の種類が多い場合)組合せの総数を算出するのに多くの計算量が必要になるという特徴がある。細かい方法には、さらに、ノード数を削減し、探索効率を改善することができるという特徴がある。最小集合に対応する経路は、細かい方法で算出した分岐係数に基づく分岐のノード以外を通る可能性はない。従って、探索を行う必要があるのは、細かい方法で算出した分岐係数に基づき生成した分岐のノードを経由する経路だけである。
一方、荒い方法で算出する分岐係数は、細かい方法でノード毎に算出する分岐係数以上の値である。荒い方法は、ノード毎に分岐係数を算出する代わりに機器の種類毎に分岐係数を算出するので、分岐係数の算出のための計算量は、細かい方法より少なくなる。しかし、荒い方法で算出する分岐係数は、細かい方法でノード毎に算出した分岐係数以上の値になり、通常は細かい方法よりノード数が増え探索効率が悪い。
次に、探索実行部13は、j+1番目の種類の機器の台数を表すn(j+1)を、0からr(j+1)まで順次増加させながら、以下の処理を行う(ステップS15)。
まず、探索実行部13は、j+1番目の種類の機器の台数を表すn(j+1)を、探索範囲記憶部12に格納する(ステップS16)。探索実行部13は、例えばn(j+1)をj+1と対応付けて格納するなど、n(j+1)がj+1番目の種類の機器の台数を表すことが判別可能な形で、n(j+1)を探索範囲記憶部12に格納すればよい。探索範囲記憶部12に既に格納されている各種類の機器の台数と、n(j+1)が探索範囲(探索範囲(j+1))を表す。
次に、探索実行部13は、探索範囲記憶部12に格納されているn(1)からn(j+1)が表す探索範囲(j+1)に含まれる集合の、第2の指標の合計値の下限値を算出する(ステップS17)。
探索実行部13は、前述のように、緩和法により下限値の算出を行えばよい。緩和法は、元の問題の制約を緩和して説きやすくした緩和問題に対する最適解を算出する方法である。緩和問題の最適解は、一般に、元の問題の最適解よりよい解である。例えば、元の問題が最小値を算出する問題である場合、その問題の緩和問題の最適解である最小値は、一般に、元の問題の解である最小値より小さい。従って、緩和問題の解は、元の問題の解の下限値になりうる。典型的な緩和問題は、たとえば、機器は1台単位で使用し、機器の台数は整数であるという制限がもとの問題に課されている場合に、その制限を緩和し、1台の機器を分割して使用することを可能にして、機器の台数が実数であることを許容した問題である。
本実施形態の探索実行部13が下限値を算出する上での制約の緩和は、機器の台数は整数であるという制約を外し、実数の台数を許容することであってよい。ただし、機器の台数が整数でない場合も、第1の指標や第2の指標の合計は、台数が整数である場合と同様に、機器の種類毎のそれぞれの指標に、対応する種類の機器の台数を掛けた値である。
台数が実数である場合の、第1の指標の合計が所定値以上となる機器の集合の、第2の指標の合計の最小値は、第1の指標の合計が所定値となる、指標比が最も大きい種類の機器のみで構成される機器の集合の第2の指標の合計を算出することで得られる。第1の指標の合計が所定値以上となるいずれの機器の集合の第2の指標の合計も、この最小値を下回ることはない。
探索範囲(j+1)に含まれる集合の、1乃至j+1番目の種類の機器の台数は、それぞれn(1)台からn(j+1)台である。以下の説明で、それぞれn(1)台からn(j+1)台の1乃至j+1番目の種類の機器の、第1の指標の合計を、必要値から引いた値が、残存必要値である。また、j+2乃至J番目の種類の機器で、指標値が最も大きい機器の種類が機種Xである。
探索実行部13は、探索範囲(j+1)に含まれ、1乃至j+1番目の種類の機器と、残りの種類で最も指標比の大きい種類の機器(機種X)で構成される充足集合の、機種Xの最小台数を、機種Xの台数が整数であるという制約を外して算出すればよい。探索実行部13は、それぞれn(1)台からn(j+1)台の1乃至j+1番目の種類の機器と、算出した最小台数の機種Xの第2の指標の合計を、探索範囲(j+1)の第2の指標の合計の下限値にすればよい。
そのために、まず、探索実行部13は、機器記憶部10から、1乃至j+1番目の種類の機器の第1の指標を読み出せばよい。また、探索実行部13は、探索範囲記憶部12から、1乃至j+1番目の種類の機器の台数であるn(1)からn(j+1)を読み出せばよい。探索実行部13は、機器記憶部10から読み出した各種類の機器の第1の指標に、探索範囲記憶部12から読み出した対応する種類の機器の台数を掛けた値を足し合わせればよい。探索実行部13は、このようにして、それぞれn(1)台からn(j+1)台の1乃至j+1番目の種類の機器の第1の指標の合計を算出すればよい。
次に、探索実行部13は、機器記憶部10から、j+2乃至J番目の種類の機器の種類の各指標を読み出して、指標比を算出すればよい。あるいは、探索実行部13は、各種類の機器の指標比を予め算出し、例えば機器記憶部10に機器の種類に対応付けて格納しておいてもよい。そして、探索実行部13は、指標比が最も大きい種類の機器の選択の際、j+2乃至J番目の種類の機器の指標比を、機器記憶部10から読み出してもよい。探索実行部13は、j+2乃至J番目の種類の機器で、指標比が最も大きい種類の機器を選択する。
探索実行部13は、必要値と算出した第1の指標の合計との差を、指標比の最も大きい機器の種類の第1の指標で割った実数値(緩和台数)を算出する。
探索実行部13は、それぞれn(1)台からn(j+1)台の1乃至j+1番目の種類の機器と、算出した実数値を台数としたj+2番目の種類の機器の、第2の指標の合計を算出する。探索実行部13は、算出した合計を、探索範囲(j+1)の第2の指標の合計の下限値にする。探索実行部13は、算出した実数値をj+2番目の種類の機器の第2の指標に掛けた値を、算出した実数値を台数としたj+2番目の種類の機器の第2の指標の合計にすればよい。
例えば、図8の中間ノード(A,0)では、必要値が15である場合、機種Aの台数は0なので、残存必要値は15である。残りの機器の種類のうち、指標比が最も大きい機器の種類は機種Cである。台数が実数であることを許容した場合の、第1の指標の合計が15となる機種Cの台数は、15/7である。15/7台の機種Cの、第2の指標の合計は15/7×8≒17.14である。機種Aの台数は0なので、これが中間ノード(A,0)以降の探索によって得られる第2の指標の合計に関する下限値である。機種Aを0台とした場合、第2の指標の合計に関して、17.14より小さな解を得ることは理論的に不可能である。従って、もし暫定解が、算出した下限値である17.14より小さい場合、中間ノード(A,0)を経由する経路における各ノードの第2の指標の合計が暫定解を下回る可能性はない。この場合、探索実行部13は、中間ノード(A,0)を経由する経路の探索を行わない。一方、暫定解が算出した下限値である17.14より大きい場合、中間ノード(A,0)を経由する経路のいずれかに、第2の指標の合計が暫定解を上回る経路が存在する可能性がある。この場合、探索実行部13は、中間ノード(A,0)を経由する経路の探索を行う。
次に、探索実行部13は、暫定解記憶部11から読み出した暫定解と、算出した探索範囲(j+1)の第2の指標の合計の下限値を比較する。
探索範囲が図8の中間ノード(A,0)で表される場合、暫定解記憶部11が記憶する暫定解が24であれば、探索範囲の第2の指標の下限値は約17.14なので、下限値の方が暫定解より小さい。
比較の結果、暫定解が下限値を下回る場合(ステップS18、N)、探索範囲(j+1)に、第2の指標の合計が暫定解を下回る充足集合が含まれる可能性はない。この場合、探索実行部13は、探索範囲(j+1)では探索を行わず、ステップS15に戻る。
例えば、探索範囲が、図8の中間ノード(A,2)で表される場合、2台の機種Aの第1の指標の合計は3×2=6である。必要値が15である場合、探索実行部13が算出する残存必要値は9である。機種Aの第2の指標は5、残りの機器の種類(機種B及び機種C)で最も指標比の大きい機種Cの第1の指標は7、第2の指標は8である。従って、探索実行部13が算出する下限値は、約20.29(=10+8×9/7)である。暫定解記憶部11が記憶する暫定解が20、対応する暫定集合が((A,1),(B,1),(C,1))で表される機器の集合である場合、探索実行部13は、ステップS18で、暫定解が下限値を下回ると判定する(ステップS18、N)。この場合、ノード(A,2)で表される探索範囲には最小集合は含まれる可能性がないので、探索実行部13は、ノード(A,2)で表される探索範囲に対する探索は行わない。探索実行部13は、同様に、ノード(A,3)、(A,4)、(A,5)の各々で表される探索範囲に対する探索も行わない。
比較の結果、暫定解が下限値を下回る場合(ステップS18、Y)、探索範囲(j+1)に、第2の指標の合計が暫定解を下回る充足集合が含まれる可能性がある。探索実行部13は、探索範囲(j+1)で、最小集合の探索を行う。探索集合の探索方法は任意である。
探索実行部13は、例えば、探索範囲(j+1)に含まれる全ての集合の第1の指標の合計を算出し、第1の指標の合計が必要値以上である場合、第2の指標の合計を算出して暫定解と比較することで、探索を行ってもよい。探索範囲(j+1)に含まれる全ての集合の生成において、探索実行部13は、例えば、まず、ステップS13と同様の処理によりp(j+2)を算出すればよい。探索実行部13は、0からp(j+2)までの整数を、探索範囲(j+1)に含まれる集合の、j+2番目の種類の機器の台数にすればよい。探索実行部13は、j+2番目の種類の機器の台数が0からp(j+2)までそれぞれの場合のp(j+3)を、ステップS13と同様の処理により算出すればよい。探索実行部13は、このようにステップS13と同様の処理を、j+2乃至J番目の種類の機器の台数の全ての組合せを導出するまで順次行えばよい。このようにして、探索実行部13は、探索範囲(j+1)に含まれる全ての集合を生成することができる。
また、探索実行部13は、以下のように探索を行ってもよい。
探索実行部13は、jがJ−2より小さい場合(ステップS19、Y)、jを1増加させ、図4の探索の動作を再帰的に行う(ステップS20)。すなわち、探索範囲(j+1)に第2の指標の合計が暫定解を下回る暫定集合が含まれる可能性がある場合、探索範囲記憶部12に台数が格納されていない機器の種類が複数存在するなら、探索実行部13は、以上で述べた処理と同様にして、探索範囲(j+1)を更に分割する。そして、探索実行部13は、探索範囲(j+1)をj+2番目の種類の機器の台数に応じて分割したそれぞれの探索範囲(j+2)に、第2の指標の合計が暫定解を下回る集合が含まれる可能性の有無を判定する。そして、探索実行部13は、判定結果に応じて探索範囲(j+2)で探索を行う。このように、探索実行部13は、jがJ−2になるまでjを1ずつ増加させながら、再帰的に図4の探索の動作を行えばよい。
例えば、探索範囲が前述の探索木の中間ノード(A,0)で表される場合、下限値が暫定解より小さく、また、jは0でありJは3であるので、jがJ−2より小さい。従って、探索実行部13は、ノード(A,0)で表される探索範囲(1)に対して、図4の処理を最初から行えばよい。この場合、探索実行部13は、ノード(A,0)で表される探索範囲(1)を、2番目の機器の種類(機種B)の台数に応じて分割した、((A,0),(B,0)、((A,0),(B,1))、…で表される探索範囲(2)に対して、同様にステップS17以降の処理を行えばよい。
探索実行部13は、jがJ−2である場合(ステップS19、N)、探索範囲(j+1)で、第2の指標の合計が暫定解を下回る機器の集合が存在すれば、その集合の第2の指標の合計を新しい暫定解に、その集合を新しい暫定集合とする。新しい暫定解及び暫定集合が見つかった場合、探索実行部13は、新しい暫定解と、新しい暫定解を表す情報を、暫定解記憶部11に格納し、暫定解及び暫定集合の更新を行う(ステップS21)。
探索範囲(j+1)は、jがJ−2である場合、1番目乃至J−1番目の種類の機器の台数がそれぞれn(1)からn(J−1)である機器の集合の集まり(探索範囲(J−1))である。ステップS21で、探索実行部13は、まず、ステップS13と同様にしてp(J)を算出し、ステップS14と同様にしてr(J)を算出すればよい。
前述の細かい方法でp(J)を算出する場合、p(J)は、探索範囲(J−1)に含まれる集合で、第2の指標の合計が最小となる充足集合の、J番目の種類の機器の台数である。また、本実施形態では機器の台数に制限は無いので、r(J)はp(J)である。従って、探索実行部13は、J番目の種類の機器の台数がr(J)である場合の第2の指標の合計を算出し、算出した第2の指標の合計を、暫定解記憶部11から読み出した暫定解と比較すればよい。
一方、前述の荒い方法でr(J)を算出する場合、探索範囲(J−1)に含まれる充足集合における、J番目の種類の機器の最小値p(J)は、r(J)以下のいずれかの値である。この場合、探索実行部13は、J番目の種類の機器の台数n(J)を0から順次増加させながら、探索範囲(J−1)に含まれ、J番目の種類の機器の台数がn(J)である集合の、第1の指標の合計を算出する。探索実行部13は、算出した第1の指標の合計を必要値と比較し、最初に第1の指標の合計が必要値を上回った集合の、第2の指標の合計を算出する。探索実行部13は、算出した第2の指標の合計を、暫定解記憶部11から読み出した暫定解と比較すればよい。なお、第1の指標の合計が必要値を上回らないまま、n(J)がr(J)に達した場合、探索実行部13は暫定解及び暫定集合の更新を行わず、ステップS21の処理を終了すればよい。
比較の結果、算出した第2の指標の合計が暫定解を下回る場合、探索実行部13は、算出した第2の指標の合計を新しい暫定解にすればよい。また、探索実行部13は、探索範囲記憶部12が記憶している、探索範囲(J−1)を表す1乃至J−1番目の種類の機器の台数であるn(1)からn(J−1)と、J番目の種類の機器の台数r(J)で表される集合を、新しい暫定集合とすればよい。探索実行部13は、新しい暫定解及び暫定集合を表す情報を、暫定解記憶部11に格納する。
比較の結果、算出した第2の指標の合計が暫定解を上回る場合、探索実行部13は暫定解及び暫定集合を表す情報の更新は行わず、ステップS21の処理を終了する。
例えば、ステップS19で、探索範囲が前述の探索木のノード((A,0),(B,1))で表される探索範囲(2)である場合、j(=1)はJ−2(1)より小さくない(ステップS19、N)ので、探索実行部13は、ステップS21の処理を行う。
探索実行部13は、荒い方法でr(j)の算出を行う場合、((A,0),(B,1),(C,0))、((A,0),(B,1),(C,1))で表される機器の集合の第1の指標の合計の算出及び必要値との比較を、順に行う。機器記憶部10に格納されているこれらの機器の第1の指標及び第2の指標は、図5の例の通りである。従って、これらの機器の集合の第1の指標の合計は、必要値より小さい。探索実行部13は、次に、((A,0),(B,1),(C,2))で表される機器の集合の第1の指標の合計を算出する。得られた合計である19は、必要値である15より大きいので、探索実行部13は、この機器の集合の第2の指標の合計を算出する。暫定解記憶部11に格納されている暫定解が24の場合、算出した第2の指標の合計である23は、暫定解より小さい。この場合、探索実行部13は、算出した第2の指標の合計23を新しい暫定解に、対応する((A,0),(B,1),(C,2))で表される機器の集合を新しい暫定集合にする。探索実行部13は、新しい暫定解及び暫定集合を表す情報を、暫定解記憶部11に格納する。
探索実行部13による探索の終了後、上述の図3のステップS3の説明ように、出力部14が、暫定解記憶部11に格納されている暫定集合を表す情報を読み出し、端末2に対して出力すればよい。
以上で説明した本実施形態には、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる2つの指標を持つ複数の種類の機器の組合せを、少ない計算量で導出することができるという効果がある。
その理由は、探索実行部13が、一部の種類の機器の台数によって表される探索範囲毎に、その探索範囲に最小集合が含まれる可能性の有無を判定するからである。そして、探索実行部13は、最小集合が含まれる可能性がない場合、その探索範囲における探索を行わないからである。
(第1の実施形態の第1の変形例)
次に、本発明の第1の実施形態の、第1の変形例について説明する。
前述の第1の実施形態では機器の種類毎の台数に制限は無かったのに対し、本変形例の機器の種類毎の台数は、1台又は0台である(01問題)。本変形例の構成管理装置1は、同じ種類の機器を2台以上含まない充足集合で、第2の指標の合計が最小となる集合を出力する。
まず、本変形例の構成管理装置1の構成について、図面を参照して詳細に説明する。
図1は、本変形例の構成管理装置1の構成を表す図である。本変形例の構成管理装置1の構成は、第1の実施形態の構成管理装置1の構成と同じである。したがって、構成に関する説明は省略する。
図3は、本変形例の構成管理装置1が最小集合を抽出する動作全体を動作の例を表すフローチャートである。
本変形例の構成管理装置1が最小集合を抽出する動作の例は、前述の第1の実施形態の構成管理装置1が最小集合を抽出する動作の例と、ステップS2における初期解の算出の方法と、ステップS3における探索の方法が異なる。
また、探索実行部13は、1番目の機器が0台以上1台以下である充足集合の集まりを、探索範囲の初期値(探索範囲(0))にすればよい。
本変形例の構成管理装置1のその他の動作は、第1の実施形態の構成管理装置1の動作と同じなので、説明を省略する。
図9は、本変形例の構成管理装置1が初期解を算出する動作の例を表すフローチャートである。
図9を参照すると、初期解算出部15は、機器記憶部10から全ての機器の種類の第1の指標及び第2の指標を読み出す(ステップS31)。
次に、初期解算出部15は、全ての機器の種類の指標比を算出する(ステップS32)。初期解算出部15は、算出した指標比が大きい順に、機器の種類をソートしてもよい。
次に、初期解算出部15は、未選択の機器の種類の中で、指標比が最も大きい機器の種類を1つ選択する(ステップS33)。
初期解算出部15は、例えば、暫定解記憶部11に格納されている暫定集合の情報を読み出せばよい。初期解算出部15は、読み出した暫定集合の情報に1台の選択した種類の機器の情報を追加する暫定集合の更新を行えばよい。初期解算出部15は、更新を行った暫定集合の情報を暫定解記憶部11に格納すればよい。初期解算出部15は、暫定解記憶部11に暫定集合の情報が格納されていない場合、1台の選択した種類の機器で構成される暫定集合の情報を生成すればよい。初期解算出部15は、その暫定集合の情報を、暫定解記憶部11に格納すればよい。
初期解算出部15は、既に選択した機器の種類の、第1の指標の累計を算出する(ステップS34)。
なお、初期解算出部15は、ステップS34の動作の実行時に、第2の指標の累計を算出してもよい。そして、初期解算出部15は、算出した第2の指標の累計を、暫定解として暫定解記憶部11に格納してもよい。初期解算出部15は、例えば、暫定解記憶部11から第2の指標の累計である暫定解を読み出せばよい。そして、初期解算出部15は、読み出した暫定解にステップS33で新しく選択した種類の機器の第2の指標を合算すればよい。そして、初期解算出部15は、合算した暫定解を暫定解記憶部11に格納すればよい。この場合、暫定解記憶部11に暫定解が記憶されてなければ、ステップS33で新しく選択した種類の機器の第2の指標を、暫定解として暫定解記憶部11に格納すればよい。
初期解算出部15は、選択済みの機器の種類の第1の指標の累計と必要値を比較する。初期解算出部15は、第1の指標の合計が必要値以上である場合(ステップS35、Y)、暫定解の初期値となる、選択済みの機器の種類の第2の指標の累計を算出する(ステップS36)。
初期解算出部15は、算出した第2の指標の累計を、暫定解の初期値として暫定解記憶部11に格納する(ステップS37)。
なお、ステップS34で、第2の指標の累計を暫定解として暫定解記憶部11に格納している場合、ステップS36では、選択済みの機器の種類の第2の指標の累計を暫定解の初期値として格納する必要はない。
第1の指標の累計が必要値以上でない場合(ステップS35、Y)、全ての機器の種類を選択されておらず、まだ選択されていない機器の種類が存在する場合(ステップS38、N)、ステップS33に戻る。
全ての機器の種類を選択されており、まだ選択されていない機器の種類が残っていない場合(ステップS38、Y)、初期解の算出の処理を終了する。この場合、機器の集合が機器記憶部10に各指標が格納されている全ての機器を含んでいても、その集合の第1の指標の合計は必要値未満なので、充足集合は存在しない。
図10は、本変形例の構成管理装置1の探索の詳細な動作の例を表すフローチャートである。
図10と図4の第1の実施形態の探索の動作を表すフローチャートを比較すると、本変形例はステップS13及びステップS14を含まず、ステップS15の代わりにステップS22を含む点が異なる。本変形例では、各種類の機器の台数は最大1台なので、r(j+1)は常に1である。従って、r(j+1)を算出するためのステップS13及びステップS14は不要である。また、ステップS22は、r(j+1)が常に1である場合のステップS15に相当する。
また、本変形例の構成管理装置1の動作は、第1の実施形態の構成管理装置1の動作と比較して、ステップS17の緩和法によって下限値を算出する動作と、ステップS21の暫定解及び暫定集合を更新する動作が異なる。その他の点は第1の実施形態の動作と同じであるので、説明を省略する。
図11は、ステップS17で、本変形例の構成管理装置1の探索実行部13が下限値を算出する動作の例を表すフローチャートである。
図11を参照すると、探索実行部13は、機器記憶部10から読み出した第1の指標及び第2の指標をもとに、1乃至j+1番目の機器の第1の指標の合計を算出する(ステップS41)。
次に、探索実行部13は、必要値Nから、算出した1乃至j+1番目の機器の第1の指標の合計を引いた残存必要値を算出する(ステップS42)。
次に、探索実行部13は、j+2乃至J番目で未選択の機器の種類から、機器記憶部10から読み出した第1の指標及び第2の指標から算出した指標比が最も大きい機器の種類を選択する(ステップS43)。
探索実行部13は、選択した種類の機器の最大台数分の、第1の指標の和を算出する(ステップS44)。なお、本変形例では、全ての種類の機器の最大台数は1なので、算出する第1の指標の和は、ステップS43で選択した種類の機器の第1の指標そのものである。
探索実行部13は、算出した第1の指標の和が残存必要値より小さい場合(ステップS45、N)、j+2乃至J番目の機器の種類を既に全て選択しており、まだ選択されていない機器の種類が存在しないなら(ステップS49)、処理を終了すればよい。この場合、1乃至J番目の種類の機器を全て組み合わせても、第1の指標の合計が必要値に届かないことになる。
探索実行部13は、算出した第1の指標の和が残存必要値より小さい場合(ステップS45、N)、j+2乃至J番目の機器の種類に、まだ選択されていない機器の種類が存在するなら、残存必要値を更新する(ステップS50)。探索実行部13は、ステップS44で算出した第1の指標の和を残存必要値から減算して、新しい残存必要値とすることで、残存必要値の更新を行えばよい。
探索実行部13は、ステップS50の動作を行った後、ステップS43に戻る。
探索実行部13は、算出した第1の指標の和が残存必要値より大きい場合(ステップS45、Y)、残存必要値を、選択した種類の機器の第1の指標で割った実数値を算出する(ステップS46)。算出した実数値は、第1の指標の値が残存必要値となるように、台数が整数であるという制約を外して算出した、選択した種類の機器の台数(緩和台数)である。なお、本変形例では、各種類の機器の最大台数は1なので、探索実行部13が算出した緩和台数は0以上1以下の範囲に含まれる実数値である。
探索実行部13は、次に、選択した種類の機器の、算出した緩和台数分の第2の指標を算出する(ステップS47)。本変形例では、各種類の機器の最大台数は1なので、探索実行部13が算出した緩和台数分の第2の指標は、0以上で、選択した種類の機器の1台当たりの第2の指標以下の値である。
探索実行部13は、それぞれ最大台数の、最後に選択した機器を除く全ての選択済みの機器及び1乃至j+1番目の種類の機器と、算出した緩和台数分の最後に選択した機器の、第2の指標の合計を算出する。探索実行部13は、算出した合計を、下限値にする(ステップS48)。なお、前述のように、本変形例では、各機器の最大台数は1台である。
以上の処理は、例えば第1の指標が性能を表し、第2の指標がコストを表す場合、第1の指標の合計が必要値以上になるまで、コストパフォーマンスのよい種類の機器から順に、機器の種類を選択することに相当する。以上の処理は、さらに、第1の指標の合計が必要値を上回った場合、第1の指標の合計がちょうど必要値になるよう最後に選択した機器を分割し、分割した機器と、既に選択していた全ての機器の第2の指標の和を算出し、第2の指標の下限値にすることに相当する。
次に、本変形例の構成管理装置1の、図10のステップS21の動作について説明する。
ステップS21で、探索実行部13は、まず、探索範囲(J−1)に含まれる充足集合の中で、第2の指標が最小となる充足集合の、J番目の種類の機器の台数p(J)を算出すればよい。そして、探索実行部13は、p(J)がJ番目の機器の最大台数以下(本変形例では0又は1)である場合、暫定解・暫定集合の更新を行えばよい。p(J)がJ番目の機器の最大台数である1より大きい場合は、探索範囲(J−1)に充足集合は含まれないので、探索実行部13は、暫定解・暫定集合の更新を行わない。
暫定解・暫定集合の更新を行う場合、探索実行部13は、第1の実施形態と同様に、J番目の種類の機器の台数がr(J)である場合の第2の指標の合計を算出すればよい。そして、探索実行部13は、算出した第2の指標の合計を、暫定解記憶部11から読み出した暫定解と比較すればよい。なお、暫定解・暫定集合の更新を行うのはp(J)がJ番目の機器の最大台数(本変形例では1)以下の場合であり、r(J)はJ番目の種類の最大台数とp(J)のいずれか小さい方の値であるので、この場合r(J)はp(J)である。
比較の結果、算出した第2の指標の合計が暫定解を下回る場合、探索実行部13は、算出した第2の指標の合計を新しい暫定解にすればよい。また、探索実行部13は、探索範囲記憶部12が記憶している、探索範囲(J−1)を表す1乃至J−1番目の種類の機器の台数であるn(1)からn(J−1)と、J番目の種類の機器の台数r(J)で表される集合を、新しい暫定集合とすればよい。探索実行部13は、新しい暫定解及び暫定集合を表す情報を、暫定解記憶部11に格納する。
図12は、本変形例の探索実行部13の探索の対象となる機器の集合を表す二分探索木を表す図である。
図12を図8と比較すると、図12の探索木の場合、各ノードの分岐係数が全て2であり、各種類の機器の最大台数が1に制限されている点が異なる。
以上で説明した本変形例には、各種類の機器の最大台数が1の場合に、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる2つの指標を持つ複数の種類の機器の組合せを、少ない計算量で導出することができるという効果がある。
その理由は、探索実行部13が、各種類の機器の最大台数が1であるという条件のもとで、一部の種類の機器の台数によって表される探索範囲毎に、その探索範囲に最小集合が含まれる可能性の有無を判定するからである。そして、探索実行部13は、最小集合が含まれる可能性がない場合、その探索範囲における探索を行わないからである。
(第1の実施形態の第2の変形例)
次に、第1の実施形態の第2の変形例について、図面を参照して詳細に説明する。
第2の変形例では、機器の種類毎に最大台数が存在する。本変形例の構成管理装置1は、同じ種類の機器をその種類の機器の最大台数以上含まない充足集合で、第2の指標の合計が最小となる集合を出力する。
図1が、本変形例の構成管理装置1の構成を表す図である。本変形例の構成管理装置1の構成は、第1の実施形態の構成管理装置1の構成と同じである。
ただし、本変形例の機器記憶部10は、第1の指標及び第2の指標に加えて、機器の種類毎の最大台数を、機器の種類に対応付けて記憶する。各種類の機器の第1の指標、第2の指標及び最大台数は、予め機器記憶部10に格納されていればよい。あるいは、ファイル31に含まれている各種類の機器の第1の指標、第2の指標及び最大台数を、指標取得部16が抽出し、機器記憶部10に格納してもよい。
図13は、本変形例の機器記憶部10が記憶する、第1の指標、第2の指標、及び最大台数の一例を表す図である。
図13の例では、機種Aの最大台数は4台、機種Bの最大台数は3台、機種Cの最大台数は2台である。
本変形例の構成管理装置1の他の構成要素は、第1の実施形態の対応する構成要素と同じなので、説明を省略する。
次に、本変形例の動作について、図面を参照して詳細に説明する。
図3が、本変形例の構成管理装置1が最小集合を抽出する動作全体を動作の例を表すフローチャートである。
本変形例の構成管理装置1が最小集合を抽出する動作の例は、前述の第1の実施形態の構成管理装置1が最小集合を抽出する動作の例と比較すると、ステップS2における初期解の算出の方法と、ステップS3における探索の方法が異なる。
また、探索実行部13は、例えば、1番目の種類の機器のみで充足集合を構成した時の機器の最小台数p(1)を算出し、p(1)と1番目の種類の機器の最大台数のいずれか小さい方をr(1)にする。そして、探索実行部13は、1番目の機器が0台以上r(1)台以下である充足集合の集まりを、探索範囲の初期値(探索範囲(0))にすればよい。
本変形例の構成管理装置1のその他の動作は、第1の実施形態の構成管理装置1の動作と同じなので、説明を省略する。
図14は、本変形例の構成管理装置1が初期解を算出する動作の例を表すフローチャートである。
図14に示す本変形例の構成管理装置1の初期解を算出する動作は、図4に示す第1の変形例の構成管理装置1の初期解を算出する動作と比較すると、ステップS33とステップS34の間にステップS39の動作を行う点が異なる。また、本変形例の、ステップS34の第1の指標の累計及び第2の指標の累計を算出する動作と、ステップS36の暫定解の初期値を算出する動作が、それぞれ対応する第1の変形例の動作と異なる。
本変形例の初期解算出部15は、未選択の機器の種類の中で指標比が最も大きい機器の種類を選択した(ステップS33)後、選択した機器の種類の最大台数を、機器記憶部10から読み出す(ステップS38)。
ステップS34で、初期解算出部15は、機器記憶部10から読み出した、既に選択した機器の種類各々の、第1の指標及び最大台数から、既に選択した機器の種類各々の最大台数分の第1の指標の累計を算出する。
ステップS36で、初期解算出部15は、最後に選択した種類の機器と、台数がそれぞれの種類の機器の最大台数である、最後に選択した機器の種類以外の既に選択した全ての種類の機器で構成される充足集合の、最後に選択した種類の機器の最小台数を算出する。初期解算出部15は、台数がそれぞれの種類の機器の最大台数である、最後に選択した機器の種類以外の既に選択した全ての種類の機器と、算出した最小台数の最後に選択した種類の機器で構成される集合を、暫定集合の初期値にする。初期解算出部15は、暫定集合の初期値の第2の指標の合計を算出し、暫定解の初期値にする。
図14における本変形例の構成管理装置1の他の動作は、図4の第1の変形例の構成管理装置1の同一の符号を付したステップの動作と同じであるので、説明を省略する。
次に、本変形例の構成管理装置1の最小集合の探索時の動作について、図面を参照して詳細に説明する。
図4が、本変形例の構成管理装置1の最小集合の探索時の動作を表すフローチャートである。本変形例の構成管理装置1の最小集合の探索時の動作を表すフローチャートは、第1の実施形態のものと同じであるが、ステップS14のr(j+1)の算出方法と、ステップS17の下限値の算出方法と、ステップS21の暫定解・暫定集合の更新方法が異なる。
ステップS14で、探索実行部13は、ステップS14で算出したp(j+1)と、機器記憶部10から読み出したj+1番目の種類の機器の最大台数を比較し、大きい方をr(j+1)にする。
図11は、本変形例のステップS17において、探索実行部13が下限値を算出する動作を表すフローチャートである。本変形例の探索実行部13が下限値を算出する動作を表すフローチャートは、第1の変形例のものと同じである。しかし、第1の変形例では各種類の機器の最大台数は1台であったのに対し、本変形例の各種類の機器の最大台数は1台に限らず、機器の種類に対応付けて機器記憶部10に格納されている点が異なる。
ステップS44で、探索実行部13は、機器記憶部10から選択した種類の機器の最大台数分を読み出し、選択した種類の機器の最大台数分の、第1の指標の和を算出する。
ステップS46で、探索実行部13が算出する緩和台数は、0以上、機器記憶部10から読み出した、選択した機器の最大台数以下の範囲に含まれる実数値である。
ステップS48で、探索実行部13は、それぞれ機器記憶部10から読み出した最大台数の、最後に選択した機器を除く全ての選択済みの機器及び1乃至j+1番目の種類の機器と、算出した緩和台数分の最後に選択した機器の、第2の指標の合計を算出する。探索実行部13は、算出した合計を、下限値にする。
次に、本変形例の構成管理装置1の、図4のステップS21の動作について説明する。
ステップS21で、探索実行部13は、まず、探索範囲(J−1)に含まれる充足集合の中で、第2の指標が最小となる充足集合の、J番目の種類の機器の台数p(J)を算出すればよい。そして、探索実行部13は、p(J)がJ番目の種類の機器の最大台数以下である場合、暫定解・暫定集合の更新を行えばよい。p(J)がJ番目の種類の機器の最大台数より大きい場合は、探索範囲(J−1)に充足集合は含まれないので、探索実行部13は、暫定解・暫定集合の更新を行わない。
暫定解・暫定集合の更新を行う場合、探索実行部13は、第1の実施形態と同様に、J番目の種類の機器の台数がr(J)である場合の第2の指標の合計を算出すればよい。そして、探索実行部13は、算出した第2の指標の合計を、暫定解記憶部11から読み出した暫定解と比較すればよい。なお、暫定解・暫定集合の更新を行うのはp(J)がJ番目の機器の最大台数以下の場合であり、r(J)はJ番目の種類の最大台数とp(J)のいずれか小さい方の値であるので、この場合r(J)はp(J)である。
比較の結果、算出した第2の指標の合計が暫定解を下回る場合、探索実行部13は、算出した第2の指標の合計を新しい暫定解にすればよい。また、探索実行部13は、探索範囲記憶部12が記憶している、探索範囲(J−1)を表す1乃至J−1番目の種類の機器の台数であるn(1)からn(J−1)と、J番目の種類の機器の台数r(J)で表される集合を、新しい暫定集合とすればよい。探索実行部13は、新しい暫定解及び暫定集合を表す情報を、暫定解記憶部11に格納する。
以上で説明した本変形例には、各種類の機器の最大台数がそれぞれ定まっている場合に、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる2つの指標を持つ複数の種類の機器の組合せを、少ない計算量で導出することができるという効果がある。
その理由は、探索実行部13が、各種類の機器の最大台数が機器記憶部10に格納されている台数であるという条件のもとで、一部の種類の機器の台数によって表される探索範囲毎に、その探索範囲に最小集合が含まれる可能性の有無を判定するからである。そして、探索実行部13は、最小集合が含まれる可能性がない場合、その探索範囲における探索を行わないからである。
次に、本発明の第2の実施形態について、図面を参照して詳細に説明する。
図15は、本実施形態の構成管理装置1Aの構成を表す図である。
図15を参照すると、本実施形態の構成管理装置1Aは、複数(J)の種類毎に第1の指標値P1と第2の指標値P2に関連付けられる機器で構成され、P1の合計が必要値N以上である機器の集合が充足集合、P2の合計の充足集合中の最小値が最小合計である場合に、機器の種類毎に、P1及びP2を記憶する機器記憶部10と、初期値が前記最小合計以上の値である暫定解と、P2の合計が前記暫定解となる機器の集合である暫定集合を表す情報を記憶する暫定解記憶部11と、1乃至j番目(jは1乃至J−1のいずれかの整数)の種類の機器の台数であるn(1)からn(j)を記憶する探索範囲記憶部12と、Nを入力して、n(j+1)を、0から、それぞれn(1)からn(j)台の1乃至j番目の種類の機器とj+1番目の種類の機器のみで充足集合を構成したときのj+1番目の種類の機器の最小台数p(j+1)以下の所定値(j+1)まで順次増加させながら、n(1+1)を探索範囲記憶部12に格納して、N及び1乃至j+1番目の種類の機器のP1及びP2から、1乃至j+1番目の種類の機器の台数が、探索範囲記憶部12に格納されているn(1)からn(j+1)である充足集合の集まりである前記探索範囲(j+1)に含まれる集合のP2の合計の下限値を、各機器の台数が整数であるとの制約を外して算出し、下限値が暫定解より小さい場合、探索範囲(j+1)から、P2の合計が暫定解より小さい充足集合を抽出し、抽出した充足集合のP2の合計及び抽出した充足集合を表す情報を、暫定解及び暫定集合として暫定解記憶部11に格納し、下限値が暫定解より大きい場合、探索範囲(j+1)の探索を行わない探索実行部13と、探索実行部13による探索の実行後、暫定集合を最小集合として出力する出力部14とを含む。
以上で説明した本実施形態には、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる2つの指標を持つ複数の種類の機器の組合せを、少ない計算量で導出することができるという効果がある。
その理由は、探索実行部13が、一部の種類の機器の台数によって表される探索範囲毎に、その探索範囲に最小集合が含まれる可能性の有無を判定するからである。そして、探索実行部13は、最小集合が含まれる可能性がない場合、その探索範囲における探索を行わないからである。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
この出願は、2011年6月20日に出願された日本出願特願2011−136489を基礎とする優先権を主張し、その開示の全てをここに取り込む。Next, embodiments of the present invention will be described in detail with reference to the drawings.
(First embodiment)
FIG. 1 is a block diagram showing the configuration of the
Referring to FIG. 1, the
The
The
For example, when the device is a computing device, the first index represents performance, and the second index is price, the performance of the computer system configured by a set of one or more devices selected from a plurality of types of devices Is represented by the sum of the first indices of the devices included in the set. The price of this computer system is the total of the second index of the devices included in the set.
In the following description, the set in which the sum of the second indexes is the smallest among the set of devices (satisfaction set) in which the sum of the first indexes exceeds a predetermined value (necessary value) is the minimum set. The sum of the second index of the devices belonging to the minimum set is the minimum total. The necessary value may be, for example, a value input to the
In the present embodiment, the number of devices of each type that can be included in a set of devices is not limited. In general, the problem of deriving the optimal combination of devices under a predetermined condition without limiting the number of devices of each type that can be included in the set of devices is called an unlimited problem. For example, when an information processing system composed of one or more computers selected from a plurality of types of computers is newly introduced, if there is no limit on the number of devices of each type to be introduced, the predetermined performance is satisfied, and the most The problem of deriving a low-cost computer is an unlimited problem.
The 1st parameter | index and 2nd parameter | index of each apparatus which the apparatus memory |
The initial
The initial
The provisional
In the initial state, the provisional
The search
The
After the search by the
The
The
The
The
For example, the
The
Next, the operation of the
FIG. 2 is a flowchart illustrating an example of an operation in which the
Referring to FIG. 2, the
Next, the
The
FIG. 3 is a flowchart showing an overall example of an operation in which the
Referring to FIG. 3, the
Next, the initial
Examples of heuristics in which the initial
FIG. 5 is a diagram illustrating an example of device information (first index and second index for each type of device) stored in the
The initial
FIG. 6 is a diagram illustrating an index ratio calculated from the example of the device information illustrated in FIG. Referring to FIG. 6, in this case, model C has the largest index ratio, and the index ratio is 0.88.
For example, when the required value N is 15, the first index of the model C is 7, and 15/7 is about 2.14. Therefore, in order to satisfy the required value with only the model C, three models C are required. is necessary. The total of the second index of the set composed of the three models C is 24. In this case, the initial
FIG. 7 is a diagram illustrating information representing the provisional solution and the provisional set stored in the provisional
Next, the
The
The
As described above, when the search
For the search range (j) determined in this way when the search
Search (0) is a search performed by the
The
The
The
The process of step S3 will be described in detail in the description of FIG.
After the search by the
For example, the provisional solution stored in the provisional
FIG. 4 is a flowchart showing an example of the operation of the
Referring to FIG. 4, the
The search
When j is 0 (step S11, N), the search range is an initial value (search range (0)). The search (0) in step S3 in FIG. 3 means that the
When j is larger than 0 (step S11, Y), the
Next, the
Next, the
In the present embodiment, since the number of each type of device is not limited, the
Alternatively, the
When r (j + 1) is calculated by the fine method described above, the value of r (j + 1) varies depending on the number of first to jth types of devices. However, when r (j + 1) is calculated by a rough method, the value of r (j + 1) is constant regardless of the number of devices of the first to jth types. For example, if the required value is 15, and the j + 1 type of device is the above-mentioned model A, r (j + 1) is 15/3 = 5, so the number of devices of the first to jth types is It is 5 regardless. Similarly, if the j + 1 type device is the above-described model B, r (j + 1) is 3 because it is 15/5 = 3, regardless of the number of the first to jth types of devices. If the (j + 1) th type device is the above-mentioned model C, r (j + 1) is 15/7 = 2.14. . . Therefore, it is 3 regardless of the number of devices of the first to jth types. R (j + 1) calculated by the rough method is a value equal to or larger than r (j + 1) calculated by the fine method.
By the way, it is possible to illustrate a set of devices to be searched by the
FIG. 8 is a diagram illustrating a part of an example of a search tree in the example of the device illustrated in FIG. The model A, model B, and model C in FIG. 8 correspond to the first to third types of devices, respectively.
In the search tree of FIG. 8, circles represent nodes, and lines connecting the nodes represent branches. This search tree has four hierarchies. The node at the top (first hierarchy) is a root node, the node at the lowest (fourth hierarchy) is a leaf node, and the nodes between them are intermediate nodes.
The second to fourth layers correspond to the first to third types of devices (in order, model A, model B, and model C).
The numbers written on the nodes in each layer other than the top represent the number of corresponding models. Each path from the root node to the leaf node corresponds to a set of models. For example, the route from the root node to the
For example, the node (A, 0) corresponds to a set of devices whose number n (1) of the first type (model A) is 0. That is, the node (A, 0) represents a search range represented by n (1) = 0. Similarly, nodes ((A, 0), (B, 0)) corresponding to “0 model A, 0 model B” are represented by n (1) = 0 and n (2) = 0. A search range in which the number n (1) of the first type (model A) is 0 and the number n (2) of the second type (model B) is 0 is represented.
The
The
In the above operation, step S14 corresponds to calculating the number of branches to the node in the lower layer when each node expands the node in the lower layer.
The number of branches from each node to the node one level lower is the branching coefficient. Since the number of devices for each type may be zero, for example, the branch coefficient in the node corresponding to the j−1th device is searched from the number of each of the 1st to j−1th devices corresponding to the node. This is a value obtained by adding 1 to r (j) calculated by the
When the branch coefficient is calculated by a rough method, the nodes of the number of branch coefficients of the device type corresponding to the node one level below always branch from each upper node. Therefore, when the branch coefficient is calculated by a rough method, in the search tree corresponding to each device shown in FIG. 5, the number of leaf nodes corresponding to the total number of combinations of devices is 6 × 4 × obtained by adding the branch coefficients of each model. 4 = 96.
On the other hand, in the detailed method, the branching coefficient of the node below the third hierarchy corresponding to the second or more types of devices is calculated by the number of corresponding devices corresponding to the nodes on the route from the root node to the node. This is a method of calculating based on the difference between the total of the first index and the required value.
For example, in the case of a set corresponding to a route passing through a node represented by (A, 3), the total of the first indices of three models A corresponding to the node is 9. The branch coefficient of this node for which the branch count was calculated by the rough method is 15/5 = 3 (the model B of the model B calculated by the rough method described above) because the first index of the model B which is the second device type is 5. 4 obtained by adding 1 to r (j)). However, the sum of the second indexes of the nodes after the node (A, 3) is 6 or more, which is the difference between the
The detailed method has a feature that it is necessary to calculate a branching coefficient for each node, and a large amount of calculation is required to calculate the total number of combinations when there are many layers (when there are many types of devices). The fine method is further characterized in that the number of nodes can be reduced and search efficiency can be improved. There is no possibility that the path corresponding to the minimum set passes through nodes other than the branch node based on the branch coefficient calculated by the fine method. Therefore, it is necessary to search only a route that passes through a branch node generated based on a branch coefficient calculated by a fine method.
On the other hand, the branch coefficient calculated by the rough method is a value equal to or greater than the branch coefficient calculated for each node by the fine method. Since the rough method calculates the branch coefficient for each type of device instead of calculating the branch coefficient for each node, the calculation amount for calculating the branch coefficient is smaller than that of the fine method. However, the branch coefficient calculated by the rough method becomes a value equal to or greater than the branch coefficient calculated for each node by the fine method, and usually the number of nodes is increased and the search efficiency is poor as compared with the fine method.
Next, the
First, the
Next, the
The
The relaxation of the restriction for the
In the case where the number of devices is a real number, the minimum value of the total of the second index of the set of devices in which the total of the first index is equal to or greater than the predetermined value is the index ratio in which the total of the first index is the predetermined value. Is obtained by calculating the sum of the second index of the set of devices composed of only the types of devices having the largest. The sum of the second index of any set of devices in which the sum of the first index is equal to or greater than a predetermined value does not fall below this minimum value.
The number of 1st to j + 1th types of devices in the set included in the search range (j + 1) is n (1) to n (j + 1). In the following description, the remaining required value is a value obtained by subtracting the total of the first index of the 1st to j + 1th types of devices from n (1) to n (j + 1) from the required value. Also, the type of the device having the largest index value among the j + 2 to Jth types of devices is the model X.
The
For this purpose, first, the
Next, the
The
The
For example, in the intermediate node (A, 0) in FIG. 8, when the required value is 15, the number of model A is 0, so the remaining required value is 15. Of the remaining device types, the device type with the largest index ratio is model C. In the case where the number is allowed to be a real number, the number of models C in which the total of the first index is 15 is 15/7. The total of the second index of 15/7 model C is 15/7 × 8≈17.14. Since the number of the model A is 0, this is the lower limit value regarding the sum of the second index obtained by the search after the intermediate node (A, 0). When model A is zero, it is theoretically impossible to obtain a solution smaller than 17.14 with respect to the total of the second index. Therefore, if the provisional solution is smaller than the calculated lower limit value of 17.14, there is no possibility that the sum of the second indices of the nodes in the route passing through the intermediate node (A, 0) is less than the provisional solution. . In this case, the
Next, the
When the search range is represented by the intermediate node (A, 0) in FIG. 8, if the provisional solution stored in the provisional
As a result of the comparison, when the provisional solution falls below the lower limit (step S18, N), there is no possibility that the search range (j + 1) includes a sufficient set in which the sum of the second indices is less than the provisional solution. In this case, the
For example, when the search range is represented by the intermediate node (A, 2) in FIG. 8, the sum of the first indices of the two models A is 3 × 2 = 6. When the required value is 15, the remaining required value calculated by the
As a result of the comparison, when the provisional solution falls below the lower limit value (step S18, Y), there is a possibility that the search range (j + 1) includes a sufficient set in which the sum of the second indices is less than the provisional solution. The
For example, the
Moreover, the
When j is smaller than J-2 (step S19, Y), the
For example, when the search range is represented by the intermediate node (A, 0) of the search tree described above, the lower limit value is smaller than the provisional solution, and j is 0 and J is 3, so j is J-2. Smaller than. Therefore, the
When j is J−2 (step S19, N), the
The search range (j + 1) is a set of devices (where j (J-1) is n (1) to n (J-1)) when j is J-2. Search range (J-1)). In step S21, the
When p (J) is calculated by the above-described fine method, p (J) is a set included in the search range (J-1), and the Jth of the sufficient set that minimizes the sum of the second indices. Number of types of equipment. In this embodiment, since there is no limit to the number of devices, r (J) is p (J). Therefore, the
On the other hand, when r (J) is calculated by the above-described rough method, the minimum value p (J) of the J-th type device in the satisfaction set included in the search range (J-1) is equal to or less than r (J). One of the values. In this case, the
As a result of the comparison, if the calculated total of the second index is less than the provisional solution, the
As a result of the comparison, if the calculated total of the second indices exceeds the provisional solution, the
For example, when the search range is the search range (2) represented by the nodes ((A, 0), (B, 1)) of the above-described search tree in step S19, j (= 1) is J-2. Since it is not smaller than (1) (step S19, N), the
The
After the search by the
In the present embodiment described above, a combination of a plurality of types of devices having two different indices that satisfies the condition that the sum of one index is equal to or greater than a predetermined value and the sum of the other index is minimized. There is an effect that it can be derived with a small amount of calculation.
The reason is that the
(First modification of the first embodiment)
Next, a first modification of the first embodiment of the present invention will be described.
In the first embodiment described above, the number of devices for each type of device is not limited, whereas the number of devices for each type of device of this modification is one or zero (problem 01). The
First, the configuration of the
FIG. 1 is a diagram illustrating a configuration of a
FIG. 3 is a flowchart showing an example of the operation of the overall configuration for extracting the minimum set by the
An example of the operation in which the
Moreover, the
Since other operations of the
FIG. 9 is a flowchart illustrating an example of an operation in which the
Referring to FIG. 9, the initial
Next, the initial
Next, the initial
For example, the initial
The initial
Note that the initial
The initial
The initial
In step S34, when the cumulative total of the second index is stored in the temporary
When the cumulative total of the first index is not greater than or equal to the required value (step S35, Y), when all the device types have not been selected and there are device types that have not yet been selected (step S38, N), The process returns to step S33.
When all the device types have been selected and there are no device types that have not yet been selected (step S38, Y), the initial solution calculation process is terminated. In this case, even if the set of devices includes all devices in which each index is stored in the
FIG. 10 is a flowchart illustrating an example of a detailed operation of the search of the
Comparing the flowcharts representing the search operation of the first embodiment in FIG. 10 and FIG. 4, the present modification is different in that step S13 and step S14 are not included, and step S22 is included instead of step S15. In the present modification, the maximum number of devices of each type is 1, so r (j + 1) is always 1. Therefore, step S13 and step S14 for calculating r (j + 1) are unnecessary. Step S22 corresponds to step S15 in the case where r (j + 1) is always 1.
Further, the operation of the
FIG. 11 is a flowchart illustrating an example of an operation in which the
Referring to FIG. 11, the
Next, the
Next, the
The
If the calculated sum of the first indices is smaller than the necessary remaining value (step S45, N), the
If the calculated sum of the first indices is smaller than the required remaining value (step S45, N), the
After performing the operation of step S50, the
When the calculated first index sum is greater than the required remaining value (step S45, Y), the
Next, the
The
In the above processing, for example, when the first index represents performance and the second index represents cost, the devices in order from the type with the best cost performance until the sum of the first indexes is equal to or greater than the required value. This is equivalent to selecting the type. The above processing further divides the last selected device so that the total of the first index is exactly the required value when the total of the first index exceeds the required value, and the already selected device is selected. This is equivalent to calculating the sum of the second indices of all the devices that have been used and setting the lower limit of the second index.
Next, the operation of step S21 in FIG. 10 of the
In step S <b> 21, the
When updating the provisional solution / provisional set, the
As a result of the comparison, if the calculated total of the second index is less than the provisional solution, the
FIG. 12 is a diagram illustrating a binary search tree that represents a set of devices to be searched by the
12 differs from FIG. 8 in that the branching coefficient of each node is all 2 and the maximum number of devices of each type is limited to 1 in the search tree of FIG.
In this modification described above, when the maximum number of devices of each type is 1, the condition that the sum of one index is equal to or greater than a predetermined value is satisfied, and the sum of the other index is minimized. There is an effect that a combination of a plurality of types of devices having two indexes can be derived with a small amount of calculation.
The reason is that the
(Second modification of the first embodiment)
Next, a second modification of the first embodiment will be described in detail with reference to the drawings.
In the second modification, there is a maximum number for each type of device. The
FIG. 1 is a diagram illustrating a configuration of a
However, in addition to the first index and the second index, the
FIG. 13 is a diagram illustrating an example of the first index, the second index, and the maximum number stored in the
In the example of FIG. 13, the maximum number of model A is four, the maximum number of model B is three, and the maximum number of model C is two.
The other components of the
Next, the operation of this modification will be described in detail with reference to the drawings.
FIG. 3 is a flowchart showing an example of the entire operation of extracting the minimum set by the
An example of the operation in which the
In addition, the
Since other operations of the
FIG. 14 is a flowchart illustrating an example of an operation in which the
The operation of calculating the initial solution of the
The initial
In
In step S36, the initial
Other operations of the
Next, the operation at the time of searching for the minimum set of the
FIG. 4 is a flowchart showing the operation at the time of searching for the minimum set of the
In step S14, the
FIG. 11 is a flowchart showing an operation in which the
In step S44, the
In step S46, the relaxed number calculated by the
In step S48, the
Next, the operation of step S21 in FIG. 4 of the
In step S <b> 21, the
When updating the provisional solution / provisional set, the
As a result of the comparison, if the calculated total of the second index is less than the provisional solution, the
In this modification described above, when the maximum number of each type of device is determined, the condition that the sum of one index is equal to or greater than a predetermined value is satisfied, and the sum of the other index is minimized. There is an effect that a combination of a plurality of types of devices having two different indexes can be derived with a small amount of calculation.
The reason is that the
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.
FIG. 15 is a diagram illustrating the configuration of the configuration management apparatus 1A according to the present embodiment.
Referring to FIG. 15, the configuration management device 1A of the present embodiment is configured with devices associated with the first index value P1 and the second index value P2 for each of a plurality (J) types, and the total of P1 is required. A
In the present embodiment described above, a combination of a plurality of types of devices having two different indices that satisfies the condition that the sum of one index is equal to or greater than a predetermined value and the sum of the other index is minimized. There is an effect that it can be derived with a small amount of calculation.
The reason is that the
The present invention has been described above with reference to the embodiments, but the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2011-136487 for which it applied on June 20, 2011, and takes in those the indications of all here.
本発明は、システム構築において、システムの原価を低く抑えるための装置またはシステムに好適である。 The present invention is suitable for an apparatus or system for keeping the cost of a system low in system construction.
1、1A 構成管理装置
2 端末
3 サーバ
10 機器記憶部
11 暫定解記憶部
12 探索範囲記憶部
13 探索実行部
14 出力部
15 初期解算出部
16 指標取得部
31 ファイル1, 1A
Claims (10)
機器の種類毎に、P1及びP2を記憶する機器記憶手段と、
初期値が前記最小合計以上の値である暫定解と、P2の合計が前記暫定解となる機器の集合である暫定集合を表す情報を記憶する暫定解記憶手段と、
1乃至j番目(jは1乃至J−1のいずれかの整数)の種類の機器の台数であるn(1)からn(j)を記憶する探索範囲記憶手段と、
Nを入力して、
n(j+1)を、0から、それぞれn(1)からn(j)台の1乃至j番目の種類の機器とj+1番目の種類の機器のみで充足集合を構成したときのj+1番目の種類の機器の最小台数p(j+1)以下の所定値(j+1)まで順次増加させながら、
n(j+1)を前記探索範囲記憶手段に格納して、
N及び1乃至j+1番目の種類の機器のP1及びP2から、1乃至j+1番目の種類の機器の台数が、前記探索範囲記憶手段に格納されているn(1)からn(j+1)である充足集合の集まりである前記探索範囲(j+1)に含まれる集合のP2の合計の下限値を、各機器の台数が整数であるとの制約を外して算出し、
前記下限値が前記暫定解より小さい場合、
前記探索範囲(j+1)から、P2の合計が前記暫定解より小さい充足集合を抽出し、抽出した前記充足集合のP2の合計及び抽出した前記充足集合を表す情報を、暫定解及び暫定集合として前記暫定解記憶手段に格納し、
前記下限値が前記暫定解より大きい場合、前記探索範囲(j+1)の探索を行わない
探索実行手段と、
前記探索実行手段による探索の実行後、前記暫定集合を最小集合として出力する出力手段と
を含む構成管理装置。A set of devices each of which is associated with the first index value P1 and the second index value P2 for each of a plurality of types (J), and the sum of P1 is equal to or greater than the necessary value N is a sufficient set, and the total of P2 If the smallest value in the sufficient set is the smallest sum,
Device storage means for storing P1 and P2 for each device type;
A provisional solution storage means for storing information representing a provisional solution whose initial value is a value equal to or greater than the minimum total, and a provisional set in which a sum of P2 is a set of devices serving as the provisional solution;
Search range storage means for storing n (1) to n (j), which is the number of devices of the 1st to jth (j is an integer from 1 to J-1) type,
Enter N
n (j + 1) is a j + 1-th type when a satisfying set is composed of only 1 to j-th type devices and j + 1-type devices from n (1) to n (j) units from 0, respectively. While sequentially increasing to a predetermined value (j + 1) below the minimum number of devices p (j + 1),
n (j + 1) is stored in the search range storage means,
From P1 and P2 of N and 1 to j + 1 type devices, the number of 1 to j + 1 type devices is n (1) to n (j + 1) stored in the search range storage means Calculating the lower limit value of the total P2 of the set included in the search range (j + 1) which is a set of sets, excluding the restriction that the number of devices is an integer;
When the lower limit value is smaller than the provisional solution,
From the search range (j + 1), a satisfaction set in which the sum of P2 is smaller than the provisional solution is extracted, and the information indicating the sum of P2 of the extracted satisfaction set and the extracted satisfaction set is used as the provisional solution and provisional set. Stored in provisional solution storage means,
A search execution means that does not search the search range (j + 1) when the lower limit value is greater than the provisional solution;
A configuration management device comprising: output means for outputting the temporary set as a minimum set after execution of the search by the search execution means.
前記探索実行手段は、p(j)と前記機器情報記憶手段から入力したq(j)(1≦j≦J)のいずれか小さい方を、p(j)以下の前記所定値(j)とする
請求項1に記載の構成管理装置。The device information storage means stores the maximum number q (j) (1 ≦ j ≦ J) of each type of device in association with the type of device,
The search execution means determines the smaller one of p (j) and q (j) (1 ≦ j ≦ J) input from the device information storage means as the predetermined value (j) equal to or less than p (j). The configuration management apparatus according to claim 1.
前記機器記憶手段が記憶するP1をP2で割った指標比を機器の種類毎に算出し、
前記探索範囲記憶手段が記憶するそれぞれn(1)からn(j)の台数の1からj(1≦j<J)番目の種類の機器の、P1の合計を算出し、算出した前記合計をNから引いた残存必要値を算出し、
j+1番目からJ番目の種類の機器の中で前記指標値が最も大きい機器(機器X)のP1で前記残存必要値を割った実数値である緩和台数を算出し、
それぞれn(1)からn(j)の台数の1からj番目の種類の機器のP2の合計と、前記機器XのP2に前記緩和台数を掛けた値を足した値を、前記探索範囲(j)の前記下限値とする
請求項1に記載の構成管理装置。The search execution means includes
An index ratio obtained by dividing P1 stored by the device storage means by P2 is calculated for each type of device,
The total of P1 of the 1st to j (1 ≦ j <J) type devices of the number n (1) to n (j) respectively stored in the search range storage means is calculated, and the calculated total is calculated. Calculate the remaining required value subtracted from N,
Calculate the mitigation number that is a real value obtained by dividing the remaining required value by P1 of the device (device X) having the largest index value among the devices of the j + 1th to Jth types,
The total of P2 of the 1st to jth types of devices of n (1) to n (j) and the value obtained by adding the value obtained by multiplying P2 of the device X by the relaxed number is the search range ( The configuration management apparatus according to claim 1, wherein j is the lower limit value.
前記機器記憶手段が記憶するP1をP2で割った指標比を機器の種類毎に算出し、
前記探索範囲記憶手段が記憶するそれぞれn(1)からn(j)の台数の1からj(1≦j<J)番目の種類の機器の、P1の合計を算出して既定必要値とし、P2の合計を算出して暫定下限値とし、Nから前記既存必要値を引いた値を残存必要値とし、
前記指標値が大きい順に、j+1番目からJ番目の機器の種類から、機器の種類を順次選択しながら、
選択した種類の機器(S番目の種類)の、前記機器情報記憶手段に記憶されている最大台数q(S)分のP1の合計を算出し、
前記合計が前記残存必要値より小さい場合、前記合計を前記既定必要値に加算し、前記を前記残存必要値から減算し、q(S)台のS番目の種類の機器のP2の合計を前記暫定下限値に加算し、
前記合計が前記残存必要値以上の場合、S番目の種類の機器のP1で前記残存必要値を割った実数値である緩和台数を算出し、前記緩和台数分のS番目の種類の機器のP2の合計を前記暫定下限値に加算して、
前記探索範囲(j)の前記下限値にする
請求項2に記載の構成管理装置。The search execution means includes
An index ratio obtained by dividing P1 stored by the device storage means by P2 is calculated for each type of device,
The total of P1 of the 1st to j (1 ≦ j <J) type devices of the number n (1) to n (j) stored in the search range storage means is calculated as the default required value, The total of P2 is calculated as a provisional lower limit, and the value obtained by subtracting the existing required value from N is set as the remaining required value.
While selecting the device type sequentially from the j + 1st to Jth device types in descending order of the index value,
Calculate the sum of P1 for the maximum number q (S) stored in the device information storage means of the selected type of device (Sth type),
If the total is less than the remaining required value, add the total to the predetermined required value, subtract it from the remaining required value, and add the sum of P2 of q (S) S-type devices Add to the provisional lower limit,
If the total is equal to or greater than the remaining required value, a relaxed number that is a real value obtained by dividing the remaining required value by P1 of the Sth type device is calculated, and P2 of the Sth type device corresponding to the relaxed number Is added to the provisional lower limit value,
The configuration management apparatus according to claim 2, wherein the lower limit value of the search range (j) is set.
機器の種類毎に、P1及びP2を機器記憶手段に記憶し、
初期値が前記最小合計以上の値である暫定解と、P2の合計が前記暫定解となる機器の集合である暫定集合を表す情報を暫定解記憶手段に記憶し、
1乃至j番目(jは1乃至J−1のいずれかの整数)の種類の機器の台数であるn(1)からn(j)を探索範囲記憶手段に記憶し、
Nを入力して、
n(j+1)を、0から、それぞれn(1)からn(j)台の1乃至j番目の種類の機器とj+1番目の種類の機器のみで充足集合を構成したときのj+1番目の種類の機器の最小台数p(j+1)以下の所定値(j+1)まで順次増加させながら、
n(j+1)を前記探索範囲記憶手段に格納して、
N及び1乃至j+1番目の種類の機器のP1及びP2から、1乃至j+1番目の種類の機器の台数が、前記探索範囲記憶手段に格納されているn(1)からn(j+1)である充足集合の集まりである前記探索範囲(j+1)に含まれる集合のP2の合計の下限値を、各機器の台数が整数であるとの制約を外して算出し、
前記下限値が前記暫定解より小さい場合、
前記探索範囲(j+1)から、P2の合計が前記暫定解より小さい充足集合を抽出し、抽出した前記充足集合のP2の合計及び抽出した前記充足集合を表す情報を、暫定解及び暫定集合として前記暫定解記憶手段に格納し、
前記下限値が前記暫定解より大きい場合、前記探索範囲(j+1)の探索を行わず、
前記探索の実行後、前記暫定集合を最小集合として出力する
構成管理方法。A set of devices each of which is associated with the first index value P1 and the second index value P2 for each of a plurality of types (J), and the sum of P1 is equal to or greater than the necessary value N is a sufficient set, and the total of P2 If the smallest value in the sufficient set is the smallest sum,
For each device type, P1 and P2 are stored in the device storage means,
Information indicating a provisional solution having an initial value equal to or greater than the minimum total and a provisional set in which a sum of P2 is a set of devices serving as the provisional solution is stored in the provisional solution storage unit;
N (1) to n (j), which are the number of devices of the 1st to jth types (j is an integer from 1 to J-1), are stored in the search range storage means,
Enter N
n (j + 1) is a j + 1-th type when a satisfying set is composed of only 1 to j-th type devices and j + 1-type devices from n (1) to n (j) units from 0, respectively. While sequentially increasing to a predetermined value (j + 1) below the minimum number of devices p (j + 1),
n (j + 1) is stored in the search range storage means,
From P1 and P2 of N and 1 to j + 1 type devices, the number of 1 to j + 1 type devices is n (1) to n (j + 1) stored in the search range storage means Calculating the lower limit value of the total P2 of the set included in the search range (j + 1) which is a set of sets, excluding the restriction that the number of devices is an integer;
When the lower limit value is smaller than the provisional solution,
From the search range (j + 1), a satisfaction set in which the sum of P2 is smaller than the provisional solution is extracted, and the information indicating the sum of P2 of the extracted satisfaction set and the extracted satisfaction set is used as the provisional solution and provisional set. Stored in provisional solution storage means,
When the lower limit value is larger than the provisional solution, the search of the search range (j + 1) is not performed,
A configuration management method for outputting the temporary set as a minimum set after execution of the search.
p(j)と前記機器情報記憶手段から入力したq(j)(1≦j≦J)のいずれか小さい方を、p(j)以下の前記所定値(j)とする
請求項5に記載の構成管理方法。The maximum number of devices of each type q (j) (1 ≦ j ≦ J) is stored in the device information storage means in association with the device type,
The smaller one of p (j) and q (j) (1 ≦ j ≦ J) input from the device information storage means is set to the predetermined value (j) equal to or less than p (j). Configuration management method.
コンピュータを、
機器の種類毎に、P1及びP2を記憶する機器記憶手段と、
初期値が前記最小合計以上の値である暫定解と、P2の合計が前記暫定解となる機器の集合である暫定集合を表す情報を記憶する暫定解記憶手段と、
1乃至j番目(jは1乃至J−1のいずれかの整数)の種類の機器の台数であるn(1)からn(j)を記憶する探索範囲記憶手段と、
Nを入力して、
n(j+1)を、0から、それぞれn(1)からn(j)台の1乃至j番目の種類の機器とj+1番目の種類の機器のみで充足集合を構成したときのj+1番目の種類の機器の最小台数p(j+1)以下の所定値(j+1)まで順次増加させながら、
n(j+1)を前記探索範囲記憶手段に格納して、
N及び1乃至j+1番目の種類の機器のP1及びP2から、1乃至j+1番目の種類の機器の台数が、前記探索範囲記憶手段に格納されているn(1)からn(j+1)である充足集合の集まりである前記探索範囲(j+1)に含まれる集合のP2の合計の下限値を、各機器の台数が整数であるとの制約を外して算出し、
前記下限値が前記暫定解より小さい場合、
前記探索範囲(j+1)から、P2の合計が前記暫定解より小さい充足集合を抽出し、抽出した前記充足集合のP2の合計及び抽出した前記充足集合を表す情報を、暫定解及び暫定集合として前記暫定解記憶手段に格納し、
前記下限値が前記暫定解より大きい場合、前記探索範囲(j+1)の探索を行わない
探索実行手段と、
前記探索実行手段による探索の実行後、前記暫定集合を最小集合として出力する出力手段と
して動作させる構成管理プログラムを記憶するプログラム記録媒体。A set of devices each of which is associated with the first index value P1 and the second index value P2 for each of a plurality of types (J), and the sum of P1 is equal to or greater than the necessary value N is a sufficient set, and the total of P2 If the smallest value in the sufficient set is the smallest sum,
Computer
Device storage means for storing P1 and P2 for each device type;
A provisional solution storage means for storing information representing a provisional solution whose initial value is a value equal to or greater than the minimum total, and a provisional set in which a sum of P2 is a set of devices serving as the provisional solution;
Search range storage means for storing n (1) to n (j), which is the number of devices of the 1st to jth (j is an integer from 1 to J-1) type,
Enter N
n (j + 1) is a j + 1-th type when a satisfying set is composed of only 1 to j-th type devices and j + 1-type devices from n (1) to n (j) units from 0, respectively. While sequentially increasing to a predetermined value (j + 1) below the minimum number of devices p (j + 1),
n (j + 1) is stored in the search range storage means,
From P1 and P2 of N and 1 to j + 1 type devices, the number of 1 to j + 1 type devices is n (1) to n (j + 1) stored in the search range storage means Calculating the lower limit value of the total P2 of the set included in the search range (j + 1) which is a set of sets, excluding the restriction that the number of devices is an integer;
When the lower limit value is smaller than the provisional solution,
From the search range (j + 1), a satisfaction set in which the sum of P2 is smaller than the provisional solution is extracted, and the information indicating the sum of P2 of the extracted satisfaction set and the extracted satisfaction set is used as the provisional solution and provisional set. Stored in provisional solution storage means,
A search execution means that does not search the search range (j + 1) when the lower limit value is greater than the provisional solution;
A program recording medium for storing a configuration management program to be operated as output means for outputting the temporary set as a minimum set after execution of search by the search execution means.
p(j)と前記機器情報記憶手段から入力したq(j)(1≦j≦J)のいずれか小さい方を、p(j)以下の前記所定値(j)とする前記探索実行手段と
して動作させる構成管理プログラムを記憶する請求項7に記載のプログラム記録媒体。The device information storage means for storing the maximum number q (j) (1 ≦ j ≦ J) of each type of device in association with the type of device;
the search execution means for setting the smaller one of p (j) and q (j) (1 ≦ j ≦ J) input from the device information storage means to the predetermined value (j) equal to or less than p (j); The program recording medium according to claim 7, wherein a configuration management program to be operated is stored.
前記機器記憶手段が記憶するP1をP2で割った指標比を機器の種類毎に算出し、
前記探索範囲記憶手段が記憶するそれぞれn(1)からn(j)の台数の1からj(1≦j<J)番目の種類の機器の、P1の合計を算出し、算出した前記合計をNから引いた残存必要値を算出し、
j+1番目からJ番目の種類の機器の中で前記指標値が最も大きい機器(機器X)のP1で前記残存必要値を割った実数値である緩和台数を算出し、
それぞれn(1)からn(j)の台数の1からj番目の種類の機器のP2の合計と、前記機器XのP2に前記緩和台数を掛けた値を足した値を、前記探索範囲(j)の前記下限値とする前記探索実行手段と
して動作させる構成管理プログラムを記憶する請求項7に記載のプログラム記録媒体。Computer
An index ratio obtained by dividing P1 stored by the device storage means by P2 is calculated for each type of device,
The total of P1 of the 1st to j (1 ≦ j <J) type devices of the number n (1) to n (j) respectively stored in the search range storage means is calculated, and the calculated total is calculated. Calculate the remaining required value subtracted from N,
Calculate the mitigation number that is a real value obtained by dividing the remaining required value by P1 of the device (device X) having the largest index value among the devices of the j + 1th to Jth types,
The total of P2 of the 1st to jth types of devices of n (1) to n (j) and the value obtained by adding the value obtained by multiplying P2 of the device X by the relaxed number is the search range ( The program recording medium according to claim 7, wherein a configuration management program that is operated as the search execution unit that sets the lower limit of j) is stored.
前記機器記憶手段が記憶するP1をP2で割った指標比を機器の種類毎に算出し、
前記探索範囲記憶手段が記憶するそれぞれn(1)からn(j)の台数の1からj(1≦j<J)番目の種類の機器の、P1の合計を算出して既定必要値とし、P2の合計を算出して暫定下限値とし、Nから前記既存必要値を引いた値を残存必要値とし、
前記指標値が大きい順に、j+1番目からJ番目の機器の種類から、機器の種類を順次選択しながら、
選択した種類の機器(S番目の種類)の、前記機器情報記憶手段に記憶されている最大台数q(S)分のP1の合計を算出し、
前記合計が前記残存必要値より小さい場合、前記合計を前記既定必要値に加算し、前記を前記残存必要値から減算し、q(S)台のS番目の種類の機器のP2の合計を前記暫定下限値に加算し、
前記合計が前記残存必要値以上の場合、S番目の種類の機器のP1で前記残存必要値を割った実数値である緩和台数を算出し、前記緩和台数分のS番目の種類の機器のP2の合計を前記暫定下限値に加算して、
前記探索範囲(j)の前記下限値にする前記探索実行手段と
して動作させる構成管理プログラムを記憶する請求項8に記載のプログラム記録媒体。Computer
An index ratio obtained by dividing P1 stored by the device storage means by P2 is calculated for each type of device,
The total of P1 of the 1st to j (1 ≦ j <J) type devices of the number n (1) to n (j) stored in the search range storage means is calculated as the default required value, The total of P2 is calculated as a provisional lower limit, and the value obtained by subtracting the existing required value from N is set as the remaining required value.
While selecting the device type sequentially from the j + 1st to Jth device types in descending order of the index value,
Calculate the sum of P1 for the maximum number q (S) stored in the device information storage means of the selected type of device (Sth type),
If the total is less than the remaining required value, add the total to the predetermined required value, subtract it from the remaining required value, and add the sum of P2 of q (S) S-type devices Add to the provisional lower limit,
If the total is equal to or greater than the remaining required value, a relaxed number that is a real value obtained by dividing the remaining required value by P1 of the Sth type device is calculated, and P2 of the Sth type device corresponding to the relaxed number Is added to the provisional lower limit value,
The program recording medium according to claim 8, storing a configuration management program that is operated as the search execution means for setting the lower limit value of the search range (j).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013521658A JP5949764B2 (en) | 2011-06-20 | 2012-06-20 | Configuration management apparatus, configuration management method, and program recording medium for storing configuration management program |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011136489 | 2011-06-20 | ||
JP2011136489 | 2011-06-20 | ||
JP2013521658A JP5949764B2 (en) | 2011-06-20 | 2012-06-20 | Configuration management apparatus, configuration management method, and program recording medium for storing configuration management program |
PCT/JP2012/066307 WO2012176925A1 (en) | 2011-06-20 | 2012-06-20 | Configuration management device, configuration management method, and program-recording medium storing configuration management program |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2012176925A1 true JPWO2012176925A1 (en) | 2015-02-23 |
JP5949764B2 JP5949764B2 (en) | 2016-07-13 |
Family
ID=47422751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013521658A Active JP5949764B2 (en) | 2011-06-20 | 2012-06-20 | Configuration management apparatus, configuration management method, and program recording medium for storing configuration management program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5949764B2 (en) |
WO (1) | WO2012176925A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024029022A1 (en) * | 2022-08-04 | 2024-02-08 | 日本電信電話株式会社 | Device for accelerating branch-and-bound method, method, and program |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002183416A (en) * | 2000-12-15 | 2002-06-28 | Hitachi Ltd | System proposing method, device for performing it, storage medium storing its processing program |
JP2004030292A (en) * | 2002-06-26 | 2004-01-29 | Hitachi Ltd | Method and device for deriving system configuration of computer |
-
2012
- 2012-06-20 JP JP2013521658A patent/JP5949764B2/en active Active
- 2012-06-20 WO PCT/JP2012/066307 patent/WO2012176925A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002183416A (en) * | 2000-12-15 | 2002-06-28 | Hitachi Ltd | System proposing method, device for performing it, storage medium storing its processing program |
JP2004030292A (en) * | 2002-06-26 | 2004-01-29 | Hitachi Ltd | Method and device for deriving system configuration of computer |
Also Published As
Publication number | Publication date |
---|---|
JP5949764B2 (en) | 2016-07-13 |
WO2012176925A1 (en) | 2012-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006004307A (en) | Business assessment support method | |
KR102125119B1 (en) | Data handling method and device | |
JP2006107432A (en) | System and method for ranking result of search by using click distance | |
JP6982557B2 (en) | Reward function generation method and computer system | |
GB2503486A (en) | Managing changes to files | |
US20070233532A1 (en) | Business process analysis apparatus | |
US20200278960A1 (en) | Method and system for deriving a procedure for querying data | |
KR101975272B1 (en) | System and method for recommending component reuse based on collaboration dependency | |
JP5949764B2 (en) | Configuration management apparatus, configuration management method, and program recording medium for storing configuration management program | |
JP2012133694A (en) | Demand prediction method | |
JP6487820B2 (en) | Risk assessment device, risk assessment method, and risk assessment program | |
JP5761029B2 (en) | Dictionary creation device, word collection method, and program | |
CN113515517A (en) | Method for querying data set based on tree structure data and computer equipment | |
CN103970816B (en) | The method and system of mark content to be issued | |
JP5900341B2 (en) | Configuration management apparatus, configuration management method, and configuration management program | |
JP5555238B2 (en) | Information processing apparatus and program for Bayesian network structure learning | |
JP2012181739A (en) | Man-hour estimation device, man-hour estimation method, and man-hour estimation program | |
US11397715B2 (en) | Defining indexing fields for matching data entities | |
WO2022018899A1 (en) | System for extracting subtree from kpi tree | |
JP6867319B2 (en) | Inter-vocabulary relationship inferring device and inter-vocabulary relationship inferring method | |
CN107562533A (en) | A kind of data loading processing method and device | |
JP2018060379A (en) | Searching means selecting program, searching means selecting method and searching means selecting device | |
US7577649B2 (en) | Engine for validating proposed changes to an electronic entity | |
JP6221593B2 (en) | Data management method, data management program, and data management apparatus | |
JP3967230B2 (en) | Image information display system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160209 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160408 |
|
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: 20160510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160523 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5949764 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |