(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024070715
(43)【公開日】2024-05-23
(54)【発明の名称】可視化装置、可視化方法及びプログラム
(51)【国際特許分類】
G06Q 10/04 20230101AFI20240516BHJP
【FI】
G06Q10/04
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022181376
(22)【出願日】2022-11-11
(71)【出願人】
【識別番号】000005234
【氏名又は名称】富士電機株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】村上 賢哉
(72)【発明者】
【氏名】広瀬 隆之
【テーマコード(参考)】
5L010
5L049
【Fターム(参考)】
5L010AA04
5L049AA04
(57)【要約】 (修正有)
【課題】多目的最適化の解選択を支援する可視化装置、方法及びプログラムを提供すること。
【解決手段】可視化装置は、多目的最適化の対象の入力因子を表す入力変数のサンプル集合を表す第1のサンプル集合を用いて、入力変数をより低次元の圧縮変数に圧縮する次元圧縮部と、圧縮変数を入力として対象の出力特性を表す出力変数を出力するモデルを表す第1の関数を目的関数とする多目的最適化問題のパレート解を計算するパレート解計算部と、多目的最適化問題の探索集合から得られたサンプル集合を表す第2のサンプル集合を用いて、第2のサンプル集合に含まれる圧縮変数値を第1の関数に入力したときの出力変数値を実現可能解として計算する実現可能解計算部と、パレート解と実現可能解とを区別可能な態様で可視化すると共に、パレート解に対応する圧縮変数値と実現可能解に対応する圧縮変数値とを区別可能な態様で可視化する可視化部と、を有する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
多目的最適化の対象の入力因子を表す入力変数のサンプル集合を表す第1のサンプル集合を少なくとも用いて、前記入力変数をより低次元の圧縮変数に圧縮するように構成されている次元圧縮部と、
前記圧縮変数を入力として前記対象の出力特性を表す出力変数を出力するモデルを表す第1の関数を目的関数とする多目的最適化問題のパレート解を計算するように構成されているパレート解計算部と、
前記多目的最適化問題の探索集合から得られたサンプル集合を表す第2のサンプル集合を用いて、前記第2のサンプル集合に含まれる圧縮変数値を前記第1の関数に入力したときの出力変数値を実現可能解として計算するように構成されている実現可能解計算部と、
前記パレート解と前記実現可能解とを区別可能な態様で可視化すると共に、前記パレート解に対応する圧縮変数値と前記実現可能解に対応する圧縮変数値とを区別可能な態様で可視化するように構成されている可視化部と、
を有する可視化装置。
【請求項2】
前記可視化部は、
前記パレート解に対応する圧縮変数値を復元した入力変数値と、前記実現可能解に対応する圧縮変数値を復元した入力変数値とを区別可能な態様で更に可視化するように構成されている請求項1に記載の可視化装置。
【請求項3】
前記第2のサンプル集合は、
前記探索集合のグリッド点で構成された集合、前記探索集合からランダムにサンプリングされたサンプル点の集合、又は前記探索集合から所定の分布に従ってサンプリングされたサンプル点の集合のいずれかである請求項1に記載の可視化装置。
【請求項4】
前記圧縮変数のサンプル集合を表す第3のサンプル集合と、前記出力変数のサンプル集合を表す第4のサンプル集合とを用いて、前記第1の関数を推定するように構成されているモデル推定部を更に有する請求項1に記載の可視化装置。
【請求項5】
前記パレート解計算部は、
前記入力変数を入力として前記出力変数を出力するモデルを表す第2の関数が与えられた場合、前記圧縮変数を前記入力変数に復元するための情報を用いて、前記第2の関数を前記第1の関数に変換して、前記パレート解を計算するように構成されており、
前記実現可能解計算部は、
前記第2の関数を前記第1の関数に変換して、前記実現可能解を計算するように構成されている請求項1に記載の可視化装置。
【請求項6】
前記次元圧縮部は、
前記入力変数を2次元又は3次元の圧縮変数に圧縮するように構成されている請求項1乃至5の何れか一項に記載の可視化装置。
【請求項7】
多目的最適化の対象の入力因子を表す入力変数のサンプル集合を表す第1のサンプル集合を少なくとも用いて、前記入力変数をより低次元の圧縮変数に圧縮する次元圧縮手順と、
前記圧縮変数を入力として前記対象の出力特性を表す出力変数を出力するモデルを表す第1の関数を目的関数とする多目的最適化問題のパレート解を計算するパレート解計算手順と、
前記多目的最適化問題の探索集合から得られたサンプル集合を表す第2のサンプル集合を用いて、前記第2のサンプル集合に含まれる圧縮変数値を前記第1の関数に入力したときの出力変数値を実現可能解として計算する実現可能解計算手順と、
前記パレート解と前記実現可能解とを区別可能な態様で可視化すると共に、前記パレート解に対応する圧縮変数値と前記実現可能解に対応する圧縮変数値とを区別可能な態様で可視化する可視化手順と、
をコンピュータが実行する可視化方法。
【請求項8】
多目的最適化の対象の入力因子を表す入力変数のサンプル集合を表す第1のサンプル集合を少なくとも用いて、前記入力変数をより低次元の圧縮変数に圧縮する次元圧縮手順と、
前記圧縮変数を入力として前記対象の出力特性を表す出力変数を出力するモデルを表す第1の関数を目的関数とする多目的最適化問題のパレート解を計算するパレート解計算手順と、
前記多目的最適化問題の探索集合から得られたサンプル集合を表す第2のサンプル集合を用いて、前記第2のサンプル集合に含まれる圧縮変数値を前記第1の関数に入力したときの出力変数値を実現可能解として計算する実現可能解計算手順と、
前記パレート解と前記実現可能解とを区別可能な態様で可視化すると共に、前記パレート解に対応する圧縮変数値と前記実現可能解に対応する圧縮変数値とを区別可能な態様で可視化する可視化手順と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、可視化装置、可視化方法及びプログラムに関する。
【背景技術】
【0002】
近年、製造プロセスの最適化や製品設計の最適化等において、多目的最適化のニーズが増加している。多目的最適化とは、複数の出力特性(これは「品質項目」、「品質指標」、「出力変数」、「目的変数」等とも呼ばれる。)を同時に最適化することである。多目的最適化では、一般に、少なくとも一部の出力特性(例えば、品質とコスト等)間にトレードオフの関係(つまり、一方の出力特性を良くすると他方の出力特性が悪くなるような関係)があり、これらの出力特性を同時に良くすることが求められる。
【0003】
多目的最適化において、少なくとも一部がトレードオフの関係にある出力特性間でそれらの優先度を変化させた場合の最適解は「パレート最適解」(又は単に「パレート解」)と呼ばれ、その集合は「パレート集合」と呼ばれる。パレート集合やその一部のパレート解を可視化する技術は従来から知られており、ユーザは、これらの技術により可視化されたパレート解の中から自身の目的に適合した解(これは「選好解」等とも呼ばれる。)を選択することが一般的である。なお、パレート解の中から良好な解を得るための従来技術として、例えば、特許文献1及び2等が挙げられる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2014-31900号公報
【特許文献2】特開2007-172427号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来では、ユーザが自身の目的に適合した良好な解を選択することができない場合があった。これは、例えば、実際の製造プロセスや製品設計等で選好解を選択する際には、パレート解とその周辺に存在する最適でない解との関係性も重要な判断基準となるが、従来ではそのような関係性を十分に把握することができなかったためである。
【0006】
本開示は、上記の点に鑑みてなされたもので、多目的最適化の解選択を支援する技術を提供する。
【課題を解決するための手段】
【0007】
本開示の一態様による可視化装置は、多目的最適化の対象の入力因子を表す入力変数のサンプル集合を表す第1のサンプル集合を少なくとも用いて、前記入力変数をより低次元の圧縮変数に圧縮するように構成されている次元圧縮部と、前記圧縮変数を入力として前記対象の出力特性を表す出力変数を出力するモデルを表す第1の関数を目的関数とする多目的最適化問題のパレート解を計算するように構成されているパレート解計算部と、前記多目的最適化問題の探索集合から得られたサンプル集合を表す第2のサンプル集合を用いて、前記第2のサンプル集合に含まれる圧縮変数値を前記第1の関数に入力したときの出力変数値を実現可能解として計算するように構成されている実現可能解計算部と、前記パレート解と前記実現可能解とを区別可能な態様で可視化すると共に、前記パレート解に対応する圧縮変数値と前記実現可能解に対応する圧縮変数値とを区別可能な態様で可視化するように構成されている可視化部と、を有する。
【発明の効果】
【0008】
本開示によれば、多目的最適化の解選択を支援する技術が提供される。
【図面の簡単な説明】
【0009】
【
図1】第一の実施形態に係る可視化装置のハードウェア構成の一例を示す図である。
【
図2】第一の実施形態に係る可視化装置の機能構成の一例を示す図である。
【
図3】第一の実施形態に係る可視化処理の流れの一例を示すフローチャートである。
【
図4】可視化画面の一例を示す図(その1)である。
【
図5】可視化画面の一例を示す図(その2)である。
【
図6】第二の実施形態に係る可視化装置の機能構成の一例を示す図である。
【
図7】第二の実施形態に係る可視化処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本発明の一実施形態について説明する。以下の第一及び第二の実施形態では、多目的最適化問題のパレート解とその実現可能解の両方を可視化し、ユーザに提示する可視化装置10について説明する。これにより、ユーザは、パレート解だけでなく、その周辺の解との関係性も参考にして、自身の目的に適合した良好な解を選択(つまり、選好解を決定)することが可能となる。
【0011】
ここで、以下では、或る多目的最適化問題の決定変数をx=(x1,・・・,xM)、目的変数をy=(y1,・・・,yN)とする。Mは決定変数の数、Nは目的変数の数である。一般に、決定変数xと目的変数yの関係は、n=1,・・・,Nに対して、或る関数fnによりyn=fn(x)とモデル化できる。これらの関数fnは目的関数とも呼ばれる。なお、決定変数xm(m=1,・・・,M)は「入力因子」、「入力変数」等とも呼ばれる。以下では、xm(m=1,・・・,M)を「入力変数」と呼ぶことにする。一方で、yn(n=1,・・・,N)は「出力特性」、「品質項目」、「品質指標」、「出力変数」、「目的変数」等とも呼ばれるが、以下では、「出力変数」と呼ぶことにする。
【0012】
また、多目的最適化問題に制約条件が存在する場合は、その制約条件はgk(x)≦0(k=1,・・・,K)という式により表すことができる。Kは制約条件を表す式の個数である。
【0013】
なお、入力変数xm及び出力変数ynは多目的最適化の対象に応じて様々なものが考えられるが、製造プロセス、物質・材料設計、構造設計における典型的な具体例を以下に示す。
【0014】
・製造プロセス
入力変数:原料の投入量、配分比率、投入タイミング等
出力変数:記録密度と記録消去性能、歩留まり、密度、粒形、コスト等
・物質・材料設計
入力変数:分子構造、配合比率、触媒量、投入タイミング等
出力変数:物性、粘性、密度、味、匂い、触覚、摩擦、密着力、沸点、融点、粒形等
・構造設計
入力変数:寸法、素材や材料の構成・配分、機械設計に関する値等
出力変数:流速、流量、温度、圧力、電磁場、強度(引っ張り、曲げ、剛性、しなり等)、材料使用量、コスト等
ただし、上記の入力変数及び出力変数は一例であって、上記に限られるものではない。
【0015】
[第一の実施形態]
以下、第一の実施形態について説明する。本実施形態では、入力変数xのサンプル集合X={x(i)=(x1
(i),・・・,xM
(i))|i∈I}と、出力変数yのサンプル集合Y={y(i)=(y1
(i),・・・,yN
(i))|i∈I}とが可視化装置10に与えられるものとする。ここで、Iはサンプル番号の集合であり、例えば、サンプル数をLとすればI={1,2,・・・,L}等である。なお、入力変数xのサンプルは、例えば、「入力変数値」、「入力変数の観測値」、「入力変数の実測値」等と呼ばれてもよい。同様に、出力変数yのサンプルは、例えば、「出力変数値」、「出力変数の観測値」、「出力変数の実測値」等と呼ばれてもよい。
【0016】
このとき、本実施形態では、入力変数xをより低次元の変数t(以下、これを圧縮変数と呼ぶ。)に次元圧縮し、圧縮変数tと出力変数yとの関係をモデル化した上で、このモデルを表す関数を目的関数とする多目的最適化問題のパレート解とその実現可能解とを可視化すると共に、それらの解に対応する圧縮変数値を圧縮変数空間内で可視化する場合について説明する。なお、次元圧縮は、例えば、「次元削減」や「低次元変数への変数変換」等と呼ばれてもよい。
【0017】
<第一の実施形態に係る可視化装置10のハードウェア構成例>
本実施形態に係る可視化装置10のハードウェア構成例を
図1に示す。
図1に示すように、本実施形態に係る可視化装置10は、入力装置101と、表示装置102と、外部I/F103と、通信I/F104と、RAM(Random Access Memory)105と、ROM(Read Only Memory)106と、補助記憶装置107と、プロセッサ108とを有する。これらの各ハードウェアは、それぞれがバス109を介して通信可能に接続される。
【0018】
入力装置101は、例えば、キーボード、マウス、タッチパネル、物理ボタン等である。表示装置102は、例えば、ディスプレイ、表示パネル等である。なお、可視化装置10は、例えば、入力装置101及び表示装置102の少なくとも一方を有していなくてもよい。
【0019】
外部I/F103は、記録媒体103a等の外部装置とのインタフェースである。記録媒体103aとしては、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
【0020】
通信I/F104は、可視化装置10を通信ネットワークに接続するためのインタフェースである。RAM105は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。ROM106は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。補助記憶装置107は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の不揮発性の記憶装置である。プロセッサ108は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等の各種演算装置である。
【0021】
なお、
図1に示すハードウェア構成は一例であって、可視化装置10は、他のハードウェア構成を有していてもよい。例えば、可視化装置10は、複数の補助記憶装置107や複数のプロセッサ108を有していてもよいし、図示したハードウェアの一部を有していなくてもよいし、図示したハードウェア以外の種々のハードウェアを有していてもよい。
【0022】
<第一の実施形態に係る可視化装置10の機能構成例>
本実施形態に係る可視化装置10の機能構成例を
図2に示す。
図2に示すように、本実施形態に係る可視化装置10は、次元圧縮部201と、モデル作成部202と、パレート解計算部203と、実現可能解計算部204と、可視化部205とを有する。これら各部は、例えば、可視化装置10にインストールされた1以上のプログラムが、プロセッサ108等に実行させる処理により実現される。また、本実施形態に係る可視化装置10は、記憶部301を有する。記憶部301は、例えば、補助記憶装置107等により実現可能である。なお、記憶部301は、例えば、可視化装置10と通信ネットワークを介して接続されるデータベースサーバ等の記憶装置により実現されていてもよい。
【0023】
次元圧縮部201は、入力変数xのサンプル集合X、又は、入力変数xのサンプル集合Xと出力変数yのサンプル集合Yの両方を用いて、入力変数xを次元圧縮した圧縮変数tのサンプル集合Tを作成する。なお、圧縮変数tはt=(t1,・・・,tM')と表される。ただし、M'<Mである。M'は、M'<Mであれば1以上の任意の整数値としてよいが、M'=2又はM'=3であることが好ましい。
【0024】
ここで、次元圧縮の手法としては任意の既知の手法を用いることが可能であるが、例えば、主成分分析(PCA:Principal Component Analysis)や部分的最小二乗法(PLS:Partial Least Squares)等を用いることが可能である。なお、PCAでは入力変数xのサンプル集合Xを用いて入力変数xを次元圧縮する。一方で、PLSでは入力変数xのサンプル集合Xと出力変数yのサンプル集合Yの両方を用いて入力変数xを次元圧縮する。
【0025】
上記の次元圧縮により、任意の入力変数xをt=Rxにより次元圧縮する行列Rと、任意の圧縮変数tをx=Ptにより復元する行列Pとが得られる。このとき、T={t(i)=Rx(i)|x(i)∈X}である。すなわち、圧縮変数tのサンプル集合Tの各要素は、入力変数xのサンプル集合Xの各要素を行列Rによりそれぞれ次元圧縮したものである。なお、入力変数xに何等かの制約条件を表す式gk(x)≦0が存在する場合、行列Rにより当該制約条件を表す式はg'k(t)≦0に変換される。
【0026】
モデル作成部202は、圧縮変数tのサンプル集合Tと出力変数yのサンプル集合Yとを用いて、圧縮変数tと出力変数yとの関係をモデル化し、このモデルを表す関数h=(h1,・・・,hN)を作成する。ここで、モデル作成部202は、i∈Iとn=1,・・・,Nに対して、hn(t(i))がyn
(i)を精度良く推定するように、h=(h1,・・・,hN)を作成(推定)する。これには、例えば、線形回帰や非線形でのカーネル法等を用いればよい。
【0027】
パレート解計算部203は、h=(h1,・・・,hN)を目的関数とする多目的最適化問題のパレート解を計算する。ここで、多目的最適化問題のパレート解は、例えば、遺伝的アルゴリズム等の進化計算により求めることである。なお、進化計算は既知の手法であり、その詳細については、例えば、参考文献1等を参照されたい。
【0028】
実現可能解計算部204は、当該多目的最適化問題の実現可能解を計算する。例えば、実現可能解計算部204は、当該多目的最適化問題の探索集合Sの部分集合であるサンプル集合S'を生成した上で、このサンプル集合S'を用いて、実現可能解を計算する。ここで、探索集合Sとは、当該多目的最適化問題の解候補となる出力変数値に対応する圧縮変数値の集合のことであり、例えば、「探索空間」等とも呼ばれる。探索集合Sとしては、例えば、入力変数xが取り得る値を行列Rにより次元圧縮した圧縮変数値の集合等とすればよい。なお、入力変数xが取り得る値は、入力変数xに対して何等かの制約条件が存在する場合はその制約条件の下で入力変数xが取り得る値のことをいう。
【0029】
以下、一例として、サンプル集合S'は、探索集合Sからグリッド点(格子点)をサンプリングした集合であるものとする。ただし、これは一例であって、サンプル集合S'は、例えば、探索集合S自体であってもよいし、探索集合Sからランダムにサンプリングした集合であってもよいし、探索集合Sから或る所定の分布に従ってサンプリングされた集合であってもよい。また、例えば、入力変数xの或るサンプル集合が与えられている場合(例えば、入力変数xが取り得る値の集合からサンプリングされたグリッド点の集合等が与えられている場合等)は、このサンプル集合に含まれる各サンプルをそれぞれ行列Rにより次元圧縮した圧縮変数値の集合をサンプル集合S'としてもよい。
【0030】
ただし、サンプル集合S'は探索集合S全体に偏りなく分布しており、かつ、できるだけ密度が高いことが好ましい(つまり、互いに隣り合うサンプル点の距離ができるだけ小さく、かつ、全サンプル点の分散ができるだけ大きい方が好ましい。)。
【0031】
可視化部205は、パレート解及び実現可能解と、それらに対応する圧縮変数値とを可視化する。このとき、可視化部205は、パレート解と実現可能解とを区別可能な態様で可視化すると共に、パレート解に対応する圧縮変数値と実現可能解に対応する圧縮変数値とを区別可能な態様で可視化する。なお、可視化部205は、更に、パレート解に対応する圧縮変数値を行列Pにより復元した入力変数値と、実現可能解に対応する圧縮変数値を行列Pにより復元した入力変数値とを区別可能な態様で可視化してもよい。
【0032】
記憶部301には、入力変数xのサンプル集合Xと出力変数yのサンプル集合Yとが記憶される。また、これ以外にも、記憶部301には、モデル作成部202によって作成されたモデルを表す関数h=(h1,・・・,hN)、制約条件を表す式g'k(t)≦0(k=1,・・・,K)、パレート解とそれに対応する圧縮変数値、実現可能解とそれに対応する圧縮変数値、実現可能解の計算に用いられるサンプル集合S'等が記憶されてもよい。なお、入力変数xのサンプル集合Xと出力変数yのサンプル集合Yは、例えば、多目的最適化の対象に関して実験を行ったり、多目的最適化の対象を実際に運転したりすること等によって得られたデータであり、可視化装置10に与えられる。
【0033】
<第一の実施形態に係る可視化処理の流れ>
以下、本実施形態に係る可視化処理の流れについて、
図3を参照しながら説明する。なお、以下では、入力変数xのサンプル集合Xと出力変数yのサンプル集合Yとが可視化装置10に与えられたものとする。
【0034】
ステップS101:まず、次元圧縮部201は、入力変数xのサンプル集合X、又は、入力変数xのサンプル集合Xと出力変数yのサンプル集合Yの両方を用いて、例えば、PCA又はPLS等により、入力変数xを次元圧縮した圧縮変数tのサンプル集合Tを作成する。すなわち、次元圧縮部201は、例えば、PCA又はPLS等により、入力変数xのサンプル集合Xに含まれる各サンプルx(i)を行列Rによりそれぞれ次元圧縮し、圧縮変数tのサンプル集合T={t(i)=Rx(i)|x(i)∈X}を作成する。
【0035】
ステップS102:次に、モデル作成部202は、圧縮変数tのサンプル集合Tと出力変数yのサンプル集合Yとを用いて、例えば、線形回帰や非線形でのカーネル法等により圧縮変数tと出力変数yとの関係をモデル化し、当該モデルを表す関数h=(h1,・・・,hN)を作成する。
【0036】
ステップS103:次に、パレート解計算部203は、h=(h1,・・・,hN)を目的関数とする多目的最適化問題のパレート解を計算する。
【0037】
ステップS104:次に、実現可能解計算部204は、当該多目的最適化問題の探索集合Sの部分集合であるサンプル集合S'として、実現可能解を計算するための圧縮変数tのサンプル集合S'を生成する。なお、上述したように、サンプル集合S'は、探索集合Sからグリッド点(格子点)をサンプリングした集合であるものとする。
【0038】
ステップS105:次に、実現可能解計算部204は、実現可能解を計算するための圧縮変数tのサンプル集合S'を用いて、実現可能解を計算する。すなわち、実現可能解計算部204は、t∈S'とn=1,・・・,Nに対してyn=hn(t)により実現可能解y=(y1,・・・,yN)を計算する。サンプル集合S'はグリッド点であるため、これは、グリッドサーチにより実現可能解を計算していることを意味する。
【0039】
なお、上記のステップS103と、ステップS104~ステップS105とは順不同であり、例えば、ステップS104~ステップS105が実行された後にステップS103が実行されてもよい。
【0040】
ステップS106:最後に、可視化部205は、パレート解及び実現可能解と、それらに対応する圧縮変数値とを可視化する。このとき、可視化部205は、パレート解と実現可能解とを区別可能な態様で可視化すると共に、パレート解に対応する圧縮変数値と実現可能解に対応する圧縮変数値とを区別可能な態様で可視化する。この可視化結果は可視化画面としてディスプレイ等の表示装置102上(又は、可視化装置10と通信ネットワークを介して接続される端末のディスプレイ上等でもよい。)に表示される。なお、可視化画面の具体例については後述する。
【0041】
これにより、ユーザは、パレート解だけでなく、その周辺の解との関係性も参考にして、自身の目的に適合した良好な選好解を決定することが可能となり、多目的最適化の解選択の支援が実現される。しかも、パレート解及び実現可能解に対応する圧縮変数値も可視化されるため、例えば、M'=2又はM'=3である場合には人が認識可能な圧縮変数空間内で各圧縮変数値(つまり、パレート解及び実現可能解に対応する入力変数値を圧縮した圧縮変数値)を確認することが可能となる。
【0042】
また、入力変数が圧縮変数に次元圧縮されているため、例えば、入力変数に含まれる変数間に相関(多重共線性)がある場合であっても、このような相関を考慮したモデルを表す関数hを作成することが可能となる。このため、上記の相関を考慮したパレート解及び実現可能解を求めることが可能となり、例えば、上記の相関が考慮されないことによって実際には実現不可能な解が計算されてしまうという事態を防止することが可能となる。
【0043】
<可視化画面例>
以下では、上記のステップS106でディスプレイ等の表示装置102上に表示される可視化画面の具体例について説明する。
【0044】
≪可視化画面(その1)≫
図4に示す可視化画面1000には、圧縮変数tに関する散布
図1100と、出力変数yに関する散布
図1200とが含まれている。ここで、散布
図1100では、パレート解に対応する圧縮変数値と、実現可能解に対応する圧縮変数値とが区別可能な態様で表示されている。同様に、散布
図1200では、パレート解と実現可能解とが区別可能な態様で表示されている。これにより、ユーザは、パレート解とその周辺の解との関係性だけでなく、それらの解に対応する圧縮変数値も参考にして選好解を決定することが可能となる。
【0045】
なお、
図4に示す例では、圧縮変数はt=(t
1,t
2)、出力変数はy=(y
1,y
2)である場合の散布
図1100及び1200を示しているが、これは一例である。例えば、M'>2である場合、散布
図1100は圧縮変数t=(t
1,・・・,t
M')に含まれる任意の異なる2つ変数t
i,t
j(i≠j)又は3つの変数t
i,t
j,t
k(i≠j,j≠k,k≠i)に関する散布図であってもよい。同様に、N>2である場合、散布
図1200は出力変数y=(y
1,・・・,y
N)に含まれる任意の異なる2つの変数y
i,y
j(i≠j)又は3つの変数y
i,y
j,y
k(i≠j,j≠k,k≠i)に関する散布図であってもよい。
【0046】
また、
図4に示す例では、実現可能解に対応する圧縮変数値はグリッド点であるが、これは一例であって、これに限られないことは言うまでもない。
【0047】
≪可視化画面(その2)≫
図5に示す可視化画面2000には、圧縮変数tに関する散布
図2100と、出力変数yに関する散布
図2200と、入力変数xに関する散布
図2300とが含まれている。ここで、散布
図2100では、パレート解に対応する圧縮変数値と、実現可能解に対応する圧縮変数値とが区別可能な態様で表示されている。同様に、散布
図2200では、パレート解と実現可能解とが区別可能な態様で表示されている。また、同様に、散布
図2300では、パレート解に対応する入力変数値と、実現可能解に対応する入力変数値とが区別可能な態様で表示されている。このとき、散布
図2300に表示されている入力変数値xは、散布
図2100に表示されている圧縮変数値tをx=Ptにより復元したものである。これにより、ユーザは、パレート解とその周辺の解との関係性、それらの解に対応する圧縮変数値だけなく、これらの圧縮変数値を元の入力変数空間内に復元した入力変数値も参考にして選好解を決定することが可能となる。
【0048】
なお、
図5に示す例では、圧縮変数はt=(t
1,t
2)、出力変数はy=(y
1,y
2)、入力変数はx=(x
1,x
2,x
3)である場合の散布
図2100、2200及び2300を示しているが、これは一例である。例えば、M'>2である場合、散布
図2100は圧縮変数t=(t
1,・・・,t
M')に含まれる任意の異なる2つ変数t
i,t
j(i≠j)又は3つの変数t
i,t
j,t
k(i≠j,j≠k,k≠i)に関する散布図であってもよい。同様に、N>2である場合、散布
図2200は出力変数y=(y
1,・・・,y
N)に含まれる任意の異なる2つの変数y
i,y
j(i≠j)又は3つの変数y
i,y
j,y
k(i≠j,j≠k,k≠i)に関する散布図であってもよい。同様に、M>2(ただし、M>M')である場合、散布
図2300は入力変数x=(x
1,・・・,x
M)に含まれる任意の異なる2つの変数x
i,x
j(i≠j)又は3つの変数x
i,x
j,x
k(i≠j,j≠k,k≠i)に関する散布図であってもよい。
【0049】
また、
図5に示す例では、実現可能解に対応する圧縮変数値はグリッド点であるが、これは一例であって、これに限られないことは言うまでもない。
【0050】
[第二の実施形態]
以下、第二の実施形態について説明する。本実施形態では、入力変数xから出力変数yを推定するモデル(例えば、多目的最適化の対象の物理モデル、事前に作成された統計モデル等)を表す関数f=(f1,・・・,fN)と、入力変数xのサンプルを生成するための条件(以下、生成条件という。)とが可視化装置10に与えられるものとする。ここで、生成条件は、入力変数値として想定される条件を表したものであり、例えば、多目的最適化の対象の物理的な条件、当該対象のドメイン知識を表す条件、当該対象の実験によって得られた知識を表す条件等が挙げられる。
【0051】
このとき、本実施形態では、生成条件と関数fからサンプル集合Xとサンプル集合Yとを生成した上で、入力変数xをより低次元の圧縮変数tに次元圧縮し、当該関数fを目的関数とする多目的最適化問題のパレート解とその実現可能解とを可視化すると共に、それらの解に対応する圧縮変数値を圧縮変数空間内で可視化する場合について説明する。
【0052】
<第二の実施形態に係る可視化装置10のハードウェア構成例>
本実施形態に係る可視化装置10のハードウェア構成は、第一の実施形態と同様としてよいため、その説明を省略する。以下では、本実施形態に係る可視化装置10のハードウェア構成は、第一の実施形態と同様であるものとする。
【0053】
<第二の実施形態に係る可視化装置10の機能構成例>
本実施形態に係る可視化装置10の機能構成例を
図6に示す。
図6に示すように、本実施形態に係る可視化装置10は、次元圧縮部201と、パレート解計算部203と、実現可能解計算部204と、可視化部205と、サンプル生成部206とを有する。これら各部は、例えば、可視化装置10にインストールされた1以上のプログラムが、プロセッサ108等に実行させる処理により実現される。また、本実施形態に係る可視化装置10は、記憶部301を有する。記憶部301は、例えば、補助記憶装置107等により実現可能である。なお、記憶部301は、例えば、可視化装置10と通信ネットワークを介して接続されるデータベースサーバ等の記憶装置により実現されていてもよい。
【0054】
サンプル生成部206は、生成条件を用いて、入力変数xのサンプル集合X={x(i)=(x1
(i),・・・,xM
(i))|i∈I}を生成する。また、サンプル生成部206は、入力変数xのサンプル集合Xと関数fとを用いて、出力変数yのサンプル集合Y={y(i)=(y1
(i),・・・,yN
(i))|i∈I}を生成する。ここで、Iはサンプル番号の集合である。
【0055】
なお、サンプル生成部206は、例えば、与えられた生成条件を満たす入力変数値をランダムに|I|個生成することで、入力変数xのサンプル集合Xを生成すればよい。また、サンプル生成部206は、x∈Xとn=1,・・・,Nに対してyn=fn(x)によりy=(y1,・・・,yN)を生成することで、出力変数yのサンプル集合Yを生成すればよい。
【0056】
次元圧縮部201は、第一の実施形態と同様に、入力変数xのサンプル集合X、又は、入力変数xのサンプル集合Xと出力変数yのサンプル集合Yの両方を用いて、入力変数xを次元圧縮した圧縮変数tのサンプル集合Tを作成する。
【0057】
パレート解計算部203は、f=(f1,・・・,fN)を圧縮変数tの関数とみなしたものを目的関数とする多目的最適化問題のパレート解を計算する。すなわち、パレート解計算部203は、f(Pt)=(f1(Pt),・・・,fN(Pt))を目的関数とする多目的最適化問題のパレート解を計算する。
【0058】
実現可能解計算部204は、第一の実施形態と同様に、当該多目的最適化問題の実現可能解を計算する。
【0059】
可視化部205は、第一の実施形態と同様に、パレート解及び実現可能解と、それらに対応する圧縮変数値とを可視化する。
【0060】
記憶部301には、関数fと生成条件とが記憶される。また、これ以外にも、記憶部301には、サンプル生成部206によって生成されたサンプル集合X及びYと、関数fに制約条件が存在する場合はその制約条件を表す式gk(x)≦0(k=1,・・・,K)、パレート解とそれに対応する圧縮変数値、実現可能解とそれに対応する圧縮変数値、実現可能解の計算に用いられるサンプル集合S'等が記憶されてもよい。
【0061】
<第二の実施形態に係る可視化処理の流れ>
以下、本実施形態に係る可視化処理の流れについて、
図7を参照しながら説明する。なお、以下では、関数fと生成条件とが可視化装置10に与えられたものとする。
【0062】
ステップS201:まず、サンプル生成部206は、生成条件を用いて、入力変数xのサンプル集合Xを生成する。
【0063】
ステップS202:次に、サンプル生成部206は、関数fと入力変数xのサンプル集合Xとを用いて、出力変数yのサンプル集合Yを生成する。
【0064】
ステップS203:次に、次元圧縮部201は、第一の実施形態と同様に、入力変数xのサンプル集合X、又は、入力変数xのサンプル集合Xと出力変数yのサンプル集合Yの両方を用いて、入力変数xを次元圧縮した圧縮変数tのサンプル集合Tを作成する。
【0065】
ステップS204:次に、パレート解計算部203は、f(Pt)=(f1(Pt),・・・,fN(Pt))を目的関数とする多目的最適化問題のパレート解を計算する。
【0066】
ステップS205:次に、実現可能解計算部204は、第一の実施形態と同様に、当該多目的最適化問題の探索集合Sの部分集合であるサンプル集合S'として、実現可能解を計算するための圧縮変数tのサンプル集合S'を生成する。
【0067】
ステップS206:次に、実現可能解計算部204は、第一の実施形態と同様に、実現可能解を計算するための圧縮変数tのサンプル集合S'を用いて、実現可能解を計算する。
【0068】
なお、上記のステップS204と、ステップS205~ステップS206とは順不同であり、例えば、ステップS205~ステップS206が実行された後にステップS204が実行されてもよい。
【0069】
ステップS207:最後に、可視化部205は、第一の実施形態と同様に、パレート解及び実現可能解と、それらに対応する圧縮変数値とを可視化する。
【0070】
これにより、第一の実施形態と同様に、ユーザは、パレート解だけでなく、その周辺の解との関係性も参考にして、自身の目的に適合した良好な選好解を決定することが可能となり、多目的最適化の解選択の支援が実現される。しかも、パレート解及び実現可能解に対応する圧縮変数値も可視化されるため、例えば、M'=2又はM'=3である場合には人が認識可能な圧縮変数空間内で各圧縮変数値(つまり、パレート解及び実現可能解に対応する入力変数値を圧縮した圧縮変数値)を確認することが可能となる。
【0071】
また、入力変数が圧縮変数に次元圧縮されているため、例えば、入力変数に含まれる変数間に相関(多重共線性)がある場合であっても、このような相関を考慮してパレート解及び実現可能解を求めることが可能となり、例えば、上記の相関が考慮されないことによって実際には実現不可能な解が計算されてしまうという事態を防止することが可能となる。
【0072】
<可視化画面例>
上記のステップS207でディスプレイ等の表示装置102上に表示される可視化画面は、第一の実施形態と同様であるため、その説明を省略する。
【0073】
[変形例]
以下、上記で説明した第一及び第二の実施形態の変形例について説明する。
【0074】
・変形例1
一般に多目的最適化問題には制約条件が存在するため、サンプル集合S'の生成方法によっては当該サンプル集合S'中に制約条件を満たさない圧縮変数値が存在することもある。そこで、制約条件を満たさない圧縮変数値及びそれに対応する出力変数値を、制約条件を満たす圧縮変数値及びそれに対応する出力変数値とは異なる態様で表示してもよい。特に、制約条件を満たさない圧縮変数値及びそれに対応する出力変数値をグレーアウトで表示したり、又は、非表示としたりすることが好ましい。
【0075】
・変形例2
可視化画面の散布図上におけるユーザの操作に応じて、互いに対応する変数値(圧縮変数値、出力変数値、入力変数値)を特定可能な態様で可視化してもよい。
【0076】
例えば、可視化画面の散布図上でユーザの操作により出力変数値が選択された場合、その出力変数値に対応する圧縮変数値(及び入力変数値)の色を変えたり、点滅させたり、大きさを異ならせたりしてもよい。又は、ユーザの操作により選択された出力変数値と、それに対応する圧縮変数値(及び入力変数値)とを線等に接続してもよい。
【0077】
同様に、例えば、可視化画面の散布図上でユーザの操作により圧縮変数値が選択された場合、その圧縮変数値に対応する出力変数値(及び入力変数値)の色を変えたり、点滅させたり、大きさを異ならせたりしてもよい。又は、ユーザの操作により選択された圧縮変数値と、それに対応する出力変数値(及び入力変数値)とを線等に接続してもよい。
【0078】
同様に、例えば、可視化画面の散布図上でユーザの操作により入力変数値が選択された場合、その入力変数値に対応する圧縮変数値(及び出力変数値)の色を変えたり、点滅させたり、大きさを異ならせたりしてもよい。又は、ユーザの操作により選択された入力変数値と、それに対応する圧縮変数値(及び出力変数値)とを線等に接続してもよい。
【0079】
これにより、ユーザは、任意の圧縮変数値、出力変数値、又は入力変数値に対して、それに対応する他の変数値を容易に知ることが可能となるため、自身の目的に適合した選好解をより容易に決定することが可能になると考えられる。
【0080】
なお、圧縮変数値、出力変数値、又は入力変数値を選択するための操作としては様々な操作が考えられるが、例えば、圧縮変数値、出力変数値、又は入力変数値を表す点に対してマウスオーバーする、当該点をクリックする、マウスによるドラッグ操作によって範囲選択する、等が挙げられる。
【0081】
・変形例3
サンプル集合S'は探索集合S全体に偏りなく分布しており、かつ、できるだけ密度が高いことが好ましいが、サンプル集合S'の生成方法によっては圧縮変数値が存在しない領域も発生し得る。そこで、可視化画面の散布図上におけるユーザの操作に応じて、その操作が行われた位置を表す点に対する圧縮変数値、出力変数値、又は入力変数値を計算して可視化してもよい。
【0082】
例えば、可視化画面の圧縮変数の散布図上で、圧縮変数値が存在しない領域の或る点をユーザが選択した場合、その点を表す圧縮変数値に対応する出力変数値(及び入力変数値)を計算し、出力変数値の散布図上(及び入力変数値の散布図上)に可視化してもよい。このとき、その出力変数値(及び入力変数値)の色を変えたり、点滅させたり、大きさを異ならせたりしてもよいし、ユーザが選択した点と線等で接続されてもよい。
【0083】
同様に、例えば、可視化画面の出力変数の散布図上で、圧縮変数値に対応する出力変数値が存在しない領域の或る点をユーザが選択した場合、その点を表す出力変数値に対応する圧縮変数値(及び入力変数値)を計算し、圧縮変数値の散布図上(及び入力変数値の散布図上)に可視化してもよい。このとき、その圧縮変数値(及び入力変数値)の色を変えたり、点滅させたり、大きさを異ならせたりしてもよいし、ユーザが選択した点と線等で接続されてもよい。
【0084】
なお、圧縮変数値又はそれに対応する出力変数値が存在しない領域の点を選択するための操作としては様々な操作が考えられるが、例えば、当該領域の点をクリックする、等が挙げられる。
【0085】
[まとめ]
以上のように、第一及び第二の実施形態に係る可視化装置10は、多目的最適化問題のパレート解とその実現可能解の両方を区別可能に可視化すると共に、それらの解に対応する入力変数値をより低次元の圧縮空間内で可視化する。これにより、ユーザは、パレート解だけでなく、その周辺の解との関係性、更には圧縮空間内の値(圧縮変数値)と出力変数値との関係性等を参考にして、自身の目的に適合した良好な選好解を決定することが可能となる。
【0086】
しかも、例えば、M'=2又はM'=3である場合には人が認識可能な圧縮変数空間内で各圧縮変数値を確認することが可能となる。また、入力変数が圧縮変数に次元圧縮されているため、例えば、入力変数に含まれる変数間に相関(多重共線性)がある場合であっても、このような相関を考慮したモデルを作成したり、パレート解及び実現可能解を計算したりすることが可能となり、例えば、上記の相関が考慮されないことによって実際には実現不可能な解が計算されてしまうという事態を防止することが可能となる。
【0087】
なお、選好解は必ずしもパレート解に限らないことに留意されたい。これは、多目的最適化の対象によってはパレート解ではなく、その周辺に存在する解が最も良好な解となる場合があるためである。また、多目的最適化問題の目的関数自体が実際の現象等を近似又はモデル化したものであるため、何等かの誤差を含み得るためである。このため、第一及び第二の実施形態に係る可視化装置10を用いることで、パレート解の周辺に最も良好な解が存在する場合であってもその解を比較的容易に選択することができるようになる。
【0088】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。
【0089】
[参考文献]
参考文献1:佐藤 寛之,石渕久生,"進化型多数目的最適化の現状と課題",オペレーションズ・リサーチ,Vol.62, No.3, pp156-163 (2017)
【符号の説明】
【0090】
10 可視化装置
101 入力装置
102 表示装置
103 外部I/F
103a 記録媒体
104 通信I/F
105 RAM
106 ROM
107 補助記憶装置
108 プロセッサ
109 バス
201 次元圧縮部
202 モデル作成部
203 パレート解計算部
204 実現可能解計算部
205 可視化部
206 サンプル生成部
301 記憶部