小编I_A*_*ary的帖子

强化学习中如何处理不同的状态空间大小?

我正在从事A2C强化学习,我的环境中代理的数量在增加和减少。由于代理数量的增加和减少,状态空间也会发生变化。我试图通过这种方式解决改变状态空间的问题:

  • 如果状态空间超过选择为 的最大状态空间,则将选择n_input多余的状态空间, np.random.choice其中随机选择提供了一种在将状态空间转换为概率后从状态空间创建随机样本的方法。

  • 如果状态空间小于最大状态,我用零填充状态空间。

    def get_state_new(state):
     n_features =  n_input-len(get_state(env))
     # print("state",len(get_state(env)))
     p = np.array(state)
     p = np.exp(p)
     if p.sum() != 1.0:
         p = p * (1. / p.sum())
     if len(get_state(env)) > n_input:
         statappend = np.random.choice(state, size=n_input, p=p)
         # print(statappend)
     else:
         statappend = np.zeros(n_input)
         statappend[:state.shape[0]] = state
     return statappend
    
    Run Code Online (Sandbox Code Playgroud)

它有效,但结果不如预期,我不知道这是否正确。

我的问题

有没有参考论文处理这样的问题以及如何处理状态空间的变化?

python reinforcement-learning tensorflow

6
推荐指数
1
解决办法
694
查看次数

为什么 PyCharm 中不断出现相同的错误“错误运行未知错误”?

我正在努力,但我时不时地PyCharm,遇到同样的问题。error running Unknown error我已经更新到最新版本了。而且,我在训练过程中系统崩溃了,卡在了Waiting for process detach。另外,当我关闭它并重新运行它时,它显示Could not load dynamic library.

更新:除了上面的问题之外,有时我在控制台上看不到任何输出。我已经重新安装了它,但没有成功。

新更新 将PyCharm从 更新到 后2021.1.12021.1.2似乎问题已经解决。

在此输入图像描述

在此输入图像描述

在此输入图像描述

gpu pycharm python-3.x

5
推荐指数
0
解决办法
1152
查看次数

确认不起作用

我需要在我的数组中推送新对象.每个对象都包含属性(名称,sName,年龄,职业和show方法,它们显示所有用户信息).数组由用户填写.(提示)但是确认有问题.当我推'取消'它仍然继续工作.这是我的代码.

   var staff = [];


   var askAgain = true;


    while(askAgain==true) {


      var employee = {
      name: prompt("enter the name of the  employee"), 
      sName: prompt("enter the sName of the employee"), 
      age: prompt("enter the age of the  employee"), 
      occupation: prompt("enter the occupation of the  employee"),
      show: function(){

        document.write(' employee:  ' + staff[1].name + ' ' + staff[1].sName + ', ' + staff[1].age + ', ' + staff[1].occupation + ' <br> ' );} }


      staff.push(employee);



     console.log(staff);



    window.confirm( "Would you like to go again?" …
Run Code Online (Sandbox Code Playgroud)

javascript

2
推荐指数
1
解决办法
45
查看次数

如何同时运行多个python脚本?

我在这里阅读了该问题的一些答案,但没有一个对我有用。我有不同的训练文件,需要三天才能完成,但如果我同时运行这些文件,我可以减少时间。此外,当我完成所有方法的训练时,我需要直接运行测试文件。

import os
import subprocess,_multiprocessing
import sys
import gc # Garbage Collector
version = ".".join(map(str, sys.version_info[:3]))
if len(version) >3:
   version=version[:-2];
current_dir = os.path.dirname(os.path.realpath(__file__))
# multiprocessing.Process(["python"+version, os.path.join(current_dir, "main_s_train.py"),os.path.join(current_dir, "SC.py")])
gc.collect()
bots = [subprocess.check_call(["python"+version, os.path.join(current_dir, "main_train.py")]),subprocess.check_call(["python"+version, os.path.join(current_dir, "main_s_train.py")]),subprocess.check_call(["python"+version, os.path.join(current_dir, "SC.py")]),subprocess.check_call(["python"+version, os.path.join(current_dir, "MC.py")])]
modules = map(__import__,bots)
import multiprocessing,subprocess
for bot in (bots):
   p = multiprocessing.Process(target=lambda: __import__(bot))
   p.start()
Run Code Online (Sandbox Code Playgroud)

有没有同时运行多个Python脚本的建议?

python-3.x

2
推荐指数
1
解决办法
9459
查看次数