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

安徽省合肥市建设局网站开发网页系统一般多少钱

安徽省合肥市建设局网站,开发网页系统一般多少钱,wordpress 标签别名 id,上海市开办企业一窗网上服务前言#xff1a; 在现实的学习任务中#xff0c;环境 其中的转移概率P,奖赏函数R 是未知的#xff0c;或者状态X也是未知的 称为免模型学习#xff08;model-free learning#xff09; 目录#xff1a; 1: 蒙特卡洛强化学习 2#xff1a;同策略-蒙特卡洛强化学习 3 在现实的学习任务中环境  其中的转移概率P,奖赏函数R 是未知的或者状态X也是未知的 称为免模型学习model-free learning 目录 1:  蒙特卡洛强化学习 2同策略-蒙特卡洛强化学习 3 异策略- 蒙特卡洛强化学习 一  蒙特卡洛强化学习 在免模型学习的情况下策略迭代算法会遇到两个问题 1:  是策略无法评估             因为无法做全概率展开。此时 只能通过在环境中执行相应的动作观察得到的奖赏和转移的状态、                解决方案一种直接的策略评估代替方法就是“采样”然后求平均累积奖赏作为期望累积奖赏的近似这称为“蒙特卡罗强化学习”。 2:  策略迭代算法估计的是 状态值函数state value function V而最终的策略是通过 状态        动作值函数state-action value function Q 来获得。         模型已知时有很简单的从 V 到 Q 的转换方法而模型未知 则会出现困难。                解决方案所以我们将估计对象从 V 转为 Q即估计每一对 “状态-动作”的值函数。 模型未知的情况下我们从起始状态出发使用某种策略进行采样执行该策略T步 并获得轨迹 , 然后 对轨迹中出现的每一对 状态-动作,记录其后的奖赏之和,作为 状态-动作 对的一次 累积奖赏采样值. 多次采样得到多条轨迹后将每个状态-动作对的累积奖赏采样值进行平均。即得到 状态-动作值函数的估计. 二  同策略蒙特卡洛强化学习 要获得好的V值函数估计,就需要不同的采样轨迹。  我们将确定性的策略 称为原始策略 原始策略上使用 -贪心法的策略记为 以概率 选择策略1:           策略1    以概率    选择策略2        策略2均匀概率选取动作, 对于最大化值函数的原始策略 其中贪心策略中: 当前最优动作被选中的概率    每个非最优动作选中的概率 多次采样后将产生不同的采样轨迹。 因此对于最大值函数的原始策略,同样有 算法中每采样一条轨迹就根据该轨迹涉及的所有状态-动作对值函数进行更新 同策略蒙特卡罗强化学习算法最终产生的是E-贪心策略。然而引入E-贪心策略是为了便于策略评估而不是最终使用 三  同策略蒙特卡洛算法 Python # -*- coding: utf-8 -*-Created on Fri Nov 3 09:37:32 2023author: chengxf2 # -*- coding: utf-8 -*-Created on Thu Nov 2 19:38:39 2023author: cxf import random from enum import Enumclass State(Enum):状态空间XshortWater 1 #缺水health 2 #健康overflow 3 #溢水apoptosis 4 #凋亡class Action(Enum):动作空间Awater 1 #浇水noWater 2 #不浇水class Env():def reward(self, nextState):r -100if nextState is State.shortWater:r -1elif nextState is State.health:r 1elif nextState is State.overflow:r -1else:r -100return rdef action(self, state, action):if state is State.shortWater:#print(\n state--- ,state, \t action---- ,action)if action is Action.water :S [State.shortWater, State.health]proba [0.5, 0.5]else:S [State.shortWater, State.apoptosis]proba [0.4, 0.6]elif state is State.health:#健康if action is Action.water :S [State.health, State.overflow]proba [0.6, 0.4]else:S [State.shortWater, State.health]proba [0.6, 0.4]elif state is State.overflow:#溢水if action is Action.water :S [State.overflow, State.apoptosis]proba [0.6, 0.4]else:S [State.health, State.overflow]proba [0.6, 0.4]else: #凋亡S [State.apoptosis]proba [1.0]#print(\n S,S, \t prob ,proba)nextState random.choices(S, proba)[0]r self.reward(nextState)#print(\n nextState ,nextState,\t reward ,r)return nextState,rdef __init__(self):self.X Noneclass Agent():def initPolicy(self):self.Q {}self.count {}brandom True #使用随机策略for state in self.S:for action in self.A:self. Q[state, action] 0self.count[state,action] 0randProb [0.5,0.5]return self.Q, self.count, randProb,brandomdef randomPolicy(self,randProb,T):A self.Aenv Env()state State.shortWater #从缺水开始history []for t in range(T):a random.choices(A, randProb)[0]nextState,r env.action(state, a)item [state,a,r,nextState]history.append(item)state nextStatereturn historydef runPolicy(self,policy,T):env Env()state State.shortWater #从缺水开始history []for t in range(T):action policy[state]nextState,r env.action(state, action)item [state,action,r,nextState]history.append(item)state nextStatereturn historydef getTotalReward(self, t,T, history):denominator T -ttotalR 0.0for i in range(t,T):#列表下标为0 开始所以不需要t1r history[i][2]totalR rreturn totalR/denominatordef updateQ(self, t ,history,R):#[state,action,r,nextState]state history[t][0]action history[t][1]count self.count[state,action]self.Q[state, action] (self.Q[state,action]*countR)/(count1)self.count[state,action] count1def learn(self):Q,count,randProb,bRandom self.initPolicy()T 10policy {}for s in range(1,self.maxIter): #采样第S 条轨迹if bRandom: #使用随机策略history self.randomPolicy(randProb, T)#print(history)else:print(\n 迭代次数 %d%s ,\t 缺水,policy[State.shortWater].name,\t 健康,policy[State.health].name,\t 溢水,policy[State.overflow].name,\t 凋亡,policy[State.apoptosis].name)history self.runPolicy(policy, T)#已经有了一条轨迹了for t in range(0,T-1):R self.getTotalReward(t, T, history)self.updateQ(t, history, R)rand random.random()if rand self.epsilon: #随机策略执行bRandom Trueelse:bRandom Falsefor state in self.S:maxR self.Q[state, self.A[0]]for action in self.A:r self.Q[state,action]if rmaxR:policy[state] actionmaxR rreturn policydef __init__(self):self.S [State.shortWater, State.health, State.overflow, State.apoptosis]self.A [Action.water, Action.noWater]self.Q {}self.count {}self.policy {}self.maxIter 5self.epsilon 0.2if __name__ __main__:agent Agent()agent.learn()
http://www.w-s-a.com/news/856477/

相关文章:

  • 淄博网赢网站建设网站设计的技术选择
  • 建外贸网站 东莞厦门做网站最好的公司
  • 为您服务网站新网站做百度推广
  • 电子商务免费网站建设网站制作哪个好薇
  • 全面启动门户网站建设中小型企业建设一个网站大概需要多少钱
  • 建网站一般多少钱网站建设上传服务器步骤
  • 手机销售网站怎么做的网站推广优化建设方案
  • 做任务分享赚钱的网站德阳网站建设公司哪家好
  • 云南建设工程质量监督网站wordpress网站导航主题
  • 徐州网站建设哪家好薇手机开源网站代码
  • 更新网站要怎么做呢泰安市58同城招聘网
  • 溧阳网站建设价格企业网站设计费用
  • 我建设的网站打开很慢河北住房和城乡建设厅网站卡
  • 门户网站广告的特点有网站的建设初步定位
  • 建设网站第一步网页建设方案
  • 网站开发需要那些人才wordpress 小工具原理
  • 广州建设局官方网站佛山高端网站制作公司
  • 东莞哪里能学建设网站网站备案值得吗
  • 中山 网站建设 骏域小程序开发课程
  • 北京网站建设成都微商城app官方下载
  • 网站开发用户登陆的安全wordpress 开发网站
  • 网站建设容易出现的问题四川seo关键词工具
  • 做外单网站有哪些内容服务好的南京网站建设
  • 阜阳微商城网站建设百度网站两两学一做心得体会
  • 建设银行积分网站观光农业规划设计
  • jsp项目个人网站开发用织梦做网站有什么公司会要
  • 和田网站制作无限动力网站
  • 长沙口碑好网站建设企业网站 需求
  • 哪个网站建设公司wordpress陌陌主题
  • 湖滨区建设局网站北京国际建设集团网站