計算機科学と計算幾何学 草苅 良至 12 月学科会議. 計算機‐科学について 「計算」について考える学問 機械的な操作で行えること。 処理。 理想的なコンピュータ(=計算機モデル) での基本動作の組み合わせ。 計算機科学とは 英語だと、 Computer Sience です。

Slides:



Advertisements
Similar presentations
授業展開#12 コンピュータの扱いにくい問 題. 扱いにくい問題  処理時間がかかる。  メモリを大量に必要とする。  プログラムの優劣、アルゴリズムの優劣 を比較するためには、標準的なコン ピュータで比較する必要がある。  処理時間を計るのに、コンピュータのモ デルとして、チューリングマシンを考え、
Advertisements

逐次ソート 2011/05/16. ソート(sort) 順序集合の要素a 1 … a n の上下関係を整 える 一般的には、整数の集合 N を考えればよ い ソートの計算量が問題となる どのような入力に対し、どのようなアル ゴリズムが最適か?
2016 年度 計量経済学 講義内容 担当者: 河田 正樹
Ibaraki Univ. Dept of Electrical & Electronic Eng. Keiichi MIYAJIMA
区間グラフにおける区間表現からMPQ-treeを効率よく構成するアルゴリズム
キャッシュ付PRAM上の 並列クィックソートと 並列マージソート
ラベル付き区間グラフを列挙するBDDとその応用
ソフトウェア工学 2007年 5セメスタ.
    有限幾何学        第8回.
Princess, a Strategiest
データ構造と アルゴリズム 理工学部 情報システム工学科 新田直也.
5.チューリングマシンと計算.
スペクトル法による数値計算の原理 -一次元線形・非線形移流問題の場合-
5.チューリングマシンと計算.
Permutationグラフと Distance-Hereditaryグラフの 再構築アルゴリズム
授業展開#11 コンピュータは 何ができるか、できないか.
データ構造と アルゴリズム 第二回 知能情報学部 新田直也.
身近にある曲線や曲面の数理的構造に興味を持ったら,
情報科学科 ネットワークシステムコース 西関研究室.
9.NP完全問題とNP困難問題.
データ構造と アルゴリズム 知能情報学部 新田直也.
岩井 儀雄 コンピュータ基礎演習  ー探索、整列ー 岩井 儀雄
データ構造とアルゴリズム 第6回の2 木 ~ データ構造(3)~.
非線形方程式の近似解 (2分法,はさみうち法,Newton-Raphson法)
(ラプラス変換の復習) 教科書には相当する章はない
シミュレーション演習 G. 総合演習 (Mathematica演習) システム創成情報工学科
7.時間限定チューリングマシンと   クラスP.
プログラミング基礎a 第8回 プログラムの設計 アルゴリズムとデータ構造
二分探索木によるサーチ.
チューリング機械 状態の有限集合 ヘッドの方向を表す。 L:1コマ左へ R:1コマ右へ テープ記号の有限集合 入力記号の有限集合 動作関数
7-3.高度な木 (平衡木) AVL木 平衡2分木。回転操作に基づくバランス回復機構により平衡を保つ。 B木
アルゴリズムとチューリングマシン 「もの」(商品)としてのコンピュータ 「こと」(思想)としてのコンピュータ アルゴリズム
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
Hough変換 投票と多数決原理に基づく図形の検出
あらまし アンサンブル学習の大きな特徴として,多数決などで生徒を組み合わせることにより,単一の生徒では表現できない入出力関係を実現できることがあげられる.その意味で,教師が生徒のモデル空間内にない場合のアンサンブル学習の解析は非常に興味深い.そこで本研究では,教師がコミティマシンであり生徒が単純パーセプトロンである場合のアンサンブル学習を統計力学的なオンライン学習の枠組みで議論する.メトロポリス法により汎化誤差を計算した結果,ヘブ学習ではすべての生徒は教師中間層の中央に漸近すること,パーセプトロン学習では
独立成分分析 5 アルゴリズムの安定性と効率 2007/10/24   名雪 勲.
情報とコンピュータ 静岡大学工学部 安藤和敏
6. ラプラス変換.
第7章 疎な解を持つカーネルマシン 修士2年 山川佳洋.
第3回 アルゴリズムと計算量 2019/2/24.
予測に用いる数学 2004/05/07 ide.
b f c a d e g h a b c d e f g 図1 図2 2012年度 有限幾何学 期末試験
計算の理論 II 言語とクラス 月曜4校時 大月美佳.
Data Clustering: A Review
連続領域におけるファジィ制約充足問題の 反復改善アルゴリズムによる解法 Solving by heuristic repair Algorithm of the Fuzzy Constraint Satisfaction Problems with Continuous Domains 北海道大学.
プログラミング基礎a 第8回 プログラムの設計 アルゴリズムとデータ構造
電機制御工学 定量的制御編 清弘 智昭.
生物情報ソフトウェア特論 (2)たたみ込みとハッシュに 基づくマッチング
「データ学習アルゴリズム」 第3章 複雑な学習モデル 報告者 佐々木 稔 2003年6月25日 3.1 関数近似モデル
ナップサック問題 クマさん人形をめぐる熱いドラマの結末.
第3章 線形回帰モデル 修士1年 山田 孝太郎.
B03 量子論理回路の 最適化に関する研究 西野哲朗,垂井淳,太田和夫,國廣昇 電気通信大学 情報通信工学科.
サポートベクターマシン Support Vector Machine SVM
補講:アルゴリズムと漸近的評価.
情報基礎Ⅱ (第1回) 月曜4限 担当:北川 晃.
回帰分析(Regression Analysis)
5.チューリングマシンと計算.
A02 計算理論的設計による知識抽出モデルに関する研究
情報工学概論 (アルゴリズムとデータ構造)
11.動的計画法と擬多項式時間アルゴリズム.
4.プッシュダウンオートマトンと 文脈自由文法の等価性
2008年6月5日 非線形方程式の近似解 2分法,はさみうち法,Newton-Raphson法)
BSPモデルを用いた 最小スパニング木 情報論理工学研究室 02-1-47-134 小林洋亮.
参考:大きい要素の処理.
情報数理Ⅱ 第10章 オートマトン 平成28年12月21日.
情報生命科学特別講義III (3)たたみ込みとハッシュに 基づくマッチング
3 一次関数 1章 一次関数とグラフ §4 方程式とグラフ         (3時間).
各種荷重を受ける 中空押出形成材の構造最適化
グラフの帯域幅連続多重彩色 を求めるアルゴリズム (Bandwidth Consective Multicolorings of Graphs) 西関研究室 西川和秀.
教師がコミティマシンの場合のアンサンブル学習 三好 誠司(神戸高専) 原 一之(都立高専) 岡田 真人(東大,理研,さきがけ)
Presentation transcript:

計算機科学と計算幾何学 草苅 良至 12 月学科会議

計算機‐科学について

「計算」について考える学問 機械的な操作で行えること。 処理。 理想的なコンピュータ(=計算機モデル) での基本動作の組み合わせ。 計算機科学とは 英語だと、 Computer Sience です。

計算機モデル 「計算」を考えるとき、 実行する機械毎の違いを考えたくない。 理想的な計算機(=計算機モデル)を考えます。 チューリング機械 RAM ( Random Access Machine) 有限状態 制御部 ヘッド 無限テープ チューリング機械 ・計算機モデル例 実は、これらのモデル間には能力の 差はない。 1930’ 年代 Church-Turing の提唱 λ 計算等

アルゴリズムと問題 「アルゴリズム」とは「問題」を解くために、 モデル上で「基本操作」(命令)を 有限個組み合わせてできる「計算」。 連立方程式を解く 色々な問題 データのソート。 素因数分解。 命令 四則演算 代入演算 比較演算 フーリエ変換。 組み合わせ方 アルゴリズム

問題の大きさ 同じ問題でも、 その大きさ毎に必要な演算数(総ステップ数、計算時間)は異なる。 n 変数の連立方程式 大きさも考えた問題 n 桁の足し算 n 個のデータに対する、ソート n 桁の数の素因数分解 通常入力サイズは、 n,m 等の文字で表します。 n 個のデータに対する、離散フーリエ 変換

アルゴリズムの評価 アルゴリズムは通常「問題」を解くためのものであり、 どんな大きさでも解けないといけない。 総ステップ数を、入力サイズ n の関数 T(n) で評価します。 (使用メモリ量を、入力サイズ n の関数 S(n) で 評価することもあります。)

関数の分類(オーダー記法) 対数(時間) 多項式(時間) 指数 ( 時間)

計算時間と関数 n 1000MIPS(1 秒間に 10 億回の演算可能)の コンピュータで考えてみましょう。 サイズ 関数 1秒1秒 20 秒 30 秒 40 秒 50 秒 1分1分 10 秒 1 分 40 秒 約1日 16 分 40 秒 約 2 時間 47 分 0 . 01 秒 1秒1秒 1 分 40 秒 約 2 時間 47 分 約 11.5 日 約 3.2 年 秒約 約 3 京世紀 甚大

関数の概形 漸近的評価がいいアルゴリズムは、 多量のデータを扱うときに力を発揮する。

計算機科学の目的 「問題」 解けるか? 計算不可能 計算可能 実用的に 解けるか? 指数時間 多項式時間 効率的に 解けるか? 対数時間 これら、一連の問いに答えるため学問。 さらに、例えば同じ でも、より係数を小さく することも目的になります。

計算‐「幾何学」について

計算幾何学とは、 図形・幾何情報を元に、いかに「計算」できるかを考える学問。 計算機科学の1分野。 計算機科学 計算幾何学 英語だと、 computational geometry.

計算幾何学の応用 CAD GUI VLSI のレイアウト設計 CG バーチャルリアリティ 多次元データ処理 地理情報処理 ロボティクス

計算幾何学の歴史 1978 年 I.Shamos の博士論文「 Computational Geometry 」 年から 幾何学が 3000 年以上の歴史を持っているのに対して、 高々20年強の歴史しかない。 (もっとも、計算機科学自体でも、 60 年ぐらいなのですが。)

「幾何学」と「計算幾何学」 幾何学では、(数学的)関係に主眼が置かれることが多かった。 これに対して計算幾何学は、『所望の値をどれくらいの「計算」で 求めれるか』まで考える。 a b c 幾何学 計算幾何学 直角を挟む2辺の 2乗和は、 斜辺の2乗に等しい。 斜辺は、 2回の乗算と、 1回の加算と、 1回の平方根で 求まる。

計算幾何学の代表的問題 凸包問題 幾何的探索問題 最も外側のデータを求める 最も近いデータを求める。

幾何アルゴリズム例 凸包問題 時間 簡単な方法: 1.全ての 2 点間に直線を引く。 2.各直線に対して、 全ての点が同じ側にあるか調べる。 時間 賢い方法:(略) 本 時間/本

扱う問題の複雑化 計算対象(点、線、面等)が、 低次元空間内に初めから固定されて動かない。 計算対象が、動く。 計算対象の個数が 増減する。 高次元の 計算対象を扱う。 折れ線図形の 連続変形問題

折れ線図形( Linkage )とは バー ジョイント バー : 節点間の線分 ジョイント : 各節点 折れ線図形:長さの変わらない線分が 各節点で接続している図形

折れ線図形の(平面)連続変形

折れ線図形で禁止されている連続変形 バーは接続しているジョイントから離れない。 バーの長さは変形中に変わらない。

平面変形で禁止されている動 き バーは、平面内だけを移動する。 変形中に、2つのバーは交差しない。

折れ線図形の平面連続変形問題 バーはジョイントから離れない。 バーの長さは変わらない。 図形は平面上だけで変形する。 変形中に、どの2本のバーも交差しない。 これらの条件を満たしながら、 初期配置から、望みの配置に連続変形できるか? 何回の動作で望みの配置にできるか? 実際の動作計画を求めるのに必要な計算量は?

応用 バーロボットアーム 動作計画 連続変形問題 建築物の剛性判断 ロボットアームの動作計画、動作解析 間接ジョイント 骨組み折れ線図形 剛性判断 連続変形問題

折れ線図形の連続変形問題 計算機科学 計算幾何学 グラフ理論 折れ線図形問題

平面連続変形の研究1(道状折れ線図 形) 道状の折れ線図形は、 同じバーの系列を持つどんな配置にも平面連続変形できる。 大工の経験則1 1970 年代から 1990 年代の未解決問題 道状の折れ線図形は、 どんな初期配置からでも直線状に平面連続変形できる。 大工の経験則 1 ’

全ての道状折れ線図形は、 平面連続変形で直線状にできる。 定理1 [Connelly et al. ’00]

平面連続変形の研究2(木状折れ線図 形) 木状の折れ線図形は、 どんな初期配置からでも “ 直線状 ” に平面連続変形できるか? 問題 2

平面連続変形では、 直線化できない木状折れ線図形が存在する。 定理2 [Biedl et al. ’98]

新たな問題 全ての木状の折れ線図形は、 平面連続変形で “ 直線状 ” にできるか? 問題 2 どのような木状の折れ線図形が、 平面連続変形で “ 直線状 ” にできるのか? 問題 3 単調な木であれば直線化できる。

単調な道と単調な木 (x方向に)単調な道 (x方向に)単調な木 r 根

単調でない道と単調でない木 (x方向に)単調でない道 (x方向に)単調でない木 r 根

結果 [kusakari et. al. '01] r 根 単調な木は、 O(n) 回の変形で直線化できる。 直線化の方法を O(n log n) 時間で、 O(n) の記憶量で求めることができる。 r n : 木のジョイント数 n -1: 木のバー数

これからの計算機科学につい て、 計算原理の多様化 並列・分散アルゴリズム(同時に複数台の計算機を使える) 確率アルゴリズム(計算機がサイコロを振れる) 量子アルゴリズム(計算が振幅で遷移する) 解決困難な問題に挑戦 近似アルゴリズム(最適解をあきらめる) ヒューリスティック(正当性をあきらめる) データの制限をゆるめる オンラインアルゴリズム (アルゴリズム開始時に、全入力データがわからない) ロバストアルゴリズム (データ自身に誤差があるかもしれない)

補足 これ以降のスライドは、 単調な木の直線化手法のより詳しく説明するためのものです。

アイディア 1 引っぱり操作 rr この引っぱり操作だけで直線化できる。 どの順序で、引っぱり操作を行なうかが残る問題。

順序グラフG 木T T 順序グラフの点集合は、木のバー集合 順序グラフの辺には、 接続辺と可視辺との 2 種類ある。 順序グラフ アイディア 2

接続辺 木T接続辺集合E con 木で接続している2辺間に、 (根から辿る順序で) 有向辺を引く。

可視辺集合E 可視辺 木T vis 互いに見える2本のバー間に (左から右に)有向辺を引く。

可視対集合E vis 接続対集合E con 順序グラフG T

単調な木の順序グラフの性質 順序グラフG T 単調な木の順序グラフには、 有向閉路がない。 全てのバーにとトポロジカルソートで全順序が付けれる。

引っ張り操作の順序 順序グラフG T 木T

アルゴリズム 1.接続辺集合E を求める; 2.可視辺集合E を求める; 3.順序グラフG を求める; 4.トポロジカルソートでバーの全順序を求 める; 5.得られた全順序の逆順 に引っぱり操作を行なう. con vis T r 引っ張り操作を2回適用後 r 初期配置

計算量 1.O( n) 時間 2.O( n log n) 時間(平面走査法) 3.O( n) 時間 4.O( n) 時間 5.O( n) 時間 n : 木のジョイント数 n -1: 木のバー数 1.接続辺集合E を求める; 2.可視辺集合E を求める; 3.順序グラフG を求める; 4.トポロジカルソートでバーの全順序を求 める; 5.得られた全順序の逆順 に引っぱり操作を行なう. con vis T

可視辺集合E 可視辺の求め方 木T vis 平面走査法

下界 ソート問題を帰着できるので、 Ω ( n log n) 時間必要。 数その傾きを持つバー 0.1 1 20 2

結論 r 根 単調な木は、 O(n) 回の変形(引っ張り操作) で直線化できる。 直線化の方法を最適な O(n log n) 時間 O(n) 記憶量 で求めることができる。 r n : 木のジョイント数 n -1: 木のバー数

課題 放射状に単調な木の直線化 順序グラフの単純な拡張だと、 有向閉路ができることがある。