私はビー玉を動力源とする機械式コンピュータを作りました。その理論上の制限は何ですか?


8

ここ数年、私はビー玉動く機械式コンピューターを作り、それからゲームを作りました。これは、2つの重要な違いを除いて、古いDigi-Comp IIに似ています。

  1. 部品はボード上で再配置可能です。
  2. ギアを使用して複数の「ビット」を接続できます。これらのビットの1つが反転すると、それに接続されている他のビットが反転します。

上記のリンクは、それがどのように機能するかを説明しています。私の質問は、その理論的な限界は何ですか?私の理論的なコンピューティングの背景は弱いので、ELI5をお試しください。

編集:私は明らかな制限には興味がありません:速度(そこでレースに勝つことはありません...)、ボードサイズ、またはビー玉の数。私はその理論的な限界にもっと興味があります。多分それはそれを2つの質問に分けるのに役立つでしょう:

  1. チューリング完全であることをどのように証明(または反証)できますか?
  2. 3つ以上のギアビットが接続されている場合、摩擦が大きくなり、大理石が一度にすべてを回転させることができません。追加の制限はありますか?

ありがとうございます-回答を読んで本当に興奮しています!私はこれについて長い間考えてきました。


3
理想的なモデル(無限のグリッドサイズ、無限に多くのビー玉)を検討しますか、それとも手元にある特定のマシンを検討しますか?選択したタグの内容を見て、どの質問に対処したいかを絞り込めますか?を計算できますか?物事はどれくらい速く計算できますか?建築についてどんな質問を考えていますか?
ラファエル

1
モデルの機能を絞り込む最も簡単な方法は、これらの質問に答えることです。1)入力と出力とは何ですか?2)どの論理ゲートをモデル化できますか?私が質問しているのは、2)そこにユニバーサルコンピュータがないことは明らかだからです。すべてのボード構成は固定プログラムであり、回路に密接に対応しています。したがって、ゲートの完全なセット(NANDゲートなど)をシミュレーションできる場合は、チューリング完全モデル(無限にすべてのものを想定)になります。2つの入力と1つの出力を持つ静的コンポーネントがないため、何が起こっているのかすぐにはわかりません。
ラファエル

2
そうは言っても、興味深いプロジェクトです!コンピュータサイエンスチャットが起動したらお知らせください。
ラファエル

3
ビデオでは、あなたは言う:あなたがボードを十分に大きくするならば、それはどんなコンピュータでもできることをすることができる。ええ、はい、いいえ:コンピュータが与えられれば、(理論的には)十分に大きなボードを構築できますが、ボードが与えられれば、より大きなボードを必要とするコンピュータを構築できます。つまり、ボードは完全なチューリングではありません。完全性をチューリングするには、任意の大容量メモリを操作する必要があり、ボードでは実行できません。すべてのチューリングマシンは、無限の一連の有限テープチューリングマシンの限界ですが、それだけでは有限テープチューリングマシンのチューリングが完成しません。
reinierpost

2
ボードの拡大を機械の操作の一部にすると、それらはチューリング完全になります。
reinierpost

回答:


3

あなたが今持っているのは具体的なコンピューターです。適切に形式化されるまで、それを計算モデルと比較することはできません。

私の直感は、ボードはデータフローアーキテクチャとしてモデル化できるということです。このパラダイムに従って考案された計算モデルはチューリング完全である可能性がありますが、(コメントで述べられているように)具体的なコンピューターがチューリングと同等になることはありません。これについて心配する必要はないと思います。すべての実際のコンピューターは、正式な計算モデルの単なる(不完全な)メタファーです。

チューリング相当のデータフローマシンをより厳密に模倣するという考えに出くわした場合、いわば「比喩を強化する」ために対処できるいくつかの問題があります。私の意見では、サイクルとマシンの構成を導入することは2つの最も重要なことですが、あなたのマシンはすでにかなり素晴らしいと思います。それはその目的を非常によく果たし、これらの「改善」はそのユーザビリティを犠牲にする可能性があります。


ありがとう!そして、とても役に立ちました!以前は、データフローアーキテクチャと、たとえばフォンノイマンアーキテクチャの違いについては知りませんでした。ボードがもっと大きければ、フォンノイマンアーキテクチャを構築できると思っていました。「サイクル」と「構成」の意味や定義へのリンクを提供できる可能性はありますか?
ポールボズウェル

サイクルの場合、ビー玉を元の位置に、または途中の中間メモリに戻す方法があると想像してください。これにより、ある種のプリミティブな再帰関数を計算できるようになります。マシンの構成は機能の構成に似ています。あるボードの出力を他のボードの入力に接続できると想像してください。
アンドレ・ソウザ・レモス

フォンノイマンコンピュータは大きなサイクルです。
アンドレ・ソウザ・レモス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.