450 likes | 552 Views
計算の高速化と近似精度保証. はじめに 計算,定式化 計算法 近似計算 おわりに. はじめに コンピューター = 計算機?. 通信 メール ウェブ,情報検索 チャット AV機器 ホームビデオの編集 テレビ番組の録画 音楽の再生. コンピューター. ゲーム アクションゲーム 囲碁,将棋,チェスなど ネットワーク対戦ゲーム 事務処理 書類作成 会計処理. コンピューター = 計算機!. 数値計算,シミュレーション 設計,問題解決,意思決定. 研究内容の紹介. 最適化問題の解法の考案 プログラムの高速化・省メモリ化 近似計算の精度の改善.
E N D
計算の高速化と近似精度保証 • はじめに • 計算,定式化 • 計算法 • 近似計算 • おわりに
はじめにコンピューター = 計算機? • 通信 • メール • ウェブ,情報検索 • チャット • AV機器 • ホームビデオの編集 • テレビ番組の録画 • 音楽の再生
コンピューター • ゲーム • アクションゲーム • 囲碁,将棋,チェスなど • ネットワーク対戦ゲーム • 事務処理 • 書類作成 • 会計処理
コンピューター = 計算機! • 数値計算,シミュレーション • 設計,問題解決,意思決定
研究内容の紹介 • 最適化問題の解法の考案 • プログラムの高速化・省メモリ化 • 近似計算の精度の改善
本講座の主題との関係 • 『快適で安心な社会』へ向けて • 快適:計算機システムのパフォーマンス改善 • 安心:設計ミスの防止 • 研究内容は理論的 • 具体的応用はない? • 新技術開発の支援! • 『計算機数学』 ?
計算の高速化と近似精度保証 • はじめに • 計算,定式化 • 計算法 • 近似計算 • おわりに
計算 : 式の答を求めること • 足し算,引き算,掛け算,割り算 • 指数・対数,三角関数,ベクトル,行列 • フーリエ変換,ラプラス変換,...
『式を立てる』ということ • りんご2個とみかん1個,合わせていくつ? • テレビを2時間見て,1時間昼寝しました.何時間経ちましたか? 2+1=?
式を立てるためには • 式は抽象的で,元の情報を持たない • 的確に表現する必要がある • (例)三宮から地下鉄と新幹線を乗り継いで名古屋に行きます.13時丁度に出発したらいつ着きますか?乗車時間は,地下鉄は2分,新幹線は68分です. 待ち時間,乗り換え時間の情報が必要!
『正しい式』の重要さ • 式の違いは,計算結果を大きく左右する • (例)スペースシャトルの事故確率 • 事故前:10万分の1 • 事故後:50分の1 予算を獲得するために少なく見積もった数値を使った計算 実際に起こった事故の回数から統計的に導かれた計算
ちょっと高度な計算 • 方程式・・・連立方程式,2次方程式,・・・ • 解き方に従って計算をすれば解が求まる • 解き方を知らないと計算ができない
最適化問題・・・本日のテーマ • 定式化 • 状況から目的関数と制約条件を定める • 計算 • 条件に合うものの中で一番良いものを求める • 答が合ってるかどうか? • 数式,方程式なら検算できる
最適化問題の定式化の例 • うなぎが食べたい • 制約条件:三宮駅周辺 • 目的関数:安くて美味しい • 解 : うなぎ屋 • いろんな点が曖昧
定式化の例 • 目的関数は○○出版『うまい屋ガイド』の評価(1~5点)を,うな重定食の値段で割って1000倍した値とする. • 阪急三宮駅東口から距離300mを超える店については50mにつき0.1ポイント減点する. • 600m以上離れた店,本に載ってない店は対象外 曖昧さがかなり解消された
最適化問題の例 • できるだけ好きなものを食べたい. • メタボ対策のため,カロリーを控え,ビタミンやミネラルを適量摂る
最適化問題の例 • 各料理について,カロリー,ビタミン,ミネラルを計算する • ビタミン等の不足分については副菜で補うとする • 各料理の満足度を決める 線形計画法という有名問題
計算とは? • (数式)式の値を計算すること • (方程式)公式などを使って解を得ること • (最適化問題)定式化された問題の解を得ること
計算は簡単? • 数値計算は誰がやっても大差ない(許容誤差の設定で多少変わる) • 方程式についても同様 • 最適化問題は許容誤差の設定が必要 • 誤差の設定によっては解けないことがある! • 原理的は解けても,何億年も待てない • 計算時間と近似精度のトレードオフ
計算の高速化と近似精度保証 • はじめに • 計算,定式化 • 計算法 • 近似計算 • おわりに
コンピューターで計算する • 計算をするプログラムを与える • プログラムは命令の集まり • 命令:非常に単純な処理を行う • 命令を組み合わせて複雑な処理を実現
最適化問題に対する良い計算法 • プログラムの出力(解)が • 常に制約条件を満たす(満たす確率が高い) • 評価値が最適解に近い • 計算時間が短い • 平均的に速い • 苦手な入力パターンがない
常に最適解を出す計算法(1) • しらみつぶし法 • 制約条件を満たす可能性を全て試す • 制約を満たすもののうち,評価値(目的関数の値)が一番良かったものを取り出す • 間違いなく一番良い解が出力される • 問題の規模が大きくなるとすぐ破綻する • 計算時間が指数関数的に増大する
常に最適解を出す計算法(2) • 分枝限定法 • 考えられる可能性をいくつかのグループに分け,各々の中で一番良いものを探す • 途中で最適解が得られる見込みがなくなればそのグループを捨てる • 捨てるグループのサイズが大きければ手間を大幅に削減できる • 捨てて良いかどうか判断する計算に工夫が必要
最適解を求めることの限界 • 最適解を得ることが難しいとされている問題は無数に存在する • 難しい問題のカタログのような本がある(約500ページ) • その本で扱われている問題はごく一部
難しい問題の例(1) • (製造)配線長最小化,配線面積最小化 • 回路の性能,コスト
難しい問題の例(2) • (輸送)最適配送路の決定 • 輸送コスト
難しい問題の例(3) • (通信)無線通信の周波数割り当て • 電波の干渉を防ぐ • 少ない帯域数での通信
難しい問題の例(4) • (金融)最適なポートフォリオ選択 • 目標とする利益を設定 • リスク最小化
最適解を求めることの限界 • 最適解を得ることが難しいとされている問題は無数に存在する • 難しい問題のカタログのような本がある(約500ページ) • その本で扱われている問題はごく一部
計算の高速化と近似精度保証 • はじめに • 計算,定式化 • 計算法 • 近似計算 • おわりに
近似計算 • 最適解が求めるのが困難な最適化問題 • 多くの分野に,数多く現れる • 最適解を諦めれば幸せ? • 変な解は使えない • 許容誤差を定める • 許容範囲内なら許す
近似解法・近似精度 • 近似解法 • 発生する誤差の大きさ(最大値)が予め分かっている • 近似精度 • 最適解と出力解の比率で表現する • 近似精度が1=誤差なし • 近似精度が1に近いほど良い
近似可能性 • 問題によっては,近似解ならば簡単に求まるものもあれば,近似解を求めることさえ非常に困難なものもある • PTAS • 希望する近似率の解が得られる • APX • ある近似率の近似解は簡単に求まる • それよりも良い近似解を得ることは困難
PTASを持つ問題の例 • ナップサック問題 • ナップサックに荷物を詰める • 持っていきたいものが多数あって,全ては入りきらない • 一つ一つのものの大きさ,重要さは違う • 大きさ当たりの価値が高いものから順にナップサックに詰めるのは? • 下手をすると大損をする • 上手な詰め込み方(計算法)が存在する
APXという性質を持つ問題 • k-center 問題 • 消防署の場所は,極端に偏らず,どの家にも最寄りの消防署があることが望ましい • 近似精度が2であるような高速な計算法は存在する • 近似精度が1.99999であるような高速な計算法は存在しないと予想されている • 証明できれば100万ドルもらえます!
近似解を求めることさえ困難な最適化問題 • 整数計画問題 • 制約条件:一次不等式 • 目的関数:一次式 • 整数計画問題の近似解を計算する方法は,他の多くの問題に用いることができる
近似精度を保証しない計算法 • シミュレーションを行った場合に良い結果が出る(理論的保証はない) • 困難な問題に対する多数の論文はこのタイプ • 信頼できるのか? • 単に証明されていないだけで良い計算法 • 苦手な入力が存在するが実際には起こらない • (著者にとって)都合の良い例しか試していない
改善型の計算法 • 適当な『初期解』を作る • 制限時間内に可能な限り改善を試みる • 実用的なものが多い
局所探索法 • 暫定解をちょっとだけ改良する • (イメージ)いい匂いのする方に向かっていけばいつかはごちそうにたどり着ける • 罠に捕まることがある
タブー探索法 • 解の変形を行う.改良される場合は改良し,改良されない場合は『できるだけ過去に試したことのないような』改良をする. • (イメージ)宝探しをするとき,一度探した場所は二度探さないようにする. • 罠から脱出する能力を持つ
遺伝的アルゴリズム • 解の世界での弱肉強食 • ダーウィンの進化論に基づく方法 • 二つの良さそうな解からいいとこ取りをしてさらに良い解を作る • 実用性が非常に高く,多くの場所で用いられている
計算の高速化と近似精度保証 • はじめに • 計算,定式化 • 計算法 • 近似計算 • おわりに
難しい問題とビジネス • 最適化ソフト • 整数計画問題を解くソフトなどを販売 • 数十万円~数百万円 • ベル研究所:線形計画法の解法ソフト: 890万ドル • 米国国防省(湾岸戦争時),デルタ航空 • 暗号
最新の動向 • 非常に多くの問題に対して論文がある • 近似解法 • 近似精度の限界 • 目的に応じて適切な計算法を選べばよい • 多くの人は,計算法を調べる術を持たない 研究者に相談して下さい. 研究者をこき使って下さい.