JP2002318536A - 問題の解取得方法および最適化問題の解取得方法 - Google Patents

問題の解取得方法および最適化問題の解取得方法

Info

Publication number
JP2002318536A
JP2002318536A JP2001125279A JP2001125279A JP2002318536A JP 2002318536 A JP2002318536 A JP 2002318536A JP 2001125279 A JP2001125279 A JP 2001125279A JP 2001125279 A JP2001125279 A JP 2001125279A JP 2002318536 A JP2002318536 A JP 2002318536A
Authority
JP
Japan
Prior art keywords
solution
matrix
optimization problem
input
function
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.)
Pending
Application number
JP2001125279A
Other languages
English (en)
Inventor
Yusaku Yamamoto
有作 山本
Takeshi Naono
健 直野
Satoshi Ito
智 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2001125279A priority Critical patent/JP2002318536A/ja
Priority to US09/918,642 priority patent/US7137010B2/en
Publication of JP2002318536A publication Critical patent/JP2002318536A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Complex Calculations (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 求解システムへの最適化問題の求解依頼にお
いて、求解システム側に問題と解の情報を渡さず、かつ
暗号鍵を送ることも不要とすることにある。 【解決手段】 クライアント13では、入力装置14から問
題入力部16で問題を、暗号入力部17で暗号鍵10を入力
し、変換行列生成部18で暗号鍵10を用いて正則行列Pと
置換行列Qを生成し、問題変換部19で問題を行列P,Qを
用いて暗号化して問題出力部20に出力し、問題出力部20
は暗号化した問題をネットワーク8を介してサーバ24に
送る。サーバ24では、問題入力部25で暗号化した問題を
受け、求解部26で解を求め、解出力部27に出力し、解出
力部27はネットワーク8を介して解をクライアント13に
送る。クライアント13では、解入力部21で解を受け、逆
変換部22で行列P,Qを用いて復号化して解出力部23に出
力し、解出力部23は出力装置15に解を出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、処理装置が問題の
求解を他の処理装置に依頼して問題の解を得る場合にお
ける機密保持に関する。
【0002】
【従来の技術】物流業、金融業などの産業分野では、ト
ラックの配送経路の最適化、債券ポートフォリオの最適
化をはじめとして、さまざまな最適化問題を解く必要が
ある。例えば、トラックの配送経路の最適化では、地図
上に複数の配送地点が与えられたとき、そのすべてを1
回ずつ通り、長さが最小となる経路を求める。これによ
り、トラックの走行距離を可能な限り短くすることがで
き、運送に要する経費を最小化することができる。例と
して、平面上に100個の配送地点が与えられたとき、こ
れらをランダムな順で回ったときの配送経路を図2に、
最適な配送経路を図3に示す。ランダムな順での配送経
路に比べ、最適な配送経路では走行距離が数分の1に小
さくなっており、運送費用が大きく節約できる。また例
えば、債券ポートフォリオの最適化では、一定量の資金
が与えられており、かつ株式、国債、社債などの各債券
について、期待収益率と収益率の分散とが与えられてい
るという条件の下で、資金を各債券にどのように分散投
資すれば、全体の収益率を一定に保ちつつ、全体のリス
クすなわち収益率の分散を最小化できるかという問題を
解く。
【0003】これらの問題は、数学的には線形計画問
題、二次計画問題、または混合型整数計画問題として定
式化できる。線形計画問題とは、等号制約条件Ax=b,不
等号制約条件x≧0の下で目的関数ctxを最小化するxを求
める問題である。なお、ここでxは未知数のn次元ベクト
ルであり、Aはm行n列の定数行列、cはn次元の定数ベク
トルである。また、x≧0はxのすべての要素が非負であ
るという条件を表し、ctxはベクトルcとベクトルxとの
内積を表す。二次計画問題とは、線形計画問題におい
て、目的関数を二次間数ctx + xtBxに変えた最適化問題
である。ここで、Bはn行n列でかつ非負定値の定数行列
である。混合型整数計画問題とは、線形計画問題におい
て、未知数ベクトルxの一部の成分に整数条件が課され
た最適化問題である。
【0004】上記のトラックの配送経路の最適化は、複
数の配送地点のすべてを1回ずつ通るという条件を整数
条件付きの等号制約条件Ax=bで表すことができ、配送経
路の長さを一次関数ctxで表すことができるため、混合
型整数計画問題となる。また、上記の債券ポートフォリ
オの最適化では、資金量一定および収益率一定という条
件を等号制約条件Ax=bで表すことができ、リスク最小化
のための目的関数を二次関数xtBxで表すことができるた
め、二次計画問題となる。
【0005】以上の二つの例は、最適化を直接の目的と
する例であるが、産業における最適化問題の応用はこれ
に留まらない。たとえば金融業では、企業への融資にお
けるリスク管理のために、倒産の可能性が高い企業・低
い企業を事前に推定する企業格付けを行う必要がある。
このための一つの方法として、最適化問題を利用する方
法が提案されている(たとえば今野浩:「数理計画法に
よる市場リスク/信用リスクの計量と管理」、平成12年
度第4回ORセミナーテキスト「金融リスクとOR」、
(社)日本オペレーションズ・リサーチ学会、参照)。
この方法では、(1) 融資の対象となる企業を自己資本比
率、キャッシュフローなどの財務指標により高次元空間
にプロットし、(2) 過去の実績を元に、この空間中で倒
産企業・非倒産企業を最もよく判別できる(すなわち最
も誤判別の少ない)超平面を計算し、(3) この超平面か
らの距離により対象企業の格付けを行う。財務指標の空
間と最適な平面の例を図4に示す。図中の白丸3が非倒
産企業、黒丸4が倒産企業を表し、直線5が判別超平面を
表す。この方法では、(2)のステップにおいて、判別の
ための最適な超平面を求めるために線形計画問題を用い
る。同様の手法は、個人向けのクレジットカードの入会
審査等にも使われる。このように、最適化問題の求解
は、狭義の最適化を超えて、物流業や金融業のさまざま
な場面で必要とされる技術となっている。
【0006】近年では、物流業における大規模サプライ
・チェーン・マネジメントの普及、金融業における銀行
合併などにより、上記のような応用で解くべき最適化問
題も大規模化しており、スーパーコンピュータの利用が
必要な例も増加しつつある。そのため、各企業の所有す
る計算機資源のみでは求解が困難になっており、大規模
なスーパーコンピュータを備えて複数の企業から最適化
問題の求解を請け負うアプリケーション・サービス・プ
ロバイダ(ASP)の出現が予想されている。このようなA
SPの実用化に当たっての鍵は、機密保持のための対策で
ある。実際、最適化問題に関する情報は、物流業であれ
ば配送地点や配送経路、金融業であれば債券ポートフォ
リオの内容、融資先の企業の財務指標、融資先企業の格
付け情報、クレジットカード審査のための個人情報、審
査結果など、業務の根幹に関わる機密情報を含む。した
がって、もしASPへの最適化の依頼によってこれらの情
報が漏洩する恐れがあるとすれば、依頼を行うことは考
えにくい。そのため、最適化問題の求解に関するASPを
実用化するには、解くべき最適化問題の情報、得られた
解の情報の両方について、十分な機密保持を保証できる
方法が必要である。
【0007】このための方法としては、従来、たとえば
特開平10-154136号公報「シミュレーションプログラム
の実行支援方法およびプログラム割り当て方法」で提案
されている方法が主に使われてきた。この方法により機
密保持を行う例を図5に示す。この例では、解くべき最
適化問題が格納されている顧客の計算機システム6と、
求解を行うASPの計算機システム7とがネットワーク8で
結ばれている。顧客は、ASPに求解を依頼するに当た
り、まず解くべき問題9をある暗号鍵10によって暗号化
してビット列11に変換する。次に、このビット列11及び
暗号鍵10をネットワーク8経由でASP側に送信する。ただ
し、暗号鍵を送るに当たっては、これを別の公開鍵方式
の暗号で暗号化して送るなどの方法により、暗号鍵がネ
ットワーク上で傍受されないように工夫することが必要
である。ASP側では、ビット列11および暗号鍵10を受け
取り、復号化を行って元の問題を復元してから、それに
対する解12を求め、それを再び暗号化してネットワーク
8経由で顧客側に送り返す。顧客側では解を復号化し、
元の問題に対する解を得る。この方法では、解くべき問
題及び解を暗号化してネットワークで転送するため、ネ
ットワーク上の情報を第三者が傍受しても、問題及び解
に関する情報は得られない。以上が従来法による機密保
持方法である。
【0008】
【発明が解決しようとする課題】従来の機密保持方法で
は、ネットワーク上からの第三者の傍受に対して、解く
べき問題と解の機密を保持することが可能である。しか
し、この方法には2つの問題点がある。第1の問題点
は、ASPのような求解システム側で復号化を行うため、
求解システム側に対しては解くべき問題と解の情報が完
全に開示されてしまうことである。したがって、求解シ
ステム側に悪意を持つスタッフがいた場合、あるいは求
解システムに侵入があった場合には、顧客の情報が漏洩
する可能性がある。第2の問題点は、求解システム側で
復号化を行うために、暗号化された解くべき問題の情報
に加え、暗号鍵も求解システム側に送らなければならな
いことである。通常、暗号鍵を送るに当たっては、別の
公開鍵暗号によってこれを暗号化するなどの方法を取
り、安全性を高める工夫を行うが、これは余計な手間を
必要とし、また、公開鍵暗号が破られる可能性がゼロで
はないため、安全性の低下にもつながる。本発明は上記
2つの問題点を解決し、求解システムへの最適化問題の
求解依頼において、求解システム側に解くべき問題と解
の情報を渡さず、かつ暗号鍵をネットワーク上で送るこ
とも不要とする、新しい機密保持の方法を提供すること
を目的とする。
【0009】
【課題を解決するための手段】上記目的を達成するた
め、本発明では、入力された問題に対する解を要求する
解要求装置から求解装置に問題を送り、求解装置で問題
の解を求め解要求装置に送り、解要求装置で解を出力し
て問題の解を得る場合に、解要求装置は、入力された問
題を暗号鍵により暗号化し、該暗号化した問題を求解装
置に送り、求解装置は、送られた暗号化した問題を暗号
化したままの状態で解いて解を求め、該求めた解を解要
求装置に送り、解要求装置は、送られた解を暗号鍵によ
り復号化し、復号化した解を出力するようにしている。
入力された最適化問題に対する解を要求する解要求装置
から求解装置に問題を送り、求解装置で最適化問題の解
を求め解要求装置に送り、解要求装置で解を出力して最
適化問題の解を得る場合に、解要求装置は、適当に定め
た変数変換y=u(x)および式の同値変形によって、該最適
化問題を異なる等号制約条件g’(y)=0,不等号制約条件
h’(y)≧0,目的関数f’(y)を持つ別の最適化問題に変
換し、該変換した最適化問題を前記求解装置に送り、求
解装置は、送られた変換した最適化問題を解いて解yを
求め、求めた解yを解要求装置に送り、解要求装置は、
送られた解yに対して、変数の逆変換x=u-1(y)を行って
元の最適化問題に対する解xを求め、解xを出力するよう
にしている。
【0010】
【発明の実施の形態】以下、本発明の原理および実施例
1を、図面により詳細に説明する。ここで実施例として
挙げるのは、ユーザから最適化問題の求解要求を受け付
けるクライアント計算機システムと、与えられた最適化
問題に対する解を求めるサーバ計算機システムと、各ク
ライアントをサーバに接続するネットワークとを備え、
元の最適化問題の情報およびその解に関する情報ををサ
ーバ側に与えることなく、クライアントからサーバへの
最適化問題の求解依頼をし、サーバにおいて求解依頼さ
れた問題の解を求め、求めた解をサーバからクライアン
トに返送し、クライアントにおいて解を出力することを
可能とするシステムである。
【0011】図1に本発明の機密保持方法の概要を、問
題の求解を依頼する顧客とASPとの間での機密保持の場
合を例として示す図である。顧客の計算機システム6で
は、解くべき問題9を暗号鍵10を用いて暗号化し、暗号
化した解くべき問題11をネットワーク8を介してASPの計
算機システム7に送る。ASPの計算機システム7は問題を
解いて解yを求め、ネットワーク8を介して顧客の計算機
システム6に送る。顧客の計算機システム6は解yを暗号
鍵10を用いて復号化して解xを求める。ASP側は変換され
た問題「minimize fty s.t. Dy=e,y≧0」のみを扱うた
め、元の問題に関する情報を得ることはない。また、元
の問題から別の問題への変換は同値変形であるため、変
換された問題の解から元の問題の解を求めることが可能
である。
【0012】本システムの構成図を図6に示す。クライ
アント計算機システム13は、入力装置14と出力装置15に
加えて(1)m行n列の係数行列Aとm次元右辺ベクトルbによ
り定義される等号制約条件Ax=b,不等号制約条件x≧0,
最小化すべき目的関数f(x)によって表現された最適化問
題の入力を受け付ける問題入力部16、(2)機密保持のた
めの暗号鍵を受け付ける暗号入力部17、(3)上記暗号入
力部から入力された暗号鍵10を用いてm行m列の正則行列
Pおよびn行n列の置換行列Qを生成する変換行列生成部1
8、(4)正則行列Pおよび該置換行列Qを用いて、該最適化
問題を異なる等号制約条件(PAQ)y=Pb,不等号制約条件y
≧0,目的関数f(Qy)を持つ別の最適化問題に変換する問
題変換部19、(5)変換後の最適化問題をネットワーク8を
通じてサーバに送信する問題出力部20、(6)変換後の問
題に対する解yをネットワーク8を通じてサーバから受け
取る解入力部21、(7)解yに対して、上記(3)のステップ
で生成される行列Qを用いて逆変換x=Qyを行い、元の問
題に対する解xを求める逆変換部22、(8)逆変換後の解x
を出力する解出力部23、から構成される。なお、PAQはP
とAとQの乗算を示し、QyはQとyの乗算を示す。
【0013】サーバ計算機システム24は、(9)変換後の
最適化問題をネットワーク8を通じてクライアントから
受け取る問題入力部25、(10)この問題に対する解を求め
る求解部26、(11)求めた解をネットワーク8を通じてク
ライアントに送信する解出力部27から構成される。
【0014】本実施例におけるクライアント側の処理を
図7に、サーバ側の処理を図8に示す。クライアント
は、まずユーザから最適化問題の入力を受け付け、入力
された問題サイズn,m,係数行列A,右辺ベクトルb,目
的関数f(x)を問題入力部に格納する(処理29)。次に、
クライアントはユーザから暗号鍵の入力を受け付け、こ
れを暗号入力部に格納する(処理30)。次に変換行列生
成部において、この暗号鍵を用いてm行m列の正則行列P
およびn行n列の置換行列Qを生成する(処理31)。行列P
およびQの生成方法の詳細は後に述べる。次に問題変換
部において、置換行列Qによる解の線型変換y=Q-1x、お
よび正則行列Pを等号制約条件Ax=bの両辺に掛ける変換
を行い、与えられた問題を、異なる等号制約条件Dy=e、
不等号制約条件y≧0、目的関数g(y)を持つ同値な最適化
問題に変換する(処理32)。なお、以上の説明より、行
列D,ベクトルe,関数gは、それぞれ計算式D=PAQ,e=P
b,g(y)=f(Qy)により与えられることが明らかである。
次にクライアントは、変換した問題を問題出力部に格納
し、ネットワークを通じてサーバに送信する(処理3
3)。なお、クライアントがサーバに送信するのは変換
後の問題のみであり、変換に使った暗号鍵、および行列
P,Qは送信しない。
【0015】次にサーバは、ネットワークを通じてクラ
イアントから変換後の最適化問題を受け取り(処理3
9)、それを問題入力部に格納し、求解部においてその
解yを求める(処理40)。ここで解を求めるのに用いる
方法は、最適化問題の種類に応じて、既存の任意の解法
を用いればよい。たとえば線形計画問題の場合は単体
法、二次計画問題の場合は逐次二次計画法などが利用で
きる。これらの解法の詳細については、たとえば今野
浩、山下浩著:「非線形計画法」、日科技連出版社、19
87.を参照。解yを求めた後、サーバはこれを解出力部に
格納し、ネットワークを通じてクライアントに送信する
(処理41)。
【0016】次にクライアントは、ネットワークを通じ
てクライアントから変換後の最適化問題の解yを受け取
り、解入力部に格納する(処理34)。次に逆変換部にお
いて、上記の行列Qを用いてこの解に対して逆変換x=Qy
を行い、元の問題に対する解xを求めて解出力部に格納
する(処理35)。なお、ここで用いる行列Qは、最適化
問題の変換時に作成した行列を取っておいて用いてもよ
いし、暗号鍵をもう一度ユーザに入力させ、それを用い
て変換行列生成部においてもう一度生成してもよい。最
後にクライアントは、元の問題の解xを解出力部より出
力し(処理36)、処理を終了する。
【0017】以上の処理のうち、暗号鍵よりm行m列の正
則行列Pおよびn行n列の置換行列Qを生成する変換行列生
成部の処理の一例を図9に示す。変換行列生成部では、
第1のステップとして、元の問題の係数行列Aを縁付き
ブロック対角行列に変換するm行m列の左置換行列P1、n
行n列の右置換行列Q1を生成する(処理44)。ここで縁
付きブロック対角行列とは、行列を縦横に4個のブロッ
クに分割したとき、左上のブロックについては内部に複
数の対角ブロックが存在し、ゼロでない要素がこの複数
の対角ブロック内部にのみ存在するような行列である。
なお、左上以外のブロックについては、ゼロでない要素
はブロック中のどこにあってもよい。元の係数行列Aの
非ゼロ要素のパターンを図10に示す。57が係数行列、
58が非ゼロ要素を示す。また、Aに左からP1、右からQ1
を掛けて得られる縁付きブロック対角行列P1AQ1の非ゼ
ロ要素のパターンを図11に示す。60が左上のブロッ
ク、61が対角ブロックを示す。任意の行列は左置換行列
と右置換行列によって縁付きブロック対角行列に変形で
きることが知られており、具体的にはNested Dissectio
n法と呼ばれる方法を用いることにより、P1とQ1が計算
できる。これらの点に関する詳細は、たとえばK. A. Ga
llivan他著:”Parallel Algorithms for Matrix Compu
tation”, SIAM, 1990を参照されたい。
【0018】次に、第2のステップとして、暗号鍵を用
いて、各ブロックの中で左から線型変換を行う行列P2
よび右から置換を行う行列Q2を生成する。いま、暗号鍵
が6N個の乱数の列として与えられているとする。このと
き、まず第1の乱数を用いて行列P1AQ1の行を1つ選び
(処理46)、第2の乱数を用いてそれと同じ対角ブロッ
ク内にある別の行を1つ選ぶ(処理47)。選んだ第1の
行を第L1行、第2の行を第L2行とする。次に、第3と第
4の乱数r,sを用いて、m行m列の単位行列の第(L1
L2)成分にr、第(L2,L1)成分にsを加えた行列P1’を
生成する(処理48)。この行列P1’を行列P1AQ1に左か
ら掛けることは、行列P1AQ1の第L1行に第L2行のr倍を加
え、第L2行に第L1行のs倍を加えることと等価である。
次に、第5の乱数を用いて行列P1AQ1の列を1つ選び
(処理49)、第6の乱数を用いてそれと同じ対角ブロッ
ク内にある別の列を1つ選ぶ(処理50)。選んだ第1の
列を第R1列、第2の列を第R2列とするとき、n行n列の単
位行列の第(R1,R1)成分と第(R2,R2)成分とをゼロ
とし、第(R1,R2)成分と第(R2,R1)成分とを1とし
た行列Q1’を生成する(処理51)。この行列Q1’を行列
P1AQ1に右から掛けることは、行列P1AQ1の第R1列と第R2
列とを入れ替えることと等価である。このようにして、
暗号鍵の最初の6個の乱数を用いてP1’とQ1’とを生成
し、以後、暗号鍵中の乱数を順に用いて、同様にP2’,
Q2’,P3’,Q3’,… ,PN’,QN’を生成する(処理4
5)。これらを用いて、P2 = PN’…P2’P1’,Q2 =
Q1’Q2’…QN’により、行列P2と行列Q2とを生成する
(処理52、53)。
【0019】最後に、第3のステップとしてP = P2P1
Q = Q1Q2により、m行m列の正則行列Pおよびn行n列の置
換行列Qを生成する(処理54、55)。
【0020】ここで述べたPとQの生成法は、次のような
3つの利点を持つ。第1に、行列を縁付きブロック対角
形式に変換した後に、対角ブロックの内部のみで、ある
行に他の行の定数倍を加えたり、列を入れ替える処理を
行うため、対角ブロック以外のゼロ要素のブロックは、
この操作の影響を受けずにゼロ要素のブロックのままに
留まる。そのため、暗号化のための変換によって係数行
列の非ゼロ用素数が大幅に増えることはない。最適化問
題を解くための計算量は係数行列の非ゼロ要素が多いほ
ど増加するので、このことは暗号化によって最適化問題
を解くための演算量が大幅に増えることはないことを意
味する。第2に、対角ブロックの中では任意に変換が可
能であるため、変換の自由度は十分大きい。このこと
は、変換された問題から元の問題を推定するのが困難で
あることを意味し、このPとQの生成法を用いた暗号化が
十分な強度を持つことを保証する。第3に、係数行列の
変換は、ある行に他の行の定数倍を加える処理と列を入
れ替える処理という単純な処理の組み合わせによって行
われるため、変換のための計算量は十分小さい。そのた
め、暗号化を行うためのオーバーヘッドは十分小さい。
以上のべたような利点のため、本実施例では上記のよう
なPとQの生成法を採用したが、本発明では、Pがm行m列
の正則行列、Qがn行n列の置換行列という条件を満たし
さえすれば、他の生成法で作った行列であっても、変換
行列として利用することが可能である。以上で、本発明
の実施例を詳細に述べたが、本発明のメリットは大きく
分けて2つある。第1は、サーバ側は変換された問題の
みを受け取り、ユーザが入力した元の問題、あるいは元
の問題を復元するための暗号鍵、変換行列P,Qなどを受
け取らないという点である。したがって、サーバ側は元
の問題に対する情報を得ることができない。このため、
本発明の方式を利用すれば、サーバ側にも元の最適化問
題に関する情報を開示したくないような極めて機密性の
高い問題に関しても、求解の依頼が可能となる。また、
サーバの運営者に悪意を持つ者がいた場合、サーバに侵
入があった場合などにおいても、ユーザの問題に関する
情報が漏れることを防ぐことができる。第2のメリット
は、サーバに暗号鍵を渡す必要がないので、ネットワー
クを介して暗号鍵を送らなくて済むという点である。通
常、暗号鍵を送るに当たっては、別の公開鍵暗号によっ
てこれを暗号化するなどの方法を取り、安全性を高める
工夫を行うが、本発明ではこのような手間が不要の上、
公開鍵暗号が破られることによる安全性の低下も防ぐこ
とができる。
【0021】なお、本実施例ではクライアントが1台の
場合を例に取って述べたが、本発明は複数台のクライア
ントがネットワークを通じてサーバに接続されている場
合にも適用できることは明らかである。また、本実施例
では、クライアントとサーバとがネットワークを通じて
情報の送受信を行う場合を例に取ったが、本発明は、情
報がフロッピー(登録商標)ディスク、磁気テープなど
の記録媒体を通じてやり取りされる場合にも適用できる
ことは明らかである。また、本実施例では、最適化問題
の等号制約条件がAx=b、不等号制約条件がx≧0という形
をしている場合を例に取ったが、変数変換と式の同値変
形とを組み合わせて最適化問題を別の最適化問題に変換
するという本発明の原理は、より一般の等号制約条件g
(x)=0、不等号制約条件h(x)≧0を持つ最適化問題に対し
ても適用できる。また、本実施例では、最適化問題の解
を求める場合について説明したが、最適化問題以外の問
題の解を求める場合にも適用できる。例えば、連立1次
方程式の解を求める場合に適用できる。最後に、本実施
例では変換した問題をそのままネットワークを通じてク
ライアントからサーバに送信する場合を例に取ったが、
従来の暗号化技術を用い、本発明の方法で変換した問題
に対して更に暗号化を行ってから、それを暗号鍵と共に
サーバに送ることにより、ネットワーク上での情報の安
全性を更に高めることも可能である。
【0022】次に、本発明の第2の実施例を説明する。
本実施例は、求解装置(サーバ)が、本発明の方法によ
る暗号化の変換プログラムをユーザに提供し、このプロ
グラムを用いてユーザ(クライアント)に最適化問題を
別の問題に変換させてからそれを受け取り、それに対す
る解を求めてユーザに提供し、ユーザ側で解の復号化を
行わせることにより、求解装置側では暗号化前のユーザ
の最適化問題およびその解についての情報を得ることな
しに、求解を行う求解サービス処理方法である。本求解
サービス処理方法は、実施例1の図6と同じクライアン
ト、サーバ、ネットワークを備えたシステム上で実現さ
れる。本実施例におけるクライアントおよびサーバの処
理を図12に示す。クライアントは、まずサーバにサー
ビスの開始要求を出す(処理63)。サーバはこれを受け
取り(処理73)、本発明の方法による暗号化の変換プロ
グラムをクライアントに送信する(処理74)。クライア
ントはこの変換プログラムを受け取る(処理64)。次に
クライアントはユーザから最適化問題の入力を受け付け
(処理65)、暗号化変換のための暗号鍵の入力も受け付
ける(処理66)。その後、この暗号鍵を用いて、処理64
で入手した変換プログラムにより、入力された最適化問
題を同値な別の問題に変換する(処理67)。なお、この
変換の詳細は、第1の実施例に述べた通りである。こう
して変換した最適化問題をサーバに送信する(処理6
8)。サーバでは、変換後の最適化問題を受け取り(処
理75)、解を求めて(処理76)、それをクライアントに
送信する(処理77)。クライアントは解を受け取り(処
理69)、逆変換を行って元の問題の解を求め(処理7
0)、求めた解を出力する(処理71)。以上により、サ
ーバ側は、ユーザの入力した元の問題およびその解に関
する情報を得ることなく、最適化問題の求解サービスを
行うことが可能となる。なお、本実施例では、クライア
ントが最初にサーバにサービス開始要求を出し、これに
応えてサーバが暗号化用の変換プログラムを送信する
が、本サービスを2回目以降に利用する場合には、この
ステップはなくてもよい。また、クライアントは最初に
ユーザから最適化問題の入力を受け付け、その後にサー
バにサービス開始要求を出して変換プログラムを受け取
ってもよい。
【0023】次に、本発明の第3の実施例を説明する。
本実施例は、求解装置(サーバ)が、本発明の方法によ
る暗号化の変換プログラムを指定して第三者であるプロ
グラム提供者からユーザ(クライアント)に入手させ、
このプログラムを用いてユーザに最適化問題を別の問題
に変換させてからそれを受け取り、それに対する解を求
めてユーザに提供し、ユーザ側で解の復号化を行わせる
ことにより、求解装置側ではユーザの最適化問題および
その解についての情報を得ることなしに、求解を行う求
解サービス処理方法である。本求解サービス処理方法サ
ービスは、実施例1の図6と同じクライアント、サー
バ、ネットワーク、およびそれに加えて暗号化用の変換
プログラムを提供するプログラム提供者からなるシステ
ム上で実現される。本実施例におけるクライアント、サ
ーバ、およびプログラム提供者の処理を図13に示す。
クライアントは、まずサーバにサービスの開始要求を出
す(処理63)。サーバはこれを受け取り(処理73)、本
発明の方法による暗号化の変換プログラムの提供者をク
ライアントに紹介する(処理81)。クライアントはこの
紹介を受け(処理78)、プログラム提供者に対して、変
換用プログラムを送信するよう依頼する(処理79)。プ
ログラム提供者はこの依頼を受け(処理82)、プログラ
ムをクライアントに送信する(処理83)。クライアント
はこの変換プログラムを受け取る(処理80)。クライア
ントが変換用プログラムを入手した後のクライアントお
よびサーバの処理は、実施例2と全く同様である。本実
施例の場合でも、サーバ側は、ユーザの入力した元の問
題およびその解に関する情報を得ることなく、最適化問
題の求解サービスを行うことが可能となる。
【0024】なお、本実施例におけるサービス開始要求
のクライアントからサーバへの送信、プログラム提供者
のサーバからクライアントへの紹介などは、クライアン
トがサーバのホームページにアクセスすることを通じて
行ってもよい。この場合の画面例を図14に示す。この
例では、サーバのホームページ84に初めてのユーザ用の
入口85と登録済みのユーザ用の入口88が設けられてい
る。初めてのユーザは、まず入口85をクリックしてユー
ザ登録画面に飛び、そこでユーザ登録を行う。次に、再
び画面84画面い戻り、今度は暗号化の変換プログラム入
手のためのリンク86をクリックする。このリンクは変換
プログラム提供者のホームページに接続されており、ユ
ーザはそこから変換プログラムを入手できる。以後の処
理は、実施例2の場合と同様である。一方、既にこのサ
ービスを利用し、変換プログラムを入手済みのユーザ
は、登録済みのユーザ用の入口88をクリックして直接サ
ービスメニューに飛べばよい。なお、ホームページ上に
は暗号化プログラムの説明へのリンク87を設け、その先
で本発明による暗号化の仕組みと利点について説明して
もよい。また、本例では初めてのユーザ用の入口、変換
プログラム入手のためのリンク、登録済みのユーザ用の
入口が1つのページに載っているが、これらは複数のペ
ージに分散配置されていてもよい。
【0025】
【発明の効果】以上述べたように、本発明では、サーバ
側は変換された問題のみを受け取り、元の問題に対する
情報を得ることができないため、サーバ側に元の最適化
問題に関する情報を開示したくないような極めて機密性
の高い問題に関しても、求解の依頼が可能となる。ま
た、サーバの運営者に悪意を持つ者がいた場合、サーバ
に侵入があった場合などにおいても、ユーザの問題に関
する情報が漏れることを防ぐことができる。また、ネッ
トワークを介して暗号鍵を送らなくて済むため、暗号鍵
を送るに当たって別の公開鍵暗号によってこれを暗号化
するなどの手間が不要であり、公開鍵暗号が破られるこ
とによる安全性の低下も防ぐことができる。
【図面の簡単な説明】
【図1】本発明の機密保持方法の概要を説明するための
図である。
【図2】ランダムな順でのトラックの配送経路を示す図
である。
【図3】最適なトラックの配送経路を示す図である。
【図4】財務指標の空間と倒産・非倒産企業の判別平面
を示す図である。
【図5】従来の技術を用いた機密保持方法を示す図であ
る。
【図6】本発明の実施例を実行すべき計算機システムの
例を示す図である。
【図7】本実施例におけるクライアントの処理のフロー
チャートを示す図である。
【図8】本実施例におけるサーバの処理のフローチャー
トを示す図である。
【図9】変換行列生成部の処理の一例のフローチャート
を示す図である。
【図10】係数行列Aの非ゼロ要素のパターンの例を示
す図である。
【図11】縁付きブロック対角行列P1AQ1の非ゼロ要素
のパターンの例を示す図である。
【図12】第2の実施例におけるクライアントおよびサ
ーバの処理のフローチャートを示す図である。
【図13】第3の実施例におけるクライアント、サー
バ、およびプログラム提供者の処理のフローチャートを
示す図である。
【図14】プログラム提供者のホームページの画面例を
示す図である。
【符号の説明】
1 配送地点 2 配送経路 3 非倒産企業 4 倒産企業 5 判別超平面 6 顧客の計算機システム 7 ASPの計算機システム 8 ネットワーク 9 解くべき問題 10 暗号鍵 11 ビット列 12 解 13 クライアント計算機システム 14 入力装置 15 出力装置 16 問題入力部 17 暗号入力部 18 変換行列生成部 19 問題変換部 20 問題出力部 21 解入力部 22 逆変換部 23 解出力部 24 サーバ計算機システム 25 問題入力部 26 求解部 27 解出力部 57 係数行列A 58 非ゼロ要素 59 縁付きブロック対角行列P1AQ1 60 左上のブロック 61 対角ブロック
───────────────────────────────────────────────────── フロントページの続き (72)発明者 伊藤 智 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 Fターム(参考) 5B056 BB00 5B085 AA08 AE00 AE09 5J104 AA01 JA04 NA02 PA07

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 入力された問題に対する解を要求する解
    要求装置から求解装置に問題を送り、該求解装置で問題
    の解を求め前記解要求装置に送り、該解要求装置で解を
    出力する問題の解取得方法であって、 前記解要求装置は、入力された問題を暗号鍵により暗号
    化し、該暗号化した問題を前記求解装置に送り、 該求解装置は、送られた暗号化した問題を暗号化したま
    まの状態で解いて解を求め、該求めた解を前記解要求装
    置に送り、 該解要求装置は、送られた解を前記暗号鍵により復号化
    し、復号化した解を出力することを特徴とする問題の解
    取得方法。
  2. 【請求項2】 入力された最適化問題に対する解を要求
    する解要求装置から求解装置に問題を送り、該求解装置
    で最適化問題の解を求め前記解要求装置に送り、該解要
    求装置で解を出力する最適化問題の解取得方法であっ
    て、 前記解要求装置は、適当に定めた変数変換y=u(x)および
    式の同値変形によって、該最適化問題を異なる等号制約
    条件g’(y)=0,不等号制約条件h’(y)≧0,目的関数f’
    (y)を持つ別の最適化問題に変換し、該変換した最適化
    問題を前記求解装置に送り、 該求解装置は、送られた変換した最適化問題を解いて解
    yを求め、該求めた解yを前記解要求装置に送り、 該解要求装置は、送られた解yに対して、変数の逆変換x
    =u-1(y)を行って元の最適化問題に対する解xを求め、該
    解xを出力することを特徴とする最適化問題の解取得方
    法。
  3. 【請求項3】 請求項2記載の最適化問題の解取得方法
    において、 前記最適化問題の等号制約条件がm行n列の係数行列Aお
    よびm次元右辺ベクトルbによってAx=bと表現されている
    場合に、 前記変数変換として、n行n列の置換行列Qによる線形変
    換y=Q-1xを用い、 前記式の同値変形として、m行m列の正則行列Pを該等号
    制約条件Ax=bの両辺に掛ける処理を用い、 前記変数の逆変換として、線形変換x=Qyを用いることを
    特徴とする最適化問題の解取得方法。
  4. 【請求項4】 請求項3記載の最適化問題の解取得方法
    において、 前記係数行列Aを縁付きブロック対角形式に変換するm行
    m列の左置換行列をP1、n行n列の右置換行列をQ1とし、 該P1,Q1を前記係数行列Aに作用させて得られる縁付き
    ブロック対角行列P1AQ1において、各対角ブロック内部
    の行の間でのみ線形変換を行う行列をP2、および各ブロ
    ック内部の列の間でのみ置換を行う行列をQ2とすると
    き、前記正則行列Pとして行列P2P1を用い、置換行列Qと
    して行列Q1Q2を用いることを特徴とする最適化問題の解
    取得方法。
  5. 【請求項5】 ユーザからの最適化問題の求解要求を受
    け付ける少なくとも1台のクライアント計算機システム
    と、与えられた最適化問題に対する解を求めるサーバ計
    算機システムと、該各クライアント計算機システムを該
    サーバ計算機システムに接続するネットワークとを備え
    る最適化問題の求解システムであって、 前記クライアント計算機システムは、 m行n列の係数行列Aとm次元右辺ベクトルbにより定義さ
    れる等号制約条件Ax=b,不等号制約条件x≧0,最小化す
    べき目的関数f(x)によって表現された最適化問題の入力
    を受け付ける問題入力部と 暗号鍵を受け付ける暗号入力部と、 前記暗号入力部から入力された暗号鍵を用いてm行m列の
    正則行列Pおよびn行n列の置換行列Qを生成する変換行列
    生成部と、 該正則行列Pおよび該置換行列Qを用いて、前記最適化問
    題を異なる等号制約条件(PAQ)y=Pb,不等号制約条件y≧
    0,目的関数f(Qy)を持つ別の最適化問題に変換する問題
    変換部と、 変換した最適化問題を前記ネットワークを介して前記サ
    ーバ計算機システムに送る問題出力部と、 該サーバ計算機システムから受け取った変換後の最適化
    問題に対する解yに対して逆変換x=Qyを行い、元の問題
    に対する解xを求める逆変換部を有することを特徴とす
    る最適化問題の求解システム。
  6. 【請求項6】 少なくとも1台のクライアント装置と、
    最適化問題に対する解を求めるサーバ装置を有するシス
    テムにおける求解サービス処理方法であって、 前記クライアント装置からのサービス開始要求に応じて
    前記サーバ装置は、 (1)m行n列の係数行列Aとm次元右辺ベクトルbにより定義
    される等号制約条件Ax=b,不等号制約条件x≧0,最小化
    すべき目的関数f(x)によって表現された最適化問題の入
    力をユーザから受け付ける問題入力機能と、 (2)ユーザからの暗号鍵を受け付ける暗号入力機能と、 (3)上記暗号入力機能により入力された暗号鍵を用いてm
    行m列の正則行列Pおよびn行n列の置換行列Qを生成する
    変換行列生成機能と、 (4)該正則行列Pおよび該置換行列Qを用いて、該最適化
    問題を異なる等号制約条件(PAQ)y=Pb,不等号制約条件y
    ≧0,目的関数f(Qy)を持つ別の最適化問題に変換する問
    題変換機能と、 (5)変換後の最適化問題を外部装置に送信するために出
    力する問題出力機能と、 (6)変換した問題に対する解yを外部装置から受け取るた
    めの解入力機能と、 (7)解yに対して、上記(3)のステップで生成される行列Q
    を用いて逆変換x=Qyを行い、元の問題に対する解xを求
    める逆変換機能と、 (8)逆変換後の解xを出力する解出力機能とをコンピュー
    タに実現させるプログラムを前記クライアント装置に送
    信し、 前記プログラムを受信したクライアント装置は、受信し
    たプログラムの前記(1),(2),(3),(4),(5)の機能を
    実現して最適化問題を別の問題に変換して前記サーバ装
    置に送信し、 該サーバ装置は該受信した別の問題の解yを求め、該解y
    を前記クライアント装置に送信し、 該クライアント装置は、前記プログラムの前記(6),
    (7),(8)の機能を実現して元の最適化問題の解xを得る
    ことを特徴とする求解サービス処理方法。
  7. 【請求項7】 少なくとも1台のクライアント装置と、
    最適化問題に対する解を求めるサーバ装置と、プログラ
    ム提供装置を有するシステムにおける求解サービス処理
    方法であって、 前記クライアント装置からのサービス開始要求に応じて
    前記サーバ装置は、プログラム提供装置を該クライアン
    ト装置に紹介し、 該クライアント装置は該プログラム提供装置にプログラ
    ムを要求し、 該プログラム提供装置は、 (1)m行n列の係数行列Aとm次元右辺ベクトルbにより定義
    される等号制約条件Ax=b,不等号制約条件x≧0,最小化
    すべき目的関数f(x)によって表現された最適化問題の入
    力をユーザから受け付ける問題入力機能と、 (2)ユーザからの暗号鍵を受け付ける暗号入力機能と、 (3)上記暗号入力機能により入力された暗号鍵を用いてm
    行m列の正則行列Pおよびn行n列の置換行列Qを生成する
    変換行列生成機能と、 (4)該正則行列Pおよび該置換行列Qを用いて、該最適化
    問題を異なる等号制約条件(PAQ)y=Pb,不等号制約条件y
    ≧0,目的関数f(Qy)を持つ別の最適化問題に変換する問
    題変換機能と、 (5)変換後の最適化問題を外部装置に送信するために出
    力する問題出力機能と、 (6)変換した問題に対する解yを外部装置から受け取るた
    めの解入力機能と、 (7)解yに対して、上記(3)のステップで生成される行列Q
    を用いて逆変換x=Qyを行い、元の問題に対する解xを求
    める逆変換機能と、 (8)逆変換後の解xを出力する解出力機能とをコンピュー
    タに実現させるプログラムを前記クライアント装置に送
    信し、 前記プログラムを受信したクライアント装置は、受信し
    たプログラムの前記(1),(2),(3),(4),(5)の機能を
    実現して最適化問題を別の問題に変換して前記サーバ装
    置に送信し、 該サーバ装置は該受信した別の問題の解yを求め、該解y
    を前記クライアント装置に送信し、 該クライアント装置は、前記プログラムの前記(6),
    (7),(8)の機能を実現して元の最適化問題の解xを得る
    ことを特徴とする求解サービス処理方法。
  8. 【請求項8】 コンピュータに、 m行n列の係数行列Aとm次元右辺ベクトルbにより定義さ
    れる等号制約条件Ax=b,不等号制約条件x≧0,最小化す
    べき目的関数f(x)によって表現された最適化問題の入力
    を受け付ける問題入力機能と、 暗号鍵を受け付ける暗号入力機能と、 上記暗号入力部から入力された暗号鍵を用いてm行m列の
    正則行列Pおよびn行n列の置換行列Qを生成する変換行列
    生成機能と、 該正則行列Pおよび該置換行列Qを用いて、該最適化問題
    を異なる等号制約条件(PAQ)y=Pb,不等号制約条件y≧
    0,目的関数f(Qy)を持つ別の最適化問題に変換する問題
    変換機能と、 変換後の最適化問題を出力する問題出力機能と、 変換した問題に対する解yを受け取る解入力機能と、 解yに対して、上記(3)のステップで生成される行列Qを
    用いて逆変換x=Qyを行い、元の問題に対する解xを求め
    る逆変換機能と、 逆変換後の解xを出力する解出力機能とを実現させるプ
    ログラム。
JP2001125279A 2001-04-24 2001-04-24 問題の解取得方法および最適化問題の解取得方法 Pending JP2002318536A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001125279A JP2002318536A (ja) 2001-04-24 2001-04-24 問題の解取得方法および最適化問題の解取得方法
US09/918,642 US7137010B2 (en) 2001-04-24 2001-08-01 Method for obtaining a solution of an optimization problem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001125279A JP2002318536A (ja) 2001-04-24 2001-04-24 問題の解取得方法および最適化問題の解取得方法

Publications (1)

Publication Number Publication Date
JP2002318536A true JP2002318536A (ja) 2002-10-31

Family

ID=18974525

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001125279A Pending JP2002318536A (ja) 2001-04-24 2001-04-24 問題の解取得方法および最適化問題の解取得方法

Country Status (2)

Country Link
US (1) US7137010B2 (ja)
JP (1) JP2002318536A (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7801301B2 (en) * 2001-10-10 2010-09-21 Stmicroelectronics S.R.L. Method and circuit for data encryption/decryption
US7676404B2 (en) * 2002-10-15 2010-03-09 Rmr Associates Llc Method for forecasting consumption and generating optimal delivery schedules for vehicles involved in delivering propane and other consumables to end consumers
JP2008067308A (ja) * 2006-09-11 2008-03-21 Fuji Xerox Co Ltd 色処理装置、色処理方法およびプログラム
US8209424B2 (en) 2006-12-20 2012-06-26 United Video Properties, Inc. Systems and methods for providing remote access to interactive media guidance applications
US8577825B2 (en) * 2008-01-29 2013-11-05 Clayton Gillespie System, method and device for solving problems in NP without hyper-polynomial cost
US8700689B2 (en) 2009-06-17 2014-04-15 D-Wave Systems Inc. Systems and methods for solving computational problems
US10528868B2 (en) 2010-06-25 2020-01-07 Clayton Gillespie Solving NP-complete problems without hyper polynomial cost
US20150100365A1 (en) * 2013-10-07 2015-04-09 Elemica, Inc. Constraint optimization method and system for supply chain management

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3543395B2 (ja) * 1994-11-17 2004-07-14 株式会社日立製作所 サービス提供および利用方法
US5963731A (en) 1995-12-25 1999-10-05 Hitachi, Ltd. Method of assisting execution of plural simulation programs for coupled simulation
US6996236B1 (en) * 1999-10-20 2006-02-07 Microsoft Corporation Methods and apparatus for protecting signals transmitted between a source and destination device over multiple signal lines

Also Published As

Publication number Publication date
US7137010B2 (en) 2006-11-14
US20020157009A1 (en) 2002-10-24

Similar Documents

Publication Publication Date Title
US11374736B2 (en) System and method for homomorphic encryption
US9971906B2 (en) Apparatus and method for continuous data protection in a distributed computing network
EP3075098B1 (en) Server-aided private set intersection (psi) with data transfer
Abid et al. RETRACTED ARTICLE: An optimised homomorphic CRT-RSA algorithm for secure and efficient communication
Banegas et al. Low-communication parallel quantum multi-target preimage search
Yang et al. Publicly verifiable data transfer and deletion scheme for cloud storage
WO2022035909A1 (en) Methods for somewhat homomorphic encryption and key updates based on geometric algebra for distributed ledger technology
JP2023512725A (ja) パターンの安全な照合および識別
Niu et al. A third-party E-payment protocol based on quantum multi-proxy blind signature
Corena et al. Secure and fast aggregation of financial data in cloud-based expense tracking applications
Debnath et al. Feasible private set intersection in quantum domain
Mont et al. The HP time vault service: exploiting IBE for timed release of confidential information
Raghuvanshi et al. A data encryption model based on intertwining logistic map
Zhang et al. Three-party quantum private computation of cardinalities of set intersection and union based on GHZ states
JP2002318536A (ja) 問題の解取得方法および最適化問題の解取得方法
Shahariar et al. A Secure Land Record Management System using Blockchain Technology
Lizama-Perez Digital signatures over hash-entangled chains
Awasthi et al. A protected cloud computation algorithm using homomorphic encryption for preserving data integrity
Roehsner et al. Probabilistic one-time programs using quantum entanglement
Cai et al. Quantum attacks on two-round even-mansour
Banaeian Far et al. BB-CSP: an efficient blockchain-based collective salary payment framework using weighted functional encryption
Malgari et al. A novel data security framework in distributed cloud computing
Zhang A unified image cryptography based on a perceptron-like network
US11374753B2 (en) System and method for selective transparency for public ledgers
Wu et al. A complete classification of quantum public-key encryption protocols

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040318

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090725

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090915