カテゴリー: Bonsai

  • Bonsaiによる四則演算の方法

    Bonsaiによる四則演算の方法

    神経科学及び、その他の実験デザインとしてよく使われるBonsai。
    Bonsaiはプログラムをしなくとも、高度なプログラムを作ることができ、そして同期性を持ってプログラムを実行することができます。

    しかし、シンプルが故に、四則演算などの普通のプログラミングでは単純なプログラムだと少しわかりにくい方法で行うこととなります。
    そこで、その四則演算の方法をMouseMoveを例にとって説明します。

    下が実際に四則演算を行なった様子であり、上から順に足し算、引き算、掛け算、割り算です。

    今回はわかりやすいため、MouseMoveのXとYの値を例に取りました。
    しかし、実際には別のセンサーなどから得られたそれぞれの値を計算したりすることができます。

    ここでBonsaiにおいて重要なのは演算をする前に”Zip”によって、二つの値を統合する必要があります。

    “Zip”の中身は(値1, 値2)のようになっており、その時の二つの値を一つにまとめる役割を担います。
    そして、各演算では値1と値2をそれぞれ計算します。

    言葉での説明は難しいですが、なんとなくのイメージで掴みましょう。
    もし”Zip”がなかった際には、プログラムにおいて、どの値とどの値を掛け算するかがわからなくなるため、計算ができないので、一度XとYの値を対応を持って統合する必要があります。

    それぞれ四則演算を行うときの処理の名前のリストを下記に記します。

    • 足し算 => Add
    • 引き算 => Subtract
    • 掛け算 => Multiply
    • 割り算 => Divide

    下記に実際の様子を載せておきますので参考にしてみてください。

    <例の実行の様子>

  • Visual programing languageとしてのBonsai

    Visual programing languageとしてのBonsai

    Bonsaiは2015年に論文で発表されたVisual programming languageです。
    Bonsaiを使うことでセンサーからの情報を取得し、処理を同時に行うことを可能としたものです。

    Bonsaiの特徴として、複雑な処理をパズルを組み立てるような形で簡単に作ることができ、そして、その処理の結果をリアルタイムで確認することができるという点にあります。

    また、Bonsaiは他の解析ソフト(DeepLabCut. open ephys, bon visionなど)、ハードウェア(カメラ、コントローラー、マイコンなど)などと組み合わせることができ、拡張性が非常に高いことがあります。

    難しそうに見えるプログラミング言語を学習しなくても、直感的に複雑な解析や処理を行うことができるため、誰でも簡単に使うことができ、実験の幅がよりひろがります。

    Bonsaiに関する論文はこちらから。
    また、Bonsaiのインストールはこちらから。

    論文の画像より引用。
    この丸がノードと呼ばれる各処理を示すものです。

    これが実際にBonsaiを使っているときの画面です。(論文から引用)
    左側ではノードの検索をし、目的のノードを追加することができ、中央の画面ではノードを並べることでどのような処理を可視化しながら組み立てることができ、右側は各ノードの詳細設定です。

    メイン画面でポップアップしているのは各ノードの実行状況であり、カメラのキャプチャーであれば、実際のカメラの画像を出力することができます。

    一見難しそうに見えるが、こうやってみてみると意外と簡単なように見えます。

    では実際にインストールしていきます。
    といっても、こちらのサイトより、ダウンロードするだけです。
    ダウンロードした “Bonsai-*.*.*.exe” ファイルを開き、ダウンロードするだけです。
    ウイルスバスターなどのセキュリティソフトなどによってインストールできないことがあることに注意が必要です。

    Bonsaiをダウンロードするとソフト一覧にBonsaiとBonsai (X86)が追加されます。
    通常使用する際はどちらでも大丈夫であるが、ときどきどちらかが動かないなどがあり、動かないときは、もう一方のほうで動かしてみるとうまくいくことがあります。

    問題点として、Bonsaiは今現在はWindowsでのみ対応しており、LinuxやMac OSでは対応していません。
    今後は利用できるかもしれないが、ここも注意が必要です。

    次回から実際にBonsaiを使ってみようと思います。