草庐IT

Actor-Critic

全部标签

java - 在 Java 中向 Actor 发送 PoisonPill

我开始通过将现有的JavaSE应用程序迁移到Akka来学习它。我正在使用Akka2.0.3。有一次我需要通过消息队列发送一个PoisonPill来停止actors。我的Actor是这样实例化的:ActorRefmyActor=actorSystem.actorOf(newProps(MyActor.class),"myActor");我尝试向其发送PoisonPill:myActor.tell(PoisonPill.getInstance());但我得到以下编译器错误:'tell(java.lang.Object)'in'akka.actor.ActorRef'cannotbeappl

java - 知道akka actor存在的三种方法

我正在研究akkaactors(JAVA),最近了解到有3种方法(可能更多)可以了解actor的存在。发送身份信息:ActorSelectionsel=actorSystem.actorSelection("akka://test/user/TestActor");AskableActorSelectionasker=newAskableActorSelection(sel);Futurefuture=asker.ask(newIdentify(1),newTimeout(5,TimeUnit.SECONDS));ActorIdentityidentity=(ActorIdentity

java - Akka.io,在类 Actor 上找不到匹配的构造函数

我正在尝试设置Akkaactor来处理游戏中的网络套接字。我已经定义了一个简单的actor来通过网络套接字发送消息:packageactors;importakka.actor.*;publicclassMyWebSocketActorextendsUntypedActor{publicstaticPropsprops(ActorRefout){returnProps.create(MyWebSocketActor.class,out);}privatefinalActorRefout;publicMyWebSocketActor(ActorRefout){this.out=out;}

java - Akka 远程 actor 服务器发现

我想在集群上部署一个用akka制作的远程actor软件。该系统由多个工作节点和一个主节点组成。问题是我无法提前知道集群节点的IP地址(但我知道它们都属于同一子网)。因此,我需要一种在启动后发现每个人的IP地址的好方法,以便在每个节点上创建正确的actor引用。我正在寻找在任何自由软件许可下分发的轻量级解决方案(我只需要它进行初始设置)。 最佳答案 前一段时间我创建了一个prototype旨在解决您的问题(请随意重用代码和/或做出贡献)。简单介绍一下它是如何工作的。它为每个参与者注册表(=节点)启动一个远程参与者。RegistryAc

rust学习基于tokio_actor聊天服务器实战(一 )

前言tokio是Rust中使用最广泛的异步Runtime,它性能高、功能丰富、便于使用,是使用Rust实现高并发不可不学的一个框架Actor背后的基本思想是产生一个独立的任务,该任务独立于程序的其他部分执行某些工作。通常,这些参与者通过使用消息传递信道与程序的其余部分进行通信。由于每个Actor独立运行,因此使用它们设计的程序自然是并行的。Actor的一个常见用法是为Actor分配你要共享的某些资源的专有所有权,然后让其他任务通过与Actor通信来间接访问彼此的资源。例如,如果要实现聊天服务器,则可以为每个连接生成一个任务,并在其他任务之间路由一个聊天消息的主任务。十分有用,因为主任务可以避免

Datawhale 强化学习笔记(四)结合策略梯度和价值函数的 Actor-Critic 算法

参考强化学习A3C算法策略梯度算法的缺点采样效率低。由于使用的是蒙特卡洛估计,与基于价值算法的时序差分估计相比其采样速度必然是要慢很多的,这个问题在前面相关章节中也提到过。高方差。虽然跟基于价值的算法一样都会导致高方差,但是策略梯度算法通常是在估计梯度时蒙特卡洛采样引起的高方差,这样的方差甚至比基于价值的算法还要高。收敛性差。容易陷入局部最优,策略梯度方法并不保证全局最优解,因为它们可能会陷入局部最优点。策略空间可能非常复杂,存在多个局部最优点,因此算法可能会在局部最优点附近停滞。难以处理高维离散动作空间:对于离散动作空间,采样的效率可能会受到限制,因为对每个动作的采样都需要计算一次策略。当动

c++ - 无法在 C++ Actor Framework 中声明模板类型的 actor

我正在尝试在C++actorframework(CAF)中声明一个强类型的actor,但由于某种原因我的代码无法编译。你能告诉我它有什么问题吗?#include"caf/all.hpp"templateclassDiscoverRequest{};templateclassDiscoverResponse{};templateclassDataRequest{};templateclassDataResponse{};templateusingBlockActor=caf::typed_actor>::with>,caf::replies_to>::with>>;错误信息:Block.

c++ - 理解返回 void 的 CAF actor 函数

我知道Actor可以通过功能来实现。以下代码片段来自CAFgithubexamples/hello_world.cpp.我知道第一个实现方法,它将几个消息处理程序绑定(bind)到actor。Actor将在后台处于事件状态并由事件触发,然后在调用self->quit时终止。但是第二个什么都不返回,它的消息处理程序在哪里?而且看起来没有任何类似self->quit的函数可以终止自身。hello_world返回时它还活着吗?或者它只是在then中完成响应后自行终止?behaviormirror(event_based_actor*self){return{[=](conststring&w

c++ - 如果发送方 Actor 已经离开,响应会发生什么?

考虑以下示例。hello_worldactor向mirroractor发送“hello”字符串,然后立即终止。从mirroractor返回的响应world会发生什么?忽略?留在hello_worldactor邮箱中?镜像能知道它的响应丢失了吗?behaviormirror(event_based_actor*self){return{[=](std::strings){return"world";}};}voidhello_world(event_based_actor*self,constactor&theMirror){self->send(theMirror,"hello");}

c++ - boost/STD/AKKA : How do I do actor programming in C++?

(改写问题和描述以便与S.O.兼容)奇怪的是,C++还没有被广泛采用、经过同行评审的actor模型库(按BOOST和STD的顺序)。我看到Theron,但它看起来像一个人和他的代码:无论它有多好,它都不是我希望生产代码依赖的东西。因此,如何在不使用未经证实的库的情况下使用C++进行Actor模型编程?我应该使用哪些BOOST类(class)?注意:我是在面对之前关于S.O.的一两个问题时问这个问题的。当人们搜索“actorC++”时就会出现,因为它们几乎没有吸引力。对于SEESHARP,有thisthread但对于C++,即使是获得中等关注度的问题也是如此thisguy,aquesti