0

简短说明:

有 5 个机器人,每个机器人运行一个名为“Planner”的程序。每个机器人都有一个帖子,他们必须根据那个帖子做一个任务(从许多任务中选择它)。主循环是(伪代码):

while(true)
{
   /*1*/ WorldModel::getSingelton()->update();
   /*2*/ Post post = selectAPost();
   /*3*/ Task task = selectATask(&post);
   /*4*/ task.run();
}

而且,一个任务可能会运行另一个任务。事实上,在任务内部有一个决策树。

我有很多组件,例如:HardwareInterface、VisionInterface、WorldModel、Configuration、NetworkInterface,...。他们都做这个系统的一部分。

我的问题不是关于算法,而是关于 C++ (或 Java)中多代理和机器人系统的设计模式。

这些系统*(多代理和机器人系统)* 是否有任何设计模式?还是我的问题是错误的?

注意:我当前的设计模式是 Singleton 用于管理我的组件

4

1 回答 1

1

是的,有很多!关于多智能体设计的设计模式的三个学术著作示例:

L. Sabatucci、M. Cossentino、S. Gaglio。代理设计模式的语义描述。在过程中。在葡萄牙埃斯托里尔举行的第七届自主代理和多代理系统国际联合会议 (AAMAS 2008) 上的第六届国际研讨会“从代理理论到代理实施”(AT2AI-6)。2008 年 5 月。

多智能体系统设计的设计模式 Sylvain Sauvage MICAI 2004:计算机科学中的人工智能讲义,2004 年,第 2972​​/2004 卷,352-361,DOI:10.1007/978-3-540-24694-7_36 http://www .springerlink.com/content/bc32d3lda58rfxaj

自组织多智能体系统的设计模式,作者 Luca Gardelli、Mirko Viroli、Andrea Omicini 在:PROCEEDINGS OF EEDA http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.95.3098

如果您查看过去的AAMAS程序,您会发现更多。

于 2011-10-13T11:47:53.993 回答