• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
systemy wieloagentowe, systemy rozproszone, przetwarzanie rozproszone, obliczenia równoległe,migracja zada
ń
 , równowa
 Ŝ 
enie obci
ąŜ 
e
ń
 ,
Kamil PA
Ś
KO, Michał STANEK
*
 
WIELOAGENTOWA ARCHITEKTURA ROZPROSZONEGOSYSTEMU PRZETWARZANIA ZADA
Ń
Z DYNAMICZNYMRÓWNOWA
ś
ENIEM OBCI
Ąś
E
Ń
 
W artykule przedstawiona została architektura wieloagentowego systemu rozproszonego przetwa-rzania zada
ń
wraz z omówieniem algorytmu równowa
Ŝ
enia obci
ąŜ
enia poszczególnych w
ę
złów sys-temu. W pierwszej cz
ęś
ci artykułu opisane zostały zadania wykonywane przez agentów poszczególnetypy agentów, nast
ę
pnie przedstawiony został algorytm równowa
Ŝ
enia obci
ąŜ
enia systemu prowadz
ą 
-cy do minimalizacji
ś
redniego czasu wykonania zadania w. W ko
ń
cowej cz
ęś
ci artykułu zaprezento-wane zostały otrzymane wyniki oraz mo
Ŝ
liwe dalsze usprawnienia.
1.
 
WST
Ę
PAnalizuj
ą 
c histori
ę
rozwoju superkomputerów, wyró
Ŝ
ni
ć
mo
Ŝ
emy dwa sposoby ichprojektowania. Pierwszy, w którym bardzo du
Ŝ
a moc obliczeniowa wynika z zastoso-wania jednego bardzo szybkiego procesora, drugi zakładaj
ą 
cy wykorzystanie du
Ŝ
ejilo
ś
ci
ś
rednio wydajnych i powszechnie dost
ę
pnych procesorów w celu osi
ą 
gni
ę
ciawzrostu mocy obliczeniowej poprzez zrównoleglenie procesu obliczeniowego.Nie trzeba jednak kupowa
ć
superkomputera, aby móc korzysta
ć
z dobrodziejstwprzetwarzania równoległego. Rozwój sieci komputerowych w tym Internetu umo
Ŝ
liwiłpowstanie takich projektów jak np. SETI@HOME[1], w którym do analizy odbiera-nego przez radioodbiorniki sygnału wykorzystywana była moc obliczeniowa tysi
ę
cykomputerów u
Ŝ
ytkowników Internetu.
*
Politechnika Wrocławska, Instytut Informatyki Stosowanej, 50-370 Wrocław, Wyb. Wyspia
ń
skiego 27,e-mail: eximius@o2.pl, michal.stanek@pwr.wroc.pl, Koło Naukowe Sztucznej Inteligencji „CJANT"
 
W artykule przedstawiona jest architektura oraz algorytm równowa
Ŝ
enia obci
ąŜ
e-nia systemu rozproszonego przetwarzania zada
ń
umo
Ŝ
liwiaj
ą 
cego wykorzystanie mo-cy obliczeniowej wielu poł
ą 
czonych za pomoc
ą 
sieci komputerów.2.
 
BUDOWA SYSTEMURozproszony system przetwarzania zada
ń
tworz
ą 
poł
ą 
czone sieci
ą 
komputery zuruchomionym autorskim programem MARS (MultiAgent Resource Sharing System).Ka
Ŝ
dy komputer w takim systemie nazywa
ć
b
ę
dziemy dalej w
ę
złem. Zlecone zadaniaobliczeniowe mog
ą 
by
ć
wykonywane na ka
Ŝ
dym w
ęź
le systemu, istnieje jednak do-kładnie jeden w
ę
zeł, który poza wykonywaniem zada
ń
komunikuje si
ę
z u
Ŝ
ytkowni-kami w celu przyjmowania od nich
Ŝą 
da
ń
oraz zwracania rezultatów oblicze
ń
.W
ś
ród zada
ń
, jakie mog
ą 
zleci
ć
u
Ŝ
ytkownicy wyró
Ŝ
ni
ć
mo
Ŝ
emy zadania niepo-dzielne oraz n-dekomponowalne. Poprzez zadanie n-dekomponowalne rozumiemytakie zadanie, które mo
Ŝ
e zosta
ć
rozło
Ŝ
one na
n
zada
ń
niepodzielnych (np. poszuki-wanie liczb pierwszych, wyszukiwanie wzorca w tek
ś
cie, itp.). Zadania takie mog
ą 
 by
ć
nast
ę
pnie realizowane równolegle. Zadanie niepodzielne, to takie, które w cało
ś
cimusi zosta
ć
wykonane w sposób sekwencyjny.Celem działania systemu jest zrealizowanie wszystkich zleconych przez u
Ŝ
ytkow-ników zada
ń
w jak najkrótszym czasie. Oczywistym jest,
Ŝ
e cel ten zostanie osi
ą 
gni
ę
tytylko wtedy, kiedy wykorzystywana b
ę
dzie w sposób równomierny moc obliczeniowawszystkich w
ę
złów systemu[3].Zaproponowany system składa si
ę
z wielu współpracuj
ą 
cych ze sob
ą 
agen-tów (rys. 1), czyli programów „działaj
ą 
cych w pewnym
ś
rodowisku, zdolnych do ko-munikowania si
ę
mi
ę
dzy sob
ą 
, monitorowania swego otoczenia i podejmowania auto-nomicznych decyzji w celu osi
ą 
gni
ę
cia celu”[2]. Poni
Ŝ
ej opisane s
ą 
zadania jakie wy-konuj
ą 
poszczególni agenci.Dokładnie jeden
agent obsługuj
ą 
cy
, umieszczony w pierwszym w
ęź
le systemu,pełni funkcj
ę
po
ś
rednika pomi
ę
dzy klientami a systemem. Dla ka
Ŝ
dego zadania two-rzy odpowiedniego
agenta zadania
oraz wskazuje mu w
ę
zeł sieci, na którym ma roz-pocz
ąć
prac
ę
. Agent obsługuj
ą 
cy przekazuje równie
Ŝ
wyniki pracy agentów zada
ń
 odpowiednim klientom.
 Agent zada
ń
 
 jest podstawow
ą 
jednostk
ą 
systemu, wykonuje on zadania zleconeprzez klientów. Agent zada
ń
ma mo
Ŝ
liwo
ść
migracji pomi
ę
dzy w
ę
złami systemu [4]lub w przypadku zada
ń
n-dekomponowalnych utworzenie nowego agenta zadania iprzekazanie mu cz
ęś
ci realizowanego obecnie zadania, a nast
ę
pnie odebrania wyni-ków jego oblicze
ń
.Tablica, jest to współdzielona i dost
ę
pna dla wszystkich agentów przestrze
ń
infor-macyjna. W tablicy tej znajduj
ą 
si
ę
informacje na temat poziomu obci
ąŜ
enia poszcze-gólnych w
ę
złów obliczeniowych.
 
 
W
ę
zeł 2
System operacyjnyJAVAMARSTCP/IP
Agentsteruj
ą 
cyAgentzadania 1Agentzadania K
....
Tablica ogłosze
ń
Sie
ć
W
ę
zeł N
Agentobsługuj
ą 
cy
KlientKlient
System operacyjnyJAVAMARSTCP/IP
Agentsteruj
ą 
cyAgentzadania 1Agentzadania K
....
 
W
ę
zeł 1
.....
System operacyjnyJAVAMARSTCP/IP
Agentsteruj
ą 
cyAgentzadania 1Agentzadania K
....
 Rys. 1. Diagram przedstawiaj
ą 
cy poszczególne elementy systemu
3.
 
ALGORYTM RÓWNOWA
ENIA OBCI
Ą
E
 Ń
 Aby cel pracy systemu, czyli wykonanie wszystkich zleconych zada
ń
w mo
Ŝ
liwienajkrótszym czasie, mógł by
ć
zrealizowany konieczne jest dynamiczne równowa
Ŝ
enieobci
ąŜ
enia pracy ka
Ŝ
dego w
ę
zła systemu, co przejawia si
ę
mi
ę
dzy innymi kierowa-niem nowych zada
ń
na najmniej obci
ąŜ
one w
ę
zły systemu oraz przenoszenie zada
ń
zw
ę
złów najbardziej obci
ąŜ
onych na w
ę
zły o mniejszym obci
ąŜ
eniu. Od algorytmurównowa
Ŝ
enia obci
ąŜ
enia zale
Ŝ
y
ś
redni czas, po jakim klient otrzyma rozwi
ą 
zanieswojego zadania [3].Za dynamiczne równowa
Ŝ
enie obci
ąŜ
enia w systemie odpowiedzialni s
ą 
 
agencisteruj
ą 
cy
oraz
agent obsługuj
ą 
cy
. Zadanie agenta obsługuj
ą 
cego polega na wskazaniunowo tworzonym
agentom zada
ń
w
ę
złów systemu o najmniejszym obci
ąŜ
eniu. Zada-niem
agenta steruj
ą 
cego
jest badanie poziomu obci
ąŜ
enia w
ę
zła, na którym si
ę
znaj-duje i w przypadku stwierdzenia,
Ŝ
e poziom obci
ąŜ
enia innych w
ę
złów jest ni
Ŝ
szywybranie jednego
agenta zadania
i za
Ŝą 
danie od niego podzielenia zadania (w przy-padku zadania n-dekomponowalnego) lub wymuszenie migracji na inny w
ę
zeł (wprzypadku zadanie nie podzielnego). Dokładny algorytm działania
agenta steruj
ą 
cego
 opisany jest poni
Ŝ
ej.
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...