MultiAgent Systems和Distributed Computing之间有什么区别

时间:2016-03-14 20:19:20

标签: multithreading parallel-processing multiprocessing distributed-computing multi-agent

我很好奇分布式系统和多代理系统之间的差异。我见过许多基本的相似之处,我的思绪很混乱。

相似点:

1-有多个处理单元

2-都用于计算和模拟应用

3个处理单元交互

4-处理单元共同工作并成为强大的机器

5-单位使用自己的属性,如自己的特定时钟,自己的特定处理器速度,自己的内存等。

那有什么区别?

4 个答案:

答案 0 :(得分:2)

这是一个抽象和目的的问题。多代理系统采用基于复杂(即智能)组件的强大的高级抽象,这些组件通常在常规分布式系统中找不到,该系统仅在不同机器上分割简单number crunching算法而创建。 Multi-agent systems可用于解决单个代理或单个系统难以或不可能解决的问题。分布式计算可用于解决embarrassingly parallel的问题。当然,有相似之处,但如果你仔细观察它们的抽象,它们可以通过不同的算法和数据结构进行深刻的对比。

答案 1 :(得分:2)

在我看来,关键是(智能)代理商的定义。 S. Russel和P. Norvig在他们的"人工智能:现代方法"定义:

  

代理商可以被视为通过传感器感知环境并通过执行器对该环境起作用的任何事物。

因此,多代理系统将由一组代理人组成,这些代理人感知环境并对其采取行动,但在某种程度上保持独立和分散,并具有对环境的本地视图。

分布式系统(通常)定义为执行分布式计算的节点集合,链接在一起以增加处理能力。

在某种程度上,MAS是一个分布式系统,但具有一些使其独特的特性。它取决于系统的用法和特定实现,但在某种程度上这些定义有点重叠。

答案 2 :(得分:1)

当我考虑分布式计算时,负载被分配到多个部分,无论是多线程还是多个计算机。在分布式计算中,每个部分都是并行的,即它们几乎相同。收集和总结其他人的结果的最后一些计算部分可能与其他计算部分不同。

Multi Agent Systems顾名思义,它有多个代理可以协同工作来实现目标。与分布式计算不同,多代理系统可以在单个计算机上运行,​​但它肯定会有多个代理。这些代理可能是收集代理,报告代理,计算代理,......

答案 3 :(得分:1)

这个问题有点陈旧,但我仍然会对它进行拍摄。

我们可以从定义开始。

分布式系统[1]:

  

我们将分布式系统定义为位于联网计算机上的硬件或软件组件仅通过传递消息进行通信和协调其操作的系统。这个简单的定义涵盖了可以有效部署联网计算机的所有系统。

Multiagent系统[2]:

  

多智能体系统是包含多个自治实体的系统,这些实体具有不同的信息或不同的利益,或两者兼而有之。

所以,从根本上说,"分布式" " Multiagent"关注系统的体系结构。关注系统中使用的特定问题解决方法。

由于分发,系统由几台联网计算机组成。另一方面,多代理系统可以存在于网络环境中或单个非联网计算机上。

<强>参考

[1] G. Couloris,J。Dollimore,T。Kindberg,G。Blair,分布式系统概念与设计(第五版),2012,Addison-Wesley。

[2] Y. Shoham,K。Leyton-Brown,Multiagent Systems:算法游戏 - 理论和逻辑基础(修订版1.1),2010,Cambridge Univ。按