Documente Academic
Documente Profesional
Documente Cultură
=
j m k i
j m k i
def
m k
a R a
a R a
j i H
,
,
,
, 0
, 1
] , [ , N j i , 1 , e . (2.2)
Aceast matrice este simetric (evident dac b aR
m k,
atunci a bR
m k,
) iar diagonala principala
are valoarea 1 (fiecare agent se gaseste in acelasi grup cu el insusi). Acest lucru ne permite sa
specificam complet configuraia
m k
P
,
, asa cum am demonstrat urmarind rezultatul (vezi
Anexa )
16
Teorema 1. Fie } ..., , , {
2 1 M
A A A P = o configuratie de grupare a unui set de agenti
N
A
unde
m
A
este un cluster, M m , 1 e :
M
m
m N
A
1 =
= A
. Construim urmatoarea matrice
N N
H
e } 1 , 0 {
=
_ e -
inrest
A a a t astfelinca M m
j i H
m j i
def
, 0
} { , 1 , 1
] , [
,
Atunci P este unic determinat de H.
Acest rezultat arat c relaia
m k
R
,
definit de includerea agentilor in acelai grup este unic
asignat configuratiei gruparii
m k
P
,
(nici o alt configuraie nu poate fi descris de
m k
R
,
).
Astfel, fiecare relaie de interconectare
m k
R
,
poate fi in mod unic asociat gradului de apariie
asignat configuratiei
m k,
o . Impreun, pot defini asa numita o -distinct al relaiei fuzzy
k
R ,
cu ajutorul egalitii (=) in loc de ( > ) in definitia clasica a o - distincta. Deci, relaia
m k
R
,
este
o relatie o - distincta a multimii
k
R definita pentru
m k,
o
In consecin, putem constui o relatie fuzzy (binar) elementar
m k,
R a carei matrice din care
face parte este exprimat ca un produs intre caracteristicile matricei
m k
H
,
, definit de (2.2), si
gradul de apariie
m k,
o , care este:
m k m k
H
, ,
o . Acest set fuzzy
N N
A A este de asemenea in
mod unic asociat cu
m k
P
,
.
Dac K k , 1 e este pstrat fix, dar m variaz in domeniul
k
M , 1 , atunci este generata o familie
de relatii fuzzy elementare:
k
M m
m k
, 1
,
} {
e
R . In mod natural
k
R este apoi definite ca o reuniune
fuzzy:
k
M
m
k,m
def
k
1 =
= R R (2.3)
De obicei, relatia (2.3) este calculat folosind operatorul max (altfel niste alte definitii ale
reuniunii fuzzy pot fi considerate bune). Acest lucru implic ca matricea din care face parte
k
R este exprimata dup cum urmeaz(prin folosirea operatorului max)
{ }
N N
m k m k
M m
def
k
H
k
e
9 e - =
, ,
, 1
max o M
(2.4)
Unde - max are effect asupra elementelor matricei si nu la nivelul global pe matrici.Ecuatiile
(2.3) si (2.4) sunt apropiate de forma rezolutiei al
k
R , aa cum este definit n [16]. Oricum,
niste coeficieni
m k,
o (in general cu valori mici) pot sa dispar din gradele de legatura ale
k
R .
De obicei, pn cnd toate matricile
m k m k
H
, ,
o sunt simetrice, forma
k
M (2.4) este de asemenea
simetric, ceea ce nseamn c
k
R este o relaie fuzzy simetric. Este evident reflexivitatea
fuzzy (elementele nenule pe diagonal principal). Astfel,
k
R reprezint cel puin o relaie
apropiat. Maniera n care grasele de apariie sunt asignate partitiilor afecteaz foarte mult
calitatea relatiei fuzzy. Desi toti o -sharp-cuts pot fi relaii echivalente, nu este necesar ca
rezultatul relatiei fuzzy s fie unul similar (reflexivitatea fuzzy, simetria si tranzitivitatea). Dar
este cel putin o relatie apropiat, aa cum este exprimat in contnuare:
17
( )
k k k
M M M - > , (2.5)
Este mult mai dificil de asigurat.
Aici - > acioneaz asupra elementelor matricii, i relev alctuirea relaiilor fuzzy. n
cazul tranzitiei max-min, aceasta este exprimat in mod similar la multiplicarea clasic a
matricilor, unde operatorul max este folosit in loc de adunare si min in loc de produs:
( ) { } ] , [ ], , [ min max ] , [ ] , [
, 1
j n n i j i j i
k k
N n
k k k
M M M M M
e
= > , (2.6)
Unde N j i , 1 , e i ] , [ j i M este elementul curent al matricii M .
Ecuaiile (2.5) sau (2.6) exprim o procedur interesant de a crea relatii similaritate ncepnd
cu unele apropiate, prin folosirea noiunii de final tranzitiv. Un final tranzitiv a unei relaii
fuzzyR este, prin definiie, ralatie fuzzy minim tranzitiv care include R . (Aici minimul este
considerat este luat n considerare prin respectarea incluziunii pe seturi fuzzy.)
In mod interesant, compunerea relatiilor fuzzy pstreaz relexivitatea si simetria, dac relaiile
nu sunt neaprat identice, si pstreaz la acelasoi nivel tranzitivitatea, dac relaiile sunt
identice.
Teorema 2. Fie Q si R relaii binare fuzzy i
Q
M , respectiv
R
M matricile lor de legtur
N N . Notm cu C compunerea: R Q C = . Atunci
R Q C
M M M = (produsul fuzzy) si:
1. Dac Q i R sunt relaii reflexive, atunci C este de asemenea reflexiv.
2. Dac Q i R sunt relaii simetrice, atunci C este de asemenea simetric.
3. Dac R Q = i R este o relaie tranzitiv, atunci C este tranzitiv.
Este foarte important sa se pastreze vecintatea relaiei
k
R prin compunerea cu ea nsei,
deoarece urmtoarea procedur simpl ne permit s generm o relaie de similaritate. Primul
pas const n 2 operaii: o multiplicare fuzzy a matricei si o reuniune fuzzy.
1.Se calculeaz relaia fuzzy : ) (
k k k k
R R R Q = .
2. Dac
k k
R Q = , nlocuim
k
R cu
k
Q i mergem la pasul 1Altfel daca
k k
R Q = este ultima
tranzitie pentru
k
R initial
Exprimata de operatorii max si min ca in (2.6) i (2.4)). Al doilea pas este un test simplu si
eficient al tranzitivitatii fuzzy, pentru orice relaie, evitnd inegalitile (2.5) sau (2.6).
Similaritatea este de asemenea important in acest context, pn ce se arat caracterul holonic
al MAS. Deocamdat, a fost construit o hart bijectiv (corespunztoare teoremei 1) ntre
K k
k
, 1
} {
e
= P P si
K k
k
, 1
} {
e
= R R , numit T.
18
2.8 Masura fuzificrii
Urmatorul pas are ca scop construirea masurii de fuzificare a relaiilor fuzzy pe
N N
A A ,
care va fi folosit pentru selectarea relaiei fuzzy minimizat in interiorul setului
K k
k
, 1
} {
e
= R R .
O clas important const n masuri care evalueaz fuzificarea unui set fuzzy prin luarea n
consideraie a setului si a complementului. De la aceast clas, am selectat Masura lui
Shannon, derivat din functia lui Shannon generalizat:
(2.7)
| |
+ =
+
9
=
M
m
m m m m
def
M
M
x x x x x S x x
S
1
2 2 1
. ) 1 ( log ) 1 ( log ) ( ) ,..., (
] 1 , 0 [ :
(2.8)
Aceast funcie are un maxim unic (egal cu M, pentru 2 / 1 =
m
x , M m , 1 e ) i
M
2 minim de nul
(in vrful hipercurbei [0,1]
M
). De exemplu, dac M=2, este generat suprafaa descris mai
jos. n general, S genereaz un hiper-plan in interiorul spaiului Euclidian
M
9 , dar toate
miminele sunt zero.
Dac argumentul acestei funcii este o distributie a probabilitii, aceasta se refer la entropia
Shannon. Dac argumentul este o functie de legarur ce defineste un set fuzzy, aceasta se
refer la entropia fuzzy (Shannon).Rezult entropia fuzzy
(2.9)
Evident, aceast funcie are un singur maxim iar toate minimele sunt nule, cu respectarea
variabilelor ] , [ j i
k
M , dimeniunea sa fiind
2
N M =
Dou argumente principale, motiveaz aceast alegere. Primul,
S ne ajut sa realizm o
conexiune direct ntre how fuzzy este un set si ct incertitudine conine. Astfel, de cnd
S
calculeaz cantitatea de informaie a unei entiti informaionale, denumit un set fuzzy, setul
de funcii de minimizare fuzzy va conine informaia minima a incertitudinii. Al doilea,
ignorana total (sau incertitudinea) informaiei este dat de singurul maxim al
S , cu toate
c punctele minime multiple (acum, varfurile hiper-cubului) apartin unei zone de cunotere
perfect (ca fiind posibil cel putin o informaie incert). ntre ignorana total(care in mod
interesant este unic) i zona de cunostere perfect (care este ntotdeauna multipl) exist
multe puncte intermediare asociate cu diferite grade de incertitudine ale cunoterii asupra
entitii.
19
Mai mult, se poate determina fora de conducere catre cunoatere?, prin calculul gradientului
entropiei fuzzy a lui Shanon. Este interesant de remarcat c amplitudinea acestei fore (norma
acesteia) are expresia
= =
(
= V
N
i
N
j k
k
k
j i
j i
S
1 1
2
2
] , [
] , [ 1
log ) (
M
M
R
, (2.10)
Creste foarte rapid in apropierea oricarui punct de cunoastere perfect.(vezi figura 6.b de mai
sus).
2.9 Masura I ncertitudinii
Cu toate c exist un singur maxim al entropiei fuzzy al lui Shannon, descris de relaia
(2.10), cutm unul din minimul su. Msur necesar a incertitudinii, V, este obinut de
compunerea
= , where K k
o
, 1 e . (2.11)
Noua problema (2.11) nu necesit un algoritm deoarece k este un numr finit al tuturor
minimelor, cu tot cu multiplu, sunt zero i localizate n vrful hyper-curbei
2
] 1 , 0 [
N
. Probleme
pot aparea numai dac k este foarte mare. n acest caz, pot fi folositi algoritmi genetici sau
algoritmi de regenerare pentru a gsi minimul. Potrivit interpretrilor anterioare
0
k
P este cea
mai mic valoare fuzzy, cea mai mica incertitudine a familiei de forme a planului- surs i cea
mai atras de zona de cunotine. Corespondena relaiei fuzzy optime
0
k
R poate fi util n
construirea celui mai putin incert plan al MAS.
2.10 Aparitia grupurilor de holoni
Odat ce a fost selectat o pereche (
0
k
P ,
0
k
R ) pentru rezolvarea problemei (2.11) (pot fi
posibile mai multe optiuni, pn de este disponibil un minim multiplu), ar trebui identificat
un plan surs corespunztor. Sunt posibile 2 variante:
Afiarea tuturor configuraiilor al
0
k
P (prin extragerea, eventual, a acestor configuraii pentru
care gradul de apariie tinde ctre zero n
0
k
R )
} , , , {
0
0 0 0 0
, 2 , 1 ,
k
M k k k k
P P P = P
Construirea altor planuri surs prin utilizarea lui
0
k
R i nu a lui
0
k
P .
Exist un motiv pentru a doua optiune. De obicei, informaia iniial disponibil referitoare la
MAS este att de vag nct este imposibil s se construiasc vreun plan-surs solid. Acesta
20
este cazul, de exemplu, cnd putem seta gradul de aparteneta corespunztor grupurilor create
numai de cuplurile de agenti. Dar este de dorit identificarea a cel putin unui plan surs pentru
rezolvarea problemei.
Ideea principala pentru construirea diferitelor planuri-surs este s se evaluezeo -
disponibilitate al
0
k
R i aranjarea lor n ordine descresctoare a relaiilor lor. Aceast ordine
reprezint tot ce poate specifica ncepnd cu informaia iniial referitoare la MAS. Cand
construim un model, pn cand nu este luat n consideratie perioada de evoluie n MAS, nu
este inc disponibil criteriul de ordonare dup timp. Pentru acest aspect al cercetrii vezi [7].
Astfel, planurile nu sunt construibile cu acest model. Oricum, este posibil ca un plan s
coincid cu plan surs generat n aceast manier (n special cnd relaia este similar cu alta)
Potrivit teoremei 1, fiecare matrice
o ,
0
k
H n (2.12) genereaz o singur configuraie a gruparii
aginilor peste
N
A . Astfel,apar doua categorii ale planului surs: echivalena sau planuri
surs holonice (atunci cnd
0
k
R e o relaie de similitudine) i planuri surs compatibile
(atunci cnd
0
k
R reprezint doar o relaie apropiat).
Cnd relaia fuzzy associat
0
k
R este una de similaritate, atunci este evideniat o proprietate
interesant a MAS: grupurile sunt associate n ordinea formarii de noi grupuri, precum grup
n interiorul altui grup, ca o structur holonic. Mai mult, similaritatea relaiei
0
k
Q poate fi
construita ncepnd cu relaia apropiat
0
k
R , urmarind procedura descris la pasul 2. Astfel, poate fi relevat poteniala structur a
MAS, chiar dac acesta nseamn dezvoltarea ntro maniera non-holonic.
Cand
0
k
R este doar o relaie de aproximare, tolerana(compatibilitatea) claselor ce poate fi
construit ca o colecie de grupuri suprapuse. De aceast dat,faptul c grupurile pot fi
suprapuse (interconectate) unul sau mai muli ageni pot s apartin n acelai timp diferitor
grupuri relev capacitatea unor ageni de a juca roluri multiple prin implicarea n cteva
taskuri n acelai timp.
o -disponibilitate al
0
k
R reprezint relatiile
o ,
0
k
R pentru gradul de apartenenta ] 1 , 0 [ e o .
Matricea caracteristicilor elementelor lui
o ,
0
k
R este definit de:
>
=
altfel
j i M daca
j i H
k
def
k
, 0
] , [ , 1
] , [
0
0
,
o
o
, N j i , 1 , e . (2.12)
Aceast capitol a evideniat c minimizarea entropiei fuzzy este mecanismul care organizeaz
structurile n entiti holonice. O zon de aplicaii reprezint reconfigurarea automat a unei
structuri euate cu restabilirea proprietilor holonice. In contextul ntreprinderii holonice
21
principal aplicabilitate o reprezint gsirea partenerilor celui mai apropiat din punct de vedere
al colaborarii.
2.11 Sistem de control holonic
n acest paragraf vom examina cerinele specifice de control i de a arta c mediul este
compatibil cu aceast abordare multi-nivel. n primul rnd, Figura 2.4 arat problemele de
control att de natur static ct i dinamic ce apar la orice nivel al fabricaiei.
Nivel Tip Static Dinamic
Control
Local
Continuu
Model bazat
pe setare
Model bazat
pe control
Control al
Procesului
Discret/Continuu Grafic
Replanificare
dinamica
Management
al procesului
Discret
Planificarea
Produciei
Planificare
dinamica
Fig 2.4 Probleme de control statice i dinamice pe diferite nivele de productie
Dei algoritmii i domeniul problemei sunt n mod evident diferite, n fiecare caz exist o
problem de reglare a variabilei de control, prin intermediul feedback-ul pentru a alinia o
variabil de ieire la o setare dorit. n contextul holonic, cerintele algoritmilor de control
statici si dinamici reprezint tinta poziionrii, astfel, algoritmii de control ar trebui sa fie
furnizai cu un set de cereri (conectate la un task sau un sub-task) iar acestea trebuie mai nti
convertite (la nivel nalt) n cerine ce pot fi soluionate nainte de rezolvarea problemei.
Fig. 2.5 Model de control ce suport cerintele stabilirii obiectivului pentru HMS
22
Sistemul de stabilire a obiectivului din figura 2.5 are proprietatea intern de a converti
obiectivele (tintele) sau necesitile ntrun set de parametrii permii sau traiectorii ale
caracteristicilor prin anumite funcii de decizie, D. Aciunea de control este apoi trimis
procesului P. Parametrii din figura 2.5 sunt:
P- proces (+model+controller)
D- problema de decizie
- principiul deciziilor
M- set de decizii alternative
U- set de evenimente alternative
Y- set de ieiri posibile
Dezvoltarea problemelor de decizie potrivite (flexibile) reprezint cheia pentru integrarea
activitii controlului n sistemele holonice ale caror obiective pot diferi n funcie de mediul
n care opereaz. Optimizarea distribuit bazat pe principiul deciziei este adaptat perfect
sitemelor holonice, iar metodele de cautare ale obiectivului pot ajuta la integrarea
optimizrilor complexe bazate pe algoritmi de control n cadrul operaiilor de fabricaie.
Figura 2.6 arat faptul c un algoritm de tipul
norma funciei de
cost, care este
unde G este modelul procesului sau funcia care trebuie controlat, W ponderea
corespunztoare funciei de cost, M este asa numitul
u =
= u
+
= u
cos
2
sin
2
v v d
A B
v v
A B
x
v v
A B
y
(II.1)
Modelul (II.1) este un model cinematic, deoarece s-a presupus n mod simplificator un
sistem de acionare a roilor ideal (fr dinamic) i s-au neglijat interaciunile disipative (n
spe, forele de frecare). n realitate, urmrirea traiectoriei de ctre robot este afectat de
erori, chiar n condiiile unei modelri mai precise, din cauza eventualelor nesimetrii
constructive, neuniformitii suprafeei de micare etc. De aceea, pentru determinarea poziiei
robotului este nevoie de o informaie complementar: reacia video.
Pentru scopuri de conducere n timp real este necesar discretizarea modelulului (II.1).
Notndu-se cu T
e
perioada de eantionare, se obin:
- modelul discretizat strict cauzal:
35
| |
| | | |
| | | |
u = u +
= + + u =
= + + u
1
( ) ( 1) ( 1) ( 1)
1
( ) ( 1) ( 1) ( 1) cos ( 1) ,2 ,3 ,...
2
1
( ) ( 1) ( 1) ( 1) sin ( 1)
2
t t v t v t T
B A e
d
x t x t v t v t t T t T T T
A B e e e e
y t y t v t v t t T
A B e
(II.2)
- modelul discretizat la limit cauzal:
| |
| |
| |
u = u + +
u + u
= + + + +
u + u
= + + + +
1
( ) ( 1) ( ) ( 1) ( ) ( 1)
1 ( ) ( 1)
( ) ( 1) ( ) ( 1) ( ) ( 1) cos
4 2
1 ( ) ( 1)
( ) ( 1) ( ) ( 1) ( ) ( 1) sin
4 2
t t v t v t v t v t T
B B A A e
d
t t
x t x t v t v t v t v t T
A A B B e
t t
y t y t v t v t v t v t T
A A B B e
= ,2 ,3 ,... t T T T
e e e
(II.3)
Un sistem de roboi Micromouse poate fi comandat de ctre un algoritm rulnd pe un PC
prin intermediul a 3 octei transmii serial prin radio. Scopul comenzii const esenialmente
n urmrirea unei anume traiectorii. Semnificaia celor 3 octei este dat n figura 3.6.
Fig. 3.6 Semnificaia celor 3 octei de comand a unui robot Micromouse
Se observ posibilitatea realizrii a 3 tipuri de micare, codificate n octetul al doilea, n
funcie de care difer semnificaia coninutului octetului al treilea. De fapt, tipul de micare
cel mai general este al treilea (cnd vitezele celor dou roi nu sunt neaprat nenule), primele
dou fiind particularizri ale acestuia:
- dac vitezele sunt egale (i nenule), se obine micarea de translaie (nainte);
- dac numai una dintre viteze este nul, se obine micarea circular (pe loc);
Tipul de micare poate fi, deci, considerat ca fiind o mrime cu evoluie discret (ea
reprezint o mrime de intrare, de comand, pentru robot). Modificarea, pe parcursul urmririi
traiectoriei, a tipului de micare, determin, deci, tranziia sistemului dintr-o stare discret n
alta. n interiorul fiecreia din strile discrete evoluia este continu, caracterizat de cte un
model de stare continuu neliniar (particularizare a modelului II.1). Coninutul octetului al
treilea reprezint valoarea constant a unei mrimi de intrare continue.
Dup cum se arat n seciunea urmtoare, una din restriciile impuse sistemului de 2 roboi
cooperativi este s pstreze mereu contactul cu obiectul pe care l transport. Deci ei se vor
mica pe lng obiect cnd va fi necesar s-i schimbe poziia fa de acesta. Pentru aceasta
este suficient s se considere n modelare numai primele dou tipuri de micare (nainte i pe
loc). Rezult c dinamica hibrid a unui robot este format dintr-un ir de tranziii ntre 2 stri
discrete, caracterizate de cte un model neliniar de tip (II.1).
Urmnd demersul de formalizare prezentat n [23], se noteaz:
numele robotului
- nainte
- pe loc
- micare circular
cu raz de giraie
nenul
tipul de micare
- distan
- unghi
- raportul vitezelor
celor 2 roi
36
u (
(
= e t
(
(
x( ) [0;2 ) [0; ] [0; ] t x X Y
y
vectorul de stare continu al unui robot (unde X i Y
sunt dimensiunile suprafeei de micare);
(
= e
(
u( ) [0; ] [0; ]
v
A
t v v
max max
v
B
vectorul comenzilor continue pe poriuni (unde v
max
este viteza maxim cu care poate fi comandat un robot);
= =
e =
= . = v = . =
0, dac 0
1, dac (( 0) ( 0)) (( 0) ( 0))
v v
A B
v v v v
A B A B
vectorul comenzilor discrete
(care codific tipul de micare).
Notnd cu 1 i 2 strile discrete, cu n
t
numrul de tranziii ntre ele i cu t
k
momentul de
timp la care se produce a k-a tranziie, robotul mobil este un sistem dinamic hibrid descris de:
= e x x u ( ) ( ( ), ( ), , ) t f t t t
i
, =1,2 i , s s
+1
t t t
k k
, = 0, k n
t
, (II.4)
n condiiile iniiale (de start) x x ( )
0 0
t i finale (int) x x ( )
t
t t
n f f
(figura 3.7).
Fig. 3.7 Dinamic de stare hibrid: tranziii ntre stri discrete
caracterizate de modele de stare continue
Actualmente, roboii sunt programai s se mite cu viteza maxim. Reprogramarea se
poate face numai cu oprirea experimentului curent, prin cablu, prin re-inscripionarea
memoriei. Se pot imagina i alte moduri de comand, a cror complexitate este limitat de
capacitatea memoriei robotului.
3.2.2 Formularea problemei de optimizare
Cum mediul de operare al roboilor este cunoscut (sau identificabil), rezult c se cunosc
traiectoriile spaiale posibile.
Considernd fiecare din cei 2 roboi ca fiind descris prin cte un model de tip (II.4):
+
+
= e = s s =
= e = s s =
1 1 1
2 2 2
x x u
x x u
.
1 1 1 1 1
1
.
2 2 2 2 2
1
( ) ( ( ), ( ), , ), 1,2, , 0,
( ) ( ( ), ( ), , ), 1,2, , 0,
i j j t
i l l t
t f t t t i t t t j n
t f t t t i t t t l n
, (II.5)
n condiiile iniiale (de start)
`
)
1 1
0
2 2
0
x x
x x
0
0
( )
( )
t
t
i finale (int)
`
)
1
2
x x
x x
1
2
1
2
( )
( )
t
t
f f
n
f f
n
t t
t t
(indicii superiori
se refer la numrul robotului), problema transportului de ctre cei 2 roboi a obiectului n
timpul minim se poate formula ca o problem de comand optimal cu variabile mixte
(mixed-integer optimal control problem MI OCP [23]):
S se gseasc:
0
0 t =
1
t
2
t
t
n f
t t =
(0) x
( )
f
t x
1
( ) f = x
2
( ) f = x
37
vectorii de comand, e e
1 2
u u
1 2
( ), ( ), , t t ,
numerele tranziiilor,
1
t
n ,
2
t
n ,
i momentele de timp la care au loc tranziiile, = +
1 1
, 0, 1
j t
t j n , i = +
2 2
, 0, 1
l t
t l n ,
astfel nct s se minimizeze indicele:
( )
e e =
1 2
u u
1 2
0
( ), ( ), ,
f
J t t t t , (II.6)
unde = =
1 2
t t
f
n n
t t t .
Dac se dorete n plus evitarea obstacolelor, atunci fezabilitatea unei soluii a problemei
mai sus formulate se declar n urma verificrii restriciilor topologice, care privesc vectorul
de stare,
(
= (
(
x
x
x
1
2
( )
( )
( )
t
t
t
.
Sistemul poate fi echivalent descris ca un automat hibrid [41], [29]:
( ) = E
1 2 3 0
, , , , , , ,
f
AH S Q Q Q (II.7)
unde:
S este spaiul strilor continue (presupus observabil) i Q al strilor (fazelor) discrete
(SQ desemneaz starea hibrid),
1
este o mulime de m cmpuri vectoriale asociate cu strile discrete,
2
este o mulime de restricii pentru fiecare faz (inegaliti liniare),
{ }
= =
E = o
1, , 1,
jk
j m k m
este mulimea de evenimente care definesc tranziiile discrete ntre
faze (din j n k),
3
este o mulime de funcii asociate cu evenimentele o
jk
, care definesc valorile strilor
continue cnd apare un eveniment,
Q
0
i Q
f
sunt strile discrete iniiale, respectiv finale.
Scopul este, deci, de a sintetiza comanda care conduce sistemul n cel mai scurt timp dintr-
o stare hibrid iniial ntr-o stare hibrid final. Traiectoria de stare, x(t), trebuie s respecte
restriciile asupra variabilelor continue i secvena discret de comand aleas. n [29] se
propune o formulare echivalent cu cea dat mai sus, ca problem de optimizare cu restricii:
Se caut un vector de comand ueU (U este o mulime compact) astfel nct:
{ }
e
=
u
u ( ) min ( )
U
J J ,
cu respectarea unui set de restricii dependente de x(t), unde:
=
=
1
s
i
n
s
i
J t , (II.8)
n care n
s
este numrul de stri discrete prin care este condus sistemul, nafar de cea
iniial i de cea final, iar
i
t
s
este timpul ct sistemul rmne n starea i.
Tot n [29] se propune o rezolvare alternativ a problemei, folosind extinderea principiului
maximului al lui Pontriaghin (PMP) la sisteme dinamice hibride controlate prin evenimente
discrete, care const n traducerea unei probleme de comand optimal ntr-un sistem de
ecuaii algebro-difereniale i relevarea condiiilor necesare de existen i unicitate a
comenzii optimale. PMP poate fi aplicat oricrui sistem dotat cu o comand continu pe
poriuni [42], deci se poate adapta la prile continue ale sistemului (adic ntre momentele de
comutare, cnd sistemul evolueaz continuu).
38
3.3 Structura de conducere optimal a sistemului de roboi cooperativi
3.3.1 Soluia propus
Rezolvarea problemei de optimizare formulate n capitolul al II-lea recurge la sinteza unui
aa numit planificator al traiectoriilor roboilor, astfel nct acetia s asigure transportul
obiectului la destinaie ct mai repede posibil i s evite obstacolele (a cror configuraie este
cunoscut apriori i considerat fix). De asemenea, planificatorul trebuie s decid ce micri
vor efectua roboii n acest scop. Deoarece aceste aspecte nu pot fi tratate laolalt datorit
dimensiunii mari a spaiului soluiilor i, deci, a creterii inadmisibile a timpului de calcul,
problema a fost separat n dou, urmnd demersul propus n [40]:
1) obinerea drumului optimal, considerndu-se numai condiiile geometrice i topologice
(formele obiectelor implicate),
i 2) determinarea aciunilor efective de comand, considerndu-se statica obiectelor
(forele de contact).
Se realizeaz astfel o structur ierarhic pe 2 niveluri: planificatorul corespunztor fazei 1)
de pe nivelul ierarhic superior se numete global (n linii mari), iar cel corespunztor
fazei 2) de pe nivelul inferior se numete local (fin).
Aceste planificatoare interacioneaz n urmtorul mod: cel global decide momentul, locul
i modalitatea n care se realizeaz manipularea, pe baza rezultatului furnizat de ctre
planificatorul local. Primul planificator furnizeaz drumul obiectului i al roboilor, care este
optimal din punct de vedere al costului (timpului) de manipulare. Deoarece pot aprea erori
de micare ale roboilor, este foarte probabil ca roboii s nu poat urmri precis traiectoria
furnizat de ctre planificatorul global. Ca urmare, planificatorul local furnizeaz o metod de
manipulare i informaii despre cum se realizeaz aceasta.
Soluia propus pentru planificarea drumului trebuie s fie eficient din punct de vedere al
efortului de calcul i n acelai timp fezabil. Micrile roboilor trebuie s fie n concordan
cu mediul real n care se afl (evitarea coliziunilor). n planificarea micrii se adopt
urmtoarele ipoteze:
referitoare la mediu (harta):
1) mediul este 2D (bidimensional) cu obstacole reprezentate ca poligoane;
2) forma, poziia i orientarea fiecrui obstacol sunt cunoscute i presupuse fixe;
referitoare la obiect:
3) obiectul este presupus dreptunghiular;
4) coeficientul de frecare ntre obiect i suprafaa pe care se realizeaz micarea este
cunoscut;
referitoare la roboii mobili:
5) roboii sunt considerai ca fiind dreptunghiulari i se pot deplasa n orice direcie;
6) roboii pstreaz tot timpul contactul cu obiectul pe care l transport folosind o aciune
de mpingere;
referitoare la manipulare:
7) toate micrile sunt cvasi-statice;
8) toate interaciunile de tip frecare ale obiectului sunt descrise prin intermediul legii lui
Coulomb.
39
n figura 3.8 este prezentat structura sistemului de comand optimal a sistemului
cooperativ de roboi, sugerndu-se modul de interaciune a celor dou planificatoare.
Prin analogie cu elementele unei scheme clasice de reglare, figura 3.8 arat c
planificatorul global are rolul de a furniza off-line traiectoriile de referin ale roboilor
acestea reprezint soluia problemei de optimizare cu restricii formulate n paragraful 3.2
sub form de iruri de poziii succesive ale centrelor de mas,
( ) { }
=
1 1
1,2,...
,
i i
i
x y pentru primul
robot i
( ) { }
=
2 2
1,2,...
,
i i
i
x y pentru cel de-al doilea. n acest scop se utilizeaz algoritmul A* de
cutare a drumului de cost minim ntr-un graf .
La un pas oarecare i de funcionare on-line a planificatorului local, se verific fezabilitatea
comenzii, care se aplic efectiv roboilor. Apoi referina
( ) ( ) { }
1 1 2 2
, , ,
i i i i
x y x y se compar cu
poziiile reale ale roboilor de dup aplicarea comenzii,
( ) ( ) { }
+ + + + 1 1 1 1
1 1 2 2
, , ,
i i i i
real real real real
x y x y ,
obinute prin tratarea reaciei video. Dac eroarea este sub o limit maxim admisibil, notat
cu c
max
, atunci se continu cu pasul urmtor, i+1. Dac eroarea depete limita maxim
impus, atunci se reia algoritmul A* din planificatorul global, considernd drept configuraie
de start configuraia real curent.
40
Fig. 3.8 Sistemul de roboi cooperativi comandat printr-o structur cu dou niveluri ierarhice
3.3.2 Planificatorul global: calculul off-lineal traiectoriei optimale n 2D
n aceast seciune se prezint sinteza planificatorului global, folosind algoritmul A* de
cutare a drumului de cost minim ntr-un graf.
3.3.2.1 Descrierea algoritmului A*
Rolul planificatorului global este s planifice n mod continuu poziia roboilor i poziia i
orientarea obiectului manipulat dintr-o configuraie dat, de pornire, ntr-o configuraie final
dorit, n funcie de geometria obstacolelor i de centrul de mas al obiectului. Rezultatul
planificatorului global este soluia problemei de optimizare cu restricii formulate n capitolul
al II-lea: minimizarea costului de manipulare, adic a timpului necesar transportului, astfel
nct s se evite obstacolele. Aceasta este o problem de cutare pe graf a drumului de cost
minim, care poate fi rezolvat optimal, spre exemplu folosind algoritmul lui Dijkstra [43]. Dar
DATE DE INTRARE:
harta: poziia obstacolelor, poziia de start, poziia int,...
obiectul: masa, poziia centrului de mas,...
roboii: dimensiunile, viteza maxim,...
PLANIFICATORUL GLOBAL
construirea spaiului configuraiilor (C-
space) construirea spaiului de cutare
construirea grafului de cutare
cutare pe graf (algoritmul A*)
verificarea fezabilitii (evitarea
coliziunilor)
traiectoria format din poziii succesive ale
centrului de mas al obiectului poziiile
succesive ale centrelor de mas ale
roboilor:
( ) ( )
( ) ( )
( )
( )
1 1 1 1 1 1
1 1 2 2
2 2 2 2 2 2
1 1 2 2
, , , ,... ,
, , , ,... ,
i i
i i
x y x y x y
x y x y x y
` `
) )
OFF-LINE
MEDIUL DE OPERARE AL ROBOILOR
PLANIFICATORUL LOCAL
verificarea fezabilitii comanda
efectiv a roboilor:
- de schimbare a configuraiei n jurul
obiectului
- de mpingere a obiectului
+ NU
E
poz max
c s c
DA
i i+1
reluarea din poziia real curent
ON-LINE
referina la
pasul i de
comand a
roboilor
( )
( )
1 1
1 1
1 1
2 2
,
,
i i
i i
real real
real real
x y
x y
+ +
+ +
`
)
reacia video
poz
c
41
atunci cnd timpul de calcul este restrictiv, se prefer s se gseasc mai rapid o soluie chiar
dac aceasta nu este cea optimal. n acest caz sunt folosite metodele euristice.
O metod clasic i n acelai timp eficient de cutare euristic este furnizat de ctre
algoritmul de cutare A* [44]. n fiecare nod n al grafului de cutare cutarea este ghidat de
ctre funcia de evaluare a costului notat cu f, care are dou componente:
= + o ( ) ( ) ( ) f n g n h n , (III.1)
unde:
g(n) conine costul minimal al drumului ncepnd din poziia (nodul) de start pn la
nodul n,
h(n) este partea euristic a lui f, reprezentnd o estimare a costului de la nodul n pn la
(nodul) scop,
iar o este parametrul euristicii.
O valoare mare a lui o corespunde unei cutri puternic orientate ctre scop; astfel, o
soluie poate fi gsit rapid, chiar dac aceasta nu este cea optimal. n caz contrar, o valoare
mic a acestui parametru d mai mult importan optimalitii (o=0 reduce algoritmul A* la
algoritmul lui Dijkstra).
n ceea ce urmeaz, sunt listate cteva rezultate importante ale cutrii euristice.
Se spune c orice algoritm care garanteaz gsirea unui drum optimal ctre scop este
admisibil. Un rezultat binecunoscut specific faptul c exist condiii referitoare la grafuri i
la funcia h care garanteaz admisibilitatea algoritmului A* [43]:
fiecare nod n graf are un numr finit de succesori (dac exist);
toate arcele au costuri pozitive;
pentru toate nodurile din graful de cutare, s ( ) ( ) h n H n , unde ( ) H n este valoarea real a
celui mai bun drum ctre scop.
Ultima condiie semnific faptul c funcia h nu supraestimeaz niciodat valoarea actual
H; din aceast cauz, h se numete estimator optimist. Ar fi ideal ca h s ia valoarea celei mai
bune margini inferioare a lui H. Un alt rezultat util referitor la h l reprezint condiia de
consisten. Aceasta poate fi definit n acelai timp de manier local [43] sau global, ntr-o
manier echivalent [44]. Definiia local este mai intuitiv: considerndu-se dou noduri n
graful de cutare astfel nct
j
n este unul din succesorii lui
i
n , se spune c h este consistent
(sau monoton) dac este ndeplinit urmtoarea condiie:
= + o ( ) ( ) ( , )
i j i j
h n h n c n n . (III.2)
Condiia (III.2) este reprezentat sugestiv n figura
III.2 i specific faptul c de-a lungul fiecrui drum din
graful de cutare estimarea diferenei costului optimal
pn la scop nu poate scdea mai mult dect costul
arcului de-a lungul drumului.
Alegerea funciei h este, deci, foarte important
pentru eficacitatea cutrii. Funcia h aleas pentru
problema prezentat este admisibil, dar nu este
consistent, aa cum se va prezenta n continuare.
Paii algoritmului A* sunt listai mai jos.
1. Se construiete un graf, G, care conine un singur nod (de start),
0
n , i se pune acest
nod ntr-o list numit OPEN.
2. Se creeaz o list numit CLOSED, care este iniial goal.
3. Dac lista OPEN este goal, atunci se termin algoritmul cu eec.
j
n
i
n
( )
i
h n
( )
i
h n
( )
,
i j
c n n
Fig. 3.9 Condiia de consisten
este similar inegalitii triunghiului
42
4. Se selecteaz primul nod din OPEN, fie acesta n, se terge din OPEN i se pune n
CLOSED.
5. Dac n este nodul int, atunci se termin algoritmul cu succes: soluia este obinut
prin trasarea drumului indicat de pointerii de la n la
0
n n G (aceti pointeri definesc
un arbore de cutare, aa cum se stabilete la pasul 7).
6. Se expandeaz nodul n, genernd mulimea S al succesorilor care nu sunt deja
predecesori ai lui n n G.
7. Se stabilete un pointer spre n de la fiecare din membrii lui S care nu sunt deja n
OPEN sau n CLOSED. Fie M mulimea tuturor acestor noduri. Se pune mulimea M
n OPEN.
8. Pentru fiecare membru, m, al lui SM, se redirecteaz pointerul acestuia spre n dac
cel mai bun drum de pn atunci este prin n.
9. Pentru fiecare membru al lui S aflat deja n CLOSED se redirecteaz pointerii
fiecruia din descendenii lui n G, astfel nct acetia pointeaz napoi de-a lungul
celor mai bune drumuri gsite pn n momentul actual ctre aceti descendeni.
10. Se reordoneaz lista OPEN n ordinea cresctoare a valorilor lui f.
11. Salt la pasul 3.
Observaie: Partea a doua a redirectrii de la pasul 7 poate economisi din efortul de
cutare, dar cu o posibil cretere exponenial a efortului de calcul. Un rezultat important
stabilete c, dac h este consistent, atunci cnd A* expandeaz un nod n, s-a gsit deja un
drum optimal ctre n. n concluzie, n acest caz A* nu trebuie niciodat s redirecteze
pointeri. n orice caz, chiar dac nu este ndeplinit condiia de consisten, partea a doua a
pasului 7 este deseori neimplementat.
3.3.2.2 Funcia de evaluare a costului
Funcia de evaluare a costului asociat unui nod de cutare, n, trebuie s reflecte costul de
manipulare, divizat n dou componente, vizibile n relaia (III.1): ncepnd de la start g(n)
i pn la scop h(n). Este evident c aceste dou funcii vor avea o structur asemntoare.
Reducerea spaiului configuraiilor (C-space)
Pentru a obine expresiile detaliate ale funciilor g i h se analizeaz modurile posibile de
manipulare. Se observ c particularitile sarcinii (transport) pot fi folosite la reducerea
spaiului configuraiilor de cutare a optimului (iniial, dimensiunea lui C-space este dat de
numrul total de grade de libertate ale sistemului de roboi i obiectului: obiectul dat se mic
n 2D, deci are 3 grade de libertate, i fiecare din roboi au de asemenea cte 3 grade de
libertate). De fapt, drumurile posibile i micrile sunt limitate, fiind diferite de drumurile
(chiar i restricionate) ale unor obiecte zburtoare. Roboii pot transporta obiecte n 2D
numai n anumite configuraii. n concluzie, poziiile i orientrile roboilor pot fi luate ca
aranjamente n raport cu coordonatele obiectului manipulat i codificate n consecin
(figura 3.10).
43
Se consider c roboii sunt
ntotdeauna plasai la colurile obiectului
pentru a folosi cu eficien maxim fora
de mpingere atunci cnd execut o
rotaie a obiectului. n loc s se
caracterizeze independent fiecare robot
(prin coordonatele centrelor lor de mas
i unghiurile n raport cu centrul de mas
al obiectului, u
1 1 1
( , , )
r r r
x y i u
1 1 1
( , , )
r r r
x y
respectiv, ca n partea stng a figurii
3.10), aranjamentul roboilor este
caracterizat global prim codificarea
fiecrei poziii posibile a roboilor n jurul obiectului (ca n partea dreapt a figurii 3.10). De
asemenea, se consider c roboii pot fi plasai att de aceeai parte a obiectului, ct i pe pri
diferite la coluri diferite. Avnd n vedere aciunea lor cooperativ de transport al obiectului,
anumite combinaii sunt nefezabile (de exemplu [1,3] sau [7,4]).
n afar de schimbrile de aranjament, mai sunt posibile schimbri de poziie i de
orientare ale obiectului. Fiecare micare general a obiectului i a roboilor poate fi, deci,
descompus n 3 micri independente. Corespunztor acestora, se definesc 3 operaii
primitive (figura 3.11):
a) roboii schimb poziia obiectului n coordonate absolute printr-o operaie de schimbare
de poziie;
b) roboii schimb orientarea obiectului printr-o operaie de schimbare de orientare;
c) roboii i schimb aranjamentul n jurul obiectului n timp ce l manipuleaz.
Fiecare din operaiile de mai sus este independent de celelalte dou (de exemplu, pentru
schimbarea poziiei, orientarea i aranjamentul roboilor n jurul obiectului sunt meninute
fixe etc.).
Fig. 3.11 Trei operaii primitive ale unui obiect rectangular manipulat de ctre doi roboi n
2D: a) schimbarea de poziie; b) schimbarea de orientare; c) schimbarea de aranjament
n concluzie, numrul de grade de libertate ale sistemului (care d dimensiunea lui C-
space) a fost redus de la + = 3 2 3 9 la numai 3, din care dou sunt continue (poziia centrului
de mas i unghiul de orientare) i unul este discret (aranjamentul, restricionat la 8 combinaii
posibile de poziii ale roboilor n jurul obiectului). Coordonatele obiectelor pe hart sunt
discretizate convenabil, astfel nct deplasarea are loc pe o hart de pixeli (aa cum este
sugerat n figura 3.11).
a) b) c)
1
u
2
u
1 1
( , ) x y
2 2
( , ) x y
6 5
1 2
5
5 6
1
5
Au
1 2
5
3
4
6
7
8
1 1
( , )
r r
x y
2 2
( , )
r r
x y
( , )
o o
x y
1 r
u
2 r
u
Fig. 3.10 Codificarea aranjamentelor roboilor n
jurul obiectului
44
Alegerea funciei de cost
Deoarece se intenioneaz s se ghideze cutarea n scopul minimizrii costului (adic a
timpului de manipulare), i n acelai timp s se evite obstacolele, se propune ca cele dou
componente ale costului s fie definite astfel:
=
= +
( ) ( )
( ) ( ) ( )
t
t obst
g n g n
h n h n h n
, (III.3)
unde componentele cu indicele t msoar costultimp. Componenta ( )
obst
h n a lui ( ) h n ia n
consideraie posibilitatea de coliziune cu obstacolele. Aceast component reprezint fora de
respingere de ctre obstacole i a fost modelat ca un cmp de potenial, aa cum este
prezentat n ceea ce urmeaz.
Funcia ( )
t
g n trebuie s conin costul (timpul) cumulat al unui drum de la nodul de start la
nodul curent, n, adic suma costurilor tuturor arcurilor coninute n acel drum. Costul unui arc
de la nodul
1
n la nodul
2
n este definit folosind notaiile din figura III.4:
= + +
1 2 1 2 1 2 1 2
( , ) ( , ) ( , ) ( , )
p o a
c n n c n n c n n c n n , (III.4)
unde cele trei componente msoar respectiv costul schimbrii de poziie (distana
euclidian):
= +
2 2
1 2 2 1 2 1
( , ) ( ) ( )
p
c n n x x y y , (III.5)
costul schimbrii de orientare:
~ Au = u u
1 2 2 1
( , )
o
c n n , (III.6)
i costul schimbrii de aranjament, exprimat n funcie de distanele pe care roboii trebuie s
le parcurg pentru ca s-i schimbe poziiile (aa cum este sugerat n figura III.4c)). Se
observ c schimbarea de orientare trebuie s fie exprimat ca fiind o distan, i anume
lungimea segmentului de cerc corespunztor schimbrii de unghi Au. Schimbrile de
orientare mai mari dect t sunt reduse modulo t . De aceea, o valoare aproximativ a costului
de orientare ar putea fi:
= Au
t
1 2
( , )
o
L
c n n , (III.6)
unde L este lungimea obiectului.
Funcia ( )
t
h n are aceeai structur ca aceea a costului unui arc, considernd ca nod final
nodulscop, i reprezint o estimare a costului de manipulare pn la scop.
Referitor la fora de respingere a obstacolelor, ( )
obst
h n , exist mai multe modaliti de
definire a acesteia pe baza cmpurilor de potenial [45], [46]. Funcia folosit n aceast
lucrare este:
+ s
=
>
2
2
2
1, dac
( , )
0, dac
pot
d d
d r
P d obstacol
r
r
d r
, (III.7)
unde d este distana de la punctul considerat la obstacol, iar r este o distan fix (de exemplu,
= max( , ) r a b , unde a i b sunt dimensiunile robotului). Indiferent de forma cmpului de
potenial, se propune ca fora total de respingere exercitat de ctre un obstacol asupra
ansamblului obiectroboi s fie suma cmpurilor de potenial n toate colurile ansamblului
(sunt 8 coluri indiferent de aranjamentul roboilor a se vedea figura III.3 ale cror
coordonate pot fi calculate dat fiind configuraia nodului asociat). n concluzie:
= =
=
_ 8
1 1
( ) ( , )
nb obst
obst pot i j
j i
h n P d obstacol , (III.8)
45
unde nb_obst este numrul obstacolelor.
Se poate concluziona c funcia h(n) reprezint un compromis ntre fora de atracie din
partea scopului i cea de respingere din partea obstacolelor. Pe de alt parte, se poate verifica
uor c funcia h(n) nu este consistent (datorit componentei care msoar schimbarea de
orientare, dependent de unghiurile reduse modulo t vezi relaia (III.6)), deci harta de
cutare nu este monoton. Algoritmul se poate, deci, bloca n minime locale. De asemenea, a
fost necesar o metod suplimentar de evitare a coliziunilor cu obstacolele, pentru a rula
efectiv algoritmul de cutare. Aceast metod se bazeaz pe decizia dac un punct dat este
nafara sau nuntrul unui poligon.
3.3.2.3 Discuii asupra rezultatelor de implementare
Fig. 3.12 Drumul planificat n cazul unui exemplu de dimensiuni reduse.
Sgeile indic zonele de minim local
Aceast seciune prezint performanele algoritmului A* propus pe un exemplu de
dimensiuni mici.
Dimensiunile hrii n pixeli sunt 70x50, harta conine 4 obstacole, dimensiunile obiectului
sunt 9x5 i cele ale roboilor 3x2 (figura III.5). Nodul de start este caracterizat de
coordonatele centrului de mas, (9,6), i de unghiul de orientare al obiectului, u = 0
start
.
Nodulscop este reprezentat prin (65,26) i u = t 3 4
scop
. Algoritmul a fcut 194 de
expansiuni ale nodurilor i a necesitat 73.882 de secunde pe un Pentium II MMX la 233 MHz.
Se poate observa c, dei cazul studiat are dimensiuni reduse, acesta are o caracteristic
destul de restrictiv, i anume raportul dintre dimensiunile hrii i dimensiunile obiectului.
Din considerente de lizibilitate, aranjamentul roboilor nu a fost reprezentat n figura 3.12.
Datorit faptului c funcia euristic, h, nu este monoton, se pot observa comportri ciclice,
datorate blocajului n minime locale. Sgeile desenate n figura 3.12 corespund salturilor
1 10 20 30 40 50 60 70
1 10 20 30 40 50 60 70
70
1
1
0
2
0
3
0
4
0
5
0
1
1
0
2
0
3
0
4
0
5
0
start
scop
0 u =
/ 2 u = t
3 / 4 u = t
46
empirice introduse artificial n algoritm pentru a evada din minimele locale.
Traiectoria ilustrat n figura 3.12 corespunde n linii mari ateptrilor. Este evident c o
astfel de traiectorie necesit o filtrare preliminar transformrii n secvene de comand i
transmiterii acestora ctre roboi. Aceast problem privete sinteza planificatorului local i
interaciunea acestuia cu planificatorul global, ceea ce reprezent o problem de investigare
ulterioar.
3.4. Planificatorul local: urmrirea on-line a traiectoriei optimale. Tratarea reaciei video
Planificatorul local are rolul de a realiza efectiv modul de manipulare rezultat din
planificarea traiectoriei optimale de ctre planificatorul global, deci proiectarea lui aparine
domeniului aplicaiilor de timp real de comand a roboilor. Aceasta este o sarcin destul de
complex, din care la momentul actual a fost realizat partea de traductor: prelucrarea
reaciei video.
3.4.1 Algoritmul de prelucrare de imagini
Sistemul de achiziie i prelucrare a imaginilor este compus din: camer tip Webcam, PC,
driver pentru camer i software de prelucrare.
Obiectele cutate sunt identificate cu ajutorul a dou benzi colorate paralele (figura 3.13).
Paii principali ai programului de achiziie,
prelucrare i extragere a trsturilor sunt:
a) achiziia imaginii i corectarea
neliniaritilor camerei;
b) filtrarea zgomotului de pe imagine;
c) selectarea culorilor obiectelor;
d) stabilirea toleranelor cu care se va decide
dac un anumit pixel este de culoarea cutat;
e) determinarea tuturor obiectelor care au
culorile stabilite la punctul c);
f) eliminarea obiectelor care nu corespund din
punct de vedere al dimensiunilor;
g) determinarea poziiei i orientrii fiecrui obiect gsit.
n continuare se detaliaz fiecare pas a) g).
a) Camerele de tipul celei folosite n experimentul nostru prezint neliniariti, n spe
curbeaz imaginea ctre extremiti (efect de butoi), introducnd astfel erori de determinare
a poziiei. Erorile sunt cu att mai mari cu ct poziia respectiv este mai deprtat de centrul
imaginii. Pentru a corecta aceste neliniariti s-a folosit o gril de calibrare format din repere
echidistante. Astfel, pentru poziia fiecrui reper s-au determinat coeficienii care fac trecerea
la poziia reperului n imagine.
b) S-au folosit filtre liniare de dimensiune 3x3 i 5x5, n funcie de zgomotul din imagine.
Fig. 3.13 Imaginea iniial
47
c) Deoarece experimentul folosete de fiecare dat aceleai obiecte, culorile de cutat ar
putea fi stabilite la nceputul programului. Totui, datorit posibilitii de schimbare a
condiiilor de iluminare, s-a preferat selectarea culorilor direct de pe imagine.
d) Datorit perturbaiilor ca iluminarea neuniform a imaginii, efectele de culoare la
tranziiile de la o culoare la alta i chiar variaiile n culorile obiectelor a trebuit s se aleag
un anumit interval de culoare n care un pixel s fie considerat de culoarea dorit. Acest
interval poate fi impus manual, pe baza rezultatelor observate pe imagine, sau poate fi
determinat automat, considernd drept criterii diferenele dintre suprafeele determinate ale
obiectelor i suprafeele reale i numrul de obiecte false. Parametrii dup care se face
cutarea sunt H, S i V (tent de culoare, saturaie i valoare engl. Hue, Saturation, Value).
e) Datorit zgomotului imaginii, iluminrii neuniforme a scenei sau alegerii greite a
pragurilor de recunoatere a culorilor n obiecte pot aprea guri (poriuni din interiorul
obiectului care nu apar ca fiind de culoarea obiectului). Algoritmul folosit consider aceste
guri ca fcnd parte din obiect, eliminnd astfel erorile de determinare a poziiei introduse de
prezena gurilor. Din acest motiv se poate folosi numai n cazul obiectelor convexe,
eventualele concaviti fiind umplute.
S-a definit o structur obiect cu urmtorii membri:
- nExtremStanga este coordonata orizontal a celui mai din stnga pixel de pe ultima
linie a obiectului
- nExtremDreapta este coordonata orizontal a celui mai din dreapta pixel de pe ultima
linie
- nExtremJos coordonata vertical a celei mai de jos linii a obiectului
- nCurentStanga coordonata orizontal a celui mai din stnga pixel de pe linia curent,
aparinnd obiectului
- nCurentDreapta coordonata orizontal a celui mai din dreapta pixel de pe linia
curent, aparinnd obiectului
- nCurentJos coordonata vertical a liniei curente
- nSuprafata suprafaa obiectului
- nXCentru la sfritul algoritmului este coordonata orizontal a centrului de mas al
obiectului; pe parcurs este coordonata orizontal a centrului de mas multiplicat cu
nSuprafata
- nYCentru la sfritul algoritmului este coordonata vertical a centrului de mas al
obiectului; pe parcurs este coordonata vertical a centrului de mas multiplicat cu
nSuprafata
- x coordonata orizontal a pixelului curent
- y coordonata vertical a pixelului curent
- nContor numrul de obiecte crora le aparine pixelul curent
Algoritmul este detaliat n continuare.
1. Pixelul curent are culoarea cutat? Dac nu, salt la 19.
2. Lista obiectelor este goal? Dac nu, salt la 4.
3. Se iniializeaz un obiect nou.
4. Se selecteaz urmtorul obiect.
5. ((x >= nExtremStanga 1) I (x <= nExtremDreapta + 1) I (y = nExtremJos + 1))?
Dac da, salt la 8.
6. ((y = nCurentJos) I (x = nCurentDreapta + 1))? Dac nu, salt la 4.
7. nCurentDreapta = x; nXCentru = nXCentru + x;
48
nYCentru = nYCentru + y; nSuprafata = nSuprafata + 1. Salt la 14.
8. nCurentJos = y.
9. nCurentStanga = 1? Dac nu, salt la 11.
10. nCurentStanga = x
11. nCurentDreapta = 1? Dac nu, salt la 13.
12. nCurentDreapta = x; nXCentru = nXCentru + x;
nYCentru = nYCentru + y; nSuprafata = nSuprafata + 1. Salt la 14.
13. nXCentru = nXCentru + (nCurentDreapta + 1) + ... + x;
nYCentru = nYCentru + (x nCurentDreapta) y;
nSuprafata = nSuprafata + x nCurentDreapta.
14. nContor = nContor + 1.
15. E ultimul obiect din list? Dac nu, salt la 4.
16. nContor > 1? Dac da, se unesc cele dou obiecte.
17. Pixelul curent este ultimul de pe linie? Dac nu, salt la 20.
18. nExtremStanga = nCurentStanga; nExtremDreapta = nCurentDreapta;
nExtremJos = nCurentJos; nCurentStanga = 1;
nCurentDreapta = 1; nCurentJos = 1.
19. Pixelul curent este ultimul din imagine? Dac da, salt la 21.
20. Se trece la pixelul urmtor. Salt la 1.
21. Sfrit.
f) n cazul unei imagini zgomotoase sau al prezenei n scen a altor obiecte dect cele
cutate pot rezulta obiecte false, care vor fi eliminate dup compararea cu dimensiunile
cunosctue ale obiectului.
g) Poziia fiecrui obiect se d prin poziia centrului su de greutate, situat la jumtatea
segmentului care unete centrele de greutate ale celor dou benzi colorate, iar orientarea
obiectului este dat de orientarea acestui segment.
3.4.2 Rezultate experimentale
Pentru experiment s-a construit o scen cu dou obiecte ce pot fi identificate prin cte dou
benzi colorate. Unul din obiecte are o band roie i una albastr, iar cellalt o band roie i
una galben. n continuare sunt prezentate rezultatele identificrii fiecrei culori (fig. 3.14,
3.15, 3.16), apoi a obiectelor (fig. 3.17).
n urma mai multor experimente s-au nregistrat urmtoarele erori maxime n determinarea
poziiei i a orientrii obiectelor:
- la determinarea poziiei eroarea maxim a fost de 1 pixel, att pe vertical, ct i pe
orizontal; dimensiunile scenei vzute de camer fiind de 1x0.75 m, iar rezoluia de 320x240
pixeli, rezult o eroare maxim de 0.31 cm, att pe orizontal, ct i pe vertical;
- la determinarea orientrii s-au nregistrat variaii de +/ 1 grad.
49
Fig. 3.14 Determinarea
obiectelor albastre
Fig. 3.15 Determinarea
obiectelor galbene
Fig. 3.16 Determinarea
obiectelor roii
Condiiile desfurrii experimentelor au fost:
- iluminare mixt, n proporie de aproximativ
80% artificial i 20% natural;
- rezoluia camerei a fost impus la 320x240
pixeli;
- s-a folosit funcia de corectare a neliniaritilor
camerei, cu o gril de corecie de 32x24 puncte,
coeficienii de corecie pentru pixelii aflai ntre
aceste puncte obinndu-se prin interpolare.
Fig. 3.17 Determinarea tuturor
obiectelor cutate
50
3.5 Concluzii i perspective
Cercetrile sintetizate n acest raport propun o arhitectur pe 2 niveluri pentru comanda
optimal a unui sistem de 2 roboi mobili care execut transportul unui obiect dreptunghiular
n 2D, cu evitarea obstacolelor n timp minim (cu consum energetic minim).
Nivelul ierarhic inferior este constituit de ctre cei 2 roboi i este modelat ca sistem
dinamic hibrid. Comportamentul unui astfel de sistem este caracterizat att de variabile de
stare cu evoluie sincron cu timpul, continue sau discrete, ct i de evenimente, cu apariie
asincron. Roboii considerai sunt dotai cu un nivel minim de inteligen i autonomie,
respectiv numai capacitatea de a prelucra informaiile provenite de la senzori. Problema de
optimizare mai sus enunat se formuleaz ca minimizarea cu restricii a unei funcionale
reprezentnd un indice de performan de timp. n esen, scopul este de a planifica traiectoria
i modul de manipulare optimale ale obiectului de ctre cei 2 roboi.
Pe nivelul ierarhic superior este plasat structura de control centralizat (supervizor) care
asigur comportamentul optimal n raport cu indicele de performan definit. n esen, este
vorba despre sinteza unui planificator de traiectorie optimal, care a fost numit planificator
global. nchiderea buclei presupune transmiterea comenzilor efective de schimbare a poziiei
ctre roboi n vederea urmririi traiectoriei optimale. Aceasta se realizeaz de ctre
planificatorul local.
Prin analogie cu elementele unei bucle de reglare clasice, planificatorul global calculeaz
referina, care se transmite planificatorului local. Dup executarea comenzii de ctre roboi, se
estimeaz eroarea fa de poziiile reale atinse de roboi, calculate pe baza reaciei video. A
fost prezentat un algoritm de prelucrare de imagini care permite tratarea suficient de
performant (att rapid, ct i precis) a acestei informaii de msur. Dac eroarea de
poziie depete un anume prag maxim admisibil, atunci se reiniializeaz planificatorul
global pentru calcularea traiectoriei din poziia curent real. Pentru minimizarea acestei erori
este necesar un model ct mai precis al nivelului inferior, respectiv considerarea ct mai
complet a interaciunilor roboilor i obiectului transportat cu mediul. Planificatorul local
nglobeaz astfel elementul de comparaie i elementul de execuie.
Planificatorul global se bazeaz pe un rezultat clasic din cercetrile operaionale:
algoritmul A* de cutare al drumului de cost minim ntr-un graf. Acest planificator furnizeaz
momentul, locul i micarea care trebuie realizat, considerndu-se c roboii pot urmri ideal
traiectoria impus. Erorile de poziionare a roboilor, ca i explicitarea modelului static al
acestora vor fi considerate n sinteza planificatorului local n cadrul unor cercetri ulterioare.
Ct privete eventualele mbuntiri ale planificatorului global, o sarcin de investigare
const n definirea unor funcii euristice care s se supun condiiei de consisten pentru
evitarea minimelor locale n calculul traiectoriei optimale. Ar putea fi util combinarea
funciilor euristice cu alte tipuri de cmpuri de potenial pentru a obine o hart de cutare
monoton.
Pe viitor, se intenioneaz implementarea metodei de planificare propuse ca aplicaie de
timp real, care s funcioneze eventual n cazul unui mediu variant. n acest caz, reprezentarea
hrii este obinut n mod continuu prin reacie video. Astfel, metoda de planificare necesit
robustificare la erori, ntrzieri i schimbri de mediu.
51
Bibliografie
http://www-2.cs.cmu.edu/afs/cs.cmu.edu/usr/pstone/public/papers/96ieee-survey/
http://www.ici.ro/ici/revista/ria2003_3/art4.htm
http://www-2.cs.cmu.edu/~softagents/multi.html
[1] Ollero, A., G. Morel, P. Bernus, S.Y. Nof, J. Sasiadek, S. Boverie, H. Erbe, R. Goodall
(2002). IFAC 2002 Milestone Report on Manufacturing and Instrumentation: from
MEMS (Micro Electro-Mechanical Components) to Enterprise Systems, Preprints of
the 15
th
IFAC World Congress Plenary papers, survey papers and milestones (Eds.
E.F. Camacho, L. Basanez, J.A. de la Puente), Barcelona, Spain, pp. 195-205.
[2] Pham, D.T., S. Yildirim (2002). Comparison of four methods of robot trajectory control,
Preprints of the 15
th
Triennial IFAC World Congress (CD-ROM - Eds. E.F. Camacho,
L. Basanez, J.A. de la Puente), July 21-26 2002, Barcelona, Spain.
[3] Montano, J.M.L. (2002). Robot navigation in very complex, dense and cluttered
indoor/outdoor environments, Preprints of the 15
th
Triennial IFAC World Congress
(CD-ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002,
Barcelona, Spain.
[4] Jones, J.L., A.M. Flynn, B.A. Seiger (1999). Mobile robots inspiration to
implementation (second edition), A.K. Peters-Natick, Massachussets.
[5] Figueras, A., J. Colomer, J.L. de la Rosa (2002). Supervision of heterogeneous
controllers for a mobile robot, Preprints of the 15
th
Triennial IFAC World Congress
(CD-ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002,
Barcelona, Spain.
[6] Garcia, C.E., R. Carelli, J.F. Postigo, C. Soria (2003). Supervisory control for a
telerobotic system: a hybrid control approach, Control Engineering Practice, 11, pp.
805-817.
[7] Fong, T., I. Nourbakhsh, K. Dautenhahn (2003). A survey of socially interactive robots,
Robotics and Autonomous Systems, 42, pp. 143166.
[8] Dautenhahn, K., A. Billard (1999). Bringing up robots orthe psychology of socially
intelligent robots: From theory to implementation, Proceedings of the Autonomous
Agents.
[9] Balestrino, A., A. Landi (2002). High path coordonation for multiple vehicles and
reciprocal root locus, Preprints of the 15
th
Triennial IFAC World Congress (CD-ROM -
Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002, Barcelona, Spain.
[10] Bernabeu, E.J., J. Tornero (2002). Cooperative motion planning for multiple vehicles in
automated storage systems, Preprints of the 15
th
Triennial IFAC World Congress (CD-
ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002, Barcelona,
Spain.
[11] Mitidieri, C., C.E. Pereira, L.L. Penz (2002). On coordinating multi-agent systems using
a time constrained contract network protocol, Preprints of the 15
th
Triennial IFAC
World Congress (CD-ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July
21-26 2002, Barcelona, Spain.
52
[12] Uzmay, I., R. Burkan, H. Sarikaya (2004). Application of robust and adaptive control
techniques to cooperative manipulation, Control Engineering Practice, 12, pp. 139-148.
[13] Fernandez, J.A., J. Gonzalez (2002). Task-driven, multiple abstraction for modeling
mobile robot large-scale space, Preprints of the 15
th
Triennial IFAC World Congress
(CD-ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002,
Barcelona, Spain.
[14] Hsieh, F.-S. (2004). Model and control holonic manufacturing systems based on fusion
of contract nets and Petri nets, Automatica, 40, pp. 51-57.
[15] Tanner, H.G., G.J. Pappas (2002). Formation input-to-state stability, Preprints of the
15
th
Triennial IFAC World Congress (CD-ROM - Eds. E.F. Camacho, L. Basanez, J.A.
de la Puente), July 21-26 2002, Barcelona, Spain.
[16] Branicky, M.S. (1997). Stability of hybrid systems: state of the art, Proceedings of the
36
th
IEEE Conference on Decision & Control.
[17] Zhang, W., M.S. Branicky, S.M. Philips (2001). Stability of networked control systems,
IEEE Control Systems Magazine, 21(1).
[18] Davrazos, G.N., N.T. Koussoulas (2002). Stability analysis of networked hybrid
systems, Preprints of the 15
th
Triennial IFAC World Congress (CD-ROM - Eds. E.F.
Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002, Barcelona, Spain.
[19] Lin, H., X.D. Koutsoukos, P.J. Antsaklis (2002). Hierarchical control for a class of
uncertain piecewise linear hybrid dynamical systems, Preprints of the 15
th
Triennial
IFAC World Congress (CD-ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente),
July 21-26 2002, Barcelona, Spain.
[20] Branicky, M.S. (1998). Multiple Lyapunov functions and other analysis tools for
switched and hybrid systems, IEEE Transactions on Automatic Control, 43(4).
[21] Rubensson, M., B. Lennartson (2000). Stability and robustness of hybrid systems using
discrete-timed Lyapunov functions techniques, Proceedings of the American Control
Conference.
[22] Petterson, S. (1999). Analysis and design of hybrid systems, Ph.D. Thesis, Chalmers
University of Technology, Sweden.
[23] Glocker, M., O. von Stryk (2002). Hybrid optimal control of motorized traveling
salesmen and beyond, Preprints of the 15
th
Triennial IFAC World Congress (CD-ROM -
Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002, Barcelona, Spain.
[24] Stursberg, O., S. Engell (2002). Optimal control of switched continuous systems using
mixed-integer programming, Preprints of the 15
th
Triennial IFAC World Congress (CD-
ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26 2002, Barcelona,
Spain.
[25] Stiver, J., P. Antsaklis (1992). Modelling and analysis of hybrid control systems,
Proceedings of the 31st Conference on Decision and Control, Tucson, Arizona, pp.
3748-3751.
[26] Xie, G., L. Wang, P. Yang (2002). Stability of a class of hybrid dynamic systems,
Preprints of the 15
th
Triennial IFAC World Congress (CD-ROM - Eds. E.F. Camacho,
L. Basanez, J.A. de la Puente), July 21-26 2002, Barcelona, Spain.
[27] Bemporad, A., L. Giovanardi, F.D. Torrisi (2000). Performance driven reachability
analysis for optimal scheduling and control of hybrid systems, Proceedings of the 39th
IEEE Conference on Decision and Control, Sidney, Australia, pp. 969-974.
53
[28] Potocnik, B., A. Bemporad, F.D. Torrisi, G. Music, B. Zupancic (2002). Scheduling of
hybrid systems: multi product batch plant, Preprints of the 15
th
Triennial IFAC World
Congress (CD-ROM - Eds. E.F. Camacho, L. Basanez, J.A. de la Puente), July 21-26
2002, Barcelona, Spain.
[29] Manon, Ph., C. Valentin-Roubinet, G. Gilles (2002). Optimal control of hybrid
dynamical systems: application in process engineering, Control Engineering Practice,
10, pp. 133-149.
[30] Arai, T. and J. Ota (1996). Let us work together Task planning of multiple mobile
robots. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots
and Systems, pp. 298-303.
[31] Rus, D, B. Donald and J. Jennings (1995). Moving furniture with teams of autonomous
robots. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots
and Systems, pp. 235-242.
[32] Sawasaki, N. and H. Inoue (1996). Cooperative manipulation by autonomous intelligent
robots. JSME International Journal, C, 39(2), pp. 286-293.
[33] Kosuge, K., T. Osumi and K. Chiba (1997). Load sharing of decentralized controlled
multiple mobile robots handling a single object. In: Proceedings of the IEEE/RSJ
International Conference on Robotics and Automation, pp. 3373-3378.
[34] Hashimoto, M., F. Oba and S. Zenitani (1995). Object transportation control by multiple
wheeled vehicle planar Cartesian manipulator systems. In: Proceedings of the IEEE/RSJ
International Conference on Robotics and Automation, pp. 2267-2272.
[35] Sugar, T.G. and V. Kumar (2002). Control of cooperating mobile manipulators. IEEE
Transactions on Robotics and Automation, 18(1), pp. 94-103.
[36] Barraquand, J. and J.-C. Latombe (1991). Robot motion planning: A distributed
representation approach. Int. J. Robot. Res., 10(6), pp. 628-649.
[37] Gupta, K.K. and Z. Guo (1992). Motion planning for many degrees of freedom:
Sequential search with backtracking. In: Proceedings of the IEEE International
Conference of Robotics and Automation, pp. 2328-2333.
[38] Kondo, K. (1991). Motion planning with six degrees of freedom by multi-strategic
bidirectional heuristic free-space enumeration. IEEE Transactions on Robotics and
Automation, 7(3), pp. 267-277.
[39] Ota, J., N. Miyata, T. Arai, E. Yoshida, D. Kurabayashi and J. Sasaki (1995).
Transferring and regrasping a large object by cooperation of multiple mobile robots. In:
Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and
Systems, pp. 543-548.
[40] Yamashita, A., T. Arai, J. Ota and H. Asama (2003). Motion Planning of Multiple
Mobile Robots for Cooperative Manipulation and Transportation. IEEE Transactions on
Robotics and Automation, 19(2), pp. 223-237.
[41] Asarin, A., O. Maler, A. Pnueli (1995). On the analysis of dynamical systems with
piecewise constant derivatives, Theoretical Computer Science, 138, pp. 35-65.
[42] Pontryagin, L.S., V.G. Boltyanskii, R.V. Gamkrelidze, E.F. Mishchenko (1964). The
mathematical theory of optimal processes, Pergamon, New York.
[43] Miller, R.E. (1999). Optimization: Foundations and Applications, John Wiley and Sons.
[44] Pearl, J. (1984). Heuristics: intelligent search strategies for computer problem solving,
Addison-Wesley Longman Publishing Co., Inc., Boston, MA, U.S.A.
[45] Latombe, J.-C. (1991). Robot motion planning, Kluwer, Norwell MA, U.S.A.
[46] Hwang, Y.K. and N. Ahuja (1992). A potential field approach to path planning. IEEE
Transactions on Robotics and Automation, 8(1), pp. 23-32.
54
[47] Ulieru, M. et.al. (2001) Holonic Enterprise as an Information Ecosystem, Proc.
Workshop on Holons Autonomous and Cooperative Agents for the Industry, Autonomous
Agents International Conference, Montreal, Canada, May 2-6, 2001, pp. 3-20.
[48] Mihaela Ulieru and S. Ramakhrishnan, An Approach to the Modelling of Multi-Agent
Systems as Fuzzy Dynamical Systems, Advances in Artificial Intelligence and Engineering
Cybernetics, Vol. V: Multi-Agent Systems/Space-Time Logic/Neural Networks (George
Lasker, Ed.), IIAS-68-99, ISBN 0921836619, 1999.
[49] Werner E (1996); Logical Foundations of Distributed Artificial Intelligence in
Foundations of Distributed Artificial Intelligence (eds. OHare G.M.P. and Jennings N.R.)
(1996) John Wiley & Sons Interscience.
[50] Subramanian, R. and Mihaela Ulieru, Behavioral analysis of multi-agent systems
by dynamic modeling with application to technical and social systems, InterSymp99,
International Conference of the Institute for Advance Studies in Systems Research,
Informatics and Cybernetics, Baden-Baden, Germany, August 2-7, 1999.
[51] Zimmermann, H-J, Fuzzy Set Theory And Its Applications, Kluwer Academic (1991).
[52] Klir, G. and Folger, Tina, Fuzzy sets, Uncertainty, and Information, Prentice Hall,
(1988).
[53] Stefanoiu, D., Ulieru, Mihaela and Norrie, D., Multi-Agent Systems Planning by
Ambiguity Minimization, Symposium on Computational Intelligence (CI2000), ISA2000
Congress, Wollongong, Australia, December 2000.
[54] Goldberg, D.E., Simple Genetic Algorithms, University of Michigan, Dept. of Civil
Engineering, Ann. Arbor MI (1982).
[55] S. Kirkpatrick, C.D. Gelatt, M.P. Vecchi Optimization by Simulated Annealing,
Science, 220:671-680 (1983).
[56] D. A. Pormerleau, Neural Network Perception for Mobile Robot Guidance. Kluwer
Academic Publishers, 1993.
[57] S. J. Russell and P. Norvig, Artificial Intelligence: A Modern Approach. Englewood
Cliffs, NJ: Prentice Hall, 1995.
[58] G. Wei and S. Sen, eds., Adaptation and Learning in Multiagent Systems. Berlin:
Springer Verlag, 1996.
[59] AAAI, Adaptation, Coevolution and Learning in Multiagent Systems: Papers from
the 1996 AAAI Spring Symposium, (Menlo Park,CA), AAAI Press, March 1996. AAAI
Technical Report SS-96-01. Sandip Sen-Chair.
[60] M. Benda, V. Jagannathan, and R. Dodhiawala, On optimal cooperation of
knowledge sources - an empirical investigation, Tech. Rep. BCS-G2010-28, Boeing
Advanced Technology Center, Boeing Computing Services, Seattle, Washington, July
1986.
55
[61] V. R. Lesser, Multiagent systems: An emerging subdiscipline of AI, ACM
Computing Surveys, vol. 27, pp. 340-342, September 1995.
[62] K. S. Decker, Distributed problem solving: A survey, IEEE Transactions on
Systems, Man, and Cybernetics, vol. 17, pp. 729-740, September 1987.
[63] H. V. D. Parunak, Applications of distributed artificial intelligence in industry, in
Foundations of Distributed Artificial Intelligence (G. M. P. OHare and N. R. Jennings,
eds.), pp. 139-164, Wiley Interscience, 1996.
[64] E. H. Durfee, What your computer really needs to know, you learned in
kindergarten, in Proceedings of the Tenth National Conference on Artificial Intelligence,
(Philadelphia, PA), Morgan Kaufman, 1992. Invited Talk.
[65] K. S. Decker, Task environment centered simulation, in Simulating
Organizations: Computational Models of Institutions and Groups (M. Prietula, K. Carley,
and L. Gasser, eds.), AAAI Press/MIT Press, 1996.