こちらはプラレールを作って作られた、小さい数のかけ算ができるレイアウトです。
具体的には、
入力は自動ポイントレールの向きで設定します。 AとBの2つの自動ポイントレールのレバーを操作し、事前に入力を設定します。 つまり、電車が進む方向を設定することで1から3までの入力になります。
その後、所定の場所から電車を走らせると計算開始です。
出力は、電車が最終的にストップレールへたどり着いた場所として読み取ります。 下から順番に、1、2、3、...、9 まで割り当てられています。
そのため、例えば電車が最終的に6階のストップレールに付いたら、計算の答えは6ということです。
プラレールの電車はまっすぐにしか走れません。 しかし、分岐レール(ポイントレール)に情報を記録することができます。 分岐レールのポイント部分は単純な物理的な仕組みであるため、逆走させるとどちらから電車がやってきたかをレールに記憶させることができます。 そして、分岐する元から進入すると、さきほど逆走してきた経路に電車が進みます。
今回のプラレールかけ算回路では、1, 2, 3 に対応する3方向からやってきたという情報を、 4段目、5段目、6段目にそれぞれ3つ記録させます。
今回の図は、開発中のプラレールレイアウト記述ソフトウェアによって生成されています。 こちらのソフトウェアは開発中ですが、GitHubにて公開しています。
https://github.com/akamah/proto-railforth
また、ブラウザ上で試したり、3Dモデルをぐりぐり動かすことができます。
https://akamah.github.io/proto-railforth/
OSC 2023 Nagoya の展示の際は、サイボウズ株式会社に出展にまつわる諸費用を負担いただきましたので、この場で感謝申し上げます。
2023/05/28 線型算法同好会 (@lin_calc)