Pythonとは
基本的な使い方
・
IDLE
・
Jupyter Notebook
・
Markdown
・
コマンドプロンプトで実行
・
仮想環境の構築
・
仮想環境でIDLEを実行
ライブラリのインストール
・
pipの使い方
・
numpy , matplotlib等
・
graphviz
・
pytorch
・
Mecab
Pythonの関数:
一覧
共通関数
・
append , extend
・
class
・
copy
・
csv.reader
・
csv.writer
・
def , return
・
dict , defaultdict
・
enumerate
・
exit
・
for
・
if
・
import
・
in
・
input
・
lambda
・
len
・
list
・
min/max
・
OrderedDict
・
open/close
・
os
・
pickle
・
print
・
range
・
re.split
・
read/readline
・
round/floor/ceil
・
split
・
sys.argv
・
time
・
while
・
write
・
zip
・特殊メソッド
・
__name__
・
__iter__ , __next__
・
正規表現、メタ文字
・
データの型の種類
・
四則演算 (+ , - , * , /)
・
コメントアウト (# , ''')
numpy
・
append
・
arange
・
argmax/argmin
・
array
・
asfarray
・
astype , dtype
・
digitize
・
dot
・
hstack/vstack
・
linalg.solve
・
linspace
・
max,min
・
mean
・
meshgrid
・
mgrid
・
ndim
・
ndmin
・
pad
・
poly1d
・
polyfit
・
prod
・
random
・
reshape
・
savetxt/loadtxt
・
shape
・
std
・
transpose
・
where
・
zeros/zeros_like
scipy
・
expit
・
imread
・
interpolate
・
signal.square, sawtooth
matplotlib
・
contour
・
imshow
・
figure
・
pcolormesh
・
plot
・
quiver
・
scatter
scikit-learn
・
GaussianNB
・
KMeans
・
KNeighborsClassifier
・
SVC
・
tree
chaospy
keras
chainer
chainerrl
pandas
・
データ抽出
・
concat
・
DataFrame
・
read_excel
pytorch
・
BCELoss , MSELoss
・
Embedding
・
device
・
Sequential
・
Dataset, Dataloader
・
RNN, LSTM
OpenAI gym
・
Blackjack-v0
・
CartPole-v0
seaborn
・
pairplot
tkinter
・
frame, grid
・
画像表示
・
画像を切り取り表示
・
画像を保存
目的別
・
ステップ関数
・
矩形波, 三角波
・
1 of K 符号化法
・
線形補間
・
配列に番号をつける
・
ベクトル場を描く
・
線形回帰, 多項式回帰
公開日:2020/4/16 , 最終更新日:2021/1/19
・In English
■CartPole-v0の説明
倒立振子のゲームを行います。以下の様にカートの上にポールが立った状態でスタートし、ポールが立ったままの状態を維持するように、カートを左右に動かします。
■CartPole-v0を使った具体例
簡単な動作方法は以下。このゲームを強化学習の題材に使う事例はこちら で説明。OpenAI gym , numpyのインストール方法はこちら 。
import gym
env = gym.make('CartPole-v0') # Cartpole定義
env.reset() # Cartpoleの状態初期化
for i in range(100):
env.render() # Cartpoleのアニメーション
observation, reward, done, info = env.step(env.action_space.sample()) # カートを動かし、結果を返す
print("Step:",i,done,"Reward:",reward,"Obs:",observation)
<カートの操作:env.step>
env.step()に0を入れると左へ、1を入れると右へ動きます。env.action_space.sample()はアクションをランダムに選択する関数です。
<カートとポールの状態:observation>
カートを操作した結果、カートとポールの状態がobservationで定義されます。値の範囲は公式で定義されている値を記載しております。
配列0:カートの位置 -4.8~4.8
配列1:カートの速度 -Inf~Inf (無限大)
配列2:ポールの角度 -24~24[rad] ← 公式ではdegだがradの間違いであると思われる。
配列3:ポールの角速度 -Inf~Inf
値とポールの位置関係は以下のとおり
角度の詳細は以下となります。
<報酬獲得条件:reward=1>
以下条件が全て成立している時に、報酬獲得(reward = 1)します。
① ポール角度が±0.21以内
② カート位置が±2.4以内
報酬が得られなくなった場合でもカートを動かすことができますが、強化学習を行う場合はそこで1エピソードを止める必要があります。
(以下のようなエラーメッセージが出て、一度リセットする事を促されます)
You are calling 'step()' even though this environment has already returned done = True. You should always call 'reset()' once you receive 'done = True' -- any further steps are undefined behavior.
<ゲーム終了条件:done=True>
reward =0になった場合に、ゲーム終了(done=True)します。
サブチャンネルあります。⇒ 何かのお役に立てればと
Pythonとは
基本的な使い方
・
IDLE
・
Jupyter Notebook
・
Markdown
・
コマンドプロンプトで実行
・
仮想環境の構築
・
仮想環境でIDLEを実行
ライブラリのインストール
・
pipの使い方
・
numpy , matplotlib等
・
graphviz
・
pytorch
・
Mecab
Pythonの関数:
一覧
共通関数
・
append , extend
・
class
・
copy
・
csv.reader
・
csv.writer
・
def , return
・
dict , defaultdict
・
enumerate
・
exit
・
for
・
if
・
import
・
in
・
input
・
lambda
・
len
・
list
・
min/max
・
OrderedDict
・
open/close
・
os
・
pickle
・
print
・
range
・
re.split
・
read/readline
・
round/floor/ceil
・
split
・
sys.argv
・
time
・
while
・
write
・
zip
・特殊メソッド
・
__name__
・
__iter__ , __next__
・
正規表現、メタ文字
・
データの型の種類
・
四則演算 (+ , - , * , /)
・
コメントアウト (# , ''')
numpy
・
append
・
arange
・
argmax/argmin
・
array
・
asfarray
・
astype , dtype
・
digitize
・
dot
・
hstack/vstack
・
linalg.solve
・
linspace
・
max,min
・
mean
・
meshgrid
・
mgrid
・
ndim
・
ndmin
・
pad
・
poly1d
・
polyfit
・
prod
・
random
・
reshape
・
savetxt/loadtxt
・
shape
・
std
・
transpose
・
where
・
zeros/zeros_like
scipy
・
expit
・
imread
・
interpolate
・
signal.square, sawtooth
matplotlib
・
contour
・
imshow
・
figure
・
pcolormesh
・
plot
・
quiver
・
scatter
scikit-learn
・
GaussianNB
・
KMeans
・
KNeighborsClassifier
・
SVC
・
tree
chaospy
keras
chainer
chainerrl
pandas
・
データ抽出
・
concat
・
DataFrame
・
read_excel
pytorch
・
BCELoss , MSELoss
・
Embedding
・
device
・
Sequential
・
Dataset, Dataloader
・
RNN, LSTM
OpenAI gym
・
Blackjack-v0
・
CartPole-v0
seaborn
・
pairplot
tkinter
・
frame, grid
・
画像表示
・
画像を切り取り表示
・
画像を保存
目的別
・
ステップ関数
・
矩形波, 三角波
・
1 of K 符号化法
・
線形補間
・
配列に番号をつける
・
ベクトル場を描く
・
線形回帰, 多項式回帰