我想创建不同类型的进程,其中代理互相交互。我想用特殊语言描述(定义,形式化)代理之间交互的过程。换句话说,我想提供一个代理可以以某种方式相互交互的环境,我想用适合的编程语言来描述交互方式。有这样的语言吗?
为了更具体和更抽象,我们可以将代理视为网站的用户。网站的发展取决于用户的行为(用户有一定的行动自由)。用户可以做什么以及由于他们的行动会发生什么应该用语言来描述。
答案 0 :(得分:2)
通常,可以通过接口中的方法修复可能的操作集。你是说在不同的时间,根据以前的行动,只应启用一些行动(比如在做其他事情之前必须登录)?
在这种情况下,您可以将其建模为组件(用户和系统),相互通信,并通过状态机或序列图对交互进行建模。如果这是你想要的,那么实际的实现可能就像将状态机编码到例如Java的。
或者您可能希望查看工作流框架。但我认为你需要更多地澄清你的要求。
或者你是说用户甚至可以引入新动作?
答案 1 :(得分:2)
Erlang是一个明显的答案,请参阅this 2004 paper等论文或Autonomous Agents上的Wikibooks文章。
如果您在.Net环境中工作愉快,especially .Net 4,请认真考虑Windows Workflow Foundation。上一代(2006)有一个有趣的paper on scaling and performance characteristics。