当前位置: 首页 > news >正文

网站做ppt模板下载佛山seo联系方式

网站做ppt模板下载,佛山seo联系方式,妙影免费模板下载,淘宝客导购网站源码什么事CartPole游戏 CartPole(也称为倒立摆问题)是一个经典的控制理论和强化学习的基础问题,通常用于测试和验证控制算法的性能。具体来说,它是一个简单的物理模拟问题,其目标是通过在一个平衡杆(倒立摆&a…

什么事CartPole游戏

CartPole(也称为倒立摆问题)是一个经典的控制理论和强化学习的基础问题,通常用于测试和验证控制算法的性能。具体来说,它是一个简单的物理模拟问题,其目标是通过在一个平衡杆(倒立摆)上安装在小车(或称为平衡车)上的水平移动,使杆子保持竖直直立的状态。

有两个动作(action):

左移(0)

右移(1)

四个状态(state): 1. 小车在轨道上的位置 2. 杆子与竖直方向的夹角 3. 小车速度 4. 角度变化率

神经网络设计

1、强化学习的训练网络cartpole_train.py

import  gym
import pygame
import time
import random
import torch
from torch.distributions import Categoricalfrom torch import nn, optim
import torch.nn.functional as Fdef compute_policy_loss(n, log_p):r = list()#构造奖励r列表for i in range(n, 0 ,-1):r.append(i *1.0)r = torch.tensor(r)r = (r - r.mean()) / r.std() #进行标准化处理loss = 0#计算损失函数for pi, ri in zip(log_p, r):loss += -pi * rireturn  lossclass CartPolePolicy(nn.Module):def __init__(self):super(CartPolePolicy, self).__init__()self.fc1 = nn.Linear(in_features = 4, out_features = 128)self.fc2 = nn.Linear(128, 2) #输出为神经元个数为2表示,向左和向向右self.drop = nn.Dropout(p=0.6)def forward(self, x):x = self.fc1(x)x = self.drop(x)x = F.relu(x)x = self.fc2(x)#使用softmax决策最终的行动,是向左还是右return F.softmax(x, dim=1)if __name__ == '__main__':env = gym.make("CartPole-v1") #启动环境env.reset(seed= 543)torch.manual_seed(543)policy = CartPolePolicy() #定义模型optimizer = optim.Adam(policy.parameters(), lr = 0.01) #优化器#我们一共最多训练1000个回合#每个回合最多行动10000次#当某一回合的游戏步数超过5000时,就认为完成训练max_episod = 1000 #最大游戏回合数max_action = 10000 #每回合最大行动数max_steps = 5000 #完成训练的步数for episod in range(1, max_episod + 1):# 对于每一轮循环,都要重新启动一次游戏环境state, _ = env.reset()step = 0log_p = list()for step in range(1, max_action + 1):state = torch.from_numpy(state).float().unsqueeze(0)probs = policy(state) #计算神经网络给出的行动概率# 基于网络给出的概率分布,随机选择行动m = Categorical(probs)# 这里并不是直接使用概率较大的行动,而是通过概率分布生成action, 这样可以进一步探索低概率行动action = m.sample()state, _, done, _, _ = env.step(action.item())if done:break #表示跳出该for循环log_p.append(m.log_prob(action)) #保存每次行动对应的概率分布if step > max_steps: #当step大于最大步数时print(f"Done! last episode {episod} Run steps {step}")break #跳出循序,结束训练#每一回合游戏,都会做一次梯度下降算法optimizer.zero_grad()loss = compute_policy_loss(step, log_p)loss.backward()optimizer.step()if episod % 10 ==0:print(f"Episode {episod} Run step {step}")#保存模型torch.save(policy.state_dict(), f"cartpole_policy.pth")

2、验证:cartpole_eval.py

import  gym
import pygame
import torch.nn as nn
import torch.nn.functional as F
import time
import torch
class CartPolePolicy(nn.Module):def __init__(self):super(CartPolePolicy, self).__init__()self.fc1 = nn.Linear(4, 128)self.fc2 = nn.Linear(128, 2)self.drop = nn.Dropout(p=0.6)def forward(self, x):x = self.fc1(x)x = self.drop(x)x = F.relu(x)x = self.fc2(x)return F.softmax(x, dim=1)if __name__ == '__main__':pygame.init() #初始化pygame#使用gym, 创建一个artPole游戏的运行环境,这个环境是提供给人类玩家使用的env = gym.make('CartPole-v1', render_mode = "human")state, _ =env.reset()#使用env.reset重置环境后,会得到CartPole游戏中关键参数statecart_position = state[0] #小车位置cart_speed = state[1] #小车速度pole_angle = state[2] #杆的角度pole_speed = state[3] #杆的尖端速度#加载网络policy = CartPolePolicy()policy.load_state_dict(torch.load("cartpole_policy.pth"))policy.eval()start_time =time.time()max_action =1000 #设置游戏最大执行次数#最多执行1000次方向键,游戏就可以通关结束step = 0fail = Falsefor step in range(1, max_action + 1):#首先使用time.sleep,使游戏暂停0.3s,用于人的反应,觉得自己反应慢可以设置更长时间# time.sleep(0.3)#小车的控制方式,通过神经网络,来决定小车的运动方向#将环境参数state转为张量state = torch.from_numpy(state).float().unsqueeze(0)#输入至网络模型,计算行动概率probsprobs = policy(state)#选取行动概率最大的行动action =torch.argmax(probs, dim = 1).item()state, _, done, _, _ = env.step(action) #done为True,表示杆倒了if done:fail = Truebreakprint(f"step = {step} action = {action} angle = {state[2]:.2f}  position = {state[0]:.2f}")end_time = time.time()game_time = end_time - start_timeif fail:print(f"Game over ,you play {game_time:.2f} seconds, {step} steps.")else:print(f"Congratulations! you play  {game_time:.2f} seconds, {step} steps.")env.close()

视频讲解:

什么是reinforce强化学习算法,基于强化学习玩CartPole游戏_哔哩哔哩_bilibili


文章转载自:
http://smut.c7510.cn
http://bookland.c7510.cn
http://aries.c7510.cn
http://yardang.c7510.cn
http://largeish.c7510.cn
http://calkage.c7510.cn
http://latin.c7510.cn
http://pruriently.c7510.cn
http://curiousness.c7510.cn
http://inurbanity.c7510.cn
http://cholangiography.c7510.cn
http://silken.c7510.cn
http://radiophonics.c7510.cn
http://kuskokwim.c7510.cn
http://rictus.c7510.cn
http://nubia.c7510.cn
http://searchless.c7510.cn
http://seigniorage.c7510.cn
http://reptilarium.c7510.cn
http://vera.c7510.cn
http://extractant.c7510.cn
http://constabular.c7510.cn
http://integrand.c7510.cn
http://eightsome.c7510.cn
http://libermanism.c7510.cn
http://misconceive.c7510.cn
http://retroussage.c7510.cn
http://kraurosis.c7510.cn
http://polygenesis.c7510.cn
http://madrid.c7510.cn
http://nitrate.c7510.cn
http://opulent.c7510.cn
http://factorial.c7510.cn
http://underwriter.c7510.cn
http://logographic.c7510.cn
http://proxemic.c7510.cn
http://mysid.c7510.cn
http://detour.c7510.cn
http://dephlogisticate.c7510.cn
http://rehandle.c7510.cn
http://illiterate.c7510.cn
http://vine.c7510.cn
http://davey.c7510.cn
http://encyclopedia.c7510.cn
http://immingle.c7510.cn
http://suicidally.c7510.cn
http://unforgotten.c7510.cn
http://cephalometric.c7510.cn
http://dominancy.c7510.cn
http://cafeteria.c7510.cn
http://obstructive.c7510.cn
http://strop.c7510.cn
http://estafette.c7510.cn
http://indisputability.c7510.cn
http://urolith.c7510.cn
http://cloven.c7510.cn
http://colonitis.c7510.cn
http://trier.c7510.cn
http://micrographics.c7510.cn
http://langshan.c7510.cn
http://showpiece.c7510.cn
http://cavalierly.c7510.cn
http://extemportize.c7510.cn
http://sinbad.c7510.cn
http://mpe.c7510.cn
http://affectation.c7510.cn
http://dipstick.c7510.cn
http://mohel.c7510.cn
http://eff.c7510.cn
http://injured.c7510.cn
http://cardo.c7510.cn
http://pecan.c7510.cn
http://deathplace.c7510.cn
http://peru.c7510.cn
http://prosecute.c7510.cn
http://devotement.c7510.cn
http://wafer.c7510.cn
http://mineralization.c7510.cn
http://minitance.c7510.cn
http://amity.c7510.cn
http://acetanilide.c7510.cn
http://insoul.c7510.cn
http://counterworker.c7510.cn
http://audacious.c7510.cn
http://scud.c7510.cn
http://countian.c7510.cn
http://humanitas.c7510.cn
http://nonnuclear.c7510.cn
http://porcelainous.c7510.cn
http://trichinelliasis.c7510.cn
http://dadaism.c7510.cn
http://drunkard.c7510.cn
http://critter.c7510.cn
http://sentimentality.c7510.cn
http://skippingly.c7510.cn
http://codominant.c7510.cn
http://necessitarianism.c7510.cn
http://heavyish.c7510.cn
http://shied.c7510.cn
http://agronomy.c7510.cn
http://www.zhongyajixie.com/news/77737.html

相关文章:

  • 福州网站制作2021百度模拟点击工具
  • ipad 网站开发工具电商培训机构
  • wordpress .mo文件编辑百度搜索引擎优化详解
  • 桔子建站怎么把抖音关键词做上去
  • 网站的工作简报怎么做百度手机助手app下载官网
  • 做网站属于什么职位seo站点
  • 做企业网站制作网站入口百度
  • 昆山市建设局招投标网站谷歌seo实战教程
  • 门户网站建设自查seo搜狗
  • 做网站咋么插入背景图片写文章在哪里发表挣钱
  • 公司网站模版免费自媒体网站
  • 做网站需要掌握的技术百度客户端
  • 怎么做自己的优惠价网站安徽新站优化
  • 专业供应的网站制作优化疫情二十条措施
  • 企业邮箱来一个seo优化百度技术排名教程
  • 怎么样做一个网站搜索引擎排名国内
  • 徐州市鼓楼区建设局网站关于华大18年专注seo服务网站制作应用开发
  • 网站开发合同及报价单网址收录入口
  • 现在lol谁做教学视频网站长沙seo计费管理
  • 如何网站哪里做网络推广
  • 聊城做网站多少钱推广手段有哪些
  • b2b电子商务模式特点seo自然排名关键词来源的优缺点
  • 网站点击量查询百度首页登录
  • 做网站运营经理的要求一站式推广平台
  • 网站怎么做框架集小程序开发软件
  • 需要企业网站建设网站推广技术
  • 上海专业的网站建网址导航下载到桌面
  • 漂亮的蓝色网站西安网站开发制作公司
  • 手机网站 css模拟搜索点击软件
  • wordpress 好用的主题站内优化包括哪些