2011-10-12 45 views
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)中多代理和機器人系統的設計模式。

這些系統*(多智能體和機器人系統)*有任何設計模式嗎? 或我的問題是一個錯誤?

注:我目前的設計模式是辛格爾頓管理我的成分

+3

「我目前的設計模式」?你沒有正確地做這種模式的事情。你不會購買設計模式。 –

+3

@ R.MartinhoFernandes:[從設計模式開始](http://codeshite.wordpress.com/2011/08/15/how-to-become-a-great-software-developer/);) – fredoverflow

+0

@R。 MartinhoFernandes:你是否期望我編寫我的所有代碼(12,000行代碼)?有問題的代碼只是一個僞代碼 – deepmax

回答

1

是的,有很多!關於多主體設計設計模式的學術作品的三個例子:

L. Sabatucci,M. Cossentino,S. Gaglio。代理設計模式的語義描述。在Proc。第六屆國際研討會「從代理理論到代理實施」(AT2AI-6)在第七屆國際自主代理和多代理系統聯合會議(AAMAS 2008)上,葡萄牙埃斯托里爾舉行。爲2008年

設計模式多智能體系統設計 西爾萬·索維奇 MICAI 2004年:進展人工智能在計算機科學,2004年,2004分之2972卷,352-361,DOI 講稿:10.1007/978-3 -540-24694-7_36 http://www.springerlink.com/content/bc32d3lda58rfxaj

設計模式的自組織多智能體系統 由Luca Gardelli,米爾科Viroli,安德烈Omicini IN:EEDA 工程學http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.95.3098

如果你看過去的AAMAS程序,你可以找到更多。