LogicalInSpace

将棋の日記

機械(ソフト)と人間の違い

2014-08-08 13:35:47 | ブログ(ファン)
nanaponさん「人間に残されたもの」の記事より

電王戦を通して、nanaponさんは、ここ数年で発達している機械(ソフト)の進歩より、人間に残されたものは、何かと疑問を持たれたようです。

<抽象的には>
そこで、考えなければならないのは、機械(ソフト)と人間の違いです。
抽象的な表現で言えば、機械(ソフト)と人間の違いは何かと言いますと。
・機械(ソフト)は、定式化されていることしか出来ないこと。
・人間は、未知の事柄に対応が出来ること。
これが大きな違いです。

<一定のルール(定式化)>
機械(ソフト)が、どんなに凄いことをしていても、そこには必ず、一定のルールが存在します。
※この「一定のルールのことを、機械にさせること」を、「定式化」と私は言います。

地球は球(楕円の球)なので、スマホなどでGPSで位置が分かるのも、一定のルールがあります。
数学では、空間の楕円関数には、空間上に4つの点が分かれば、位置が計算が出来ます。
なので、3つ以上の衛星が地球上の大気圏で移動していれば、理論上は計算が出来ます。
※空間の楕円関数の式 x^2/a^2 + y^2/b^2 + z^2/c^2 = r^2
※a, b, c, r は定数です。 求めるのは、x, y, z の3つです。

東ロボ君でも、何でも機械(ソフト)が出来ることは、「一定のルール」の存在があるので、機械(ソフト)が出来る訳です。

あえて言えば、その「一定のルール」を探すことは、人間がすることです。
その「一定のルール」があれば、機械(ソフト)にさせることが「定式化」です。

将棋、チェスも、一定のルールがある以上、機械(ソフト)は、その一定のルールの範囲で発展していきます。

<未知の事柄>
よく機械(ソフト)がトラブルを起こすことがあります。
それは、一定のルールから、逸脱するからです。 俗に言う、想定外と言われている事象です。

現在でも、天気予報は一定のルールは存在しません。
※これは、数学の7つのミレニアム問題(Wiki)(物理学者、数学者でも解けない)の中の、ナビエ・ストーク方程式(Wiki)の一般解が存在しないからです。
天気予報とナビエ・ストーク方程式について(Link)
※私の言葉で話しますと、ナビエ・ストーク方程式は、空気中の大気の流れを、数式に現わした、難しい方程式(微分方程式)です。
よく、天気予報だと、ゲリラ豪雨、竜巻、台風の進路などが、正確に予想が出来ないことがあるのは、未だに「一定のルール」が存在しないからです。
ここは、経験上、理論的に近い考え方(時には外れることもある)を元に、天気予報がされます。
この経験と理論的に近い考え方を、うまく組み合わせて、人間が天気の予想をしています。
(補足)
現在の天気予報は、スーパーコンピューターを使って、過去の出来事を分析して、殆ど正しい確率で予想が出来ています。
また、ナビエ・ストーク方程式は解けたとしても、さらに、未知なる事柄が存在する可能性は否定が出来ません。
しかし、一定のルールの中には、ナビエ・ストーク方程式の一般解を含み事は確かなことだと思います。



<ギターの美しさ>
ちょっと、極端な例で考えてみます。
凡人の2カ月の初心者のギターリストのAくん、35年のプロのギターリストのBプロが登場人物です。
1万円の易いギターX、100万円の高価なギターYがあります。

初心者のAくんが100万円のギターYを弾きます。
これは、明らかにAのテクニックが上手いとは、誰も思わないでしょう。
ギターYの音色が美しいと誰もが思います。

Bプロが1万円のギターXを弾きます。
これは、ギターXの音色が美しいとは、誰も思わないでしょう。
Bプロのテクニックが美しいと誰もが思います。

少し極端な例ですが、美しいと思うのは、ギターそのものなのか? 弾き手のテクニックなのか?
それによって、美しいと感じることは違うと思います。


<(機械)ソフトの美しさ>
機械(ソフト)が理解が出来るソースコード⇔ギターそのもの
アルゴリズムを考える人間⇔弾き手のテクニック
と対比すると分かり易いかもしれません。

機械(ソフト)の内部のお話になりますが、内部では2進数と1バイト(8ビット:「0110 1110」)より構成されています。
2進数の世界だけで考えると、機械(ソフト)は、その2進数だと理解がしやすいアルゴリズムのコードが存在します。

例えば、1億件のデータがあります。
あるアルゴリズムのソースコードには、処理に40分かかります。
しかし、修正したアルゴリズムのソースコードでは、5分と短縮することが出来ます。
・ソースコードが、2進数に向いた書き方ならば、機械(ソフト)には、美しいソースコードになります。
※機械(ソフト)が理解が出来るソースコード
※具体例は、ビット演算です。
・人間が考えたソースコードのテクニックで書いたならば、美しいソースコードになります。
※アルゴリズムを考えると人間
※具体例は、O(n) と O(log(n)) の違いです。

最新の画像もっと見る

コメントを投稿