自分用メモ
RasPythoncarにtensorflowをインストールする方法
パスワード変更
$ sudo passwd pi
SDカードの容量変更(使用SDカードが16GB以上の時)
$ sudo apt-get install gparted
$ sudo gparted
$ df -h
OSのカーネルバージョンアップ
$ sudo rpi-update
$ sudo reboot
$ sudo apt update
$ sudo apt dist-upgrade -y
$ sudo apt-get autoremove -y
$ sudo apt-get autoclean
$ sudo reboot
現在の自分のOSのコードネームやバージョン
$ lsb_release -a
tensorflowインストール
$ sudo apt install libatlas-base-dev
$ sudo pip3 install tensorflow
tensorflowのインストールが終わったら、DQNライブラリをインストール
参考サイトは以下のサイトを参考にしました。
超シンプルにTensorFlowでDQN (Deep Q Network) を実装してみる 〜導入編〜
Tensorflow Deep Q-Network
以下環境構築
$ git clone https://github.com/algolab-inc/tf-dqn-simple.git
$ sudo pip3 install matplotlib
以上
RasPythonカー IDE に反映
GITからダウンロードしたファイル一式をUSBメモリなどに保存して、
「RasPythonカー IDE 」のサンプルプログラムが入っている場所にコピペする。
サンプルソースでは学習した結果を表示できないので、
以下のプログラムで実行する。
RasPython_dqn_play.py
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# Created: 2020/03/09 Mon 1:37
from wr_lib2wd import WR2WD
import time
from catch_ball import CatchBall
from dqn_agent import DQNAgent
wr = WR2WD()
print("スタート")
# environmet, agent
env = CatchBall()
agent = DQNAgent(env.enable_actions, env.name)
agent.load_model()
# variables
win, lose = 0, 0
state_t_1, reward_t, terminal = env.observe()
print(state_t_1)
while not terminal:
state_t = state_t_1
# execute action in environment
action_t = agent.select_action(state_t, 0.0)
"""
action_t:
0: do nothing
1: move left
2: move right
"""
if action_t == 1:
wr.mc.front()
print("前進")
elif action_t == 2:
wr.mc.back()
print("後退")
time.sleep(1)
wr.mc.brake()
time.sleep(1)
env.execute_action(action_t)
# observe environment
state_t_1, reward_t, terminal = env.observe()
print("----------------------")
print(state_t_1)
if reward_t == 1:
print("キャッチ")
elif reward_t == -1:
print("ミス")
print("エンド")