Document

Appendix: 図、表、グラフなど
• 計算時間の表
• Travelling Salesman Problem の最適解の
例
• 教科書「情報」の誤り訂正
• Turing テスト(元論文より)
計算量の違いによる実行時間の差
1秒間に
106 個の場合をチェックできるとして全部数え上げたときの計算時間
サイズ n
10
20
6
100秒
10 n
6
n
en
2
n
n!
2
40
100
400秒
26.7分
2.78時間
1秒
1.06分
1.14時間
0.022 秒
485秒
7464年
8.521023
0.001 秒
1.05 秒
12.7時間
4.02108 億年
3.63秒 約7万7千年
2.591026 億年
277.8時間
億年
2.9910134 億年
たとえ頭の定数がどんなに大きくても次数が高くても多項式時間の増加より、指
数時間的増加のほうがすぐに圧倒的に大きくなる。(計算機の能力向上でもカ
バーしきれない。)
2
巡回セールスマン
問題の最適解
スウェーデン
24,978 都市
P.147 本文下から5行目
「たとえば 6.1.3 項の最短経路を探す問題のように、たくさんの経
路の中から最もよい解を探すような問題は、現在のコンピュータ
ではすべての組み合わせを1つ1つ順に調べている」とあるのは、
まったく誤りです。
最短路問題は、効率的アルゴリズム(多項式時間アルゴリズ
ム)で解ける代表的な問題の例です。辺の長さが非負の場合に
は、Dijkstra 法が実用的には一番よく、計算のオーダーも O(n^2)
ですみます。データ構造に工夫を加えるとオーダーが O(n+m) ま
で下がります。ここで、n は点の数、m は辺の数です。平面グラフ
ならばO(n) ですみます。
・ p.149 12行目から15行目
「先の一筆書きをするような…..計算量のオーダーが
k
n となるようなアルゴリズムは見つかっていない。」
これは間違いです。一筆書き(オイラー閉路問題)は
きわめて簡単に解けます。これはハミルトン閉路問題と
取り違えたのでしょう。たぶん。
ハミルトン閉路問題の一般化である巡回セールスマン
問題では、かなり多きなサイズの問題の最適解が求め
ることができるようになってきました。
5
教科書 p.150 下から3行目
「この性質は「矛盾のない論理学の体系には必ず証明できな
い命題がある」という、ゲーデルの不完全性定理を計算モデル
に当てはめたものといえる.」
とありますが、まず、「矛盾のない論理学の体系には必ず証明
できない命題がある」というのは全くの誤りです。
命題論理(術語計算)及び1階述語論理(術語計算)は、完全
であることがゲーデルによって示されています。そのあとに
ゲーデルは第一不完全性定理を証明しています。この研究結
果の順序は歴史的に大変重要だと思います。
有限オートマトン
 : 記号の非空有限集合
*:記号の有限列の全体
1)Q : 内部状態の集合
2) s  Q : 初期状態
3) F  Q : 受理状態
4):Q    Q, 遷移関数
オートマトンシミュレーターの
実演
入力記号列 w  x1 x2 x3 ...xk に対して
初期状態sから wで遷移した最終状態を  ( s, w)とする。
L  {w  * :  ( s, w)  F }
最終状態がLに含まれる記号列を、Lで受理される受理される記
号列(語)と呼び、オートマトンから受理される記号列の全体のなす
集合がひとつ定まる。
7
有限オートマトンの例
記号集合 S={0,1}, 状態集合 Q={s,a}, 初期状態: s,
受理集合: F={a}
状態遷移図
0
1
s
1
a
0
1 受理
01 受理
受理される記号列の全体=
1 を奇数個含む列 の全体
10101 受理
011 受理されない
8
例
記号集合:
S : 初期状
態
  {0,1}
1
s
0
b
1
0
0
0
1
d
c
1
受理状態: F  {c, d }
受理状態: F  {d }
受理される語(word)は、0 が奇数
個含まれるもの
受理される語(word)は、0,1
をそれぞれ奇数個含むもの
9
例題: 記号集合={0,1}, 受理集合={F}
0
0
開始
0
s
F
1
1
1
受理言語=記号列内に列 000 を少なくともひとつ含
むものの全体
0, 1
1
開始
0
s
1
a
b
0
f
0,1
0
1
入力記号: {0,1}
受理集合 F={ f }
受理記号列:010 を部分列として含む記号列
例
0
1
1
1
0
1
開始
F
0
0
対応する言語 L = 末尾が 101 で終わる語の全体
オートマトン・シミュレーター(中村講義用ページから)
http://lecture.ecc.u-tokyo.ac.jp/johzu/joho/automaton/
にアクセスして、AutoSim.jar をダウンロードして、実行する。
ファイルをクリックすると展開して実行が始まる。
12
演習問題
受理集合 F={s,c} のとき、受理される言語 L (受理される語
の全体) はどのようなものか?
始点
a
s
1
0
1
0
0
0
1
b
c
1
非決定性オートマトン(cf.非決定性Turing機械
p.149)
0
1
s
a
1
1
0
入力 100 に対する状態遷移
s
a
a
0
b
b
0
a
F={a}:受理状態
b
b
 ( s, w) は、入力列 w に対して到達しうる内部状態全体の集
合を表すとする。
このとき以下で受理列の全体のなす言語がひとつ定まる。
L  {w  * :  (s, w)  F  }
上の場合 L は、1 を奇数個含み 0 で終わる列の全体になる。
14
演習問題
以下を受理するオートマトンを作れ。
1) 00 で終わる列の全体
2) 3 個連続した 0 を含む列の全体
3) 1 で始まる列で、2 進数としてみたとき 、5 で割り切れ
るものの全体。
4) どの相続いた5個の記号の中にも2 個以上の 0 が含ま
れるもの。
5) 2個以上の偶数個の1 を含みかつ奇数個の0 を含む列
かまたは、奇数個の1と偶数個の0を含む列の全体。
オートマトンで識別できない言語の例
L を 1 で始まる 0,1 の列で 2 進数とみたとき素数になるもの
の全体の集合。
15
世間に流布しているチューリングテストの説明(1)
教科書「情報」p.151
問題:「コンピュータは人間の知能を模倣できるか?」
人間とコンピュータを文字だけで会話させ、会話の後で人間が
会話の相手がコンピュータだったかどうかを判断できるか?
人
計算機
人
or
?
世間に流布しているチューリングテストの説明 (2)
岩波情報科学辞典(1990) p.467
人間の質問に対する計算機の応答から計算機の知能を評
価するテスト。1つの部屋に計算機、別の部屋に人をおき、
いずれの部屋に人が入っているか知らない人に、外から通
信線を通してそれぞれの部屋に種々の質問をして、どちら
の部屋が人が入っている部屋か判定させる。
人
判定者
計算機
チューリングテストあるいはイミテーション
テストについて
• イミテーションテスト.pdf 参照
• アラン・チューリング
「計算機構と知能」(1950年10月、Mind誌)という論文
で人工知能の問題を提起し、チューリングテストとして
知られる実験を提案している。ただし、チューリング自
身はこれを軽い気持ちで書いたと言われ、同僚の前
で笑いながら論文を読んだという逸話も残っている。
(出典: フリー百科事典『ウィキペディア(Wikipedia)』)
チューリングが自分の論文で紹介したチューリングテスト
(論文の中ではイミテーションテストと名づけている。)
原文:・Turing, “Computing Machinery and Intelligence,” Mind, Vol. LIX, No.236,
1950. 翻訳:・”計算機械と知能” 「マインズ・アイ(上)」ホフスタッター、ベネット
著、NTT コミュニケーションズ, 1992, pp.70—93.
イミテーションテスト
男性(A)、女性(B)、と質問者(男性でも女性でもよい)の3人で行
われる。質問者は他の2人と別の部屋にいる。このゲームでの質
問者の目的は、この二人のうち、どちらが男性であり、どちらが女
性であるかを確定することである。
このとき、質問者と A さん B さんの会話は、チャットで行われ、A さ
ん B さんとも互いの発言を同時に見ることができる。
この点が世間に流布しているチューリングテスト(2) と違い、さらに次ページ
に述べるように男性と女性に別の役割を当てているところが大きく違う。
19
彼はこのふたりを X 及びY という呼び名で知っており、ゲー
ムの終わりに、彼は「 X が 男 であり、Y が 女性 である」も
しくは「 X が 女性 であり、Y が 男性 である」と述べることに
なる。プレイヤー B(女性) は質問者を正解のほうに援助する
ことを目的とし、プレイヤー A(男性) はその逆を目的とする。
「このゲームにおける男性の役割を機械が演じるとしたらど
ういうことになるだろうか」。質問者は人間相手のときと同じく
らいの頻度で誤った決定を下すだろうか。
これが「機械が考えることができるか」に取って代わる問題
である。
(注:本当だろうか?女性と男性が会話だけで区別できるだ
ろうか?ゲイであることを非難されたことを苦にして自殺した
チューリングのことを考えるとシニカルなものを感じる。)
20
チューリングの論文で述べられたチューリングテスト
男性
判定者
どちらの部屋が男性
で、どちらの部屋が
女性か判断する
部屋A
または 計算機
判定者をだまそう
とする
部屋B
女性
判定者を正解に
導こうとする