有没有人知道如何作为一个播放器运行OpenAI健身房环境之一.就像让一个人类玩家玩一轮推车杆一样?我已经看到有env.mode ='human'但我无法让它正常运行.我试图按照这里给出的例子https://www.pinchofintelligence.com/getting-started-openai-gym/,但它似乎对我不起作用.
您将给予的任何帮助将不胜感激.
谢谢
python machine-learning reinforcement-learning openair openai-gym
我试图使以下类不可变.我知道如何做到这一点的理论,但我认为我的实施是错误的.你能帮我吗?
谢谢
可变类:
class BankAccount {
private var balance = 0
def deposit(amount: Int) {
if (amount > 0)
balance += amount
}
def withdraw(amount: Int): Int =
if (0 < amount && amount <= balance) {
balance -= amount
balance
} else {
error("insufficient funds")
}
Run Code Online (Sandbox Code Playgroud)
不变的阶级
case class BankAccount(b:Int) {
private def deposit(amount: Int):BankAccount {
if (amount > 0)
{
return BankAccount(amount)
}
}
private def withdraw(amount: Int): BankAccount ={
if (0 < amount && amount <= balance) …Run Code Online (Sandbox Code Playgroud) 我试图将这个递归函数转换为尾递归函数
def sumOfFractions(n: Int): Double = {
require(n > 0, "Parameter n has to be greater than 0");
if (n==1)
1.0
else
1.0 / n + sumOfFractions(n - 1)
}
Run Code Online (Sandbox Code Playgroud)
我认为这个解决方案可行,但是当它运行时它只返回1.0
def sumOfFractions(n:Int):Double = {
def inner(acc:Int, n:Int): Double={
if(n <= 1)1.0
else
{
inner(acc+(1/n),n-1)
}
}
inner(0,n)
}
Run Code Online (Sandbox Code Playgroud)
我认为这是因为累加器没有正确更新,但我不明白为什么.代码在Scala中,但任何语言的示例都会有所帮助.