相互作用はアルゴリズムよりも強力ですか?


17

私は、モットーの相互作用は Peter Wegnerのアルゴリズムよりも強力だと聞きました。この考え方の基本は、(古典的な)チューリングマシンは相互作用、つまり外界/環境との通信(入力/出力)を処理できないということです。

どうしてこんなことができるのでしょうか?チューリングマシンよりも強力なものはありますか?この物語の本質は何ですか?なぜそれほどよく知られていないのですか?


1
質問に含める参照先はありますか?チューリングマシンの正式な定義は知っていますが、「相互作用」の意味は正確にはわかりません。
ジャノマ

また、「環境との相互作用を処理できない」は「真のランダム性を処理できない」に似ているようですが、どちらもセンサーと疑似ランダム性で非常によく近似できます。しかし、それは情報のないコメントであり、相互作用の定義を知りません。
ジャノマ

2
チューリングマシンにはセンサーがありません。
デイブクラーク

1
私はそれを知っています。それでも、コンピューターセンサーを使用ます。センサーは、入力をチューリングマシンに渡す特定の方法です。したがって、TM 何らかの形で外部信号/環境と相互作用します。
ジャノマ

2
問題はコンピューターに関するものではありません。TMとの唯一の相互作用は、環境が開始時に1つの入力を提供し、終了時に最大1つの出力を受け取ることです。これはほとんど一般的な相互作用ではありません。
デイブクラーク

回答:


11

チューリングマシンは、Oracleテープを使用して相互作用をうまく処理できます。動作は次のとおりです。相互作用を処理するコンピューターの観点からは、オペレーターの入力は、コンピューターに時々送信されるビットの別のシーケンスにすぎません。怠け者のシステム管理者は、要求されたときにプログラムに入力を送信するスクリプトを作成できるため、システム管理者が早く中断できることを知っています。対話マシンには、実際にコンソールに実際のオペレーターがいるかどうか、または入力が別のプログラムからパイプされているかどうかを知る方法がありません。

すべての相互作用入力を事前に準備しておくことは、理論的には、オラクルチューリングマシンで使用される個別のテープにすべての入力を保持することと同じです。通常、コンピューターがオペレーターからの対話を要求するときはいつでも、マシンは代わりに入力テープから読み取ります。テープから読み取られたものが何らかの方法で無効であると思われる場合、チューリングマシンは、その入力を受け取ったときにインタラクションマシンが行うことを正確に行います。

Wagnerはオラクルテープを使用して入力をコーディングする機能を認識しているため、コメントを一粒のコメントにするか、実際の意味を尋ねる必要があると思います。インタラクションを考える人は、一般的に次の2つのことを心配していると思います。

  • 「実際の」コンピューターには相互作用がありますが、チューリングによって定義されたアルゴリズムには相互作用がありません。入力をOracleテープにコーディングすることでこれを回避できますが、これは実際のコンピューターの動作とは一致しません。実際のコンピューターとより密接に整合している計算モデルを研究することは素晴らしいかもしれません。

  • Oracleベースのアルゴリズムは、通常のコンピューターにはデータを提供する魔法の「オラクル」が付属していないため、日常のコンピューティングではあまり考慮されません。しかし、実際に人を神託として使用することができるかもしれません。その人が要求されているデータを理解していれば、アルゴリズムを助けてパフォーマンスを向上させることさえできるかもしれません。言い換えれば、人間は単にランダムなテープではなく、有用なオラクルテープを提供できる可能性があり、原則として、これは非オラクルベースのテープに比べて高速または強力なコンピューティングメソッドにつながる可能性があります。ランダムコンピューティングでも同様のことが起こります。結局、マシンには追加の入力としてランダムビットのシーケンスが与えられます。


Oracleテープは相互作用を正しくモデル化しません。コンピューターシステムが個人情報を漏らさないことを証明しようとすることを検討してください。これは、固定オラクルテープを使用したTMに関して形式化することはできません。プロパティは、環境で実行できる計算の特性に依存しているためです。
ニールクリシュナスワミ

「正しくモデル化する」という意味によって異なります。ハイパーコンピューティングコミュニティからのいくつかの論文は、相互作用が何らかの形で計算可能な関数のセットを拡大することを示唆しているようです。これは、Oracle計算とまったく同じ方法で行われます。もちろん、TMを使用して実際の計算環境のプロパティを調べることはできません。コンピュータのプロセッサにバグがあるかどうかを知りたい場合は、完全に無視してチューリングマシンだけを見ても役に立ちません。しかし、計算されている関数のみに関する質問の場合、相互作用とオラクルは同等です。
カールマンマート

nn

この類推の非常に徹底的な作業については、Peter Hancock、Pierre Hyvernat:Programming interfaces and basic topologyを参照してください。citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.107.919
ニールクリシュナ

1
n

8

Turning Machinesは計算をモデル化し、相互作用の概念はありません。その意味で、外部システムとの対話をサポートしたマシンは、Turning Machineができないことを実行できます。しかし、行われ、計算の間で外部ソースからの入力のビットは、明らかにいつもでも「IOマシンは」何もできない、チューリングマシンによってモデル化することができるチューリングマシンが行うことができなかったことを外部に入力。

ある意味では、このようなマシンはチューリングマシンでは決定できない問題を「決定」できる可能性がありますが、相互作用しているシステムに超チューリングマシンのパワーがあり、信頼性がある(何らかの方法で、確率的信頼性がある)十分でしょう)。

IOマシン用のプログラムを想像してください。「最初のテープ入力では、テープの内容を印刷し、外部入力からシンボルを読み取ります。シンボルが1であれば受け入れ、そうでなければ拒否します」。このプログラムは問題を決定できます。ただし、対話できる外部システムが問題を決定できる場合のみ。私にとって、これはIOマシンがチューリングマシンでは決定できない問題を決定できると言っているのはあまりおもしろい方法ではありません。

テープ上の入力として、いくつかの以前の構成のエンコーディングを外部入力とともに取り込むマシンを想像することにより、インタラクティブな計算を常に表現し、構成のエンコーディングを一緒に含むテープでマシンを停止させることができると思います出力付き。次に、「プログラムを実行する」プロセスは、このチューリングマシンを機械的な方法で繰り返し実行します。ただし、「非機械的な」部分のみが外部入力になります。そのようなシステムがその出力を別のチューリングマシンに与えることで入力を得た場合、あなたが証明できると確信しています。同様の方法で動作するように設定すると、結合されたシステムは単一のチューリングマシンと同じ計算能力を持ちます。計算が相互作用するシステムがチューリングマシンよりも強力ない限り、インタラクティブな計算は非インタラクティブな計算よりも強力ではないという説得力のある議論を見つけました


ただし、対話機能によって問題を解決するコンピューターの能力が向上するという非理論的な意味があります。人間がコンピュータを非常にうまく機能させる方法を知らないという非常に正確なことはたくさんあります。しかし、人間にごみがたくさんあることも多くあります。それは、コンピューターにできることです。これら2つを組み合わせると、reCaptchaなどのプロジェクトにつながる可能性があります。reCaptchaは、困難な場合に人間が単語を認識する問題を解決することで、書籍を効果的に自動的にデジタル化します。結果として得られるコンピューターと人間の労力のシステムは、計算のみまたは人間の労力だけでは達成するのが現在非現実的な結果を達成します。


8

ACMは最近、ユビキタスシンポジウムを開催しました'ピーターウェグナーは、インタラクティブコンピューティングに関する彼の見解を反映した記事を公開しました。

Peter Wegnerによる記事からの抜粋を2つ示します。

初期のチューリングマシンにはない新しい概念の1つは、計算中の環境との相互作用に対応する「インタラクティブコンピューティング」です。

相互作用マシンは、チューリングマシンよりも強力なコンピューティング形式を実行できます。また、相互作用はチューリングマシンよりもパフォーマンスが向上するため、チューリングが提案する種類の思考を実行できます。

しかし、同じシンポジウムで記事を書いているフォートナウは、ウェグナーの見解に反対しているようであり、インタラクティブコンピューティングはチューリングマシンに追加のパワーを提供しないと考えています。

ミックスに追加するために、計算について議論し、定義しているようです。Moshe Vardiの記事「What is a Algorithm?」、Communications of the ACM、Vol。55、No。3、2012年3月。

Vardiは、アルゴリズムの2つの新しい定義について報告しています。1つ目はGurevichによって提案され、2つ目はMoschovakisによって提案されています。

Gurevichは、すべてのアルゴリズムは抽象状態マシンの観点から定義できると主張しました。

対照的に、Moschovakisは、アルゴリズムは、再帰として定義されると主張しました。再帰は、プリミティブとして取得される任意の操作の上に構築される再帰的な記述です。


6

IOを備えたモデルはチューリングマシンよりも「強力」だとは思わず、異なるものをモデル化するだけです。

理論的には、IOを(騒々しい?)オラクルと見なすことができます。完全なオラクルを使用すると、チューリング計算不可能な機能をコンピューターで処理できます。しかし、どこからオラクルを入手できますか?人間は唯一の「スーパーチューリング」の選択肢(存在する場合)であり、私たちは非常に信頼できないことが知られています。

このモデルに適合するプログラムのクラスは、インタラクティブな証明アシスタントです(例:Isabelle / HOLCoq)。それらは決定不可能なプルーフスペースを扱いますが、(ほぼ間違いなく)すべてのプルーフは適切なユーザー入力で見つけられます(そしてチェックされます)。


したがって、オラクルを使用したチューリングマシンは、オラクルを使用しないチューリングマシンとオラクルを使用したチューリングマシンが相互作用をモデル化できるよりも強力です。だから答えはイエスのようです。
デイブクラーク

1
@DaveClarke完璧な神託を考えるなら、はい。
ラファエル

2
(オラクルまたは入力の任意の形式による)支援されていないマシン(またはプログラム)は、原則としてすべての証拠を見つけることができると思います。2つの問題があります:(1、理論的):ステートメントに証拠がないことを確認することはできません。(2、実用的):与えられたステートメントにつまずくことを期待して証拠を盲目的に生成することは非常に非効率的であるため、試してみたいので、証明アシスタントはガイド付き検索を好み、証明が存在する場合に「保証された」成功を放棄します。
マーク・ヴァン・レーウェン

2
ベンが彼の答えで指摘しているように、それを見る正しい方法は「オラクルを使ったマシンのツアーはより強力です」ではありません。マシン自体が計算可能なことをしているだけです。それを見る正しい方法は、「一部の神託は計算可能ではないため、神託なしでは計算できないものを計算できる」というものです。計算の強さは、マシンではなくオラクルに由来します。
カール・ムンメルト

オラクルを搭載したチューリングマシンが最も強力なもののようです。なぜ新しい定義に煩わされるのでしょうか?
saadtaame

0

これをチェックしてください:)「計算のチューリングのアイデアとモデルhttps://www.cs.montana.edu/~elser/turing%20papers/Turing%27s%20Ideas%20and%20Models%20of%20Computation.pdf


2
おそらく、リンクで作成されたいくつかのポイントを要約できますか?また、リンクだけでなく引用も提供すると、リンクが移動したり消えたりする可能性があるため、より適切です。
ユヴァルフィルマス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.