第五次專案 連續動作空間上求解RL

2021-10-07 12:57:15 字數 2312 閱讀 3384

in [1]

!pip uninstall -y parl # 說明:aistudio預裝的parl版本太老,容易跟其他庫產生相容性衝突,建議先解除安裝

!pip install gym

!pip install paddlepaddle==1.6.3

!pip install parl==1.3.1

# 說明:安裝日誌**現兩條紅色的關於 paddlehub 和 visualdl 的 error 與parl無關,可以忽略,不影響使用

in [ ]

# 檢查依賴包版本是否正確

!pip list | grep paddlepaddle

!pip list | grep parl

in [2]

import gym

import numpy as np

from copy import deepcopy

import paddle.fluid as fluid

import parl

from parl import layers

from parl.utils import logger

in [3]

actor_lr = 1e-3 # actor網路的 learning rate

critic_lr = 1e-3 # critic網路的 learning rate

gamma = 0.99 # reward 的衰減因子

tau = 0.001 # 軟更新的係數

memory_size = int(1e6) # 經驗池大小

memory_warmup_size = memory_size // 20 # 預存一部分經驗之後再開始訓練

batch_size = 128

reward_scale = 0.1 # reward 縮放係數

noise = 0.05 # 動作雜訊方差

train_episode = 6000 # 訓練的總episode數

(1)model

model用來定義前向(forward)網路,使用者可以自由的定製自己的網路結構

in [4]

class model(parl.model):

def __init__(self, act_dim):

self.actor_model = actormodel(act_dim)

self.critic_model = criticmodel()

def policy(self, obs):

return self.actor_model.policy(obs)

def value(self, obs, act):

return self.critic_model.value(obs, act)

def get_actor_params(self):

return self.actor_model.parameters()

class actormodel(parl.model):

def __init__(self, act_dim):

hid_size = 100

self.fc1 = layers.fc(size=hid_size, act='relu')

self.fc2 = layers.fc(size=act_dim, act='tanh')

def policy(self, obs):

hid = self.fc1(obs)

means = self.fc2(hid)

return means

class criticmodel(parl.model):

def __init__(self):

hid_size = 100

self.fc1 = layers.fc(size=hid_size, act='relu')

self.fc2 = layers.fc(size=1, act=none)

def value(self, obs, act):

concat = layers.concat([obs, act], axis=1)

hid = self.fc1(concat)

q = self.fc2(hid)

q = layers.squeeze(q, axes=[1])

return q

(2)algorithm

第五次團隊作業 專案展示

摘要 本文介紹專案需要展示的內容,以及要求。將小組所做的產品以presentation的形式在課堂上公開展示。內含包含 1 每個組每個人都得上台 每個人有單獨的一張slide封面,讓我知道演講者是誰。根據團隊專案的情況安排每個組員的演講內容。注 不是每個人只講自己負責的內容,否則內容連貫性無法保證。...

第五次作業 Alpha專案測試

格式描述 這個作業屬於哪個課程 2019秋軟工17級系統分析與設計 這個作業要求在 作業要求 團隊名稱 楊榮模傑和他的佶祥虎 這個作業的目標 測試其他組專案並寫出感受 本人資訊 姓名楊模 學號201731062424 所在團隊的名稱 楊榮模傑和他的佶祥虎 a.所選項目的團隊資訊 所選團隊名稱 猿族崛...

C 第五次實驗 專案2 陣列選擇

一 問題及 檔名稱 3.obj 作 者 謝澤文 完成日期 2016 年 5 月 9 日 版 本 號 v1.0 對任務及求解方法的描述 使用 陣列,迴圈,判斷語句。輸入描述 十個隨機數 問題描述 陣列選擇 程式輸出 不重複的數 問題分析 注意迴圈的範圍 演算法設計 for迴圈和if判斷。include...