オペラント条件付けは、実験心理学で使用される古典的なパラダイムで、動物が報酬を得るために行動を行うことを学習します。このパラダイムを使用すると、学習曲線を抽出し、反応時間を正確に測定することができます。ここでは、動物の位置をリアルタイムで追跡しながら、自由に動くマウスに対してオペラント条件付けを実行できる、完全に 3D 印刷可能なデバイスについて説明します。
3D プリントされたモデルはここまたはここで見つけることができます。
Figures/EXPLODED VIEW.jpg には、組み立てスキームの直感的な図が示されています。 Cura 4.0 を使用し、中解像度 (100 µm)、速度 90 mm/s、充填率 20% ですべてのコンポーネントを印刷しました。 OC チャンバーの設計は非常にシンプルであるため、ほとんどすべてのプリンターはチャンバー全体を正常に印刷するのに十分な精度を備えています。
すべてのコンポーネントのリストはここにあります: 部品表
OC チャンバー
カメラ
配達
さらに次のものが必要です。
Figures/diagram_scheme.png の説明に従って、すべてのコンポーネントを接続します。
Raspberry Pi (RPI) にソフトウェアをインストールするには、コード全体を Raspian OS のフォルダーにダウンロードまたはコピーするだけです。
パイソン
Arduino
Skinner.inoというスケッチをコンパイルしてArduino UNOにロードします。
容量性センサーのしきい値を調整するには、skinnerCapacitiveTest という Arduino スケッチをロードします。この関数は、シリアル ポートの静電容量センサーの値を印刷するだけです。マウスのタッチを検出するには、適切なしきい値を設定すると便利です。
コードを実行するには、ターミナルで次のように入力します。
cd h ome p i o c_chamber \ or replace with the folder path containing the scpript
python3 cvConditioningTracking.py
あるいは、IDLE IDE で cvConditioningTracking を開き、F5 キーを押します。
ユーザーは、cvConditioningTracking.py ファイルの最初の 25 行にある変数の値を編集することで、実験の低レベル パラメーターの一部をカスタマイズできます。これらのパラメータのより詳細な説明は、ファイル自体に記載されています。
チャンバーは、トレーニングモードと順列モードの 2 つのモードで実験を実行できます。ユーザーは、cvConditioningTracking ファイル内のパラメータータスクを編集することで、2 つのモードのいずれかを選択できます。 2 つのモードの詳細と違いについては、論文を参照してください。
実験の開始時に、ユーザーには、これから実行される実験に関するいくつかの基本情報を収集する GUI が表示されます。
件名:現在のマウスの識別子を含む文字列。空のままにすると、ファイルは保存されません。
ファイル パス:実験ファイルを保存する場所。出力は、データセット セクションで説明されている実験のデータセットを含む 2 つの .txt ファイルで構成され、DATA フォルダーと DATAtracker フォルダー内に保存されます。ユーザーは PC 上の場所を参照できます。フィールドが空のままの場合、デフォルトは現在の作業ディレクトリです。
REC ファイル名:ビデオ録画の保存に使用する名前を含む文字列。空のままにすると、ファイルは保存されません。
REC ファイル パス:マウスの位置とアクティブ領域を含むオーバーレイを含むビデオ録画を保存する場所。ユーザーは PC 上の場所を参照できます。フィールドが空のままの場合、デフォルトは現在の作業ディレクトリです。
条件:実験条件。実験で提示される刺激のリスト。 1 つ以上の条件をカンマで区切って指定できます。
ここで指定したすべての条件がランダムな順序で表示されます。
基準:トライアルをアクティブにするためにマウスがアクティブ領域に留まるのに必要なフレーム数。 20 フレーム = 1 秒
レベル:チャンバーのアクティブ領域と非アクティブ領域を分離する線の垂直位置を選択します。値はチャンバーの高さに対して正規化されます。 0 = チャンバーの底部、1 = チャンバーの上部、0.5 (デフォルト) = チャンバーの中央
キャリブレーション:カメラのキャリブレーションのために実験の開始時に使用されるフレームの数。背景上でマウスをより正確に追跡するには、実験の開始時にカメラを調整することが重要です。
他のカスタマイズ オプションは、次のファイルの最初の行を編集することで利用できます。
より複雑な視覚刺激を使用できるようにするには、LCD ディスプレイで動作するコードのバックボーン バージョンを見つけることができます。コードを実行するには、Psychopy2 が必要です。 RPI に Psychopy をインストールするには、次の手順に従ってください。 Psychopy がインストールされたら、Psychopy IDE で cvConditioningTracking.py を開き、コードを実行します。このコードには、選択した画像を表示するために使用できる LCD.py というモジュールが含まれています。現時点では、コードはスタブ、つまりテストされていないバージョンであり、デモンストレーションの目的で実行されます。
データセット フォルダーには、この論文で説明されている 6 つの被験者の生データが含まれています。各サブジェクトは独自のフォルダーに含まれており、CAGE-LABEL-GENO というスキームを使用してコード化されています。さらに、Python で txt 出力ファイルを pandas データフレームとして読み取る方法の例を含む 2 つの Jupyter Notebook があります。
装置の詳細な説明は、ここで見つけることができます: マウスの自動オペラント条件付けのための 3D 印刷可能なデバイス
情報やトラブルシューティングについては、お気軽にお問い合わせください。