(57)【要約】［課題］第１の指標Ｐ１の合計が所定値以上であり第２の指標Ｐ２の合計が最小となる、２つの指標をもつ複数の種類の機器の組合せを導出する構成管理装置を提供する。［解決手段］本発明の構成管理装置は、複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を記憶する機器記憶手段と、要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得する構成更新手段と、最小集合（Ｎ，Ｊ）を出力する出力手段を備える。
2012039486.tif 000002
【特許請求の範囲】
【請求項１】
種類毎に第１の指標値Ｐ１と第２の指標値Ｐ２に関連付けられるｉ種類の機器で構成される、Ｐ１の合計がｎ以上の集合中、Ｐ２の合計が最小な集合を最小集合（ｎ，ｉ）、最小集合（ｎ，ｉ）に属する機器のＰ２の合計を最小合計（ｎ，ｉ）と定義した場合に、
複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を記憶する機器記憶手段と、
要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得する構成更新手段と、
最小集合（Ｎ，Ｊ）を出力する出力手段を備える、構成管理装置。
【請求項２】
Ｐ１は前記機器の性能指標値、Ｐ２は前記機器のコスト指標値である、請求項１の構成管理装置。
【請求項３】
ｉ番目の種類の機器のＰ１、Ｐ２をＰ１（ｉ）、Ｐ２（ｉ）と定義した場合に、
最小合計（ｎ，ｉ）（ｎは０以上Ｎ以下の整数、ｉは１以上Ｊ以下の整数）及び最小集合（ｎ，ｉ）に最後に加わった機器の種類を表す置換機種（ｎ，ｉ）をｎ及びｉに対応させて記憶する構成記憶手段と、
ｎ（前記入力値Ｎ以下の非負整数）のおのおのについて、Ｐ１（１）及びＰ２（１）にもとづいて最小合計（ｎ，１）を求め、１番目の機器の種類を置換機種（ｎ，１）として、それぞれ前記構成記憶手段に格納する初期化手段とを含み、
前記構成更新手段は、ｉを２からＪまで、ｎを１からＮまで、順次増加させながら、最小合計（ｎ−Ｐ１（ｉ）），ｉ）＋Ｐ２（ｉ）が、ａ）最小合計（ｎ，ｉ−１）より小さいとき最小合計（ｎ−Ｐ１（ｉ）），ｉ）＋Ｐ２（ｉ）を最小合計（ｎ，ｉ）、ｉ番目の機器の種類を置換機種（ｎ，ｉ）とし、ｂ）最小合計（ｎ，ｉ−１）より小さくないとき、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）として前記構成記憶手段に格納し、
前記出力手段は、置換機種（ｍ，Ｊ）（ｍは１以上Ｎ以下）に基づいて最小集合（Ｎ，Ｊ）を求めて出力する、請求項１または２の構成管理装置。
【請求項４】
機種名に対応するＰ１及びＰ２を格納するファイルから、Ｊ種類の機器の機種名に対応するＰ１及びＰ２を入力して、前記機器記憶手段に格納する指標取得手段を備える、請求項３の構成管理装置。
【請求項５】
ｉが０の場合又はｎが０以下の場合、最小合計（ｎ，ｉ）は０であり、置換機種（ｎ，ｉ）は有効値を持たず、さらに、ｊ番目の種類の機器の第１の指標及び２の値をそれぞれＰ１（ｊ）、Ｐ２（ｊ）、機器の種類別の台数をＬ、ｊ番目の種類の機器の台数をＬ（ｊ）、ｊ番目以下の種類の機器の台数の合計をＴ（ｊ）と定義した場合に、
最小合計（ｎ，ｉ）（ｎは前記入力値Ｎ以下の非負整数、ｉはＴ（ｊ）以下の正整数）及び最小集合（ｎ，ｉ）に最後に加わった機器の種類を表す置換機種（ｎ，ｉ）を記憶する構成記憶手段を含み、
前記機器記憶手段は、複数（Ｊ）種類の機器の種類毎に、Ｌ、Ｐ１及びＰ２の値を記憶し、
前記構成更新手段は、ｊを１から前記Ｊまで、ｉをＴ（ｊ−１）＋１からＴ（ｊ）＝Ｔ（ｊ−１）＋Ｌ（ｊ）まで、ｎを１から前記Ｎまで、順次増加させながら、ｎがｉ番目以下の全ての機器の第１の指標の和Ｓ以下であれば、ａ）置換機種（ｎ，ｉ−１）が有効値を持たない場合又は最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）が最小合計（ｎ，ｉ−１）より小さい場合、最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）を最小合計（ｎ，ｉ）にし、ｊ番目の種類を置換機種（ｎ，ｉ）とし、ｂ）最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）が最小合計（ｎ，ｉ−１）より小さくない場合、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）とし、ｎ及びｉに対応させて最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を前記構成記憶手段に格納し、
前記出力手段は、置換機種（ｍ，Ｔ（Ｊ））（ｍは１以上Ｎ以下）に基づいて最小集合（Ｎ，Ｔ（Ｊ））を求めて出力する、
請求項１または２の構成管理装置。
【請求項６】
自装置とネットワークで接続され、機種名、Ｐ１、及びＰ２を格納する複数の機器から、前記機種名、Ｐ１、及びＰ２を入力して、前記機器記憶手段に格納する指標取得手段を備える、請求項５の構成管理装置。
【請求項７】
前記複数の機器と、請求項６の構成管理装置を包含する、構成管理システム。
【請求項８】
種類毎に第１の指標値Ｐ１と第２の指標値Ｐ２に関連付けられるｉ種類の機器で構成される、Ｐ１の合計がｎ以上の集合中、Ｐ２の合計が最小な集合を最小集合（ｎ，ｉ）、最小集合（ｎ，ｉ）に属する機器のＰ２の合計を最小合計（ｎ，ｉ）と定義した場合に、
複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を機器記憶手段に記憶し、
要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得し、
最小集合（Ｎ，Ｊ）を出力する、構成管理方法。
【請求項９】
Ｐ１は前記機器の性能指標値、Ｐ２は前記機器のコスト指標値である、請求項８の構成管理方法。
【請求項１０】
ｉ番目の種類の機器のＰ１、Ｐ２をＰ１（ｉ）、Ｐ２（ｉ）と定義した場合に、
最小合計（ｎ，ｉ）（ｎは０以上Ｎ以下の整数、ｉは１以上Ｊ以下の整数）及び最小集合（ｎ，ｉ）に最後に加わった機器の種類を表す置換機種（ｎ，ｉ）をｎ及びｉに対応させて構成記憶手段に記憶し、
ｎ（前記入力値Ｎ以下の非負整数）のおのおのについて、Ｐ１（１）及びＰ２（１）にもとづいて最小合計（ｎ，１）を求め、１番目の機器の種類を置換機種（ｎ，１）として、それぞれ前記構成記憶手段に格納し、
ｉを２からＪまで、ｎを１からＮまで、順次増加させながら、最小合計（ｎ−Ｐ１（ｉ）），ｉ）＋Ｐ２（ｉ）が、ａ）最小合計（ｎ，ｉ−１）より小さいとき最小合計（ｎ−Ｐ１（ｉ）），ｉ）＋Ｐ２（ｉ）を最小合計（ｎ，ｉ）、ｉ番目の機器の種類を置換機種（ｎ，ｉ）とし、ｂ）最小合計（ｎ，ｉ−１）より小さくないとき、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）として前記構成記憶手段に格納し、
置換機種（ｍ，Ｊ）（ｍは１以上Ｎ以下）に基づいて最小集合（Ｎ，Ｊ）を求めて出力する、請求項８または９の構成管理方法。
【請求項１１】
機種名に対応するＰ１及びＰ２を格納するファイルから、Ｊ種類の機器の機種名に対応するＰ１及びＰ２を入力して、前記機器記憶手段に格納する、請求項１０の構成管理方法。
【請求項１２】
ｉが０の場合又はｎが０以下の場合、最小合計（ｎ，ｉ）は０であり、置換機種（ｎ，ｉ）は有効値を持たず、さらに、ｊ番目の種類の機器の第１の指標及び２の値をそれぞれＰ１（ｊ）、Ｐ２（ｊ）、機器の種類別の台数をＬ、ｊ番目の種類の機器の台数をＬ（ｊ）、ｊ番目以下の種類の機器の台数の合計をＴ（ｊ）と定義した場合に、
最小合計（ｎ，ｉ）（ｎは前記入力値Ｎ以下の非負整数、ｉはＴ（ｊ）以下の正整数）及び最小集合（ｎ，ｉ）に最後に加わった機器の種類を表す置換機種（ｎ，ｉ）を構成記憶手段に記憶し、
複数（Ｊ）種類の機器の種類毎に、Ｌ、Ｐ１及びＰ２の値を前記機器記憶手段に記憶し、
ｊを１から前記Ｊまで、ｉをＴ（ｊ−１）＋１からＴ（ｊ）＝Ｔ（ｊ−１）＋Ｌ（ｊ）まで、ｎを１から前記Ｎまで、順次増加させながら、ｎがｉ番目以下の全ての機器の第１の指標の和Ｓ以下であれば、ａ）置換機種（ｎ，ｉ−１）が有効値を持たない場合又は最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）が最小合計（ｎ，ｉ−１）より小さい場合、最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）を最小合計（ｎ，ｉ）にし、ｊ番目の種類を置換機種（ｎ，ｉ）とし、ｂ）最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）が最小合計（ｎ，ｉ−１）より小さくない場合、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）とし、ｎ及びｉに対応させて最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を前記構成記憶手段に格納し、
置換機種（ｍ，Ｔ（Ｊ））（ｍは１以上Ｎ以下）に基づいて最小集合（Ｎ，Ｔ（Ｊ））を求めて出力する、
請求項８または９の構成管理方法。
【請求項１３】
自装置とネットワークで接続され、機種名、Ｐ１、及びＰ２を格納する複数の機器から、前記機種名、Ｐ１、及びＰ２を入力して、前記機器記憶手段に格納する、請求項１２の構成管理方法。
【請求項１４】
種類毎に第１の指標値Ｐ１と第２の指標値Ｐ２に関連付けられるｉ種類の機器で構成される、Ｐ１の合計がｎ以上の集合中、Ｐ２の合計が最小な集合を最小集合（ｎ，ｉ）、最小集合（ｎ，ｉ）に属する機器のＰ２の合計を最小合計（ｎ，ｉ）と定義した場合に、
コンピュータを、
複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を記憶する機器記憶手段と、
要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得する構成更新手段と、
最小集合（Ｎ，Ｊ）を出力する出力手段として動作させる構成管理プログラムを記憶するプログラム記録媒体。
【請求項１５】
Ｐ１は前記機器の性能指標値、Ｐ２は前記機器のコスト指標値である前記構成管理プログラムを記憶する、請求項１４に記載のプログラム記録媒体。
【請求項１６】
ｉ番目の種類の機器のＰ１、Ｐ２をＰ１（ｉ）、Ｐ２（ｉ）と定義した場合に、
コンピュータを、
最小合計（ｎ，ｉ）（ｎは０以上Ｎ以下の整数、ｉは１以上Ｊ以下の整数）及び最小集合（ｎ，ｉ）に最後に加わった機器の種類を表す置換機種（ｎ，ｉ）をｎ及びｉに対応させて記憶する構成記憶手段と、
ｎ（前記入力値Ｎ以下の非負整数）のおのおのについて、Ｐ１（１）及びＰ２（１）にもとづいて最小合計（ｎ，１）を求め、１番目の機器の種類を置換機種（ｎ，１）として、それぞれ前記構成記憶手段に格納する初期化手段と、
ｉを２からＪまで、ｎを１からＮまで、順次増加させながら、最小合計（ｎ−Ｐ１（ｉ）），ｉ）＋Ｐ２（ｉ）が、ａ）最小合計（ｎ，ｉ−１）より小さいとき最小合計（ｎ−Ｐ１（ｉ）），ｉ）＋Ｐ２（ｉ）を最小合計（ｎ，ｉ）、ｉ番目の機器の種類を置換機種（ｎ，ｉ）とし、ｂ）最小合計（ｎ，ｉ−１）より小さくないとき、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）として前記構成記憶手段に格納する前記構成更新手段と、
置換機種（ｍ，Ｊ）（ｍは１以上Ｎ以下）に基づいて最小集合（Ｎ，Ｊ）を求めて出力する前記出力手段として動作させる前記構成管理プログラムを記憶する、請求項１４または１５に記載のプログラム記録媒体。
【請求項１７】
コンピュータを、
機種名に対応するＰ１及びＰ２を格納するファイルから、Ｊ種類の機器の機種名に対応するＰ１及びＰ２を入力して、前記機器記憶手段に格納する指標取得手段として動作させる前記構成管理プログラムを記憶する、請求項１６に記載のプログラム記録媒体。
【請求項１８】
ｉが０の場合又はｎが０以下の場合、最小合計（ｎ，ｉ）は０であり、置換機種（ｎ，ｉ）は有効値を持たず、さらに、ｊ番目の種類の機器の第１の指標及び２の値をそれぞれＰ１（ｊ）、Ｐ２（ｊ）、機器の種類別の台数をＬ、ｊ番目の種類の機器の台数をＬ（ｊ）、ｊ番目以下の種類の機器の台数の合計をＴ（ｊ）と定義した場合に、
コンピュータを、
最小合計（ｎ，ｉ）（ｎは前記入力値Ｎ以下の非負整数、ｉはＴ（ｊ）以下の正整数）及び最小集合（ｎ，ｉ）に最後に加わった機器の種類を表す置換機種（ｎ，ｉ）を記憶する構成記憶手段と、
複数（Ｊ）種類の機器の種類毎に、Ｌ、Ｐ１及びＰ２の値を記憶する前記機器記憶手段と、
ｊを１から前記Ｊまで、ｉをＴ（ｊ−１）＋１からＴ（ｊ）＝Ｔ（ｊ−１）＋Ｌ（ｊ）まで、ｎを１から前記Ｎまで、順次増加させながら、ｎがｉ番目以下の全ての機器の第１の指標の和Ｓ以下であれば、ａ）置換機種（ｎ，ｉ−１）が有効値を持たない場合又は最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）が最小合計（ｎ，ｉ−１）より小さい場合、最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）を最小合計（ｎ，ｉ）にし、ｊ番目の種類を置換機種（ｎ，ｉ）とし、ｂ）最小合計（ｎ−Ｐ１（ｊ），ｉ−１）＋Ｐ２（ｊ）が最小合計（ｎ，ｉ−１）より小さくない場合、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）とし、ｎ及びｉに対応させて最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を前記構成記憶手段に格納する前記構成更新手段と、
置換機種（ｍ，Ｔ（Ｊ））（ｍは１以上Ｎ以下）に基づいて最小集合（Ｎ，Ｔ（Ｊ））を求めて出力する前記出力手段
として動作させる前記構成管理プログラムを記憶する、請求項１４または１５に記載のプログラム記録媒体。
【請求項１９】
コンピュータを、
自装置とネットワークで接続され、機種名、Ｐ１、及びＰ２を格納する複数の機器から、前記機種名、Ｐ１、及びＰ２を入力して、前記機器記憶手段に格納する指標取得手段として動作させる前記構成管理プログラムを記憶する、請求項１８に記載のプログラム記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器の組み合わせを導出する構成管理装置、構成管理方法、及び構成管理プログラムに関し、特に、所定の条件を満たす機器の組み合わせを導出する構成管理装置、構成管理方法、及び構成管理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、性能要件及び価格要件を所定の誤差の範囲で満たす構成を提案対象の構成として出力するシステム提案方法及びシステム提案装置が記載されている。本文献によれば、システム提案装置のシステム構成定義部が、性能評価対象システムの構成要素、構成要素の接続関係、アプリケーションの挙動、各資源の仕様及びパラメタ、性能要件、価格要件を受け付ける。構成要素としては、たとえばデータベース管理システムやサーバ側アプリケーション、クライアント側アプリケーションがある。構成要素の接続関係は、構成要素がどのようにネットワーク接続されているかを示す。アプリケーションの挙動は、例えば、処理のステップ数や、ＤＢ（Ｄａｔａｂａｓｅ）検索関数及びＤＢ更新関数の発行回数である。各資源の仕様及びパラメタは、コンピュータのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）数やＭＩＰＳ（Ｍｉｌｌｉｏｎ  Ｉｎｓｔｒｕｃｔｉｏｎｓ  Ｐｅｒ  Ｓｅｃｏｎｄ）値、ディスクのシーク時間、データベース管理システムの設定パラメタ等である。システムの性能は、応答時間である。性能要件は、例えば応答時間５秒のような、システム提案装置が構成を出力するシステムの性能を表す値である。価格要件は、例えば１０００万円のような、システム提案装置が構成を出力するシステムの価格を表す値である。
本文献のシステム提案装置の最適構成算出部は、前記性能評価対象システムの構成要素、構成要素の接続関係、アプリケーションの挙動、各資源の仕様及びパラメタを組み合わせた構成を策定し、各構成に対する応答時間を性能シミュレータによって算出する。また、最適構成算出部は、策定した各構成のハードウェア及びソフトウェアの合計価格を算出する。算出した各構成の応答時間と合計価格を基に、最適構成算出部は、性能要件と価格要件を所定の誤差範囲で満たす構成を出力する。これにより、性能要件と価格要件を満たす構成を短時間で出力することができる。
特許文献２には、予め設定された条件に合致する構成要素（部品）を抽出してシステムの構成を決定し、システムの構成を出力するシステム構築機構が記載されている。部品は、例えば、ＣＰＵやメモリ、ディスクである。部品を抽出するための条件は、ＣＰＵのクロック数や個数、メモリの容量、ディスクの容量等のシステム仕様や、予算や納入日などのユーザ要件である。本文献のシステム構築機構は、抽出機能と判定機能を含む。
抽出機能は、部品諸元表から、システム仕様を満たすＣＰＵやメモリ、ディスクなどの部品を抽出する。判定機能は、抽出機能が抽出した部品から、ユーザ要件のうちの納入期限以前に納入することができない部品を除く。また、判定機能は、採用すると価格の制限を満たさなくなる部品を除く。システム構築機構は、除かれなかった部品の情報を出力する。
特許文献３には、トランザクションの処理時間が所定の応答時間を超える確率が所定の値以下であるシステム構成で、価格が最小になるものを算出する構成導出方法及び構成導出装置が記載されている。特許文献３の構成導出装置は、性能を表す関数である性能関数が制約条件を満たし、かつ、目的関数としての価格関数を最小にするシステム構成を、ラグランジュの未定乗数法により求める。性能関数及び価格関数は、システム構成データを変数とする関数である。制約条件は、性能保証対象のジョブ実行時に、トランザクションの処理時間が、応答時間Ａ以上である確率がＢ以下であることである。システム構成パラメータは、ＣＰＵ性能Ｓ、ＣＰＵ数ＮＣＰＵ、全メモリ容量Ｍ、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）処理速度Ｉ、同時実行可能ジョブ数ＮＪである。
特許文献３の構成導出装置は、ＣＰＵ数を１から増設可能な最大ＣＰＵ数まで１ずつ増加させながら、次の処理を繰り返す。特許文献３の構成導出装置は、まず、ＣＰＵ数ＮＣＰＵを固定した時の最適システムパラメータ（Ｓ、Ｍ、Ｉ）をラグランジュの未定乗数法により算出する。特許文献３の構成導出装置は、次に、計算で得られた最適システムパラメータに対する距離が最も小さい現実のシステムパラメータセットを、価格データから探索する。
特許文献３の構成導出装置は、ＣＰＵ数を１から増設可能な最大ＣＰＵ数まで１ずつ増加させて導出した各ＣＰＵ数における最適化されたシステム構成から、価格が最低になるシステム構成のパラメータセット（ＮＣＰＵ、Ｓ、Ｍ、Ｉ）を決定する。特許文献３の構成導出装置は、次に、算出したシステム変数（Ｓ、ＮＣＰＵ、Ｍ、Ｉ）に対して、同時実行可能ジョブ数ＮＪを算出する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１８３４１６号公報
【特許文献２】特開２００２−０２０５６８号公報
【特許文献３】特開２００４−０３０２９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のシステム提案装置は、システムの構成要素、各構成要素間の接続関係、アプリケーションの挙動、各資源の使用及びパラメタの指定をそれぞれ組み合わせた複数の構成を策定する。そして、本システム提案装置は、策定した全ての構成の応答時間及び価格を算出し、性能要件及び価格要件を所定の誤差の範囲で満たす構成を出力する。
従って、特許文献１の技術には、一定以上の性能を満たす最も安価な構成を出力することができないという問題があった。
特許文献２のシステム構築機構は、部品の種類毎に定められた条件を満たす部品を種類毎に抽出し、抽出した部品から種類毎に一つずつ選択した部品の合計価格が、所定の値以下になる部品の組み合わせを選択する。
特許文献２の技術には、２種類の指標を持つ複数種類の部品を組み合わせて、組み合わせに含まれる部品の一方の指標の合計値が所定値以上である組み合わせの中で、他方の指標の合計値が最小である組み合わせを選択することができないという問題があった。
特許文献３のシステム構成導出装置は、１から増設可能な最大ＣＰＵ数までの全てのＣＰＵ数について、最適システム構成パラメータを算出し、その中から価格が最低になるシステム構成パラメータセットを選択していた。
特許文献３の技術には、各ＣＰＵの性能が同一であることを前提としているという問題があった。
本発明の目的は、異なる２つの指標を持つ複数の種類の機器の集合に対して、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる機器の組み合わせを導出する構成管理装置を提供することにある。
【課題を解決するための手段】
【０００５】
本発明の構成管理装置は、種類毎に第１の指標値Ｐ１と第２の指標値Ｐ２に関連付けられるｉ種類の機器で構成される、Ｐ１の合計がｎ以上の集合中、Ｐ２の合計が最小な集合を最小集合（ｎ，ｉ）、最小集合（ｎ，ｉ）に属する機器のＰ２の合計を最小合計（ｎ，ｉ）と定義した場合に、複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を記憶する機器記憶手段と、要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得する構成更新手段と、最小集合（Ｎ，Ｊ）を出力する出力手段を備える。
本発明の構成管理方法は、種類毎に第１の指標値Ｐ１と第２の指標値Ｐ２に関連付けられるｉ種類の機器で構成される、Ｐ１の合計がｎ以上の集合中、Ｐ２の合計が最小な集合を最小集合（ｎ，ｉ）、最小集合（ｎ，ｉ）に属する機器のＰ２の合計を最小合計（ｎ，ｉ）と定義した場合に、複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を機器記憶手段に記憶し、要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得し、最小集合（Ｎ，Ｊ）を出力する。
本発明の構成管理プログラムは、種類毎に第１の指標値Ｐ１と第２の指標値Ｐ２に関連付けられるｉ種類の機器で構成される、Ｐ１の合計がｎ以上の集合中、Ｐ２の合計が最小な集合を最小集合（ｎ，ｉ）、最小集合（ｎ，ｉ）に属する機器のＰ２の合計を最小合計（ｎ，ｉ）と定義した場合に、コンピュータを、複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を記憶する機器記憶手段と、要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得する構成更新手段と、最小集合（Ｎ，Ｊ）を出力する出力手段として動作させる。
【発明の効果】
【０００６】
本発明には、異なる２つの指標を持つ複数の種類の機器の集合に対して、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる機器の組み合わせを導出することができるという効果がある。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態の構成管理装置１の構成を表すブロック図である。
【図２】第１の実施形態の構成管理装置１が最小集合を導出する動作の例を表すフローチャートである。
【図３】機器情報の第１の例である。
【図４】構成更新部１４が構成記憶部１２に格納する最小合計（ｎ，１）及び置換機種（ｎ，１）の例である。
【図５】構成更新部１４が構成記憶部１２に格納する最小合計（ｎ，２）及び置換機種（ｎ，２）の例である。
【図６】構成更新部１４が構成記憶部１２に格納する最小合計（ｎ，３）及び置換機種（ｎ，３）の例である。
【図７】第２の実施形態の構成管理装置１Ａの構成を表すブロック図である。
【図８】第２の実施形態の構成管理装置１Ａが最小集合を導出する動作の例を表すフローチャートである。
【図９】機種情報の第２の例である。
【図１０】構成更新部１４Ａが構成記憶部１２に格納する最小合計（ｎ，１）及び置換機種（ｎ，１）の例である。
【図１１】構成更新部１４Ａが構成記憶部１２に格納する最小合計（ｎ，２）及び置換機種（ｎ，２）の例である。
【図１２】構成更新部１４Ａが構成記憶部１２に格納する最小合計（ｎ，３）及び置換機種（ｎ，３）の例である。
【図１３】第１の実施形態の構成管理装置１が機器の指標を取得する動作の例を表すフローチャートである。
【図１４】第２の実施形態の構成管理装置１Ａが機器の指標を取得する動作の例を表すフローチャートである。
【図１５】第３の実施形態の構成管理装置１Ｂの構成を表すブロック図である。
【発明を実施するための形態】
【０００８】
以下で説明する本発明の各実施形態は、ハードウェア、又は、コンピュータとコンピュータを制御するためのソフトウェア、又は、これらの組み合わせによって実現することができる。
（第１の実施形態）
次に、本発明の実施形態について図面を参照して詳細に説明する。
図１は本発明の第１の実施形態に係る構成管理装置の構成を表すブロック図である。
図１を参照すると、本実施形態の構成管理装置１は、機器記憶部１１と、構成記憶部１２と、初期化部１３と、構成更新部１４と、出力部１５と、指標取得部１６とを含む。また、構成管理装置１には、端末２と、ファイル３１を含むサーバ３が接続されている。なお、サーバ３は存在せず、構成管理装置１がファイル３１を含んでいてもよい。
機器記憶部１１は、少なくとも２つの異なる指標を持つ複数の種類の機器の、２つの指標を、種類毎に記憶する。機器は、例えばサーバなどの計算装置やＣＰＵ等である。２つの指標のうち、第１の指標は、例えば、機器の性能を表す指標である。性能を表す指標は、例えば、スループットや、ＭＩＰＳ値、ＦＬＯＰＳ（Ｆｌｏａｔｉｎｇ  ｐｏｉｎｔ  ｎｕｍｂｅｒ  Ｏｐｅｒａｔｉｏｎｓ  Ｐｅｒ  Ｓｅｃｏｎｄ）値等の指標である。また、第１の指標は、例えば、信頼性や可用性等を表す指標であってもよい。２つの指標のうち、第２の指標は、例えば、機器のコストを表す指標である。コストを表す指標は、例えば、価格、消費電力、排熱量、重量、設置スペース等の、システムの構築や運用の費用に影響する指標である。また、第２の指標は、例えば、機器を構成する部品数などの値であってもよい。複数の機器に対するこれらの２つの指標は、それぞれの機器の２つの指標を合計した値である。
機器記憶部１１が記憶する各機器の第１の指標及び第２の指標は、予め与えられていてもよく、後述する指標取得部１６が取得したものでもよい。
構成記憶部１２は、第１の指標の合計が所定値（必要値）以上である機器の集合で、第２の指標の合計が最小となる集合（最小集合）の、第２の指標の合計値（最小合計）と、最小集合に最後に追加した機器の種類（置換機種）を表す情報を、必要値に対応付けて記憶する。構成記憶部１２が記憶する最小合計及び置換機種に対応する必要値は、０から整数Ｎまでの全ての整数である。すなわち、構成記憶部１２は、０から整数Ｎまでのそれぞれの整数に対応付けて、最小合計と置換機種を記憶する。ただし、機器記憶部１１が記憶する複数の種類の機器の第１の指標とＮに、１より大きな公約数が存在する場合は、各機器の第１の指標とＮをこの公約数で割った値を、新たな第１の指標とＮとして、最小合計と置換機種を記憶してもよい。
本実施形態の以下の説明では、最小集合（ｎ，ｉ）は、ｉ番目以下の種類の機器のみを含む機器の集合の中で、第１の指標の合計がｎ以上である最小集合である。また、最小合計（ｎ，ｉ）は、最小集合（ｎ，ｉ）に含まれる機器の第２の指標の合計である。置換機種（ｎ，ｉ）は、最小集合（ｎ，ｉ）に最後に加えた機器の種類を表す、例えば、符号、記号、文字列などの情報である。ｉ番目の種類の機器は、例えば、機器記憶部１１がｉ番目に記憶する機器や、第１の指標や第２の指標の大きさが、ｉ番目に大きい又は小さい機器である。機器の種類の順番を決める方法は任意である。
構成記憶部１２は、最小合計を、例えば、長さがＮ＋１の複数の配列として記憶することができる。この場合、構成記憶部１２は、最小合計（ｎ，ｉ）を、例えばｉ番目の配列の第ｎ要素として記憶する。また、構成記憶部１２は、最小合計を、例えば、ｉ行ｎ列目の要素が最小合計（ｎ，ｉ）である、２次元の配列として記憶することもできる。同様に、構成記憶部１２は、置換機種を、長さがＮ＋１の複数の配列として記憶することができる。この場合、構成記憶部１２は、置換機種（ｎ，ｉ）を、例えばｉ番目の配列の第ｎ要素として記憶する。また、構成記憶部１２は、置換機種を、例えばｉ行ｎ列目の要素が置換機種（ｎ，ｉ）である、２次元の配列として記憶することもできる。
また、本実施形態では、構成記憶部１２は、最小合計及び置換機種を、それぞれ長さがＮ＋１である配列として記憶することもできる。この場合、後述する構成更新部１４が最小合計（ｎ，ｉ）を算出する時、構成記憶部１２は、配列の第０から第ｎ−１要素には最小合計（ｎ，１）を、配列の第ｎから第Ｎ要素は最小合計（ｎ，ｉ−１）を記憶する。そして、構成更新部１４は、算出した最小合計（ｎ，ｉ）を、配列の第ｎ要素に格納する。構成記憶部１２は、置換機種も、上述の最小合計と同様の形式で記憶することができる。
整数Ｎは、構成管理装置１が出力する機器の集合の第１の指標の合計値が、上回らなければならない要求値である。整数Ｎは、予め構成管理装置１に与えられているか、ユーザ等により例えば端末２を介して構成管理装置１に入力される。
初期化部１３は、集合が１番目の種類の機種だけを含む場合の、第１の指標の合計値が０以上Ｎ以下の各整数値ｎについて、最小合計（ｎ，１）と置換機種（ｎ，１）を導出する。
そのために、初期化部１３は、まず、１番目の種類の機器の機器情報を機器記憶部１１から読み出す。本実施形態の機器情報は、第１の指標及び第２の指標である。例えば、ｉ番目の種類の機器の機器情報は、第１の指標（Ｐ１（ｉ））及び第２の指標（Ｐ２（ｉ））である。初期化部１３が読み出す機器情報は、１番目の機器の第１の指標（Ｐ１（１））及び第２の指標（Ｐ２（１））である。初期化部１３は、読み出したＰ１（１）及びＰ２（１）を元に、最小合計（ｎ，１）を算出する。集合が１番目の種類の機種だけを含むので、最小合計（ｎ，１）は、ｎを１番目の機種の第１の指標で割った値以上の最小の整数である。また、置換機種（ｎ，１）は、全てのｎで１番目の機器の種類を表す情報である。
ｎが０である場合、ｉの値によらず、最小集合（ｎ，ｉ）は機器を含まない。従って、この場合、計算するまでもなく、最小合計（ｎ，ｉ）は０である。また、最小集合（ｎ，ｉ）は機器を含まないので、最小集合（ｎ，ｉ）に最後に加わった機器は存在しない。
本実施形態の例では、初期化部１３は、ｎが０の場合、置換機種（ｎ，１）を、最後に加わった機器が存在しないことを表す値（例えば０やＮｕｌｌ値）にする。以下の説明では、いずれかの機器の種類を表す情報を有効値、最後に加わった機器が存在しないことを表す値を無効値と表記する。本実施形態では、Ｎｕｌｌ値が無効値である。
また、計算の過程でｎが０未満になった場合、ｎが０の場合と同様に、計算するまでもなく最小合計（ｎ，ｉ）は０であり、置換機種（ｎ，ｉ）は無効値である。本実施形態では、構成記憶部１３は、ｎが０未満の場合の最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を記憶しない。ｎが０未満になった場合、構成更新部１４は、構成記憶部１２から最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を読み出さず、最小合計（ｎ，ｉ）は０とみなし、置換機種（ｎ，ｉ）は無効値とみなせばよい。また、ｎが０未満になった場合、構成更新部１４は、ｎが０の場合の最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を、ｎが０未満の場合の最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）として構成記憶部１２から読み出してもよい。
初期化部１３は、算出した最小合計（ｎ，１）と置換機種（ｎ，１）を、構成記憶部１２に格納する。
構成更新部１４は、ｉを２からＪ（Ｊは機器の種類の数）まで増加させながら、次に説明する最小合計及び置換機種を更新する処理を行う。
構成更新部１４は、まず、ｉ番目の機種の第１の指標Ｐ１（ｉ）及び第２の指標Ｐ２（ｉ）を、機器記憶部１１から読み出す。
構成更新部１４は、次に、ｎを１からＮまで増加させながら、次の処理を行う。構成更新部１４は、まず、最小合計（ｎ，ｉ−１）と、最小合計（ｎ−Ｐ１（ｉ）），ｉ）とＰ２（ｉ）の和（最小合計（ｎ−Ｐ１（ｉ）），ｉ）＋Ｐ２（ｉ））の大きさを比較する。なお、ｎ−Ｐ１（ｉ）が０より小さい場合、構成更新部１４は、最小合計（ｎ−Ｐ１（ｉ）），ｉ）を０とみなす。
最小合計（ｎ，ｉ−１）は、第１の指標の合計がｎ以上である機器の集合の中で、ｉ−１番目以下の種類の機器のみを含み、第２の指標の合計が最小である集合の第２の指標の合計である。一方、最小合計（ｎ−Ｐ１（ｉ），ｉ）とＰ２（ｉ）の和は、第１の指標の合計がｎ以上である機器の集合の中で、少なくとも１台のｉ番目の種類の機器を含み、第２の指標の合計が最小である集合の第２の指標の合計である。従って、最小合計（ｎ，ｉ−１）と、同様に読み出した最小合計（ｎ−Ｐ１（ｉ），ｉ）とＰ２（ｉ）の和の、小さい方が、最小集合（ｎ，ｉ）である。
最小合計（ｎ−Ｐ１（ｉ）），ｉ）とＰ２（ｉ）の和が、最小合計（ｎ，ｉ−１）より小さい場合、構成更新部１４は、最小合計（ｎ−Ｐ１（ｉ）），ｉ）とＰ２（ｉ）の和を最小合計（ｎ，ｉ）にする。この場合、最後に最小集合に加わった機器はｉ番目の種類の機器なので、構成更新部１４は、ｉ番目の機種を表す情報を置換機種（ｎ，ｉ）にする。
最小合計（ｎ，ｉ−１）が、最小合計（ｎ−Ｐ１（ｉ）），ｉ）とＰ２（ｉ）の和より大きくない場合、構成更新部１４は、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）にする。また、この場合、置換機種（ｎ，ｉ）は置換機種（ｎ，ｉ−１）と同じであるので、構成更新部１４は、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）にする。
構成更新部１４は、最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を、構成記憶部１２に格納する。
以上の処理において、最小合計（Ｎ−Ｐ１（ｉ）），ｉ）とＰ２（ｉ）の和が最小合計（Ｎ，ｉ−１）より小さい場合、構成更新部１４は、最小集合（Ｎ−Ｐ１（ｉ）），ｉ）に１台のｉ番目の種類の機器を加えた集合を最小集合（Ｎ，ｉ）にする。この場合、最小集合（Ｎ，ｉ）は、最小集合（Ｎ，ｉ−１）の少なくとも一部を１台のｉ番目の種類の機器に置き換えた集合である。
出力部１５は、構成記憶部１２が記憶する各置換機種から最小集合（Ｎ，Ｊ）を導出し、構成記憶部１２から読み出した最小合計（Ｎ，Ｊ）と、導出した最小集合（Ｎ，Ｊ）を出力する。出力部１５の出力先は、例えば端末２である。
出力部１５は、最小集合（Ｎ，Ｊ）の導出を、例えば次のように行う。
出力部１５は、まず、最小集合（Ｎ，Ｊ）として出力するための集合（解集合）を空集合とする。最小集合（Ｎ，Ｊ）に最後に加わった機器は置換機種（Ｎ，Ｊ）なので、出力部１５は、構成記憶部１２から置換機種（Ｎ，Ｊ）を読み出して、解集合に加える。最小集合（Ｎ，Ｊ）から置換機種（Ｎ，Ｊ）を除いた集合は、置換機種（Ｎ，Ｊ）の第１の指標をＰ１（Ｘ）と表記した場合、最小集合（Ｎ−Ｐ１（Ｘ），Ｊ）である。
同様に、最小集合（ｎ，Ｊ）に最後に加わった機器は置換機種（ｎ，Ｊ）なので、出力部１５は、構成記憶部１２から置換機種（ｎ，Ｊ）を読み出して解集合に加える。最小集合（ｎ，Ｊ）から置換機種（ｎ，Ｊ）を除いた集合は、置換機種（ｎ，Ｊ）の第１の指標をＰ１（ｘ）と表記した場合、最小集合（ｎ−Ｐ１（ｘ），Ｊ）である。
以上のように、最小集合（ｎ，Ｊ）に最後に加わった機器を最小集合（ｎ，Ｊ）から除いて解集合に加え、最小集合（ｎ，Ｊ）から置換機種（ｎ，Ｊ）を除いた最小集合（ｎ−Ｐ１（ｘ），Ｊ）を、次に最後に加わった機器を除く最小集合にする処理を、ｎが０以下になるまで行う。
最小集合（Ｎ，Ｊ）は、ｎが０以下になった時の解集合である。
指標取得部１６は、例えばサーバ３が記憶するファイル３１に含まれる各機器の第１の指標及び第２の指標を抽出し、機器記憶部１１に格納する。サーバ３は、構成管理装置１と同一の装置であってもよく、例えばネットワークで通信可能に接続された他の装置であってもよい。ファイル３１は、例えば、各機器のベンダがインタネット上で公開している、各機器の仕様が記載された１つ又は複数のウェブページを構成する１つ又は複数のファイルや、各機器の仕様を含むデータベースを構成するファイルである。
指標取得部１６は、例えば、図示しない端末２の入力部等を介した、ウェブページ等を特定するＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）等を指定したユーザの指示により、ファイル３１を取得する。指標取得部１６は、ファイル３１に含まれる各機器の第１の指標及び第２の指標を、例えば「性能」や「価格」、「消費電力」、「部品数」などの文字列をキーに抽出し、機器記憶部１１に格納する。また、指標取得部１６は、図示しない端末２の入力部等を介した、データベースに対するクエリ等を指定した指示により、データベースから第１の指標及び第２の指標を取得してもよい。指標取得部１６は、ファイル３１から、指標を得るための情報（例えば機器のＣＰＵやクロック数等）を、文字列をキーに抽出し、抽出した情報を元に、指標が格納されているデータベースから第１の指標及び第２の指標を取得してもよい。
次に、本実施形態の構成管理装置１の動作について、図面を参照して詳細に説明する。
図１３は、本実施形態の構成管理装置１が機器の指標を取得する動作の例を表すフローチャートである。
図１３を参照すると、指標取得部１６は、まず、図示しない端末２の入力部等を介した指示を受け、機器の種類毎の第１の指標及び第２の指標を含むファイル３１を取得する（ステップＳ３１）。
指標取得部１６は、次に、取得したファイル３１から、機器の種類毎の第１の指標及び第２の指標を抽出する（ステップＳ３２）。
指標抽出部１６は、抽出した機器の種類毎の第１の指標及び第２の指標を、機器の種類に対応付けて機器記憶部１１に格納する（ステップＳ３３）。
図２は、本実施形態の構成管理装置１が最小合計及び最小集合を導出する動作の例を表すフローチャートである。
図２を参照すると、まず、初期化部１３が、１番目の種類の機器の機器情報を機器記憶部１１から読み出す（ステップＳ１１）。前述のように、本実施形態の１番目の種類の機器の機器情報は、第１の指標Ｐ（１）及び第２の指標Ｐ２（１）である。この場合、機器の種類の順番を表すｉは１である。
図３は、機器記憶部１１が記憶する機器情報の例である。図３は、例えば、機種Ａの機器の第１の指標は２であり、第２の指標は２であることを表す。また、以下の説明では、１番目の種類の機器は機種Ａの機器、２番目の種類の機器は機種Ｂの機器、３番目の種類の機器は機種Ｃの機器である。
次に、初期化部１３は、０以上Ｎ以下の全てのｎについて、１番目の種類の機器のみを含む最小合計（ｎ，１）及び置換機種（ｎ，１）を導出する。初期化部１３は、導出した全ての最小合計（ｎ，１）及び置換機種（ｎ，１）を、構成記憶部１２に格納する（ステップＳ１２）。
図４は、初期化部１３が構成記憶部１２に格納した、最小合計（ｎ，１）及び置換機種（ｎ，１）の例である。図４の例では、Ｎは１０である。
図４の上段の数値は、第１の指標の合計値がこれらの数値以上でなければならない必要値ｎ（ｎは０以上Ｎ以下）である。図４の中段の数値は、最小合計（ｎ，１）である。図４の下段の数値は、置換機種（ｎ，１）である。例えば、図４の上段の値が１である列は、必要値が１であり、最小合計（１，１）が２であり、置換機種（１，１）がＡであることを表す。これは、第１の指標の合計値が１以上である、１番目の種類の機器（機種Ａ）のみを含む集合の中で、第２の指標の合計値が最小となる集合の、第２の指標の合計値は２であり、当該集合に最後に加わった機器の種類はＡであることを意味する。
次に、構成更新部１４は、ｉを２からＪまで、ｎを１からＮまで増加させながら、機器記憶部１１から読み出したｉ番目の種類の機器の機器情報を元に、次の説明のように、構成記憶部１２が記憶する最小合計と置換機種を更新する（ステップＳ１３〜ステップＳ１５）。
構成更新部１４は、ｉが機器の種類の数Ｊより小さい場合（ステップＳ１３、Ｎ）、次の処理を行う。ｉが機器の種類の数Ｊより小さい場合、全ての種類の機器の機器情報による最小合計と置換機種の更新が終わっておらず、次に機器情報を読み出して最小合計と置換機種の更新を行うべき種類の機器が存在する。
構成更新部１４は、まず、ｉを１増加させる。例えば、初期化部１３による処理が終わった直後であれば、ｉは１なので、構成更新部１４は、ｉを１増加させて２にする。構成更新部１４は、次に、ｉ番目の種類の機器の機器情報を、機器記憶部１１から読み出す。例えばｉが２の場合、構成更新部１４は、２番目の種類の機器の機器情報（第１の指標Ｐ１（２）及び第２の指標Ｐ２（２））を、機器記憶部１１から読み出す（ステップＳ１４）。
構成更新部１４は、次に、ｎを１からＮまで増加させながら、次の説明のように、１からＮまでの最小合計（ｎ，ｉ）と置換機種（ｎ，ｉ）を更新する処理を行う（ステップＳ１５）。
図５は、構成更新部１４が構成記憶部１２に格納した、ｉが２の場合の最小合計（ｎ，２）及び置換機種（ｎ，２）の例である。
図６は、構成更新部１４が構成記憶部１２に格納した、ｉが３の場合の最小合計（ｎ，３）及び置換機種（ｎ，３）の例である。
構成更新部１４は、最小合計（ｎ，ｉ−１）と最小合計（ｎ−Ｐ１（ｉ），ｉ）を構成記憶部１２から読み出す。最小合計（ｎ−Ｐ１（ｉ），ｉ）は、ｉ番目以下の機種のみを含み、ｉ番目の種類の機器を加えると第１の指標の合計がｎ以上になる集合で、最小となる第２の指標の合計である。構成更新部１４は、ｎを１からＮまで増加させながら処理を行うので、この時点で既に、最小合計（ｎ−Ｐ１（ｉ），ｉ）を導出し、後述のように構成記憶部１２に格納している。従って、構成記憶部１２は最小合計（ｎ−Ｐ１（ｉ），ｉ）を記憶している。また、前述のようにｎ−Ｐ１（ｉ）が０より小さい場合、最小合計（ｎ−Ｐ１（ｉ），ｉ）は０である。
構成更新部１４は、次に、読み出した最小合計（ｎ，ｉ−１）と、同様に読み出した最小合計（ｎ−Ｐ１（ｉ），ｉ）とＰ２（ｉ）の和を比較する。比較の結果、最小合計（ｎ−Ｐ１（ｉ），ｉ）とＰ２（ｉ）の和の方が小さい場合、構成更新部１４は、最小合計（ｎ−Ｐ１（ｉ），ｉ）とＰ２（ｉ）の和を最小合計（ｎ，ｉ）とし、ｉ番目の種類の機器を置換機種（ｎ，ｉ）とする。一方、前述の比較の結果、最小合計（ｎ，ｉ−１）の方が大きくない場合、構成更新部１４は、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）とし、構成記憶部１２２から読み出した置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）とする。
１からＮまでの各整数ｎに対して最小合計（ｎ，Ｊ）及び置換機種（ｎ，Ｊ）の更新が終了すると（ステップＳ１３、Ｙ）、出力部１５は、構成記憶部１２が記憶する各置換機種を元に、最小集合（Ｎ，Ｊ）を導出する（ステップＳ１６）。
図３〜図６の例では、出力部１５は、次の説明のように最小集合（Ｎ，Ｊ）（ただしＮ＝１０、Ｊ＝３）を導出する。
置換機種（１０，３）は図６の右端下段のＢである。出力部１５は、まず、Ｂを解集合に加える。このとき解集合は｛Ｂ｝である。図３を参照すると、Ｂの第１の指標は４である。出力部１５は、次に、置換機種（１０−４，３）であるＢを解集合に加える。このとき、解集合は｛Ｂ、Ｂ｝である。出力部１５は、次に、置換機種（１０−４−４，３）であるＡを解集合に加える。このとき、解集合は、｛Ｂ、Ｂ、Ａ｝である。Ａの第１の指標は２である。１０−４−４−２は０なので、このときの解集合が、最小集合（１０，３）である。
出力部１５は、最小合計（Ｎ，Ｊ）及び最小集合（Ｎ，Ｊ）を、例えば端末２に対して出力する（ステップＳ１７）。
本実施形態の構成管理装置１には、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる２つの指標を持つ複数の種類の機器の組み合わせを導出することができるという効果がある。
その理由は、構成更新部１４が、最小集合（ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換した新たな集合の第２の指標の合計が、最小合計（ｎ，ｉ−１）より小さい場合、前述の新たな集合を最小集合（ｎ，ｉ）にｉ番目の機器の種類を置換機種（ｎ，ｉ）にする処理を順次繰り返すからである。構成更新部１４は、前述の処理の繰り返しにより、最小合計（Ｎ，Ｊ）及び置換機種（Ｎ，Ｊ）を導出し、導出した各置換機種（ｎ，ｉ）を元に最小集合（Ｎ，Ｊ）を導出する。
本実施形態の構成管理装置１には、前述の機器の組み合わせを、少ない計算量で導出することができるという、第２の効果がある。
その理由は、構成更新部１４が、一方の指標の合計が所定値以上である、全ての機器の組み合わせに対して、他方の指標の合計を計算することなく、当該他方の指標の合計が最小となる機器の組み合わせを導出するからである。
（第２の実施形態）
次に、本発明の第２の実施形態について、図面を参照して詳細に説明する。
図７は、本発明の第２の実施形態に係る構成管理装置１Ａを表すブロック図である。
図７を参照すると、構成管理装置１Ａは、機器記憶部１１と、構成記憶部１２と、構成更新部１４Ａと、出力部１５Ａと、指標取得部１６Ａとを含む。また、構成管理装置１Ａには、端末２と、機器４が接続されている。なお、機器４は複数台存在する。また、機器４は、自らの管理下にある複数の機器の機器情報を保持する、１台以上の機器であってもよい。
図１に記載の第１の実施形態の構成管理装置１の構成と比較すると、本実施形態の構成管理装置１Ａは、初期化部１３、構成更新部１４、出力部１５、指標取得部１６を含まず、構成更新部１４Ａ、出力部１５Ａ、指標取得部１６Ａを含む点が異なる。以下では、本実施形態と第１の実施形態との相違点を中心に説明を行う。
機器記憶部１１は、少なくとも２つの異なる指標を持つ複数の種類の機器の、２つの指標と、台数を、種類毎に記憶する。２つの指標は、第１の実施形態における２つの指標と同じであるので、説明を省略する。機器の台数は、機器の集合に含めることができる種類毎の最大の台数である。
機器記憶部１１が記憶する各機器の第１の指標、第２の指標、及び台数は、予め与えられていてもよく、後述する指標取得部１６Ａが取得したものでもよい。
構成記憶部１２は、第１の実施形態の構成記憶部１２と同じであるので、説明を省略する。ただし、本実施形態では、構成更新部１４Ａが処理を行う前の初期状態において構成記憶部１２が記憶する、全ての最小合計（ｎ，ｉ）は０であり、全ての置換機種（ｎ，ｉ）は無効値である。
構成更新部１４Ａは、ｊを１からＪ（Ｊは機器の種類の数）まで増加させながら、次に説明する処理を行う。
構成更新部１４Ａは、まず、ｊ番目の種類の機器の、第１の指標Ｐ１（ｊ）と、第２の指標Ｐ２（ｊ）と、台数Ｌ（ｊ）を、機器記憶部１１から読み出す。本実施形態では、第１の指標Ｐ１（ｊ）と、第２の指標Ｐ２（ｊ）と、台数Ｌ（ｊ）が、ｊ番目の種類の機器の機器情報である。
構成更新部１４Ａは、次に、ｉをＴ（ｊ−１）＋１からＴ（ｊ）まで増加させながら、次に説明する最小合計及び置換機種を更新する処理を行う。ただし、Ｔ（ｊ）はｊ番目以下の種類の機器の台数である。また、Ｔ（ｊ）はＴ（ｊ−１）とＬ（ｊ）の和である。なお、Ｔ（０）は０である。
構成更新部１４Ａは、まず、ｉ番目以下の全ての機器の第１の指標の和Ｓを算出する。構成更新部１４Ａは、Ｓの算出を、例えば、処理を開始する時に、Ｓの初期値を０にし、ｉが増加する毎に、ｉ番目の機器の種類ｊの第１の指標Ｐ１（ｊ）をＳに足すことで行えばよい。また、ＳがＮ以上になった場合、構成更新部１４Ａは、Ｓの更新を中止してもよい。なお、以下の説明では、ＳまたはＳ（ｉ）がｉ番目以下の全ての機器の第１の指標の和である。例えばＳ（ａ）のように、括弧内にｉ以外の文字を表記した場合、Ｓ（ａ）はａ番目以下の全ての機器の第１の指標の和である。
構成更新部１４Ａは、次に、ｎを１からＮまで増加させながら、次の処理を行う。構成更新部１４Ａは、ｎがＳ以下であれば、まず、最小合計（ｎ，ｉ−１）と置換機種（ｎ，ｉ−１）を構成記憶部１２から読み出す。
置換機種（ｎ，ｉ−１）が有効値である場合、構成更新部１４Ａは、最小合計（ｎ，ｉ−１）と、構成記憶部１２から読み出した最小合計（ｎ−Ｐ１（ｊ）），ｉ−１）とＰ２（ｊ）の和（最小合計（ｎ−Ｐ１（ｊ）），ｉ−１）＋Ｐ２（ｊ））の大きさを比較する。
置換機種（ｎ，ｉ−１）が無効値である場合、又は、前述の比較の結果、最小合計（ｎ−Ｐ１（ｊ）），ｉ−１）とＰ２（ｊ）の和が、最小合計（ｎ，ｉ−１）より小さい場合、構成更新部１４Ａは、最小合計（ｎ−Ｐ１（ｊ）），ｉ−１）とＰ２（ｊ）の和を最小合計（ｎ，ｉ）に、機器のｊ番目の種類を置換機種（ｎ，ｉ）にする。
なお、ｉ番目以下の種類の機器の第１の指標の和をＳ（ｉ）で表した場合、最小集合（Ｓ（ｉ），ｉ）はｉ番目以下の全ての機器を含む集合である。また、最小合計（Ｓ（ｉ），ｉ）は、ｉ番目以下の全ての機器の第２の指標の和である。ある正整数ｎ１に対して、最小集合（ｎ１，ｉ）が存在すれば、ｎ１より小さい正整数ｎ２に対する最小集合（ｎ２，ｉ）も存在する。また、Ｎ以下の正整数ｎに対する、最小合計（ｎ，ｉ−１）及び置換機種（ｎ，ｉ−１）の導出は終了している。また、Ｓ（ｉ）はＳ（ｉ−１）＋Ｐ１（ｊ）なので、ｎがＳ（ｉ）以下であれば、ｎ−Ｐ１（ｊ）はＳ（ｉ−１）以下である。以上により、置換機種（ｎ，ｉ−１）が値を持たない場合であっても、最小合計（ｎ−Ｐ１（ｊ）），ｉ−１）及び置換機種（ｎ−Ｐ１（ｊ）），ｉ−１）は値を持つ。
ｎがＳより大きい場合、又は、前述の比較の結果、最小合計（ｎ−Ｐ１（ｊ）），ｉ−１）とＰ２（ｊ）の和が、最小合計（ｎ，ｉ−１）より小さくない場合、構成更新部１４Ａは、最小合計（ｎ，ｉ−１）を最小合計（ｎ，ｉ）に、置換機種（ｎ，ｉ−１）を置換機種（ｎ，ｉ）にする。
次に、構成更新部１４Ａは、最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を、構成記憶部１２に格納する。
なお、ｎがＳより大きい場合、最小集合（ｎ，ｉ−１）及び最小集合（ｎ，ｉ）は存在しない。従って、この場合、最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を更新する必要はない。
以上の処理において、最小合計（Ｎ−Ｐ１（ｊ）），ｉ−１）とＰ２（ｊ）の和が最小合計（Ｎ，ｉ−１）より小さい場合、構成更新部１４は、最小集合（Ｎ−Ｐ（ｊ）），ｉ−１）に１台のｉ番目の種類の機器を加えた集合を最小集合（Ｎ，ｉ）にする。この場合、最小集合（Ｎ，ｉ）は、最小集合（Ｎ，ｉ−１）の少なくとも一部を１台のｉ番目の種類の機器に置き換えた集合である。
出力部１５Ａは、構成記憶部１２が記憶する各置換機種から最小集合（Ｎ，Ｔ（Ｊ））を導出し、構成記憶部１２から読み出した最小合計（Ｎ，Ｔ（Ｊ））と、導出した最小集合（Ｎ，Ｔ（Ｊ））を出力する。出力部１５Ａの出力先は、例えば端末２である。
出力部１５Ａは、最小集合（Ｎ，Ｔ（Ｊ））の導出を、例えば次のように行う。
出力部１５Ａは、まず、最小集合（Ｎ，Ｔ（Ｊ））として出力するための集合（解集合）を空集合とする。最小集合（Ｎ，Ｔ（Ｊ））に最後に加わった機器は置換機種（Ｎ，Ｔ（Ｊ））なので、出力部１５は、構成記憶部１２から置換機種（Ｎ，Ｔ（Ｊ））を読み出して、解集合に加える。最小集合（Ｎ，Ｔ（Ｊ））から置換機種（Ｎ，Ｔ（Ｊ））を除いた集合は、置換機種（Ｎ，Ｔ（Ｊ））の第１の指標をＰ１（Ｘ）表記した場合、最小集合（Ｎ−Ｐ１（Ｘ），Ｔ（Ｊ）−１）である。
同様に、最小集合（ｎ，ｉ）に最後に加わった機器は置換機種（ｎ，ｉ）なので、出力部は、構成記憶部１２から置換機種（ｎ，ｉ）を読み出して解集合に加える。最小集合（ｎ，ｉ）から置換機種（ｎ，ｉ）を除いた集合は、最小集合（ｎ−Ｐ１（ｘ），ｉ−１）である。ただし、Ｐ１（ｘ）は置換機種（ｎ，ｉ）の第１の指標である。
以上のように、最小集合（ｎ，ｉ）に最後に加わった置換機種（ｎ，ｉ）を最小集合（ｎ，ｉ）から除いて解集合に加え、最小集合（ｎ，ｉ）から置換機種（ｎ，ｉ）を除いた最小集合（ｎ−Ｐ１（ｘ），ｉ−１）を、次に最後に加わった機器を除く最小集合にする処理を、ｎが０以下になるまで行う。
最小集合（Ｎ，Ｔ（Ｊ））は、ｎが０以下になった時の解集合である。
指標取得部１６Ａは、例えば、接続されている全ての機器４から、２つの指標、又は、機器の種類毎の２つの指標及び台数を取得して集計し、機器の種類毎の２つの指標及び台数を機器記憶部１１に格納する。機器４は、例えば、前述の２つの指標を持つ機器のいずれかである。また、機器４は、例えば、前述の２つの指標を持つ機器を管理し、自らが管理する２つの指標を持つ機器の、種類毎の２つの指標及び台数を保持する機器であってもよい。
指標取得部１６Ａは、例えば、端末２の図示しない入力部等を介してユーザが指定した全ての機器４から、２つの指標、又は、機器の種類毎の２つの指標及び台数を取得して集計し、機器の種類毎の２つの指標及び台数を機器記憶部１１に格納してもよい。
次に、本実施形態の動作について図面を参照して詳細に説明する。
図１４は、本実施形態の構成管理装置１Ａが機器の指標を取得する動作の例を表すフローチャートである。
図１４を参照すると、指標取得部１６Ａは、まず、図示しない端末２の入力部等を介した指示を受け、例えば指示により指定された全ての機器４から、第１の指標及び第２の指標を受信する（ステップＳ４１）。
指標取得部１６Ａは、次に、種類毎に集計した機器の台数と、抽出した機器の種類毎の第１の指標及び第２の指標を、機器の種類に対応付けて機器記憶部１１に格納する（ステップＳ４２）。
図８は、本実施形態の構成管理装置１Ａが最小集合を導出する動作の例を表すフローチャートである。
図８を参照すると、構成更新部１４Ａは、整数ｊを１からＪ（機器の種類の数）まで、整数ｉをＴ（ｊ−１）＋１からＴ（ｊ）まで（Ｔ（ｉ）はｊ番目以下の種類の機器の台数）増加させながら、ｊ番目の種類の機器の機器情報で、最小合計と置換機種の更新を行う（ステップＳ２１〜ステップＳ２３）。なお、最小合計と置換機種の更新は、後述のように、構成更新部１４Ａが最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を導出し、導出した最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）をｎ、及びｉに対応付けて構成記憶部１２に格納することである。
構成更新部１４Ａは、まず、全ての種類の機器に対して最小合計及び置換機種の更新が終了しておらず、次に最小合計及び置換機種の更新を行うべき種類の機器が存在するか否かを確認する（ステップＳ２１）。前回の更新における機器の種類の番号ｊが、整数Ｊと等しい場合（ステップＳ２１、Ｎ）、全ての種類の機器の情報による最小合計及び置換機種の更新は終了しており、最小合計及び置換機種の更新を行う次の機器の種類は存在しない。
前回の更新における機器の種類の番号ｊが、整数Ｊより小さい場合（ステップＳ２１、Ｙ）、構成更新部１４Ａは、ｊを１増加させ、ｊ番目の種類の機器の機器情報を機器記憶部１１から読み出す（ステップＳ２２）。本実施形態の機器情報は、第１の指標、第２の指標、および種類毎の機器の台数である。なお、本動作例では、構成更新部１４Ａは、動作開始時にｊを０にしておき、機器情報を読み出す前にｊを１増加させる。構成更新部１４Ａは、また、動作開始時にｊを１としておき、ｊ番目の種類の機器全てによる更新が終了した時点で、ｊを１増加させる構成にすることもできる。
図９は、機器記憶部１１が記憶する機器情報の例である。図９の例では、機器の種類Ｊは３である。また、図９の上から順に機器の種類の番号を付与する場合、機器の１番目の種類はＡ、２番目の種類はＢ、３番目の種類はＣである。また、以下で説明する図１０〜図１２の例では、要求値Ｎは９である。
構成更新部１４Ａは、次に、読み出したｊ番目の種類の機器の台数Ｌ（ｊ）と同じ回数、ｊ番目の機器の第１の指標及び第２の指標を用いて、最小合計及び置換機種の更新を行う（ステップＳ２３）。ステップＳ２３では、構成更新部１４Ａは、まず、ｉを、ｊ−１番目以下の機器の台数の和Ｔ（ｊ−１）＋１とする。構成更新部１４Ａは、ｉをＴ（ｊ）（Ｔ（ｊ）はＴ（ｊ−１）＋Ｌ（ｊ））まで、ｎを１からＳ（ｉ）とＮの小さい方まで、それぞれ１ずつ増加させながら、ｊ番目の種類の機器の第１の指標及び第２の指標により、上述の説明のように最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を導出する。構成更新部１４Ａは、導出した最小合計（ｎ，ｉ）及び置換機種（ｎ，ｉ）を、ｎ及びｉに対応付けて構成記憶部１２に格納する。
図１０は、ｊが１である時、図９の機器情報を元に、構成更新部１４Ａが導出した最小合計（ｎ，２）及び置換機種（ｎ，２）の例である。図９のように、機種Ａの台数（Ｌ（１））は２なので、Ｔ（１）も２である。
図１１は、ｊが２である時、構成更新部１４Ａが導出した最小合計（ｎ，３）及び置換機種（ｎ，３）の例である。
図１２は、ｊが３である時、構成更新部１４Ａが導出した最小合計（ｎ，４）及び置換機種（ｎ，４）の例である。図１２の例では、構成更新部１４Ａは、ｎが３の場合、最小合計（３，３）と最小合計（３−Ｐ１（３），３）＋Ｐ２（３）とを比較を行う。最小合計（３，３）は６であり、最小合計（３−３，３）＋Ｐ２（３）は０＋４であり、最小合計（３−４，３）＋Ｐ２（３）の方が小さいので、構成更新部１４Ａは、最小合計（３，４）を最小合計（３−３，３）＋Ｐ２（３）の値の４に、置換機種を３番目の機器の種類のＣとしている。同様に、構成更新部１４Ａは、ｎが５の場合、最小合計（５，３）と最小合計（５−Ｐ１（３），３）＋Ｐ２（３）とを比較を行う。最小合計（５，３）は１０であり、最小合計（５−３，３）＋Ｐ２（３）は３＋４であり、最小合計（５−４，３）＋Ｐ２（３）の方が小さいので、構成更新部１４Ａは、最小合計（５，４）を最小合計（５−３，３）＋Ｐ２（３）の値の７に、置換機種を３番目の機器の種類のＣとしている。さらに、構成更新部１４Ａは、ｎが７の場合、最小合計（７，３）と最小合計（７−Ｐ１（３），３）＋Ｐ２（３）とを比較を行う。最小合計（７，３）は１３であり、最小合計（７−３，３）＋Ｐ２（３）は６＋４であり、最小合計（７−４，３）＋Ｐ２（３）の方が小さいので、構成更新部１４Ａは、最小合計（７，４）を最小合計（７−３，３）＋Ｐ２（３）の値の１０に、置換機種を３番目の機器の種類のＣとしている。
ｊがＪであり、ｉがＴ（Ｊ）であり、ｎがＮである場合に、最小合計（Ｎ，Ｔ（Ｊ））及び置換機種（Ｎ，Ｔ（Ｊ））が導出される。図９の機器の例では、Ｊは３であり、Ｔ（Ｊ）は４であり、Ｎは９なので、最小合計（Ｎ，Ｔ（Ｊ））は図１２の最も右の列の中段の値１４、置換機種（Ｎ，Ｔ（Ｊ））最も右の列の下段のＣである。
前回の更新における機器の種類の番号ｊが、整数Ｊと等しい場合（ステップＳ２１、Ｎ）、出力部１５Ａは、上述の説明のように、最小集合（Ｎ，Ｔ（ｊ））の導出を行う（ステップＳ２４）。
出力部１５Ａは、最小合計（Ｎ，Ｔ（Ｊ））及び最小集合（Ｎ，Ｔ（ｊ））を出力する（ステップＳ２５）。
本実施形態の構成管理装置１Ａには、機器の種類毎に台数の制限がある場合、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる２つの指標を持つ複数の種類の機器の組み合わせを導出することができるという効果がある。
その理由は、構成更新部１４Ａが、最小集合（ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換した新たな集合の第２の指標の合計が、最小合計（ｎ，ｉ−１）より小さい場合、前述の新たな集合を最小集合（ｎ，ｉ）にｉ番目の機器の種類を置換機種（ｎ，ｉ）にする処理を順次繰り返すからである。構成更新部１４Ａは、前述の処理の繰り返しにより、最小合計（Ｎ，Ｔ（Ｊ））及び置換機種（Ｎ，Ｔ（Ｊ））を導出し、導出した各置換機種（ｎ，ｉ）を元に最小集合（Ｎ，Ｔ（Ｊ））を導出する。
本実施形態の構成管理装置１Ａには、前述の機器の組み合わせを、少ない計算量で導出することができるという、第２の効果がある。
その理由は、構成更新部１４Ａが、一方の指標の合計が所定値以上である、全ての機器の組み合わせに対して、他方の指標の合計を計算することなく、当該他方の指標の合計が最小となる機器の組み合わせを導出するからである。
（第３の実施形態）
次に、本発明の第３の実施形態に係る構成管理装置について、図面を参照して詳細に説明する。本実施形態は、本発明の最小構成である。
図１５を参照すると、構成管理装置１Ｂは、種類毎に第１の指標値Ｐ１と第２の指標値Ｐ２に関連付けられるｉ種類の機器で構成される、Ｐ１の合計がｎ以上の集合中、Ｐ２の合計が最小な集合を最小集合（ｎ，ｉ）、最小集合（ｎ，ｉ）に属する機器のＰ２の合計を最小合計（ｎ，ｉ）と定義した場合に、複数（Ｊ）種類の機器の種類毎にＰ１及びＰ２を記憶する機器記憶部１２と、要求値Ｎを入力して、ｉをＪまで順次増加させながら、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換して得られた新たな集合のＰ２の合計が、ａ）最小合計（Ｎ，ｉ−１）より小さいとき前記新たな集合を、ｂ）最小合計（Ｎ，ｉ−１）より小さくないとき最小集合（Ｎ，ｉ−１）を、最小集合（Ｎ，ｉ）として取得する構成更新部１４Ｂと、最小集合（Ｎ，Ｊ）を出力する出力部１５Ｂを備える。
次に、本発明の効果について説明する。
本実施形態の構成管理装置１Ｂには、機器の種類毎に台数の制限がある場合、一方の指標の合計が所定値以上であるという条件を満たし、他方の指標の合計が最小となる、異なる２つの指標を持つ複数の種類の機器の組み合わせを導出することができるという効果がある。
その理由は、構成更新部１４Ｂが、最小集合（Ｎ，ｉ−１）の少なくとも一部をｉ番目の種類の機器で置換した新たな集合の第２の指標の合計が、最小合計（Ｎ，ｉ−１）より小さい場合、前述の新たな集合を最小集合（Ｎ，ｉ）にｉ番目の機器の種類を置換機種（Ｎ，ｉ）にする処理を順次繰り返すからである。構成更新部１４Ｂは、前述の処理の繰り返しにより、最小合計（Ｎ，Ｊ）及び置換機種（Ｎ，Ｊ）を導出し、導出した各置換機種（ｎ，ｉ）を元に最小集合（Ｎ，Ｊ）を導出する。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
この出願は、２０１０年９月２４日に出願された日本出願特願２０１０−２１３４１０を基礎とする優先権を主張し、その全てをここに取り込む。
【産業上の利用可能性】
【０００９】
本発明は、システム構築において、システムの原価を低く抑えるための装置またはシステムに好適である。
【符号の説明】
【００１０】
１、１Ａ、１Ｂ  構成管理装置
２  端末
３  サーバ
４  機器
１１  機器記憶部
１２  構成記憶部
１３  初期化部
１４、１４Ａ、１４Ｂ  構成更新部
１５、１５Ａ、１５Ｂ  出力部
１６、１６Ａ  指標取得部
３１  ファイル
【図１】
2012039486.tif 000003
【図２】
2012039486.tif 000004
【図３】
2012039486.tif 000005
【図４】
2012039486.tif 000006
【図５】
2012039486.tif 000007
【図６】
2012039486.tif 000008
【図７】
2012039486.tif 000009
【図８】
2012039486.tif 000010
【図９】
2012039486.tif 000011
【図１０】
2012039486.tif 000012
【図１１】
2012039486.tif 000013
【図１２】
2012039486.tif 000014
【図１３】
2012039486.tif 000015
【図１４】
2012039486.tif 000016
【図１５】
2012039486.tif 000017
【手続補正書】
【提出日】平成25年3月14日(2013.3.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
種類毎に第１の指標値P1と第２の指標値P2に関連付けられるｉ種類の機器で構成される、P1の合計がｎ以上の集合中、P2の合計が最小な集合を最小集合（n,i）、最小集合（n,i）に属する機器のP2の合計を最小合計(n,i)と定義した場合に、
複数（J）種類の機器の種類毎にP1及びP2を記憶する機器記憶手段と、
要求値Nを入力して、iをJまで順次増加させながら、最小集合（N,i-1）の少なくとも一部をi番目の種類の機器で置換して得られた新たな集合のP2の合計が、a)最小合計（N,i-1）より小さいとき前記新たな集合を、b)最小合計（N,i-1）より小さくないとき最小集合(N,i-1)を、最小集合（N,i）として取得する構成更新手段と、
最小集合(N,J)を出力する出力手段を備える、構成管理装置。
【請求項２】
P1は前記機器の性能指標値、P２は前記機器のコスト指標値である、請求項１の構成管理装置。
【請求項３】
ｉ番目の種類の機器のP1、P2をP1(i)、P2(i)と定義した場合に、
最小合計（n,i）（ｎは０以上Ｎ以下の整数、ｉは１以上J以下の整数）及び最小集合(n,i)に最後に加わった機器の種類を表す置換機種（n,i）をｎ及びｉに対応させて記憶する構成記憶手段と、
ｎ（前記入力値Ｎ以下の非負整数）のおのおのについて、P1(1)及びＰ2(1)にもとづいて最小合計(n,1)を求め、１番目の機器の種類を置換機種(n,1)として、それぞれ前記構成記憶手段に格納する初期化手段とを含み、
前記構成更新手段は、ｉを２からJまで、ｎを１からＮまで、順次増加させながら、最小合計(n-P1(i)),i)＋P2(i)が、a)最小合計（n,i-1）より小さいとき最小合計(n-P1(i)),i)＋P2(i)を最小合計（n,i）、i番目の機器の種類を置換機種(n,i)とし、ｂ）最小合計（n,i-1）より小さくないとき、最小合計(n,i-1)を最小合計（n,i）、置換機種(n,i-1)を置換機種(n,i)として前記構成記憶手段に格納し、
前記出力手段は、置換機種（m,J）（ｍは1以上N以下）に基づいて最小集合(N,J)を求めて出力する、請求項１または２の構成管理装置。
【請求項４】
機種名に対応するＰ１及びＰ２を格納するファイルから、J種類の機器の機種名に対応するＰ１及びＰ２を入力して、前記機器記憶手段に格納する指標取得手段を備える、請求項３の構成管理装置。
【請求項５】
ｉが０の場合又はnが０以下の場合、最小合計（n,i）は０であり、置換機種(n,i)は有効値を持たず、さらに、j番目の種類の機器の第１の指標及び２の値をそれぞれP1(j)、P2(j)、機器の種類別の台数をL、j番目の種類の機器の台数をL(j)、j番目以下の種類の機器の台数の合計をT(j)と定義した場合に、
最小合計（n,i）（ｎは前記入力値Ｎ以下の非負整数、ｉはT(j)以下の正整数）及び最小集合(n,i)に最後に加わった機器の種類を表す置換機種（n,i）を記憶する構成記憶手段を含み、
前記機器記憶手段は、複数（Ｊ）種類の機器の種類毎に、L、P1及びP2の値を記憶し、
前記構成更新手段は、jを１から前記Ｊまで、ｉをT(j-1)+1からT(j)=T(j-1)+L(j)まで、ｎを１から前記Nまで、順次増加させながら、nがi番目以下の全ての機器の第１の指標の和S以下であれば、ａ）置換機種(n,i-1)が有効値を持たない場合又は最小合計(n-P1(j),i-1)＋P2(ｊ)が最小合計（n,i-1）より小さい場合、最小合計(n-P1(j),i-1)＋P2(j)を最小合計（n,i）にし、j番目の種類を置換機種(n,i)とし、ｂ）最小合計(n-P1(j),i-1)＋P2(j)が最小合計（n,i-1）より小さくない場合、最小合計(n,i-1)を最小合計（n,i）、置換機種(n,i-1)を置換機種(n,i)とし、ｎ及びｉに対応させて最小合計（n,i）及び置換機種（n,i）を前記構成記憶手段に格納し、
前記出力手段は、置換機種（m,T(J)）（ｍは1以上N以下）に基づいて最小集合(N,T(J))を求めて出力する、
請求項１または２の構成管理装置。
【請求項６】
自装置とネットワークで接続され、機種名、P1、及びP2を格納する複数の機器から、前記機種名、P1、及びP2を入力して、前記機器記憶手段に格納する指標取得手段を備える、請求項５の構成管理装置。
【請求項７】
前記複数の機器と、請求項６の構成管理装置を包含する、構成管理システム。
【請求項８】
種類毎に第１の指標値P1と第２の指標値P2に関連付けられるｉ種類の機器で構成される、P1の合計がｎ以上の集合中、P2の合計が最小な集合を最小集合（n,i）、最小集合（n,i）に属する機器のP2の合計を最小合計(n,i)と定義した場合に、
複数（J）種類の機器の種類毎にP1及びP2を機器記憶手段に記憶し、
要求値Nを入力して、iをJまで順次増加させながら、最小集合（N,i-1）の少なくとも一部をi番目の種類の機器で置換して得られた新たな集合のP2の合計が、a)最小合計（N,i-1）より小さいとき前記新たな集合を、b)最小合計（N,i-1）より小さくないとき最小集合(N,i-1)を、最小集合（N,i）として取得し、
最小集合(N,J)を出力する、構成管理方法。
【請求項９】
P1は前記機器の性能指標値、P２は前記機器のコスト指標値である、請求項８の構成管理方法。
【請求項１０】
ｉ番目の種類の機器のP1、P2をP1(i)、P2(i)と定義した場合に、
最小合計（n,i）（ｎは０以上Ｎ以下の整数、ｉは１以上J以下の整数）及び最小集合(n,i)に最後に加わった機器の種類を表す置換機種（n,i）をｎ及びｉに対応させて構成記憶手段に記憶し、
ｎ（前記入力値Ｎ以下の非負整数）のおのおのについて、P1(1)及びＰ2(1)にもとづいて最小合計(n,1)を求め、１番目の機器の種類を置換機種(n,1)として、それぞれ前記構成記憶手段に格納し、
ｉを２からJまで、ｎを１からＮまで、順次増加させながら、最小合計(n-P1(i)),i)＋P2(i)が、a)最小合計（n,i-1）より小さいとき最小合計(n-P1(i)),i)＋P2(i)を最小合計（n,i）、i番目の機器の種類を置換機種(n,i)とし、ｂ）最小合計（n,i-1）より小さくないとき、最小合計(n,i-1)を最小合計（n,i）、置換機種(n,i-1)を置換機種(n,i)として前記構成記憶手段に格納し、
置換機種（m,J）（ｍは1以上N以下）に基づいて最小集合(N,J)を求めて出力する、請求項８または９の構成管理方法。
【請求項１１】
機種名に対応するＰ１及びＰ２を格納するファイルから、J種類の機器の機種名に対応するＰ１及びＰ２を入力して、前記機器記憶手段に格納する、請求項１０の構成管理方法。
【請求項１２】
ｉが０の場合又はnが０以下の場合、最小合計（n,i）は０であり、置換機種(n,i)は有効値を持たず、さらに、j番目の種類の機器の第１の指標及び２の値をそれぞれP1(j)、P2(j)、機器の種類別の台数をL、j番目の種類の機器の台数をL(j)、j番目以下の種類の機器の台数の合計をT(j)と定義した場合に、
最小合計（n,i）（ｎは前記入力値Ｎ以下の非負整数、ｉはT(j)以下の正整数）及び最小集合(n,i)に最後に加わった機器の種類を表す置換機種（n,i）を構成記憶手段に記憶し、
複数（Ｊ）種類の機器の種類毎に、L、P1及びP2の値を前記機器記憶手段に記憶し、
jを１から前記Ｊまで、ｉをT(j-1)+1からT(j)=T(j-1)+L(j)まで、ｎを１から前記Nまで、順次増加させながら、nがi番目以下の全ての機器の第１の指標の和S以下であれば、ａ）置換機種(n,i-1)が有効値を持たない場合又は最小合計(n-P1(j),i-1)＋P2(ｊ)が最小合計（n,i-1）より小さい場合、最小合計(n-P1(j),i-1)＋P2(j)を最小合計（n,i）にし、j番目の種類を置換機種(n,i)とし、ｂ）最小合計(n-P1(j),i-1)＋P2(j)が最小合計（n,i-1）より小さくない場合、最小合計(n,i-1)を最小合計（n,i）、置換機種(n,i-1)を置換機種(n,i)とし、ｎ及びｉに対応させて最小合計（n,i）及び置換機種（n,i）を前記構成記憶手段に格納し、
置換機種（m,T(J)）（ｍは1以上N以下）に基づいて最小集合(N,T(J))を求めて出力する、
請求項８または９の構成管理方法。
【請求項１３】
自装置とネットワークで接続され、機種名、P1、及びP2を格納する複数の機器から、前記機種名、P1、及びP2を入力して、前記機器記憶手段に格納する、請求項１２の構成管理方法。
【請求項１４】
種類毎に第１の指標値P1と第２の指標値P2に関連付けられるｉ種類の機器で構成される、P1の合計がｎ以上の集合中、P2の合計が最小な集合を最小集合（n,i）、最小集合（n,i）に属する機器のP2の合計を最小合計(n,i)と定義した場合に、
コンピュータを、
複数（J）種類の機器の種類毎にP1及びP2を記憶する機器記憶手段と、
要求値Nを入力して、iをJまで順次増加させながら、最小集合（N,i-1）の少なくとも一部をi番目の種類の機器で置換して得られた新たな集合のP2の合計が、a)最小合計（N,i-1）より小さいとき前記新たな集合を、b)最小合計（N,i-1）より小さくないとき最小集合(N,i-1)を、最小集合（N,i）として取得する構成更新手段と、
最小集合(N,J)を出力する出力手段として動作させる構成管理プログラム。
【請求項１５】
P1は前記機器の性能指標値、P２は前記機器のコスト指標値である前記構成管理プログラムを記憶する、請求項１４に記載のプログラム記録媒体。
【請求項１６】
ｉ番目の種類の機器のP1、P2をP1(i)、P2(i)と定義した場合に、
コンピュータを、
最小合計（n,i）（ｎは０以上Ｎ以下の整数、ｉは１以上J以下の整数）及び最小集合(n,i)に最後に加わった機器の種類を表す置換機種（n,i）をｎ及びｉに対応させて記憶する構成記憶手段と、
ｎ（前記入力値Ｎ以下の非負整数）のおのおのについて、P1(1)及びＰ2(1)にもとづいて最小合計(n,1)を求め、１番目の機器の種類を置換機種(n,1)として、それぞれ前記構成記憶手段に格納する初期化手段と、
ｉを２からJまで、ｎを１からＮまで、順次増加させながら、最小合計(n-P1(i)),i)＋P2(i)が、a)最小合計（n,i-1）より小さいとき最小合計(n-P1(i)),i)＋P2(i)を最小合計（n,i）、i番目の機器の種類を置換機種(n,i)とし、ｂ）最小合計（n,i-1）より小さくないとき、最小合計(n,i-1)を最小合計（n,i）、置換機種(n,i-1)を置換機種(n,i)として前記構成記憶手段に格納する前記構成更新手段と、
置換機種（m,J）（ｍは1以上N以下）に基づいて最小集合(N,J)を求めて出力する前記出力手段として動作させる請求項１４または１５に記載の構成管理プログラム。
【請求項１７】
コンピュータを、
機種名に対応するＰ１及びＰ２を格納するファイルから、J種類の機器の機種名に対応するＰ１及びＰ２を入力して、前記機器記憶手段に格納する指標取得手段として動作させる請求項１６に記載の構成管理プログラム。
【請求項１８】
ｉが０の場合又はnが０以下の場合、最小合計（n,i）は０であり、置換機種(n,i)は有効値を持たず、さらに、j番目の種類の機器の第１の指標及び２の値をそれぞれP1(j)、P2(j)、機器の種類別の台数をL、j番目の種類の機器の台数をL(j)、j番目以下の種類の機器の台数の合計をT(j)と定義した場合に、
コンピュータを、
最小合計（n,i）（ｎは前記入力値Ｎ以下の非負整数、ｉはT(j)以下の正整数）及び最小集合(n,i)に最後に加わった機器の種類を表す置換機種（n,i）を記憶する構成記憶手段と、
複数（Ｊ）種類の機器の種類毎に、L、P1及びP2の値を記憶する前記機器記憶手段と、
jを１から前記Ｊまで、ｉをT(j-1)+1からT(j)=T(j-1)+L(j)まで、ｎを１から前記Nまで、順次増加させながら、nがi番目以下の全ての機器の第１の指標の和S以下であれば、ａ）置換機種(n,i-1)が有効値を持たない場合又は最小合計(n-P1(j),i-1)＋P2(ｊ)が最小合計（n,i-1）より小さい場合、最小合計(n-P1(j),i-1)＋P2(j)を最小合計（n,i）にし、j番目の種類を置換機種(n,i)とし、ｂ）最小合計(n-P1(j),i-1)＋P2(j)が最小合計（n,i-1）より小さくない場合、最小合計(n,i-1)を最小合計（n,i）、置換機種(n,i-1)を置換機種(n,i)とし、ｎ及びｉに対応させて最小合計（n,i）及び置換機種（n,i）を前記構成記憶手段に格納する前記構成更新手段と、
置換機種（m,T(J)）（ｍは1以上N以下）に基づいて最小集合(N,T(J))を求めて出力する前記出力手段
として動作させる請求項１４または１５に記載の構成管理プログラム。
【請求項１９】
コンピュータを、
自装置とネットワークで接続され、機種名、P1、及びP2を格納する複数の機器から、前記機種名、P1、及びP2を入力して、前記機器記憶手段に格納する指標取得手段として動作させる請求項１８に記載の構成管理プログラム。
【国際調査報告】
2012039486.tif 000018
2012039486.tif 000019