) 76.63(7.92) 76.36(7.85)
Intervalle dge 73-86 66-88
Niveau dinstruction NAE
< 7 = 5 NAE< 7 = 6
NAE 7 = 6 NAE 7 = 5
Exprience informatique jamais/rarement = 6 jamais/rarement = 4
rgulire = 5 rgulire = 7
et NoE
k
k
k
_
_
; K
k
=
_
_
1 0 t
k
0
0 1 0 t
k
0 0 1 0
0 0 0 1
_
_
; C
k
=
_
1 0 0 0
0 1 0 0
_
Le vecteur x
k
R
4
comprend la position de la personne ( linstant t = kT) dans
le repre laser en coordonns polaires (
k
et
k
) et les vitesses, toujours en coordonns
polaires (
k
et
k
). Les coecients de la matrice F
k
R
44
reprsentent la dynamique
du systme. Le vecteur w
k
R
4
reprsente le bruit du systme qui est suppos tre un
bruit blanc Gaussien desprance mathmatique nulle et de covariance connue. Ce bruit
est utilis pour tenir compte de toutes les perturbations qui aectent les dynamiques
du systme. Le vecteur y
k
R
2
est lobservation (la mesure donne par le dtecteur de
personne linstant t = kT) exprime en coordonns polaires. La matrice C
k
R
24
est
la matrice dobservation qui dcrit comment le vecteur dtat est projet sur lobservation.
Le vecteur v
k
R
2
reprsente le bruit dobservation qui est suppos tre galement un
bruit blanc Gaussien desprance mathmatique nulle et de covariance connue. Ce bruit
est utilis pour tenir compte des erreurs du capteur et du dtecteur.
3.3.2 Modlisation des bruits
Les phnomnes alatoires, dans le formalisme du ltre de Kalman, sont modliss par
des bruits blancs, centrs, indpendants et de variance connue. Le bruit de modlisation
comprend les erreurs du modle et les erreurs de mesure (dtection de la personne).
69
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Erreurs du modle
Ce bruit qualie la validit de lhypothse que la personne marche vitesse constante
et sans changement de direction dans lintervalle t (temps coul entre linstant k et
linstant k +1). Plus la dure de cet intervalle est longue, plus lerreur du modle est po-
tentiellement importante. Ces bruits (lerreur est considrer dans les deux composantes
polaires (, )) sont modliss comme des variables alatoires Gaussiennes rsultant de
lintgration dun bruit blanc (quation 3.3).
2
b
= E
2
mod
t (3.3)
Le paramtre E
mod
est rgl de telle sorte que les carts des erreurs par rapport
aux moyennes (qui sont supposes nulles) soient de 0.5 m pour la composant et de 1
rad pour la composant (il est peu probable quune personne fasse un cart de plus de
0.5 m et 1 rad/s). Ces valeurs sont obtenues en xant une variance de 0.16 m pour la
composant et de 0.33 rad pour .
Bien videment ces paramtres peuvent tre ajusts en fonction du prol de la personne
(sa vitesse de dplacement), de lenvironnement (sil sagit dun environnement domes-
tique et encombr sa vitesse sera probablement faible) et aussi du type de tche que la
personne accomplie.
Erreurs de mesure
Les capteurs laser sont gnralement trs prcis, cependant, ils peuvent retourner
des mesures errones. Ces erreurs sont lies au fonctionnement physique du capteur : le
temps coul partir de lenvoi dun rayon jusqu la rception aprs rfection dtermine
la distance de lobjet. Donc, trois types derreurs peuvent se produire : les deux premiers
sont lis la surface de rexion, le dernier la rsolution du laser combine la distance
et la dimension de lobjet :
1. Certains types de matriaux et les couleurs trs fonces peuvent ne pas rchir
assez le signal lumineux mis pour donde rtrodiuse ne soit perceptible par le
rcepteur.
2. Langle dincidence du rayon laser peu entraner une rexion spculaire pas dtec-
table par le rcepteur.
3. Lobjet, sil est susamment loin et petit, la rsolution spatiale du scanner peut
conduire labsence de rexion.
Pour lEKF nous avons modlis lerreur du capteur laser comme une variable ala-
toire Gaussienne moyenne nulle rsultant de lintgration dun bruit blanc (quation
3.4).
70
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
2
b
= E
2
mes
t (3.4)
Le paramtre E
mes
est rgl de telle sorte que les carts des erreurs soient de 0.01
m pour la composant et de 0 rad pour la composant .
3.3.3 tape de prdiction
Lentre de lEKF est la position de la personne fournie par le dtecteur dcrit section
3.1.3. A chaque nouvelle dtection on calcule la variation de position selon les deux com-
posantes polaires et (calcules dans le repre global). A partir de cette variation nous
dterminons les deux composantes polaires de vitesse sur lintervalle de temps sparant
linstant i + 1 de linstant i ( =
t
,
=
t
). Lintervalle t correspond normalement
la priode de balayage du laser, cependant des retards de calcul peuvent causer des
petits dcalages sur des systmes dexploitation non temps-rel ou des trames du laser
peuvent ne pas tre traites par le dtecteur. Donc t est recalcul chaque pas, pour
assurer plus de prcision. Les vitesses prises en compte par le ltre ne sont pas les vitesses
ponctuelles calcules chaque intervalle (i, i+1), mais sont calcules comme la moyenne
sur les 10 dernires dtections (( =
1
+
2
+...+
10
t
1
+t
2
+...t
10
,
=
1
+
2
+...+
10
t
1
+t
2
+...t
10
)). Le vec-
teur de ltat x
k|k
est mis jour avec les coordonnes polaires fournies par le dtecteur et
avec les vitesses moyennes calcules. Ce vecteur reprsente lentre du ltre linstant k.
Ltape de prdiction consiste tablir les expressions de x
k+1|k
(tat linstant suivant)
et de P
k+1|k
(covariance linstant suivant) partir de x
k|k
, de P
k|k
et de lquation de
ltat.
La prdiction de ltat sobtient en prenant la moyenne conditionnelle de lquation dvo-
lution (quation 3.2). Puisque w
k
est de moyenne nulle et indpendant de y
k
, la prdic-
tion est donne par :
x
k+1|k
= F
k
x
k|k
(3.5)
La covariance de lerreur de prdiction, en utilisant lquation dvolution (quation
3.2) est donne par :
P
k+1|k
= F
k
P
k|k
F
T
k
+H
k
Q
k
H
T
k
(3.6)
La matrice Q
k
= Q R
4
est la covariance des bruits de modlisation. La dtermi-
nation de Q tant assez dlicate, son inuence est souvent value par des simulations
de Monte Carlo.
Dans notre cas H = I , la covariance de lerreur de prdiction est alors donne par :
71
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
P
k+1|k
= F
k
P
k|k
F
T
k
+Q (3.7)
3.3.4 tape de correction
Ltape de correction fournit x
k+1|k
et P
k+1|k
en corrigeant les valeurs prdites en
fonction de lcart entre la prdiction de la mesure y
k+1|k
et la mesure eective y
k+1
.
Le gain du ltre K
k+1
et la matrice de covariance P
k+1|k+1
doivent tre dterminer (les
observations y
k+1
ninterviennent pas sur ces calculs).
K
k+1
= P
k+1|k
C
T
k
(C
k
P
k+1|k
C
T
k
) +R
k+1
)
1
(3.8)
P
k+1|k+1
= (I K
k+1
C
k
)P
k+1|k
(3.9)
Une fois les mesures acquises, la prdiction linstant k + 1 est corrige en fonction
de lobservation linstant k + 1 :
x
k+1|k+1
= x
k|k+1
+K
k+1
(y
k+1
C
k
x
k+1|k
) (3.10)
3.3.5 Rsultats
Test avec vitesse impose
Des tests ont t eectus avec le robot en statique, la personne-cible marchant devant
lui. Les entres du ltre sont les dtections fournies par le dtecteur bas sur le laser. Pour
disposer dune vrit terrain permettant de vrier le fonctionnement correct du ltre, la
vitesse de la marche de la personne est rgle par un mtronome (un pas/battement) des
marqueurs colls au sol rglent la grandeur des pas. Les marqueurs sont poss de telle
faon que la marche soit naturelle (la distance parmi chaque marqueur est de 0.4 m).
Avec cette amplitude de pas, les vitesses davance de la personne sont de 0.4 m/s 60
battements par minute (BPM) et de 0.67 m/s 100 BPM.
La personne marche devant le robot en restant toujours dans le champ de vision du laser
(aucun obstacle occulte la dtection).
Marche 60 BPM
Dans ce premier test nous avons demand la personne de marcher en ligne droite 60
BPM. La position initiale de la personne est environ 0.4 m sur laxe x du robot et 0
m de laxe y (Figure 3.11). La direction de marche de la personne suive laxe x du robot.
La personne est bien dtecte jusqu une distance denviron 2.8 m du robot. Cette
distance correspond 6 pas de la personne, pendant le septime pas il y a une perte de
72
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.11 Position de dpart et direction de la marche de la personne-cible pour les
tests du ltre vitesse impose.
dtection.
La gure 3.12 montre la trajectoire donne par le ltre. Cette trajectoire correspond
la trajectoire du barycentre entre les jambes de la personne. Nous pouvons remarquer
loscillation de ce barycentre autour de la trajectoire moyenne (ligne droite). Ce rsultat
est tout fait logique et peut tre corrl aux mesures faites sur la position du centre de
masse dans la marche en ligne droite par des plateaux de force [132].
Concernant les vitesses donnes, il faut rappeler que, durant la phase de prdiction,
le ltre donne une vitesse calcule comme vitesse moyenne sur les 10 derniers pas. La
vitesse moyenne calcule pendant cette exprience est denviron 0.4 m/s (voir courbe
de vitesse sur la gure 3.12). Cela montre que les vitesses observes par le ltre sont
correctes. Cette exprience montre aussi une oscillation de vitesse des pieds autour de la
vitesse moyenne. Ce phnomne est tout fait conforme la vitesse qui oscille autour
de la vitesse de la taille (qui reste peu prs constante).
Marche 100 BPM
Il sagit de la mme exprience que celle dcrite ci-dessus, mais la vitesse est impose au
rythme de 100 BPM (0.67 m/s). A vitesse plus leve on retrouve les mmes eets que
dans le cas prcdent : oscillation de la vitesse autour de la moyenne due au cycle de pas
pendant la marche et oscillation du barycentre autour de laxe x pour une marche en ligne
droite (gure 3.13). La vitesse longitudinale moyenne calcule par le ltre correspond
la vitesse davance impose la personne.
Test avec vitesse naturelle
En ralisant des expriences avec des personnes-cibles marchant une vitesse non
impose et selon des trajectoires arbitraires, nous avons observ des erreurs importantes
73
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.12 Trajectoire (en haut) et vitesse (en bas) de la personne donnes par le
ltre pendant le test 60 BMP.
74
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.13 Trajectoire (en haut) et vitesse (en bas) de la personne donnes par le
ltre pendant le test 100 BMP.
75
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.14 Test vitesse naturelle : P1= perte de dtection cause par une occultation ;
P3= dtection retrouve ( environ 0.4 m de la position prdite par le ltre).
sur les trajectoires fournies par le ltre lors du passage derrire des obstacles selon des
trajectoires circulaires. Un exemple de trajectoire obtenue pour un modle de prdiction
vitesse constante lors dune perte de dtection par loccultation de la personne par
lobstacle contourn est donn gure 3.14.
De manire vidente le modle de prdiction de la locomotion vitesse constante
nest pas adapte aux trajectoires prsentant une courbure et encore moins pour les
trajectoires avec vitement des obstacles. Dans ce qui suit, nous introduisons un modle
de prdiction plus reprsentatif de la locomotion humaine sur laquelle simposent des
contraintes cinmatiques et dynamiques ainsi que des critres doptimalit.
Rduction de vitesse aux virages
Dans des tudes antrieures [133], il a t mis en vidence un invariant reliant la
courbure de la trajectoire et la vitesse du sujet, et que cette relation peut tre rendue,
dans une certaine mesure, par une loi de puissance dite loi de la puissance un-tiers (ou
deux-tiers, selon un autre mode de calcul). La vitesse davance peut tre connue a priori
partir du rayon de courbure de la trajectoire.
Ce concept a t repris dans [134]. Cette dernire tude a montr quen ralit la loi
de la puissance deux-tiers est respecte que pour les trajectoires elliptiques, donc pour
un cas particulier de virage. Dans un cas plus gnral, il est possible de dire que la vitesse
76
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.15 Trajectoires gomtriques (droite) et prols de vitesse (gauche) dune
personne participant ltude de Quang Cuong [3] (reproduit sans autorisation).
et le rayon de courbure dune trajectoire sont lis par une loi exponentielle, lexposant
de cette loi dpendant de la forme de la trajectoire.
La dtermination du trajet emprunt par une personne lors de ses dplacements dans
des environnements intrieurs encombrs en associant les donnes du dtecteur propos
et celle dune trajectoire hors-collision vers un but donn est envisageable. Nous nous
sommes cependant rduit considrer quune activit de locomotion perturbe par des
virages induit une modulation de la vitesse pendant les virages de lordre de 20% (va-
leur dduite de la littrature) et nous avons introduit cette connaissance dans le ltre de
Kalman.
Pratiquement, lorsque le robot perd la dtection, la trajectoire de la personne-cible
(le dernier mtre avant la perte de dtection) est analyse (gure 3.16). On considre les
points distance 0.5 m et 1 m (Mp1 et Mp2) en amont de la dernire dtection (Mp3).
En appliquant lquation 3.11, si ces trois points sont aligns la vitesse considre par le
ltre est la vitesse calcule avant la perte de dtection et reste constante. Sinon la vitesse
est rduite du 20% en raison du virage dtect est.
_
< seuil pas de virage vitesse constante
seuil virage reduction de vitesse
(3.11)
77
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.16 Dtection de virage.
Nous avons alors, pour un cas similaire celui de gure 3.14 (pas strictement identique
car la vitesse na pas t impose), un comportement du ltre plus correct (gure 3.17).
3.4 Rgression
LEKF dcrit dans les paragraphes prcdents est trs utile pour connatre lallure
de la trajectoire de la personne ainsi que pour prdire sa position en cas de perte de
dtection. De plus le ltre a aussi leet de rduire les bruits de mesure, il a un eet
lissant. Cependant, comme nous avons pu observer dans la section 3.3.5, cause de la
nature oscillatoire de la trajectoire du centre de pousse et du mouvement des jambes
pendant la marche, la trajectoire obtenue par le ltre a de lgres oscillations. An de
constituer une trajectoire de rfrence pour commander le mouvement de suivi de cible
par le robot, un lissage de la trajectoire est opr. Nous avons choisi dappliquer pour ce
faire une rgression la trajectoire fournie par lEFK.
Dans les problmes de rgression, linterpolation type spline est souvent prfre
linterpolation polynmial car elle conduit des rsultats similaires tout en vitant le
phnomne de Runge (du mathmaticien Carle David Tolm Runge qui la dcouvert)
qui peut se manifester dans le contexte des interpolations polynmiales. Ce phnomne
peut tre observ mme sur des fonctions inniment drivables. Il conduit laugmen-
tation indnie de lcart maximal entre la fonction et son interpolation en fonction du
degr de linterpolation.
78
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.17 Test vitesse naturelle avec rduction de vitesse dans les virages : P1= perte
de dtection cause par une occultation ; P2= rduction de la vitesse ; P3= dtection
retrouve (proche de la position prdite par le ltre).
Dans [135] Eilers et Marx ont introduit la mthode dinterpolation nomme P-spline.
Cette mthode est base sur deux concepts principaux :
1. Utilisation des B-splines pour la rgression ;
2. Modication de la vraisemblance travers dun coecient de pnalisation sur la
rgression.
Les mthodes de lissage par P-spline (splines pnalises) se fondent sur des approches
non paramtriques (qui combinent les notions de B-spline et de pnalits) et qui estiment
le paramtre de lissage partir des donnes. Cette mthode a deux proprits intres-
santes : la exibilit et la simplicit des calculs. Cet algorithme est particulirement
indiqu pour les problmes de ltrage des bruits et pour les problmes qui ncessitent un
contrle adaptatif du lissage.
Les seuls paramtres choisir pour appliquer la mthode P-spline sont le nombre des
nuds et le coecient de pnalisation P. Linterprtation quil faut donner au coecient
P est : " quel point on veut pnaliser la non-linarit de la spline". Normalement P
est choisi dans lintervalle [10
8
, 10
8
]. P = 10
8
correspond pnaliser trs peu la non-
linarit, P = 10
8
correspond une forte pnalisation. Nous avons choisi le coecient P
exprimentalement. Sur la gure 3.18 une partie de la trajectoire dune personne-cible et
les rsultats des P-splines obtenus avec direntes valeurs de P sont montrs.
Nous avons montr exprimentalement que P = 10
3
(pnalisation modre de la non-
linarit) donne des bons rsultats. Pour limplmentation de lalgorithme de rgression
79
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.18 Dirents rsultats de rgression de la mme courbe obtenus avec di-
rentes valeurs du coecient de pnalisation P.
P-spline nous utilisons la fonction spline1dtpenalized fournie par la librairie open source
Alglib [136]. Cette fonction est applique deux fois pour lisser la trajectoire sur ses deux
composants (x et y) par rapport au temps. Dautres exemples des morceaux des trajec-
toires de la personne-cible interpoles par P-splines en utilisant P = 10
3
sont montrs
sur la gure 3.19.
Le nombre des points utiliss pour le calcul dune P-spline a une inuence consid-
rable sur le rsultat de la rgression. Sur la gure 3.20 dirents rsultats obtenus avec
le coecient de pnalisation P = 10
3
en considrant dirents nombres de nuds est
Figure 3.19 Trois exemples de rgression par P-spline en utilisant P = 10
3
.
80
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.20 Dirents rsultats de P-spline obtenus avec le coecient de pnalisation
P = 10
3
et en considrant dirents nombre de nuds.
montr. Nous pouvons remarquer que les quatre rsultats sont bien dirents et que plus
le nombre de nuds considrs est grand, plus la trajectoire en sortie est lisse.
Ils existent des algorithmes pour choisir de faon automatique le nombre de nuds
considrer pour optimiser le calcul (e.g. [137]). Nous avons choisi de le xer dynamique-
ment en calculant une spline chaque fois que la personne se dplace d1 m (on considre
un dplacement d1 m en distance euclidienne et non en longueur de trajectoire). Le
nombre de points choisis dpend de la vitesse de dplacement et de la forme de la tra-
jectoire parcourue. La gure 3.21 montre un exemple de trajectoire complte lisse avec
P-splines.
Puisque la trajectoire est lisse en ligne pendant que la personne bouge et puisque
nous avons choisi de faire un calcul de P-spline au terme de chaque dplacement d1 m, la
trajectoire complte prsente des points de discontinuit. Nous pouvons soit les raccorder
(par exemple avec une rgression sur chaque extrmit de trajectoire contenant 1 point
de discontinuit) soit les laisser ainsi sachant que lors du suivi de personne (Chapitre 4)
le robot ne sera pas amen reproduire exactement la trajectoire de la personne.
3.5 Dtecteur de personne par fusion des donnes
La dtection travers le seul scanner laser est sujette dirents types de problmes
lis en partie aux limitations du capteur. Le nombre de fausses dtections en environ-
nement encombr, comme nous lavons vu est important. Lutilisation de la vision mo-
noculaire ou binoculaire embarque pose des problmes de nature dirente : sensibilit
81
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.21 Trajectoire dune personne lisse par lalgorithme de P-spline.
aux conditions dclairement, perturbations induites sur la camra, grande variabilit de
lapparence des tres humains, ainsi que de leurs vtements, etc. En revanche lencombre-
ment de lenvironnement est beaucoup moins problmatique parce que les informations
traites en vision sont beaucoup plus riches que celles fournies par un tlmtre laser.
Un nombre trs important de travaux ont t raliss sur la dtection et le suivi de
personnes par vision. Plusieurs techniques bases sur dirents types de caractristiques
ont t proposs : la pseudo-Haar [138], les histogrammes de gradient orient (HOG)
[139], la covariance des rgions [140], les motifs binaires locaux (LBP) [141] etc. Lutili-
sation simultane ou alterne de plusieurs types de descripteurs permet une amlioration
signicative des rsultats comme dmontr dans [142, 143].
Certaines tudes (e.g. [144, 145, 146]) utilisent la strovision qui permet davoir lin-
formation 3D de la position de la personne ainsi que une bonne robustesse aux variations
dilluminations et aux occultations. Les dtecteurs qui utilisent un ux vido peuvent ex-
ploiter aussi linformation de mouvement travers des mthodes de soustraction de fond.
Pour tous les objets en mouvement dtects, ltape suivante consiste tablir sil sagit
des personnes. On se ramne au problme de dtection de personne dans une image, mais
avec une complexit de classication infrieure, grce au fait que des candidats probables
ont t pralablement slectionns.
La combinaison judicieuse de direntes donnes htrognes des dirents capteurs
82
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
an dobtenir une information globale plus riche pour avoir des rsultats plus ables est
un concept bien connu appel fusion de donnes multimodale. Il est appliqu dans de
nombreux domaines comme les interfaces, linteraction, la dtection et le suivi de cible,
etc.
La littrature propose direntes stratgies de fusion des donnes dans le contexte de
dtection de personnes. Certaines approches visuelles consistent utiliser dirents dtec-
teurs de visage en parallle pour atteindre de bonnes performances robustes lorientation
des personnes [147, 148]. Ces dtecteurs de visages multi-vues sont largement exploites
dans ce contexte, mais ils sont ecaces seulement si le visage de la personne est visible
par le robot, ce qui nest pas susant pour lapplication de suivi de personne.
La vision thermique est base sur la rception de rayonnement infrarouges qui permet
de distinguer le prol thermique dune personne du prol thermique des objets inanims.
Cette technologie permet ainsi daranchir les limitations lies aux conditions dillumi-
nation, mais elle a t trs peu utilise sur des plates-formes mobiles pour le suivi de
personne [149].
Dautres systmes de perception multimodale ddis au suivi de personne utilisent
des capteurs visio-auditifs [150, 151, 152]. Nanmoins, percevoir des personnes au travers
dattributs auditifs pendant le dplacement du robot ou de la personne est assez com-
plexe, compte tenu aussi du bruit ambiant.
La solution la plus frquente est la combinaison laser-camra, parce quil sagit de
deux capteurs avec des caractristiques trs complmentaires. Le laser donne des in-
formations gomtriques, la camra des informations dapparence visuelle. De plus, le
laser est moins sensible au bruit ambiant (comme les conditions dclairage), mais il est
exploitable seulement prs du robot et il est sujet un taux derreurs lev dans des en-
vironnements trs encombrs. Alors que la camra est moins sensible la problmatique
de lencombrement de lenvironnement et plus sensible au bruit ambiant (e.g. condition
dclairage, couleur des murs, etc.).
Dans [153] les auteurs prsentent une approche multimodale intgrant la vision (avec
dtection de visage), laudio (avec estimation de la direction de la source sonore) et un
laser (avec dtection de jambes). Beaucoup dautres travaux ont t raliss en couplant
la dtection de jambes par laser et la dtection de visage par camra [119, 154, 155, 117].
Tous ces travaux proposent des mthodes intressantes cependant pas applicables au pro-
blme de suivi lors de dplacements de la personne car bases sur la dtection de visage .
Dans [156], Zhang utilise le laser pour dnir des rgions dintrt en focalisant les objets
83
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
en mouvement. Cette mthode prsente lavantage de rduire le temps de calcul mais
elle est peu robuste dans le cas dobjets possiblement statiques. Dans [116], la fusion
des donnes dune camra panoramique et dun laser pour dtecter plusieurs personnes
simultanment avec un robot xe est dcrite. Des ltres particulaires sont utiliss pour
le tracking des personnes dans le plan du laser et une modle mixte de Gaussiennes est
utilis pour soustraire le fond de limage. Elle ne tire cependant pas prot de la mobilit
du robot. Dans [157], la dtection des jambes permet dinitialiser un algorithme de suivi
visuel et les informations des deux capteurs sont combines travers une mthode de
fusion Bayesienne.
Dautres approches de suivi de personnes exploitant des rseaux de capteurs xes
ou mobiles (ultrasons, infrarouges [158]), ou sur des badges radiofrquence [159, 160,
161, 162]. Ces mthodes sont trs rpandues et sont maintenant mises en uvre dans
de nombreux produits industriels. Elles supposent des amnagements de lenvironnement
(capteurs ou antennes) et/ou que la personne porte un capteur.
Nous avons propos une solution base sur la combinaison du laser et de la camra
embarqus sur le robot dans lobjectif de dtecter une ou plusieurs personnes, en mou-
vement ou statiques, dans des environnements encombrs et sans besoin dinstallations
prliminaires dans lenvironnement et sur les personnes.
Pour raliser ce dtecteur, des modications la plate-forme ont t ncessaires : la web-
cam Logitech du robot a t remplace par une camra pan tilt Philips SPZ5000 pour
avoir une meilleure qualit dimage et le support de la camra a t x pour quelle soit
immobile par rapport au laser (ce qui est ncessaire pour le calibrage laser-camra). Nous
avons choisi une pan tilt parce que on envisage, comme dveloppement futur, dorienter
la camra en fonction de la dtection des jambes an de "largir" le champ de vision.
Notre approche consiste fusionner les donnes fournies par les deux capteurs
travers des grilles de probabilit 2D. Ces grilles sont bases sur une division polaire du
plan. Pour la grille relative au laser, le plan est divis en 270 rayons (un rayon pour
chaque degr dans toute la zone de dtection du capteur). Lincrment de distance est
donn par
d
i+1
= d
i
(1 + E
r
) + E
a
(3.12)
E
r
peut tre considr lerreur relatif et E
a
lerreur additionnel absolu en distance.
Nous avons considr E
r
= 5%, E
a
= 0.5m et d
0
= 0.002m. Cette partition du plan est
un compromis entre la prcision et la complexit du systme. La grille est plus dense prs
du robot, l o nous avons besoin dune estimation de position plus prcise.
Une grille similaire a t dnie pour la partie vision en utilisant la mme quation
(quation 3.12) pour la distance, mais avec une amplitude angulaire infrieure (le champ
84
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.22 Reprsentation de la grille relative au laser.
de vision de la camra est rduit par rapport au laser). La position et lorientation de la
camra par rapport au plan du laser ont t estims en utilisant loutil de calibration de
Bouguet [163].
3.5.1 Dtecteur des jambes
En utilisant le mme modle dni par lquation 3.1, nous proposons une approche
statistique base sur les deux tapes dcrites ci-dessous :
Le pr-processus
Ltape de prtraitement est compose de deux sous-tapes. Tout dabord nous d-
tectons tous les blobs prsents dans le scanner laser. Ensuite, des points virtuels sont
ajouts aux extrmits de chaque blob (gure 3.23). Cette dernire sous-tape ne modie
pas de faon signicative lapparence dune jambe relle dans le scanner laser, mais elle
permet de prendre en considration les objets une certaine distance du capteur dont le
laser dtecte que peu des points ( cause de la rsolution du scanner laser).
La dtection
En se fondant sur lhypothse que tous les blobs dtects sont potentiellement des
jambes, la position dune jambe potentielle est identie comme le barycentre du blob et
est calcule en coordonnes polaires comme dans lquation 3.13.
(
C
,
C
) = (n+1
2
+
width
2
, n+1
2
) (3.13)
85
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.23 Points virtuels ajouts aux extrmits des blobs dtects.
C
et
C
reprsentent les coordonnes polaires de la jambe potentielle. n est le nombre
des points qui composent le blob (les points virtuels tant inclus). Avant dassocier
chaque blob la probabilit quil soit une jambe, les blobs qui ne sont clairement pas des
jambes sont rejets. Cette slection est faite laide dun seuil sur la taille du blob (dis-
tance parmi les extrmits. Ce seuil a t x 0.4 m. Aprs cette premire slection,
nous appliquons quatre oprations an dassocier chaque blob restant la probabilit
quil soit rellement une jambe.
Opration 1 Le modle statistique traduisant la probabilit quun blob soit une jambe
peut tre formul comme suit :
P(leg | D) exp
_
(D
width
)
2
2
width
_
(3.14)
D est la distance parmi les extrmits du blob considr.
Opration 2 Cette probabilit est tendue une petite zone autour du centre du
blob calcul en appliquant un masque de Gaussienne. Cette opration sert prendre en
compte une possible erreur due limprcision du capteur ou au processus de calibrage.
Nous obtenons ainsi une grille de probabilit relative la position des jambes dans la
zone de dtection du laser.
Opration 3 Une convolution est applique sur cette grille avec un autre masque (-
gure 3.24) pour tenir compte du modle de distance parmi les jambes dune personne. En
sortie de cette opration nous avons pour chaque jambe dtecte, la probabilit condi-
tionnelle quune autre jambe soit dans le voisinage. Pratiquement ce masque permet de
coupler les jambes dtectes, en associant une forte probabilit au barycentre de chaque
86
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.24 Masque appliqu dans lopration 3 pour le couplage des jambes.
couple de jambes (dune mme personne).
Opration 4 Dans cette dernire tape les grilles obtenues avec les oprations 2 et
3 sont multiplies pour produire une grille de probabilit jointe de la position des jambes.
Lalgorithme propos est trs ecace dans le cas o les jambes sont spares, cela
reprsentant la conguration naturelle des jambes dune personne qui marche ou qui est
simplement debout. Par contre, si le laser dtecte les deux jambes comme un seul blob
la probabilit associ cette dtection ne sera pas leve, donc probablement rejete.
Une perspective damlioration de ce dtecteur est srement la prise en compte de ce cas
particulier comme cela a t fait dans [119, 155, 154].
3.5.2 Dtecteur du corps
Le dtecteur du corps utilise deux types de caractristiques qui sont frquemment
utiliss dans le domaine de la dtection et la reconnaissance dobjets : la pseudo-Haar et
le HOG. La pseudo-Haar donne linformation concernant la distribution du niveau de gris
entre deux rgions adjacentes : sa sortie indique le contraste des rgions dans une partie de
limage. Le HOG est un histogramme des pixels voisins selon lorientation de leur gradient
et pondr par lamplitude de leur gradient. Le HOG est particulirement adapt la
dtection de personne car il fournit une information compacte et trs discriminante sur
les contours (essentiellement sur la forme du corps). Ce dtecteur a t dvelopp par un
autre doctorant du laboratoire (pour plus des dtails voir [164]). La sortie de ce dtecteur
est une grille de probabilit semblable la grille construite pour le dtecteur des jambes
(damplitude rduite car le champ de vision de la camra est plus troit que le champ de
87
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
vision du tlmtre laser).
3.5.3 Fusion des grilles
Le processus de fusion des grilles est constitu de deux tapes :
la prise en compte de la relation gomtrique entre la camra et le laser pour avoir
une correspondance spatiale cohrente des deux grilles.
la normalisation des valeurs des deux grilles pour la fusion nale.
La premire tape conduit considrer que la grille relative la camra est plus
petite de la grille relative au laser (parce que le champ de vision de la camra est plus
petit). Donc, dans les zones en dehors du champ de dtection de la camra, seulement la
grille de probabilit relative au laser est prise en compte.
Dans les zones de dtection communes aux deux capteurs on peut distinguer trois
sous-zones direntes comme il est montr sur gure 3.25. Dans la zone de rexion
du laser (zone 2) la probabilit nale est calcule comme la racine carre du produit
des probabilits des cellules correspondantes des deux grilles. En fait, dans cette zone,
la probabilit donne par le dtecteur des jambes et celle donne par le dtecteur du
corps doivent tre prises en compte de la mme faon. Dans la zone avant la rexion du
laser (zone 1) nous pnalisons la probabilit donne par le dtecteur du corps. Cela sert
rduire le taux de faux positifs dtects par la camra. En fait, on suppose que les jambes
de la personne soient poses au sol en permanence et si elles ne sont pas dtectes par le
laser, la prsence dune personne en cet endroit est moins probable. Dans la zone aprs
la rexion du laser (zone 3), le dtecteur des jambes ne donne pas une rponse. Donc
dans cette zone, nous considrons seulement la probabilit donne par le dtecteur du
corps. Cette probabilit est lgrement pnalise pour donner la priorit aux dtections
dans la ligne de rexion du laser (zone 2).
Un seuil est appliqu sur la grille rsultante de la fusion, pour raliser la dtection nale.
3.5.4 Rsultats exprimentaux
Protocole exprimental
Ce dtecteur a t test sur la mme base de donnes que celle utilise pour tester
le dtecteur bas seulement sur le laser. Le dveloppement dun dtecteur plus sophisti-
qu bas sur la multimodalit avait t anticip. Pendant lacquisition de cette base de
donnes la webcam Logitech du robot a t remplace par une camra Philips SPZ5000
monte sur un support statique (pour permettre la calibration des deux capteurs). Les
88
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.25 Les trois zones utilises pour la fusion des deux grilles de probabilit.
Figure 3.26 Photos des 15 participants slectionns pour la cration de la base de
donnes de tests.
participants slectionns pour cette exprience avaient direntes tailles, poids, genres et
tant habills de direntes manires (en formes et couleurs) (gure 3.26).
Rsultats
Les performances de ce dtecteur ont t analyses en relation avec les distances
sociales (proxmie). Cette dnition a t introduite par Hall [4] qui, inspir par les dis-
tances dinteraction entre les humains, a identi quatre zones dinteraction human-robot
proxemics (HRP) (gure 3.27).
Comme on peut voir sur la gure 3.28 les grilles de probabilit sont plus denses
prs du robot (o nous cherchons avoir une localisation plus prcise). Dans lespace
personnel (Personal Space) lerreur moyenne en distance de lchantillonnage choisi
du plan (gure 3.28) est trs similaire aux rsultats de ltat de lart [165].
Nous avons collect 271 chantillons (image et scanner laser) : 131 avec une seule
personne et 140 avec deux personnes. La base de donnes contient 411 dtections poten-
tielles de personne. La distribution des observations relativement aux distances sociales
(proxmie) est donne dans la table 3.1. Le nombre dobservations dans lespace intime
(Intimate Space) est insusant pour pouvoir analyser les performances du dtecteur dans
89
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.27 Les quatre zones dinteraction HRP dnies par Hall [4].
Figure 3.28 A gauche : Densit des cellules des grilles de probabilit en fonction des
distances de HRP. A droite : Pourcentages de lerreur relative moyen en distance.
90
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Table 3.1 Distribution du nombre dobservations en fonction des distances de HRP.
Proxemics Observations
Intimate Space 5
Personal Space 44
Social Space 116
Public Space 246
cette zone.
La courbe ROC globale donne en gure 3.29 indique que la fusion des rsultats des
deux dtecteurs amliore les performances de dtection comme attendu. Le dtecteur des
jambes semble tre moins performant que le dtecteur du corps, mais il faut aussi consi-
drer le fait quil travaille mieux prs du robot, o nous disposons de moins dchantillons
dans la base de donnes. En fait la distribution des chantillons de la base de donnes
nest pas homogne : nous disposons de beaucoup dchantillons dans lespace public, o
le dtecteur du corps est beaucoup plus performant que le dtecteur de jambes (gure
3.31). Cela est caus par le fait que la probabilit dintersection entre un rayon laser et
une jambe diminue considrablement dans lespace public (gure 3.8).
Dans lespace personnel (gure 3.30), seul le laser peut dtecter. Cela tient au fait que
cause de langle de vue de la camra le corps dune personne est visible que dans un
intervalle de [2, 9] m.
La gure 3.32 montre lecacit de la fusion dans lespace social. Dans cette zone, les
deux capteurs ne sont que trs peu performants. Leur taux de dtection maximum est en-
viron 50%. Par contre leur combinaison conduit une nette augmentation du score (70%).
En rsum, dans la conguration hardware et software test, le dtecteur des jambes
est plus performant dans lespace personnel, le dtecteur de corps est plus performant
dans lespace public et dans lespace social, la fusion des rsultats des deux dtecteurs
amliore considrablement le score de dtection.
3.6 Conclusion
Ce chapitre a prsent un systme pour la dtection de personne et lestimation de
son volution.
Tout dabord, un dtecteur de personne bas sur les donnes du tlmtre laser em-
barqu sur le robot est dcrit et ses performances sont prsentes. Ce dtecteur est conu
pour dtecter des personnes debout ou assises en position naturelle (donc avec les jambes
91
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.29 Courbe ROC pour les trois dtecteurs.
Figure 3.30 Courbe ROC dans lespace personnel.
92
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 3.31 Courbe ROC dans lespace public.
Figure 3.32 Courbe ROC dans lespace sociale.
93
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
spares). Puis, la dnition et la mise en uvre dun estimateur de ltat de la personne-
cible utilisant un ltre de Kalman tendu et considrant la nature de la marche humaine
sont dtailles.
Le dtecteur de jambes dvelopp ne fournit pas des rsultats excellents, mais les
amliorations proposes (lutilisation dune squence de mesures avec le ltrage, la prise
en compte de la nature de la marche humaine par le ltre et lvolution du dtecteur par
fusion des donnes) permettent davoir des performances satisfaisantes pour lapplication
de suivi de personne-cible dcrite dans le chapitre 4.
Enn, une amlioration du dtecteur par fusion des donnes laser-camra travers
des grilles de probabilit 2D est propose. Les performances de ce dernier dtecteur sont
prsentes en fonctions des distances sociales dnies par Hall [4].
94
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Chapitre 4
Environnement logiciel pour la
synthse de comportements
interactifs
Dans ce chapitre nous proposons un environnement logiciel pour la cration de com-
portements de robots personnels. La mise en uvre de robots personnels doit tre en eet
supporte par une architecture dcisionnelle de contrle capable dorganiser les activi-
ts lmentaires, sur la base de leurs composantes fonctionnelles, au regard dun agenda
mais aussi relativement aux sollicitations et aux interactions avec la personne-cible. Dans
ce cadre particulier, il sagit atteindre des comportements ractifs pour sadapter des
conditions volutives des tches en prsence dimprcisions et dincertitudes. Les compor-
tements du robot doivent aussi tre adquats un contexte particulier (environnement,
type de service) et au prol de lutilisateur (besoins, comportement) et saccommoder
de situations o les informations sont rares, incohrentes, ou incomplte, et les objectifs
non-dterministes.
Dans ce chapitre nous dcrivons un environnement logiciel bas sur la prise de dcision
oue laide de loutil de dveloppement SpirOps AI (voir annexe B) dont le fonctionne-
ment est dtaill pour la mise en uvre de la mobilit du robot pour la recherche dune
personne dans un lieu dhabitation et le suivi interactif de personnes voluant dans des
environnements intrieurs. Dune manire plus gnrale, cet environnement logiciel est
exploitable pour grer lactivit complte du robot comme nous lillustrerons au chapitre
suivant.
95
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
4.1 Pourquoi la logique oue pour la prise de dcision?
Les approches dterministes pour les processus de prise de dcision sont appropries
des problmes o les informations disponibles sont prcises. Lutilisation de modles
mathmatiques prcis dans une situation o les informations sont rares, vagues, contradic-
toires, ou incompltes peut mener dans de nombreux cas des dcisions (comportements)
inopportunes. Le problme de prise de dcision sous incertitudes (donnes manquantes
et imprcises) et pour des objectifs vagues ou confus (ous) ou pour des multi-objectifs
(souvent en conit), peut tre trait par la prise de dcision oue.
La logique oue a t dj utilise pour la navigation des robots en environnements
encombrs [166, 167] et sur les terrains naturels [168]. Une approche oue a t utilise
aussi pour le suivi de personne. Dans [169] Hu a prsent une mthode base sur des
rgles oues exprimes sous la forme de SI-ALORS connectant les entres (perception)
et les sorties (vitesses de contrle) du systme. Les entres des ces rgles sont les vitesses
de la personne calcules partir de la variation de la taille de son torse dans limage.
Les sorties sont les vitesses linaire et angulaire de commande du robot, an quil reste
une distance constante de la personne.
4.2 Suivi de personnes
Le suivi de personnes pour des interactions homme/systme est une fonction centrale
voire essentielle car elle met en uvre lune des principales caractristiques intrinsques
des robots : leur capacit raliser des mouvements autonomes adaptatifs. La fonction
dite de suivi est particulirement complexe dnir. Elle dpend de nombreux facteurs
comme la tche raliser (mise disposition ergonomique dune interface, focalisation par
lun des capteurs embarqus, surveillance gnrale de lactivit, observation distance,
interaction avec des objets intelligents, manipulation, transport, etc.), de lenvironnement
dans lequel le robot opre (encombrement, nombre de pices, obstacles, lieu de charge des
batteries, visibilit par rapport au rseau de communication, personnes prsentes, per-
turbations acoustiques, etc.) et aussi et surtout de la personne-cible concerne (scurit,
contraintes sociales, etc.).
Un suivi de personne interactif, ne peut pas tre simplement bas sur un contrle de
la distance comme dans [170, 171] et/ou de la vitesse relative la personne comme dans
[126] mais doit tre fond sur des mcanismes de raisonnement appropris la prise en
compte des facteurs voqus avant.
Gockley et al. [172] ont tudi la perception humaine du mouvement de suivi dune
96
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
personne par un robot mobile sur la base de deux mthodes : le suivi de la direction du
dplacement de la personne et le suivi de son chemin. Le rsultat de leur tude montre
que le suivi de direction de la personne est peru comme plus naturel et proche du com-
portement humain que le suivi de chemin. Une approche similaire est dcrit par Yuan
dans [173]. Lauteur propose une combinaison de suivi de direction, de suivi de chemin
et de suivi parallle (suivi de la personne en restant ses cts). La mthode est slec-
tionne automatiquement par le robot sur la base de ltat de lenvironnement et de la
position relative de la personne suivie.
Kruij et al. [174] dcrivent direntes stratgies dinteraction observes pendant des
tudes conduites avec la mthode du Magicien dOz. Ils se sont concentrs sur une descrip-
tion conceptuelle de lenvironnement en situation de dialogue homme-robot. Cependant,
le comportement de suivi appliqu est bas seulement sur une dtection par laser et sur
le suivi du chemin de la personne en respectant une distance socialement acceptable.
Dans [175], lauteur propose un algorithme de suivi local bas sur la minimisation
dune fonction risque qui prend en compte : la position et la vitesse relative de la per-
sonne suivie, les contraintes de lenvironnement et les contraintes cinmatiques du robot.
Cette fonction reprsente le risque de perte de dtection de la personne par le robot.
De plus, un processus de dcision de Markov partiellement observable est utilis pour
construire le modle de comportement de la personne. Une autre approche de suivi de
personne base sur le concept de visibilit de la personne par la robot est prsente dans
[176]. Dans cette mthode, les vitesses linaire et angulaire du robot sont calcules en
fonction du changement de position des pixels de lobjet suivre dans limage. Dautres
mthodes utilises en poursuite de cible mobile se fondent sur le principe doptimum
dobservabilit (ou destimabilit de ltat) [177].
Zender et al. [178] ont propos une approche qui combine tracking de personne et
SLAM (Simultaneous Localization and Mapping) pour produire une carte smantique de
lespace an que le robot puisse ajuster sa vitesse de suivi en fonction de sa position dans
lenvironnement et des actions attentes de la personne. A titre dexemple, les auteurs
montrent quaugmenter la vitesse du robot quand il volue dans un couloir amliore les
performances du systme.
4.3 Environnement logiciel pour le suivi de personne
Lenvironnement logiciel propos pour la synthse des comportements dun robot
mobile est bas sur trois niveaux :
97
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.1 Architecture globale de lenvironnement logiciel propos.
1. Niveau de perception : La perception de la personne et de lenvironnement ainsi
que la prise en compte dentres provenant de linterface homme-machine.
2. Niveau de dcision : Ce niveau est constitu dun moteur de dcision qui slectionne
et organise les actions lmentaires du robot dans un contexte particulier.
3. Niveau de contrle : Il assure le contrle du robot pour lexcution de la tche de
suivi de personne tout en respectant les contraintes lies lencombrement de len-
vironnement (obstacles statiques et dynamiques) et les incertitudes de perception.
Larchitecture globale de lenvironnement logiciel propos est illustre sur la gure
4.1.
4.4 Niveau de perception
La prise de dcision repose sur la perception de la situation particulire dans laquelle
la dcision doit tre faite. Le problme de la perception de la personne et de son volution
a t trait dans le chapitre 3. Dans ce qui suit, pour la perception de lenvironnement, le
robot utilise son tlmtre laser pour dtecter les obstacles dans un cne ferm de [-135;
+135] et dun rayon de 30 m. Nous avons utilis le dtecteur bas seulement sur le laser
et donc le dtecteur avec des performances moins bonnes, pour assurer le fonctionnement
98
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
du robot avec sa conguration dorigine (sans changement ni xation du support de la
camra).
4.5 Niveau de dcision
Lun des enjeux est dobtenir un comportement robuste face aux problmes de per-
ception et aux bruits induits par lenvironnement, ceci de faon approprie un certain
contexte donn, une personne particulire et aux tches spciques qui doivent tre
excutes.
Pour disposer dun environnement logiciel exible et aisment paramtrable (an de
pouvoir adapter le systme dirents types des tches, dutilisateurs, denvironnements
etc.) nous utilisons comme outil de dveloppement, le logiciel SpirOps AI [179], une
solution conue pour la dnition de processus de prise de dcision autonome. Pour plus
de dtails concernant ce logiciel on se reportera lannexe B.
4.5.1 Slection de stratgies
Pour dnir un comportement appropri, le robot utilise direntes stratgies qui
sont slectionnes dynamiquement en fonction des informations disponibles sur ltat de
la personne, le contexte et lenvironnement. Dans ce mmoire nous nous sommes limits
au comportement de suivi de personnes, mais larchitecture gnrale de lenvironnement
logiciel propos peut tre applique des comportements autres et possiblement plus
complexes.
Ce qui est dsign ici par stratgie est une action que le robot peut/doit excuter. Les
stratgies peuvent tre de natures direntes et varies. Prenons lexemple dun robot qui
doit rappeler la personne la prise dun mdicament. Un comportement limit lacti-
vation de la synthse vocale peut se rvler peu ou pas du tout ecace compte-tenu de la
position relative de la personne et du robot. Un comportement possiblement plus ecace
peut consister focaliser la personne en 1) recherchant la personne, 2) se rapprochant
delle et 3) activant la synthse vocale. Sur cet exemple simple, les trois actions peuvent
tre vues comme des stratgies que le robot doit excuter ou pas (en fonction de ce quil
observe) pour raliser la tche gnrale (rappeler la prise dun mdicament).
Dans loptique de dvelopper le comportement de suivi de personnes, nous avons dni
quatre stratgies : GoToUser, FollowUser, GlobalSearch et LocalSearch. Ces stratgies
sont simples et peuvent videmment tre complexies.
La dcision relativement la stratgie appliquer est prise sur la base des rgles
oues. Larchitecture gnrale du moteur dcisionnel est montre sur la gure 4.2. La
99
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Table 4.1 Liste dinformations donnes en entr au moteur dcisionnel.
Nom Abrviation Signication
RobotPosition RP Coordonnes du robot dans le repre globale
PersonPosition PP Coordonnes de la personne dans le repre globale
LastPersonPosition LPP Dernire position prise en compte de la personne
ObstacleDistance OD Distance de lobstacle le plus proche au robot
DetectionCondence DC Taux de conance de dtection de la personne
TimePersonLoose TPL Temps coul de la perte de dtection
PersonStay PS Taux de croyance que la personne ne bouge pas
Points cibles
PointGlobalSearch1 PGS1 Point o lexploration du robot est autorise
PointGlobalSearch2 PGS2 Point o lexploration du robot est autorise
PointGlobalSearch3 PGS3 Point o lexploration du robot est autorise
PointPersonTrajectory PPT Point sur la trajectoire de la personne
PointCloseToPerson PCP Point 0.5 m de distance de la personne
PointPredictedPosition PPP Position de la personne prdite par lEKF
combinaison de ces rgles assigne un degr dintrt chaque stratgie.
Une stratgie correspond un Drive en langage SpirOps. Les informations que le
moteur dcisionnel reoit en entre sont listes dans la table 4.1. Dans cette liste, nous
avons insr seulement trois lieux (PGS1, PGS2 et PGS3) que le robot peut explorer
pour rechercher la personne. Ces points sont aisment modiables et leur nombre peut
tre beaucoup plus lev. Ils sont dnis en fonction des prfrences de lutilisateur, du
type denvironnement, des besoins etc. Chaque variable PGS contient les coordonnes
cartsiennes du point dans le repre global ainsi quune tiquette qui mmorise linstant
de la dernire visite du point par le robot (dsigne par PGS
TimeLastV isit
).
Le degr dintrt associ chaque stratgie va dpendre de plusieurs facteurs (en
fonction de la stratgie, certaines informations dentre sont slectionnes et labores)
et il prend une valeur comprise entre 0 et 1. Dans lenvironnement logiciel propos, le
calcul des intrts est fait par le logiciel SpirOps AI. Plus de dtails concernant le modle
de calcul peuvent tre trouvs dans [180].
Pour chaque Drive, cest--dire pour chaque stratgie, tous les points cibles (PGS1,
PGS2, PGS3, PPT, PCP et PPP) sont pris en compte pour calculer lintrt de
100
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.2 Schma gnrale du moteur dcisionnel.
chaque stratgie relativement chaque point cible. Sur la base des rgles oues dnies
et de lensemble des observations, le moteur de dcision associe chaque stratgie et pour
chaque point un intrt.
GoToUser
Cette stratgie est active quand le moteur dcisionnel dtermine que le robot peut/doit
sapprocher la personne. Cette dcision est prise quand le robot a une conance suf-
samment leve sur la dtection et la localisation de la personne (variable DC) que
la personne nest pas en mouvement (variable PS). Le point cible (PCP) que le robot
doit atteindre pour se rapprocher de la personne est plac 0.5 m de la personne cible
et sur la direction robot-personne (gure 4.3). La valeur DC correspond au nombre de
dtections de la personne sur les 10 dernires mesures laser. La valeur PS est le nombre
de fois que la personne est dtecte dans un disque de diamtre de 0.1 m sur les 30
derniers dtections. Un exemple de rgle associe la stratgie GoToUser est montr sur
la gure 4.4.
101
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.3 Calcul du PCP utilis pour la stratgie GoToUser.
Figure 4.4 Exemple des rgles associes la stratgie GoToUser.
102
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.5 Exemple des rgles associes la stratgie FollowUser.
FollowUser
Cette stratgie est active quand le moteur dcisionnel dtermine que le robot peut/doit
suivre la personne. Cette dcision est prise quand le robot a une conance susamment
leve sur la dtection et la localisation de la personne (variable DC) et quil estime
que la personne se dplace (variable PS). Un exemple de rgle associe la stratgie
FollowUser est montr sur la gure 4.5. Le point cible (PPT) que le robot doit atteindre
pour suivre la personne est le point situ sur la trajectoire lisse par P-spline (chapitre
3) qui se trouve 1 m de la position courante de la personne.
GlobalSearch
Quand le robot doit dbuter une interaction avec la personne-cible partir dune
conguration initiale o il ne connat pas la position courante de la personne (pas de
dtections ni courante ni rcentes), il doit tout dabord la rechercher et la localiser dans
lenvironnement. La stratgie consiste donc en une exploration qui utilise le module de
SLAM intgr au robot Kompa. Un ensemble des points (PGSi) o lexploration est
autorise est dni a priori aprs la construction de la carte de lenvironnement (via la
fonction Mapper). Ces points sont dnis travers leurs coordonnes cartsiennes par
rapport au repre global (repre de la carte), ils sont enregistrs dans un chier de con-
103
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.6 Exemple des rgles associe la stratgie GlobalSearch.
guration (chier xml) et ils sont facilement modiables (toute larchitecture est tudie
de faon avoir un systme exible et adaptable nimporte quel type denvironnement).
Le critre utilis pour la slection des lieux explorer, parmi tous les points dnis, est
bas sur le temps coul par rapport la dernire visite : le point choisi est celui que le
robot a t explor le moins rcemment. Les points qui ont t explors il y a plus de 120
s sont considrs galement intressants. Un exemple de rgles associes la stratgie
GlobalSearch est montr sur la gure 4.6.
LocalSearch
Cette stratgie est slectionne quand le robot doit suivre ou se rapprocher de la per-
sonne aprs avoir perdu sa dtection. Elle consiste en une recherche locale de la position
o la personne est cense se trouver par rapport la prdiction fournie par lEKF. Un
exemple des rgles associes la stratgie LocalSearch est montr sur la gure 4.7.
La gure 4.8 montre un exemple de slection de stratgie et de comportement obtenu
en simulation. Les direntes tapes de lexprience sont expliques travers lutilisation
dun code de couleurs : le violet indique que le robot a dtect et suit la personne,
le bleu est utilis quand le robot a perdu la dtection et quil applique la stratgie de
104
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.7 Exemple des rgles associe la stratgie LocalSearch.
LocalSearch. Ici le robot suit une personne qui sort dune pice travers une porte. Quand
la personne passe la porte, le robot perd sa dtection. Le moteur dcisionnel slectionne
alors la stratgie de LocalSearch, le robot va rechercher la personne la position prdite
par lEKF, il la retrouve et il continue la suivre.
4.6 Niveau de contrle
La tche du niveau de dcision a en charge la slection de la stratgie permettant au
robot de se rapprocher et/ou de suivre une personne de manire robuste. Cette dcision
doit tre ralise en fonction de la localisation de la personne et des ses dplacements
tout en tenant compte des obstacles statiques et dynamiques.
Nous avons notamment mis en uvre un contrle en exploitant un schma doptimisa-
tion multicritre (Multiple-Objective Decision Making) (MODM). Les mthodes MODM
permettent de traiter sous des problmes de prise de dcision en prsence dobjectifs
multiples, possiblement contradictoires ceci sous un certain nombre de contraintes. Pra-
tiquement la solution est donne par loptimisation des Fonctions Objectifs qui constitue
le compromis recherch par une pondration des objectifs lmentaires en fonction de la
situation observe. Le niveau de contrle bas sur cette mthode est dcrit dans [181].
Dans ce manuscrit, nous en rsumons brivement les principes de la mthode implmen-
te puis nous une introduirons une solution (non ncessairement exclusive) conduisant
105
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.8 En haut : Exemple de suivi dune personne qui sorte dune pice. En bas :
Stratgies slectionnes par le robot en fonction de sa perception, pour rester connect
la personne suivie.
106
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
des mouvements plus uides du robot inspire sur des trajectoires de prdation .
Nous avons dni quatre Objectifs, quatre comportements simples qui constituent les
primitives de base des mouvements du robot : Turn, GoForward, GoForwardFast et Pa-
thFollow. Notons que cette base peut tre augmente de mouvements lmentaires plus
labors. Ces Objectifs sont combins pour produire un comportement plus complexe
du robot. Lobjectif Turn correspond une rotation autour dun point choisi du robot.
Ce comportement permet de commander le mouvement angulaire du robot et donc de
minimiser lerreur angulaire. GoForward commande le mouvement de translation une
certaine vitesse linaire. Ce comportement vise se rapprocher dun point donn en mi-
nimisant lerreur quadratique entre la position courante du robot et la position dsire.
Lobjectif GoForwardFast consiste avancer vitesse leve et a pour but de minimiser
lerreur entre la position de lutilisateur prdite par lEKF ( linstant k +T) et la posi-
tion prdite du robot (toujours en k +T). Le modle prdictif du robot est dtaill dans
[181]. Il est utilis pour estimer la distance entre le robot et la personne-cible en k +T,
an de dterminer si les robot doit avancer plus vite pour ne pas rester trop loin de la
personne. Enn, lobjectif PathFollow consiste minimiser lerreur angulaire du robot
par rapport au chemin hors-collision calcul par le module de SLAM. A travers des rgles
oues, le moteur dcisionnel associe un poids chacun de ces objectives en fonction de
ce que le robot peroit (tat de la personne, environnement etc.). Ces poids sont utiliss
pour combiner les quatre objectifs lmentaires qui sont optimiss par un algorithme de
type LP (Linear Programming).
La gure 4.9 montre un exemple des poids correspondant aux quatre stratgies Turn,
GoForward, GoForwardFast et PathFollow calculs par la mthode MODM. Au dbut
de lexemple la personne nest pas dtecte, donc le moteur dcisionnel slectionne la
stratgie de GlobalSerch : le robot se dplace la vitesse de 0.3 m/s et en suivant le
chemin calcul par le Planner (w
3
= 1). Une fois dtecte, la personne commence
marcher en ligne droite environ 0.7 m/s en restant toujours dans le champs de vision
du robot. Le poids (w
4
) augmente parce que lerreur quadratique entre la position de
lutilisateur prdite par lEKF et la position prdite du robot grandit. Comme on peut
le voir sur la gure 4.9, les poids varient dynamiquement en fonction de lencombrement
de lenvironnement, de la dtection de la personne et de sa vitesse.
Cette solution propose permet au robot de suivre la personne-cible de faon robuste
et en toute scurit. Cependant, nous avons remarqu un manque de uidit dans les
mouvements du robot d notamment la prsence de mouvements de rotation vitesse
longitudinale nulle. Nous avons introduit une solution labore sur la base dune combi-
naison de deux types de contrle qui considrent deux situations direntes :
107
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.9 Exemple de poids correspondant aux quatre stratgies dnies pour le
contrle MODM.
108
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
1. La personne et le robot voluent dans un environnement dgag, donc sans risque
de collisions ni zones interdites. Pour ce cas simple, on propose un contrle bas
sur le suivi de trajectoires circulaires de rayon variable.
2. La personne et le robot voluent dans un environnement encombr dobstacles xes
et mobiles. Pour ce deuxime cas, on propose un contrle bas sur la combinaison
des trajectoires circulaires et des trajectoires hors-collision qui tiennent compte des
contraintes de lenvironnement.
La transition lisse entre ces deux cas est gre par le moteur dcisionnel travers une
rgle oue base sur la dtection et lanalyse des obstacles. La distance des obstacles est
value localement et de faon continue (la personne et le robot bougent et des obstacles
mobiles peuvent perturber lvolution).
4.6.1 Modle cinmatique du robot Kompa
La commande du robot exploite le modle cinmatique du robot et prend en compte
les contraintes cinmatiques. La plate-forme Kompa est un robot mobile non-holonome
avec deux roues contrles indpendamment.
Le modle cinmatique est illustr sur la gure 4.10. v et sont les vitesses linaire
dun point situ au centre de la plate-forme et angulaire ; v
L
et v
R
sont les vitesses de
la rue gauche et droite respectivement ; 2d est la distance entre les plans des deux roues
motrices (la largeur du robot) ; x, y, et sont les coordonnes gnralises du robot dans
le repre globale.
Figure 4.10 Modle cinmatique du robot Kompa
109
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Les vitesses v, , v
L
et v
R
sont lies par les relations suivantes :
v =
v
L
+v
R
2
(4.1)
=
v
R
v
L
2d
(4.2)
Les contraintes cinmatiques respecter sont :
v v
MAX
(4.3)
MAX
(4.4)
4.6.2 volution en environnement dgag
Lorsque le moteur dcisionnel value un possible risque de collision, le robot suit des
trajectoires circulaires (gure 4.11) avec un certain rayon de courbure (a). Ce prol de
trajectoire a t choisi pour sa souplesse. La slection de la cible (x
t
, y
t
) ne dpend pas de
lenvironnement mais de la stratgie slectionne par le moteur dcisionnel. Par exemple,
si la stratgie slectionne est FollowUser, la cible est calcule en fonction de la trajectoire
de la personne (parce que le robot doit suivre la personne). Par contre, si la stratgie
slectionne est LocalSearch, la cible dpend de la position de la personne prdite par
lEKF. Le robot doit chercher la personne autour de cette position, sans considrer la
trajectoire que la personne a parcouru pour latteindre.
La vitesse linaire v est calcule en fonction de la distance Euclidienne la cible (d
t
)
en utilisant la rgle exprime par lquation 4.5.
v =
_
_
v
min
si d
t
<= d
min
v
max
si d
t
>= d
max
v
min
+
(v
max
v
min
)(d
t
d
min
)
d
max
d
min
autrement
(4.5)
A partir de la vitesse linaire v, les vitesses des roues pour parcourir la trajectoire
circulaire sont calcule comme suit :
v
L
= v
_
1
d
_
= v
_
1
2dy
t
x
2
t
+y
2
t
_
(4.6)
v
R
= v
_
1 +
d
_
= v
_
1 +
2dy
t
x
2
t
+y
2
t
_
(4.7)
110
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.11 Trajectoire circulaire pour rejoindre le point cible.
Et de lquation 4.2 on peut calculer la vitesse angulaire
=
2vy
t
x
2
t
+y
2
t
(4.8)
4.6.3 volution en environnement encombr
Si un risque de collision est dtect, les contraintes gomtriques de lenvironnement
doivent tre prises en compte. Pour cela, nous introduisons une pondration an de mo-
dier localement la trajectoire circulaire pour la rendre compatible (hors-collision) avec
les contraintes gomtriques de lenvironnement.
Le module de SLAM intgr sur le robot Kompa ore, travers la fonction Planner,
un chemin pour se dplacer dun point un autre de la carte, tout en vitant les obs-
tacles. Nous utilisons ce chemin comme le chemin de rfrence qui assure la scurit du
robot. Ce chemin constitue lentre dun algorithme de suivi de chemin bas sur la loi de
contrle propos par Morin et Samson dans [182].
On exploite donc les deux torseurs de vitesse (v, ), lun qui conduit parcourir
une trajectoire circulaire et lautre qui correspond une trajectoire hors-collision pour
construire le comportement du robot.
(v
c
,
c
) = vitesses linaire et angulaire pour suivre la trajectoire circulaire
(v
p
,
p
) = vitesses linaire et angulaire pour suivre la trajectoire hors-collision
111
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Le second torseur sert dformer localement la trajectoire circulaire de faon la
rendre elle-mme une trajectoire hors-collision. On associe chaque torseur (v, ) un
poids w. Les poids sont calculs comme paramtres de la stratgie slectionne par le
moteur dcisionnel. Les vitesses combines comme suit :
_
v = w
c
v
c
+w
p
v
p
= w
c
c
+w
p
p
(4.9)
avec w
c
+w
p
= 1.
dforme localement la trajectoire de poursuite proportionnellement au niveau de
risque de collision.
4.7 Expriences
Le comportement de suivi de personne a t test dans un environnement repr-
sentatif dun environnement intrieur avec des chaises des tables et autres obstacles de
direntes natures (Figure 4.12). Le robot procde pralablement une exploration pr-
liminaire pour la construction de la carte en utilisant la fonction Mapper du SLAM.
Une fois la carte acquise, nous avons choisi les endroits accessibles par le robot pour la
recherche de la personne-cible (points utiliss pour la stratgie GlobalSearch). Aprs ces
deux tapes, la phase dinstallation/paramtrage peut tre considre comme termine.
Notons que les points de recherche peuvent tre grs dynamiquement en fonction de
lexprience acquise par le robot.
4.7.1 volution en environnement dgag
La premire exprience montre le comportement du robot lorsque la personne bouge
dans un environnement dgag, donc sans risque de collision. Pour pouvoir rendre cette
exprience reproductible et pour comparer les comportements du robot sous direntes
conditions de contrle, nous avons impos la personne la trajectoire suivre et la vitesse
de marche. Comme pour les tests du ltre de Kalman (chapitre 3), la trajectoire a t
impose avec des marqueurs au sol et la vitesse via un mtronome (la personne marche
0.4 m/s).
La gure 4.14 montre les trajectoires de la personne et du robot en environnement
dgag. La trajectoire du robot est compose dune suite de trajectoires circulaires : la
112
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.12 En haut : Carte de lenvironnement utilise pour les expriences. En bas :
Photo de lenvironnement des tests.
Figure 4.13 Suivi de personne en environnement dgag.
113
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.14 Trajectoires de la personne et du robot en environnement dgag : sur
la trajectoire de la personne, les points cible pour le robot, slectionns par le moteur
dcisionnel.
position cible que le robot doit atteindre est recalcule chaque dplacement de 0.3 m de
la personne. Puisque la personne est toujours visible par le robot et quelle est dtecte en
mouvement, la stratgie slectionne par le moteur dcisionnel est toujours UserFollow.
Cela veut dire que toutes les positions cibles que le robot doit atteindre sont calcules
sur la trajectoire de la personne.
Le robot se dplace une vitesse moyenne de 0.4 m/s et il rejoint la trajectoire de
la personne aprs environ 2.5 m (la position initiale du robot ntant pas ncessairement
aligne avec le trajectoire initiale de la personne).
4.7.2 volution en environnement encombr
Pour cette deuxime exprience, nous avons ajout deux obstacles dans le mme en-
vironnement que la premire (gure 4.15). Les obstacles ont t positionns prs de la
trajectoire de la personne (qui reste la mme que celle de lexprience prcdente) pour
pouvoir dmontrer leur inuence sur le comportement du robot.
Dans la gure 4.16 la zone de risque de collision est mise en vidence. Quand le robot
se rapproche du premier obstacle, la valeur du poids w
c
associ au suivi de trajectoire
circulaire diminue jusqu 0 et la valeur du poids w
p
correspondant au suivi de trajectoire
hors-collision augmente (gure 4.17).
Quand le robot sloigne lgrement de la zone de risque, la valeur de w
c
augmente nou-
veau (et w
p
diminue). Cela comporte une inuence des vitesses relatives la trajectoire
114
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.15 Suivi de personne en environnement encombr.
circulaire sur les vitesses relatives la trajectoire hors-collision (gure 4.18).
4.7.3 Recherche de la personne
La recherche et la localisation de la personne dans un environnement intrieur est
pralable toute interaction. Aprs la construction de la carte de lenvironnement (via
la fonction Mapper), nous avons dni certains points (les PGSi) explorer . Rappelons
que ces points sont dnis travers leurs coordonnes cartsiennes par rapport au repre
globale (repre de la carte).
Dans cette exprience le robot se trouve dans une pice plutt encombre mais o la
personne ne se trouve pas (gure 4.19). Lexprience est illustre sur la gure 4.20. Le
dtecteur donne des fausses dtections, cependant le robot russi trouver la personne
sans aucune information a priori concernant sa localisation.
La gure 4.21 montre la succession des stratgies slectionnes pendant lexprience.
Le robot dmarre avec la stratgie de GlobalSearch et se dirige vers un des points PGSi
qui ont t pralablement dni (A). Pendant son dplacement le robot croit avoir d-
tect une personne (fausse dtection) et il slectionne la stratgie GoToUser (B). En se
rapprochant la "fausse" personne, le dtecteur produit plus de dtections en ce point.
Le robot croit alors avoir perdu la personne et il slectionne la stratgie LocalSearch
(C). Puisque le robot ne trouve personne autour de la dtection prcdente, la stratgie
GlobalSearch est nouveau slectionn (D). Cela arrive une deuxime fois (E, F, G)
115
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.16 Dformation de la trajectoire du robot en prsence dun risque de collision.
Figure 4.17 Poids utiliss pour la combinaison de la trajectoire circulaire et de la
trajectoire hors-collision.
116
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.18 Dformation des vitesses relatives au suivi de trajectoire hors-collision
caus par w
c
= 0.
Figure 4.19 Recherche de la personne.
117
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.20 Trajectoire du robot qui cherche la personne en ayant aucune information
a priori sur sa position.
avant que le robot dtecte la "vrai" personne et se rapproche delle (H).
4.7.4 Slection des stratgies
La quatrime exprience est un exemple de slection de stratgies direntes en fonc-
tion du contexte et de la situation spcique (contraintes de lenvironnement, taux de
conance de dtection de la personne, tat de la personne et du robot). Au dbut de
lexprience, la personne ne bouge pas (phase A, gure 4.23), le robot la dtecte avec
une bonne conance et il slectionne la stratgie GoToUser (gure 4.24). La personne
commence marcher (ni la vitesse ni la trajectoire sont imposes), et elle passe parmi
deux obstacles (B) ; le robot change de stratgie et il commence la suivre. Pendant
la phase C, le robot perd la dtection de la personne et il slectionne la stratgie Lo-
calSearh. La personne est retrouve en phase D, le robot applique alors nouveau la
stratgie FollowUser et il slectionne le point P
1
comme point cible. Cependant, il perd
nouveau la dtection (E) et il applique la stratgie LocalSearch en slectionnant comme
cible le point P
2
, cest--dire la position de la personne prdite par lEKF. Pour atteindre
ce point, cause de la forte proximit des obstacles, seule la trajectoire hors-collision est
prise en compte (le poids associ la trajectoire circulaire est nul) et le robot contourne
lobstacle. Comme on peut le remarquer sur la gure 4.23, la prdiction fournie par lEKF
(P
2
) nest pas correcte parce que la personne sarrte en F quand nest pas visible au
118
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.21 Stratgies slectionnes par le robot pendant la recherche de la personne.
robot (impossible pour le ltre de prdire un tel changement sans aucune information
disponible). Cependant, durant son dplacement vers P
2
, le robot russi quand mme
retrouver la personne.
4.7.5 Raccourci
La dernire exprience prsente dans ce manuscrit montre la capacit danticipation
du systme. Pour cette exprience la stratgie FollowUser a t dsactive car nous ne
voulons pas amener le robot parcourir un chemin similaire au chemin de la personne. On
veut lui lasser choisir plus librement comment rester connect lutilisateur. La tche du
robot nest pas de suivre la personne, mais de rester prs delle. Lexprience est illustre
sur la gure 4.26. Le robot commence bouger dans la direction de la personne jusqu
perdre la dtection (la personne est cache par un obstacle). La stratgie LocalSearch
est alors slectionne et le robot essaie datteindre la position o la personne devrait se
trouver (selon la prdiction de lEKF). Dans cette situation particulire, la trajectoire
hors-collision calcule par le Planner est un raccourci.
Il faut remarquer que ce comportement du robot se produit seulement dans des condi-
tions particulires : le robot doit se trouver une certaine distance de la personne (pas
119
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.22 Suivi dune personne qui passe parmi des obstacles.
Figure 4.23 Trajectoires de la personne et du robot.
120
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.24 Slection des stratgies et taux de conance de dtection pendant lexp-
rience.
Figure 4.25 Exemple de situation candidate pour le choix dun raccourci.
121
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 4.26 Le robot parcourt un raccourci pour atteindre la personne.
trop prs delle) et la trajectoire de raccourci doit tre plus courte de la trajectoire quil
parcourait en contournant lobstacle (parce que la fonction Planner calcule le chemin le
plus court).
4.8 Conclusion
Dans ce chapitre nous avons prsent un environnement logiciel pour la synthse de
comportements dun robot personnel. Cet environnement est bas sur trois niveaux : la
perception, la prise de dcision et le contrle du robot.
La mthode propose est illustre ici sur lapplication de suivi de personne-cible.
Cependant, elle est gnralisable dautres types de fonctions, surtout lorsque le type
dapplication impose une prise de dcision base sur informations bruites et incertaines
et dpendant de lutilisateur, du contexte et de lenvironnement. En fait, le moteur de
dcision introduit est bas sur les mcanismes de la logique oue, ce qui permet de traiter
les informations incertaines, vagues et incompltes.
Pour le contrle du robot nous avons propos une combinaison pondre des tra-
jectoires circulaires et des trajectoires hors-collision (les paramtres de pondration sont
calculs par une rgle oue sur la base de ce que le robot observe par son tlmtre laser).
Un tel type de contrle assure la scurit et la uidit des mouvements du robot.
122
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Les performances de lenvironnement logiciel ont t illustres par des expriences
sur la plate-forme Kompa dans direntes situations ralistes et pour lapplication de
recherche et suivi des personnes voluant dans des environnements intrieurs. Dune
manire plus gnrale, cet environnement logiciel est exploitable pour grer lactivit
complte du robot comme illustr au chapitre suivant.
123
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Chapitre 5
Scnario dutilisation
Dune manire gnrale, lobjetif dun robot comme Kompa est dexploiter sa mo-
bilit pour se placer proximit de la personne an de pouvoir mettre disposition un
certain nombre de services travers une interface interactive et raliser galement des
fonctions de surveillance de lactivit de la personne.
On considre que lactivit du robot sinscrit sur la base dun agenda journalier constitu
dun certain nombre de "rendez-vous" avec la personne pour des fonctions dordres divers
(mdical, communication, tches quotidiennes, jeux, etc.).
Dans ce chapitre, un exemple de scnario dutilisation sur une demi-journe est dcrit,
ainsi que les fonctions et la base des rgles du moteur dcisionnel qui ralisent ce scnario.
Il sagit dun exemple simple dont lobjet est de montrer le potential du systme intgrant
les fonctions dveloppes pour mettre en uvre des comportements riches, exibles et
facilement adaptables au prol de lutilisateur et au contexte.
5.1 Cadre
Le robot Kompa assiste "Sophie" chez elle. Sophie est une dame ge avec des
troubles cognitifs lgres : elle lui arrive par exemple doublier ses RDV ou de prendre ses
mdicaments. Elle est tout fait autonome, mais elle a besoin dune aide pour surmonter
ses troubles de mmoire et de quelques stimulations pour entreprendre des activits et
des exercices an dviter dpression et solitude.
Rveil
Il est 8 heures du matin et le robot doit rveiller Sophie. Il va dans la chambre et il
joue une musique jusqu ce que Sophie lui notie quelle sest rveille (par la voix ou
par linterface graphique) ou alternativement que le robot dtecte un mouvement.
124
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Si Sophie ne rponds pas au bout dun certain temps, Kompa la cherche dans lappar-
tement.
Si aprs quelques minutes le robot na toujours pas localis Sophie, il envoie une alerte
son ls. Le ls peut prendre le contrle du robot distance et chercher sa mre en
tlcommandant le robot et en ayant le retour vido de la camra embarque.
Pour ces premires actions, les fonctionnalits du robot exploites sont : Slam, inter-
face vocale, interface graphique, vidosurveillance. La fonctionnalit de vidosurveillance
a t dveloppe par Robosoft en utilisant linterface web Locarria.
Les actions du robot qui peuvent tre impliques dans ce scnario sont :
1. "Aller la chambre". Cette action est ncessaire si le robot ne se trouve pas dans la
chambre et quil doit rveiller la personne. Les rgles qui amnent cette dcision
sont dcrites gure 5.1 o lobservation Heure est lhoraire, lobservation Personne
rveille indique si la personne a noti au robot son rveil (par la voix ou linter-
face graphique) ou si le robot a dtect la personne en mouvement, lobservation
Chambre indique si le robot se trouve dans la chambre o la personne est cense
dormir.
Figure 5.1 Rgles correspondant laction "Aller la chambre".
2. "Rveil". Cette action consiste jouer une musique pour rveiller la personne et
elle peut tre excute si la personne nest pas rveille et si la personne se trouve
dans la chambre o si elle est bien dtecte ailleurs. En eet, on suppose que lorsque
la personne est au lit, elle nest pas facilement visible par le robot, donc dans la
chambre on autorise le rveil mme sans dtection de la personne. En dehors de la
125
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
chambre le robot joue le rveil seulement sil est susamment sr davoir trouv la
personne. Les rgles qui amnent cette dcision sont dcrites gure 5.2 o lob-
servation Timer rveil est le temps coul depuis que le robot a commenc jouer
la musique du rveil et lobservation Conance dtection se rfre la dtection de
la personne.
Figure 5.2 Rgles correspondant laction "Rveil".
3. "Recherche". Cette action consiste chercher la personne dans lappartement (mme
fonction dcrite dans le chapitre 4). Le robot commence la recherche sil est lheure
de rveiller la personne, il ne la dtecte pas, le rveil sonne quelques minutes et la
personne na rien noti au robot. Les rgles qui amnent la dcision dexcuter
cette fonction sont dcrites gure 5.3 o les observations concernes par cette partie
de scnario sont seulement Heure, Personne rveille, Timer rveil et Conance
dtection.
4. "Alarme". Cette action consiste dclencher une alarme pour notier la famille
ou au centre de soins une anomalie dans le droulement des activits quotidiennes
de la personne. Lalarme est dclenche au bout de 15 minutes aprs que le r-
veil sonne et si la personne nest pas considre rveille. Les rgles qui amnent
la dcision dexcuter cette fonction sont dcrites gure 5.4 o les observations
126
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 5.3 Rgles correspondant laction "Recherche".
concernes par cette partie du scnario sont seulement Heure, Personne rveille
et Timer rveil.
Rappel mdicaments
Dans la matine Kompa doit rappeler Sophie de prendre ses mdicaments. Sil
la dtecte et quil est prs delle, il lui fait un rappel vocal ; sil est un peu loin, il se
rapproche dabord. Jusqu ce que Sophie notie quelle a pris ses mdicaments (par la
voix ou par linterface graphique) le robot fait le rappel de temps en temps.
Si Sophie nest pas dtecte, Kompa la cherche dans lappartement.
Si aprs de quelques minutes, le robot na toujours pas localis Sophie il envoie une alerte
et le ls Sophie peut prendre le contrle du robot distance.
Les actions du robot qui peuvent tre impliques dans ce scnario sont :
1. "Rappel mdicaments". Cette action consiste rappeler la personne les mdica-
ments prendre dans une certaine tranche horaire de la journe. Les mdicaments
prendre sont indiqus dans un tableau stock dans le compte Google de la per-
sonne. Ce document ne peut tre modi qu partir dInternet. Il peut tre rempli
127
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 5.4 Rgles correspondant laction "Alarme".
par les personnes ayant les droits adquats, en particulier le mdecin.
Si la personne nest pas dtecte le robot doit dabord la chercher, si elle est trop
loin, il doit se rapprocher. Les rgles qui amnent cette dcision sont dcrites gure
5.5 o lobservation Mdicaments indique si la personne a noti la prise des mdi-
caments ou pas, lobservation Distance est la distance euclidienne entre la personne
et le robot et le Timer rappel est le temps coul du dernier rappel fait par le robot.
2. "Aller vers". Cette action consiste se rapprocher la personne. Les rgles qui
amnent cette dcision sont dcrites gure 5.6 o les observations concernes
par cette partie de scnario sont seulement Heure, Mdicaments, Distance et
Condence dtection.
3. "Recherche". Cette action consiste chercher la personne dans lappartement (-
gure 5.3). Les observations prises en compte dans ce cas particulier sont : Heure,
Mdicaments et Condence dtection
4. "Alarme". Cette action consiste dclencher une alarme pour notier la famille
ou au centre de soins une anomalie dans le droulement des activits quotidiennes
de la personne. Dans ce cas, lalarme est dclenche si le robot narrive pas la lo-
128
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 5.5 Rgles correspondant laction "Rappel mdicaments".
Figure 5.6 Rgles correspondant laction "Aller vers".
129
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
caliser dans lappartement au bout de 20 min de recherche. Les rgles qui amnent
la dcision dexcuter cette action sont dcrites gure 5.4 o lobservation concer-
ne par cette partie de scnario est seulement Timer recherche, cest dire le temps
coul depuis que le robot a commenc la recherche de la personne.
Rpondre au tlphone
Sophie reoit un appel tlphonique. Le robot doit se dplacer vers elle pour lui per-
mettre de rpondre au tlphone via le Tablet PC. Si Sophie nest pas dtecte, Kompa
la cherche dans lappartement. Autrement, il se place trs prs delle. Si Sophie na tou-
jours pas eu des changes avec le robot 15 min aprs lappel tlphonique, Kompa envoie
une alarme.
Les actions possibles du robot sont : Recherche (gure 5.3, observations Timer appel
et Conance dtection), Aller vers (gure 5.6, observations Timer appel, Distance et
Conance dtection) et Alarme (gure 5.4, observation Timer appel ).
Aller en charge
Quand le robot dtecte un niveau de batterie faible, il doit dcider sil doit aller se
charger sa station de recharge ou attendre. Cette dcision ne peut pas tre prise en
appliquant une simple seuil sur le niveau de batterie. Il sagit dune action fortement
concurrente avec presque toutes les autres. Une des possibles solutions est destimer le
temps restant pour nir la tche en cours pour dcider sil est convenable dachever la
tche ou sil faut aller en charge immdiatement. En fait, le robot ne doit pas risquer de
rester inoprant cause dun complet puisement de la batterie.
Un exemple des rgles utilises pour prendre une dcision relative cette action est
montr en gure 5.7.
Rappel exercice de stimulation cognitive
Ayant des troubles cognitifs, Sophie a besoin dentraner quotidiennement sa mmoire.
Dans le calendrier du robot lexercice de stimulation cognitive est prvu 11 heures. Le
robot propose lexercice, si Sophie accepte il doit la suivre pour quelle puisse faire son
exercice o elle prfre ; si Sophie naccepte pas le robot le proposera de nouveau plus
tard. Au bout dun certain temps, le robot prvient le mdecin.
Les actions du robot qui peuvent tre impliques dans ce scnario sont :
1. "Rappel exercice". Cette action consiste rappeler la personne de faire lexer-
cice. Les rgles qui amnent cette dcision sont dcrites gure 5.8 o lobservation
130
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 5.7 Rgles correspondant laction "Aller en charge".
Timer stimulation indique le temps coul depuis le dernier exercice que la per-
sonne a fait et le Timer proposition est le temps coul de la dernire proposition
faire lexercice.
En eet, si la personne a fait lexercice avant 11 heures (horaire prvu sur le ca-
lendrier du robot), le robot ne doit pas le proposer nouveau ; en revanche, si la
personne naccepte pas de le faire, le robot doit insister en le proposant de temps
en temps.
Figure 5.8 Rgles correspondant laction "Rappel exercice".
131
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
2. "Aller vers". Cette action consiste se rapprocher de la personne. Les rgles qui
amnent cette dcision sont dcrites en gure 5.6 o les observations concernes
par la partie du scnario relative la stimulation cognitive sont seulement Heure,
Timer stimulation et Timer proposition.
3. "Suivre". Cette action consiste suivre la personne. Les rgles qui peuvent grer
ce comportement sont dtailles dans le chapitre 4.
4. "Recherche". Cette action consiste chercher la personne dans lappartement (-
gure 5.3). Les observations prises en compte dans ce cas particulier sont : Heure,
Timer stimulation et Timer proposition.
5. "Alarme". Cette action consiste dclencher une alarme pour notier que la per-
sonne nas pas fait un exercice depuis 48 heures. Les rgles qui amnent la dcision
dexcuter cette action sont dcrites en gure 5.4 o lobservation concerne par
cette partie de scnario est seulement Timer stimulation, cest dire le temps coul
depuis le dernier exercice fait par la personne.
Rappel des rendez-vous
Sophie ayant des troubles cognitifs, cela peut lui arriver doublier des RDV. Lune
des tches du robot est de lui rappeler ses engagements. Le robot excute une tche
priodique en parallle qui consiste explorer lagenda de la personne (sur son compte
Gmail) pour regarder ses RDV venir. La personne peut grer son agenda via linterface
graphique du robot ainsi que par des ordres vocaux. Quand le robot trouve un vnement
programm dans lagenda il doit le rappeler la personne.
Les actions du robot qui peuvent tre impliques dans ce scnario sont :
1. "Rappel RDV". Cette action consiste rappeler la personne un RDV prvu.
Les rgles qui amnent cette dcision sont dcrites en gure 5.9 o lobservation
Timer RDV indique le temps qui manque lheure prvue du RDV et lobservation
Conrmation RDV indique si la personne a noti davoir bien compris le rappel.
2. "Aller vers". Cette action consiste se rapprocher de la personne. Les rgles qui
amnent cette dcision sont dcrites en gure 5.6 o les observations concer-
nes par la partie de scnario relative au rappel de RDV sont seulement Distance,
Conance dtection, Timer RDV et Conrmation RDV.
132
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure 5.9 Rgles correspondant laction "Rappel RDV".
3. "Recherche". Cette action consiste chercher la personne dans lappartement (-
gure 5.3). Les observations prises en compte dans ce cas particulier sont : Conance
dtection, Timer RDV et Conrmation RDV.
4. "Alarme". Cette action est excute quand le robot narrive pas localiser la per-
sonne au bout de 20 min de recherche (gure 5.4, observation Timer recherche).
5.2 Conclusion
Dans ce chapitre nous avons dcrit, titre dexemple, la mise en uvre dun scnario
dutilisation de la plate-forme Kompa sur une demi-journe en considrant que lactivit
du robot sinscrit sur la base dun agenda journalier. Pour lachvement correct de toutes
les tches prvues par lagenda, le robot doit choisir lenchanement dactions adquat
pour que son comportement soit ecace au regard de la personne quil assiste. Ce choix
est fait partir de ce que le robot observe par ses capteurs.
Lintrt davoir utilis les mthodes de logique oue est mis en vidence par cet
exemple. Quand les humains prennent une dcision concernant laction excuter, ils ana-
lysent, souvent inconsciemment, toutes les informations dont ils disposent sur le contexte.
Les informations qui ne sont pas certaines et prcises sont traites aussi, avec une pon-
dration personnelle de la possibilit que une chose soit ralise ou ralisable. Pour que
133
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
le robot ait un comportement satisfaisant dans chaque situation et contexte, le moteur
dcisionnel doit fonctionner de faon similaire : toutes les informations disposition du
robot doivent tre analyses, mme bruites, incertaines, vagues et contradictoires. La
pondration personnelle que ltre humain fait inconsciemment est remplace ici par la
base des rgles oues pralablement tablies.
Des exemples de rgles oues utilises pour la prise de dcision an de raliser ce
scnario, ainsi que les paramtres choisis sont dtaills.
Il sagit dun exemple simple, mais ici lobjet a t de montrer la potentialit du
systme intgrant les fonctions dveloppes pour mettre en uvre des comportements
riches, exibles et facilement adaptables au prol de lutilisateur et au contexte.
134
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Chapitre 6
Conclusion
Dans ce mmoire, nous avons apport plusieurs contributions aux problmes lis la
robotique mobile personnelle.
Tout dabord, nous avons propos une mthode pour dvelopper des interfaces gra-
phiques adaptes au type dutilisateur auquel le robot est ddi, dans notre cas aux
personnes ges sourant des troubles cognitifs. La mthode propose est centre sur
lutilisateur. Elle rside principalement en deux tapes : 1. Un processus de slection des
icnes ; 2. Une valuation dutilisabilt.
Pour la slection des icnes nous avons dvelopp une tude avec les utilisateurs an
didentier les directions gnrales suivre dans le choix des icnes pour rendre linter-
face facilement accessible. Aprs la conception du prototype, lutilisabilit de linterface
a t teste par des patients et dans des conditions relles dutilisation. Une analyse
statistique des rsultats obtenus a montr une bonne identication des icnes choisies et
une relative insensibilit ltat cognitif du sujet. Cela met en vidence limportance et
lecacit du processus de conception propos. Il semble tre une bonne mthode pour
raliser des systmes ddis des populations particulires (comme les MCI) qui soient
faciles utiliser.
Ensuite, nous nous sommes focaliss sur la perception de ltat de la personne et
conjointement sur lestimation de son volution par le robot. Nous avons propos un
dtecteur robuste de personnes bas sur le tlmtre laser embarqu par le robot. Malgr
des dtections fortement bruites dans des environnements naturels, nous avons mis en
vidence exprimentalement quun ltre de Kalman tendu intgrant un modle de la
marche humaine conduit une estimation robuste de la trajectoire de la personne. Au-
del, nous avons ralis et valu un dtecteur fusionnant sur des grilles de probabilit
2D les donnes issues du laser et dune camra embarque par le robot.
135
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Nous avons propos galement un environnement logiciel pour la cration de compor-
tements interactifs des robots personnels. Les activits de tels robots doivent tre gres
par une architecture dcisionnelle qui planie lenchanement des tches notamment din-
teraction tout en tenant compte des besoins particuliers de la personne, dvnements
extrieurs, du contexte, de lenvironnement.
Dans ce cadre nous avons propos un environnement logiciel bas sur la prise de dci-
sion oue laide de loutil de dveloppement SpirOps AI pour crer des comportements
ractifs et adapts des conditions volutives des tches en prsence dimprcisions et
dincertitudes. Le choix dutiliser la logique oue comme base de la prise de dcision a
t dicte par la ncessit de travailler avec des informations bruites, rares, incompltes
et souvent incohrentes.
Nous avons dmontr lecacit de cet environnement logiciel par la mise en uvre
de la fonctionnalit de suivi de personne interactif dans des environnements intrieurs
naturels. Enn, un exemple de scnario sur la base dun agenda dune demi-journe,
illustre le potentiel dapplication du robot Kompa intgrant lensemble des fonctions
dveloppes.
6.1 Perspectives
A ce jour, lenvironnement logiciel propos montre un bon fonctionnement dans lap-
plication de suivi de personne-cible interactif, dans le sens que le robot russit suivre
la personne en environnement rels et en situation critiques (occultations, passage des
portes etc.). Nous avons cependant envisag dapporter des amliorations sur dirents
aspects. Nous navons en particulier pas pris en compte vritablement le confort de la
personne pendant le dplacement du robot. Il est envisageable dimposer au robot des
trajectoires socialement acceptables cest--dire des trajectoires dtermines en fonction
de lespace autour de lutilisateur ainsi que de son activit courante (comme il a t fait
dans [40]). Une dtection multimodale (e.g. reconnaissance des gestes, reconnaissance de
locuteur, identication de la posture etc.) pourrait fournir des informations beaucoup
plus dtailles et plus prcises concernant la personne-cible.
Lidentication de lactivit de lutilisateur permettrait damliorer la mobilit locale du
robot par rapport la personne. Une meilleure focalisation des interfaces en considrant
la posture de la personne pourrait apporter une meilleure ergonomie.
Des informations plus dtailles relatives la personne pourraient tre utilises pour
dterminer le niveau dengagement dune personne pendant linteraction avec le robot.
Lengagement est dni comme le processus travers lequel des partenaires tablissent,
maintiennent et peroivent leur connexion pendant un interaction [183]. Lanalyse de
136
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
lengagement de la personne avec un robot social a pour objectif le dveloppement de
capacits avances du robot pour la coopration pendant linteraction et ceci an den-
visager des interactions de longue dure. Dans [184] Le Maitre et Chetouani passent en
revue les indices sociaux de lengagement (e.g. le contact visuel, le regard, les expressions
faciales, la posture, la quantit de mouvement etc.). Le besoin de caractriser lengage-
ment et de dtecter son niveau pendant un interaction est accentu lors dinteraction avec
des personnes ges aectes par des troubles cognitifs. Lengagement est galement un
indice de la qualit de linteraction et il est exploitable pour lamlioration des interfaces.
137
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Annexe A
Mise en oeuvre du logiciel de SLAM
Un robot mobile a besoin de pouvoir se dplacer de manire autonome dans un
environnement intrieur dynamique et encombr. Les algorithmes de type SLAM (Simul-
taneous Localization and Mapping) permettent de rpondre au problme de cartographie
de lenvironnement, de localisation et de planication de chemins hors-collisions pour le
robot. Pratiquement ces mthodes consistent estimer conjointement la position du ro-
bot et celle des objets de lenvironnement quil est capable de reconnatre.
Les dicults majeures lies la mise en uvre de ces mthodes sont de natures
direntes : les imprcisions des mesures extraites des capteurs exploits (traiter des in-
formations bruites) et les changements qui interviennent dans lenvironnement. En eet
la carte construite reprsente ltat de lenvironnement au moment de sa construction, et
pour des applications de robotique personnelle cet tat ne reste presque jamais inchang
dans le temps. Pour attnuer les problmes lis aux changements de lespace de travail,
beaucoup dalgorithmes de type SLAM prvoient la mise jour continue de la carte en
comparant les informations connues a priori, avec les nouvelles perceptions.
De nombreux algorithmes de SLAM ont t proposs cette dernire dcennie. Pour
le robot Kompa, il a t choisi le logiciel de navigation pour la robotique Karto R d-
velopp par SRI International R [185] dont les trois fonctions de base sont : Mapper,
Localizer et Planner.
La fonction Mapper permet de construire la carte de lenvironnement de travail : le
robot se dplace dans lenvironnement selon une trajectoire programme ou de manire
tlopre et, en fusionnant les donnes de son laser et des ses odomtres, on enregistre
sous la forme dune carte les caractristiques gomtriques de lespace. Un exemple de
carte construite via le Mapper est montr en gure A.1. Lorigine et lorientation du
repre de la carte (qui sera le repre global pour le robot) correspondent la pose du
138
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure A.1 Exemple de carte construite travers la fonction Mapper.
robot linstant initial de la fonction Mapper.
Une fois la carte enregistre, il est possible dutiliser la fonction Localizer pour per-
mettre au robot de se localiser partir des donnes laser enregistres. Le robot traite
ces donnes laser avec des ltres particulaires pour dterminer, en fonction de lacquisi-
tion ralise, de lhistorique de ses mouvements et des donnes acquises initialement, sa
position et son orientation dans la carte. Ce principe permet au systme de connatre
chaque instant sa position sans lerreur incrmentale de limprcision de lodomtrie et
aux glissements possibles. Des changements limits de lenvironnement sont tolrs (par
exemple, dans lenvironnement o les tests prsents dans le chapitre 4 ont t faits, le
dplacement de quelques fauteuils na pas caus derreurs de localisation du robot). En
cas de changement important, la carte doit tre mise jour.
Quand le robot est sollicit pour rejoindre une certaine position, le Planner gnre le
plus court chemin entre la position courante la position dsire. Le calcul de ce chemin
hors-collisions est bas sur lalgorithme de Dijkstra [186]. Si une possible collision est
dtecte, le Planner calcule une dviation locale du chemin pour raliser lvitement des
obstacles.
Le fonctionnement du SLAM ne sera pas dtaill plus dans ce manuscrit car il na pas
t lobjet de contributions particulires. Cependant, un travail important a t ralis
pour intgrer la librairie de Karto au logiciel de Kompa : homognsation des repres,
139
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
des units de mesure, etc. et rendre accessible travers linterface graphique.
Dans ce qui suit, nous dcrivons les procdures dinstallation et dutilisation du logi-
ciel Karto qui ont t implmentes.
La phase dinstallation consiste tout dabord construire la carte de lenvironne-
ment. Dans la carte construite il est possible de sauvegarder des points dintrt par
un simple click de souris sur la carte ache sur linterface graphique. A chaque point
dintrt il faut associer un nom unique qui est pris en compte aussi par le moteur de
dialogue pour faire dplacer le robot par des commandes vocales par exemple. Sur la
gure A.2, larchitecture dveloppe pour la fonction Mapper est illustre. Les cercles
bleus reprsentent les contrats gnriques. Un contrat gnrique est comparable une
classe abstraite en C++, donc il ne peut pas tre instanci, cependant il contient les
caractristiques communes aux services qui le publient (concept similaire lhritage en
C++). Par exemple, le contrat gnrique Laser contient dans son tat des informations
comme : liste des points de rexion, rsolution, position par rapport au repre du robot,
etc. et il peut tre publi par dirents services (e.g. SickS300, Hokuyo etc). Les cercles
en vert reprsentent les services appartenant la RobuBOX (le logiciel de base de tous
les robots de Robosoft) et les cercles en blanc reprsentent les services de la RobuBOX
spcique Kompa. Cette architecture permet de construire la carte au fur et me-
sure que le robot se dplace et dacher la conguration courante du robot ainsi que la
carte en phase de construction dans le dashboard (gure A.3). Le service LocalizedRan-
geScanInterpolator peut tre dni comme le lien entre la partie RobuBOX (Laser et
Localisation) et la partie Karto. En eet, ce service rcupre les mesures du laser et la
localisation du robot et synchronise ces deux informations. Linformation synchronise
est alors reprise par le service Mapper qui soccupe de les manipuler pour en dduire la
gomtrie de lenvironnement. Le service MapManager, enn, est utilis pour stocker les
cartes construites, ainsi que tous les points dintrt associs chacune des cartes. Tous
les autres services de larchitecture servent pour lachage dans le dashboard.
Pendant la phase dutilisation, sur linterface du Tablet PC (gure A.4) la carte de
lenvironnement ainsi que le robot localis dans cette carte et la liste de tous les points
dintrt sont achs. A travers cette interface il est possible de faire dplacer le robot
vers des points dintrt prdnis ou dans dautres endroits de la carte.
Larchitecture du logiciel dvelopp pour mettre en uvre cette fonction est illustre
sur la gure A.5. Le service Localizer utilise les donnes synchronises issues des services
qui publient les contrats Laser et Localisation pour corriger la localisation du robot dans
la carte. Le service Planner utilise les informations relatives la carte et la localisation
140
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure A.2 Architecture du logiciel relative lutilisation de la fonction Mapper.
Figure A.3 Interface graphique dveloppe pour lutilisation de fonction Mapper.
141
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure A.4 Interface graphique dveloppe pour faire dplacer le robot.
142
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
du robot pour calculer le chemin qui amne le robot de la position courante au point
dsir. Le service TrajectoryFollower mettant en uvre lalgorithme propos par Morin
[182] est utilis pour suivre le chemin calcul par le Planner. Le service PathManager
sauvegarde les chemins dans un chier xml pour quils soient rendus accessibles des autres
services.
Figure A.5 Architecture du logiciel relative lutilisation des fonctions Localizer et
Planner.
143
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Annexe B
Le moteur de dcision SpirOps AI
Le nom "SpirOps" est une contraction des mots latins "Spiritus Operationes" qui
signie littralement "les oprations de lesprit". SpirOps AI [179] est un logiciel qui
fournit un moteur dcisionnel et des outils permettant la conception et le dbogage ais
de modles dcisionnels complexes.
SpirOps est destin des applications temps rel, il ncessite peu de temps de calcul et
de mmoire. Ce logiciel ore une manire innovante de manipuler lIntelligence Arti-
cielle grce son interface graphique (gure B.1) qui permet de crer, diter et dboger
facilement la structure et les paramtres des moteurs dcisionnels raliss.
Le processus de dcision reoit en entre les donnes de lapplication hte sous forme
de listes dobjets dcrits par des attributs, y compris ltat de lentit qui utilise le pro-
cessus de dcision lui-mme. La prise de dcision est excute par un simple appel de
fonctions. Le moteur produit en sortie un rapport avec la liste de Desires (sur la base des
rgles oues que le dveloppeur a pralablement tabli hors-ligne). Un Desire correspond
au niveau dintrt associ un comportement.
La structure de la plate-forme de dveloppement repose sur les composants suivants :
Layer : reprsente les objets que le moteur peut percevoir.
Drive : est une unit de prise de dcision, ce module est responsable dun compor-
tement.
Actuator : est laction excuter pour raliser un comportement donn.
Sensor : est lensemble des caractristiques dun objet peru.
Chaque Drive produit un Desire comme une possible intention daction. Un Drive
calcule son adquation relativement au but poursuivi et du contexte courant. On peut
144
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure B.1 Interface graphique pour ldition du moteur dcisionnel.
145
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
voir lintrt comme une valeur oue et le Drive comme une rgle oue 0+ [187]. Pour
chaque perception, le Drive calcule le degr dintrt et les paramtres de chaque action
quil produit.
Prenons un exemple trs simple pour clarier la signication de ces quatre compo-
santes. Le robot Kompa doit chercher une personne dans lappartement. Pour optimiser
la recherche, il doit choisir lordre des pices visiter en fonction de lheure. Par exemple
midi il sait quil est plus probable de trouver la personne dans la cuisine ou dans le salon
que dans la chambre. En mme temps il doit contrler son niveau de batterie pour ne
par tomber hors-service. Quand le niveau de la batterie devient trop bas, il doit dcider
de se rendre sa station de recharge.
Dans se cas le Layer contient les pices de lappartement, la station de recharge et
lhorloge. Les Drives dnir sont : AllerA (se rendre dans une pice) et AllerCharge
(se rendre sa station de recharge). Nous avons un seul Actuator (Bouger), la seule ac-
tion que le robot raliser est de se dplacer. Enn nous avons plusieurs Sensors, un pour
chaque pice (avec leur position et probabilit de prsence de la personne en fonction de
lheure), un pour la station de recharge (avec sa position), un pour lhorloge (qui donne
lheure) et un pour le robot lui-mme (avec sa position et son niveau de batterie).
Quand le robot doit dcider son comportement le moteur dcisionnel entre en jeu.
Grce aux Sensors le moteur dcisionnel peut percevoir lenvironnement et ltat du ro-
bot, et partir de ces informations, il calcule laction la plus intressante excuter.
Pour chaque pice le Drive AllerA calcule lintrt de sy rendre en fonction de lheure.
En mme temps, le Drive AllerCharge calcule lintrt aller se charger en fonction du
niveau de batterie, de la distance qui reste parcourir pour aller dans la pice o le ro-
bot se dirige et de la distance entre la position courante du robot et la station de recharge.
Le choix de SpirOps comme outil de dveloppement a t motiv par plusieurs raisons :
1. linterface graphique, qui apporte un moyen simple, intuitif et rapide pour program-
mer les rgles prendre en compte dans le raisonnement ou. A travers linterface
graphique, les paramtres associs ces rgles sont immdiatement modiables,
2. le moteur dcisionnel qui est exible et modulaire et dont les principes reposent
sur la logique oue. Le comportement du robot peut tre ainsi facilement enrichi
en prenant en compte plus dentres et/ou en ajoutant/changant des rgles.
3. la complexit de SpirOps ne crot pas exponentiellement lorsque les rgles et les
conditions de raisonnement augmentent (gure B.2) contrairement dautres tech-
nologies actuellement utilises, comme les machines tats nis.
4. de plus, lutilisation de la logique oue permet de crer des comportements beau-
146
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Figure B.2 Complexit de SpirOps et des machines tats nis en fonction du nombre
de conditions.
coup plus dynamiques qui tiennent compte des toutes les variables de faon riche
pour lesquelles il ny a pas besoin dtablir des seuils ou dimposer des conditions
rigides de type SI ALORS SINON pour dnir les rgles de dcision.
147
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Bibliographie
[1] F.X. Alario and L. Ferrand. A set of 400 pictures standardized for french : Norms for
name agreement, image agreement, familiarity, visual complexity, image variability,
and age of acquisition. Behavior Research Methods, 31(3) :531552, 1999.
[2] Lexique. [Online] Available : http ://www.lexique.org/telLexique.php.
[3] Quang Cuong Ph. tude de trajectoires locomotrices humaines. Masters thesis,
Collge de France, 2006.
[4] E.T. Hall. The hidden dimension, volume 6. Doubleday New York, 1966.
[5] J. Weuve, J.H. Kang, J.A.E. Manson, M. Breteler, J.H. Ware, and F. Grod-
stein. Physical activity, including walking, and cognitive function in older women.
JAMA : the journal of the American Medical Association, 292(12) :1454, 2004.
[6] N.T. Lautenschlager, K.L. Cox, L. Flicker, J.K. Foster, F.M. van Bockxmeer,
J. Xiao, K.R. Greenop, and O.P. Almeida. Eect of physical activity on cogni-
tive function in older adults at risk for alzheimer disease. JAMA : the journal of
the American Medical Association, 300(9) :1027, 2008.
[7] K.I. Erickson, R.S. Prakash, M.W. Voss, L. Chaddock, L. Hu, K.S. Morris, S.M.
White, T.R. Wjcicki, E. McAuley, and A.F. Kramer. Aerobic tness is associated
with hippocampal volume in elderly humans. Hippocampus, 19(10) :10301039,
2009.
[8] S. Gauthier, B. Reisberg, M. Zaudig, R.C. Petersen, K. Ritchie, K. Broich, S. Bel-
leville, H. Brodaty, D. Bennett, H. Chertkow, et al. Mild cognitive impairment.
The Lancet, 367(9518) :12621270, 2006.
[9] M. Grundman, R.C. Petersen, S.H. Ferris, R.G. Thomas, P.S. Aisen, D.A. Bennett,
N.L. Foster, C.R. Jack Jr, D.R. Galasko, R. Doody, et al. Mild cognitive impairment
can be distinguished from alzheimer disease and normal aging for clinical trials.
Archives of neurology, 61(1) :59, 2004.
[10] R.C. Petersen and D. Bennett. Mild cognitive impairment : Is it alzheimers disease
or not ? Journal of Alzheimers Disease, 7(3) :241246, 2005.
148
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[11] J.T. Cacioppo and L.C. Hawkley. Social isolation and health, with an emphasis
on underlying mechanisms. Perspectives in Biology and Medicine, 46(3) :S39S52,
2003.
[12] C.. Luanaigh and B.A. Lawlor. Loneliness and the health of older people. Inter-
national Journal of Geriatric Psychiatry, 23(12) :12131221, 2008.
[13] C. Vincent, D. Reinharz, I. Deaudelin, M. Garceau, and L.R. Talbot. Public tele-
surveillance service for frail elderly living at home, outcomes and cost evolution : a
quasi experimental design with two follow-ups. Health and Quality of life Outcomes,
4(1) :41, 2006.
[14] N. Noury, A. Fleury, P. Rumeau, A.K. Bourke, G.O. Laighin, V. Rialle, and
JE Lundy. Fall detection-principles and methods. In Engineering in Medicine
and Biology Society, 2007. EMBS 2007. 29th Annual International Conference of
the IEEE, pages 16631666. IEEE, 2007.
[15] B. Maged, R. Artur, M. Angelo, et al. Caalyx : a new generation of location-based
services in healthcare. International Journal of Health Geographics, v6, p9, 2007.
[16] E. Hui and J. Woo. Telehealth for older patients : the hong kong experience.
Journal of telemedicine and telecare, 8(suppl 2) :3941, 2002.
[17] A. Caouette, C. Vincent, and B. Montreuil. Use of telemonitoring by elders at
home : actual practice and potential]. Canadian journal of occupational therapy.
Revue canadienne dergothrapie, 74(5) :382, 2007.
[18] J. Barlow, D. Singh, S. Bayer, and R. Curry. A systematic review of the benets of
home telecare for frail elderly people and those with long-term conditions. Journal
of Telemedicine and Telecare, 13(4) :172179, 2007.
[19] N. Zouba, F. Brmond, M. Thonnat, A. Anfosso, E. Pascual, P. Malla,
V. Mailland, O. Guerin, et al. A computer system to monitor older adults at
home : preliminary results. 2009.
[20] N. Zouba, F. Brmond, M. Thonnat, A. Anfosso, E. Pascual, P. Malla,
V. Mailland, and O. Guerin. Assessing computer systems for the real time monito-
ring of elderly people living at home. In 19th IAGG World Congress of Gerontology
and Geriatrics (IAGG 2009) Paris, France, July 2009.
[21] Y-H Wu, M. Chetouani, V. Cristancho-Lacroix, J. Le Maitre, C. Jost, B. Le Peve-
dic, D. Duhaut, C. Granata, and A.S. Rigaud. Robadom : The impact of a domestic
robot on psychological and cognitive state of the elderly with mild cognitive im-
pairment. In 5th CRI (Companion Robotics Institute) Workshop AAL User-Centric
Companion Robotics Experimentoria, Supporting Socio-ethically Intelligent Assis-
tive Technologies Adoption, 2011.
149
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[22] H.A. Yanco. Development and testing of a robotic wheelchair system for outdoor
navigation. In Proceedings of the 2001 conference of the rehabilitation engineering
and assistive technology society of North America, pages 588603, 2001.
[23] K. Wada, T. Shibata, T. Saito, and K. Tanie. Analysis of factors that bring mental
eects to elderly people in robot assisted activity. In Intelligent Robots and Systems,
2002. IEEE/RSJ International Conference on, volume 2, pages 11521157. IEEE,
2002.
[24] H. Kautz, L. Arnstein, G. Borriello, O. Etzioni, and D. Fox. An overview of the
assisted cognition project. In AAAI-2002 Workshop on Automation as Caregiver :
The Role of Intelligent Technology in Elder Care, pages 6065, 2002.
[25] S. Saint-Aim, B. Le-Pevedic, and D. Duhaut. Building emotions with 6 degrees
of freedom. In Systems, Man and Cybernetics, 2007. ISIC. IEEE International
Conference on, pages 942947. IEEE, 2007.
[26] K. Wada, T. Shibata, T. Musha, and S. Kimura. Robot therapy for elders aected
by dementia. Engineering in Medicine and Biology Magazine, IEEE, 27(4) :5360,
2008.
[27] K. Wada and T. Shibata. Robot therapy in a care house-its sociopsychological and
physiological eects on the residents. In Robotics and Automation, 2006. ICRA
2006. Proceedings 2006 IEEE International Conference on, pages 39663971. IEEE,
2006.
[28] T. Shibata. An overview of human interactive robots for psychological enrichment.
Proceedings of the IEEE, 92(11) :17491758, 2004.
[29] B. Lin, J.T. White, W. Lu, T. Xie, A.G. Utleg, X. Yan, E.C. Yi, P. Shannon,
I. Khrebtukova, P.H. Lange, et al. Evidence for the presence of disease-perturbed
networks in prostate cancer cells by genomic and proteomic analyses : a systems
approach to disease. Cancer research, 65(8) :3081, 2005.
[30] T. Tamura, S. Yonemitsu, A. Itoh, D. Oikawa, A. Kawakami, Y. Higashi, T. Fuji-
mooto, and K. Nakajima. Is an entertainment robot useful in the care of elderly
people with severe dementia ? The Journals of Gerontology Series A : Biological
Sciences and Medical Sciences, 59(1) :M83, 2004.
[31] M.E. Pollack, L. Brown, D. Colbry, C. Orosz, B. Peintner, S. Ramakrishnan, S. Eng-
berg, J.T. Matthews, J. Dunbar-Jacob, C.E. McCarthy, et al. Pearl : A mobile
robotic assistant for the elderly. In AAAI workshop on automation as eldercare,
volume 2002, 2002.
[32] J. Pineau, M. Montemerlo, M. Pollack, N. Roy, and S. Thrun. Towards robotic
assistants in nursing homes : Challenges and results. Robotics and Autonomous
Systems, 42(3) :271281, 2003.
150
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[33] M. Ehrenmann, R. Zollner, S. Knoop, and R. Dillmann. Sensor fusion approaches
for observation of user actions in programming by demonstration. In Multisen-
sor Fusion and Integration for Intelligent Systems, 2001. MFI 2001. International
Conference on, pages 227232. IEEE, 2001.
[34] B. Giesler, T. Salb, T. Weyrich, and R. Dillmann. Using a panoramic camera for
3d head tracking in an ar environment. In Proc. of Conf. IEEE Machine Vision
and Mechatronics in Practice (M2VIP), 2002.
[35] M. Strobel, J. Illmann, B. Kluge, and F. Marrone. Gesture recognition in a spatial
context for commanding a domestic service robot. In Proc of the 33rd international
symposium on robotics. Citeseer, 2002.
[36] C. Borst, M. Fischer, and G. Hirzinger. Calculating hand congurations for preci-
sion and pinch grasps. In Intelligent Robots and Systems, 2002. IEEE/RSJ Inter-
national Conference on, volume 2, pages 15531559. IEEE, 2002.
[37] R. Chatila. The european" cognitive robot companion" project. JOURNAL-
ROBOTICS SOCIETY OF JAPAN, 23(5) :49, 2005.
[38] K.L. Koay, E.A. Sisbot, DA Syrdal, ML Walters, K. Dautenhahn, and R. Alami.
Exploratory study of a robot approaching a person in the context of handing over an
object. Proc. of AAAI-SS on Multi-disciplinary Collaboration for Socially Assistive
Robotics, pages 1824, 2007.
[39] E.A. Sisbot, L.F. Marin-Urias, R. Alami, and T. Simeon. A human aware mobile
robot motion planner. Robotics, IEEE Transactions on, 23(5) :874883, 2007.
[40] E.A. Sisbot, L.F. Marin, and R. Alami. Spatial reasoning for human robot interac-
tion. In Intelligent Robots and Systems, 2007. IROS 2007. IEEE/RSJ International
Conference on, pages 22812287. IEEE, 2007.
[41] D. Cerqui and K.O. Arras. Human beings and robots : towards a symbiosis ? a
2000 people survey. In Int. Conf. on Socio Political Informatics and Cybernetics
(PISTA03), 2003.
[42] M. Mori and C.S. Terry. The Buddha in the robot. Kosei Pub. Co., 1981.
[43] Z. Khan. Attitudes towards intelligent service robots. NADA KTH, Stockholm,
1998.
[44] C. Ray, F. Mondada, and R. Siegwart. What do people expect from robots ? In
Intelligent Robots and Systems, 2008. IROS 2008. IEEE/RSJ International Confe-
rence on, pages 38163821. IEEE, 2008.
[45] M. Lohse, F. Hegel, A. Swadzba, K. Rohlng, S. Wachsmuth, and B. Wrede. What
can i do for you ? appearance and application of robots. In Proceedings of AISB,
volume 7, pages 121126. Newcastle University, 2007.
151
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[46] C. Bartneck, T. Kanda, O. Mubin, and A. Al Mahmud. The perception of animacy
and intelligence based on a robots embodiment. In Humanoid Robots, 2007 7th
IEEE-RAS International Conference on, pages 300305. IEEE, 2007.
[47] J.W. Crandall, M.A. Goodrich, D.R. Olsen Jr, and C.W. Nielsen. Validating
human-robot interaction schemes in multitasking environments. Systems, Man and
Cybernetics, Part A : Systems and Humans, IEEE Transactions on, 35(4) :438449,
2005.
[48] G. Klein, P.J. Feltovich, J.M. Bradshaw, and D.D. Woods. Common ground and
coordination in joint activity. Organizational simulation, pages 139184, 2005.
[49] A. Gevins and M.E. Smith. Neurophysiological measures of cognitive workload
during human-computer interaction. Theoretical Issues in Ergonomics Science,
4(1-2) :113131, 2003.
[50] M.R. Endsley and D.J. Garland. Situation awareness : analysis and measurement.
CRC, 2000.
[51] C.O. Dumitru and I. Gavat. Vowel, digit and continuous speech recognition based
on statistical, neural and hybrid modelling by using asrs/rl. In EUROCON, 2007.
The International Conference on" Computer as a Tool", pages 856863. IEEE,
2007.
[52] L. Rabiner and B.H. Juang. Fundamentals of speech recognition. 1993.
[53] E.J. Keogh and M.J. Pazzani. Derivative dynamic time warping. In First SIAM
international conference on data mining, 2001.
[54] E. Gatt, J. Micallef, P. Micallef, and E. Chilton. Phoneme classication in hardware
implemented neural networks. In Electronics, Circuits and Systems, 2001. ICECS
2001. The 8th IEEE International Conference on, volume 1, pages 481484. IEEE,
2001.
[55] B. Rim. The elimination of visible behaviour from social interactions : Eects on
verbal, nonverbal and interpersonal variables. European Journal of Social Psycho-
logy, 12(2) :113129, 1982.
[56] Y. Sato and T. Kobayashi. Extension of hidden markov models to deal with mul-
tiple candidates of observations and its application to mobile-robot-oriented gesture
recognition. In Pattern Recognition, 2002. Proceedings. 16th International Confe-
rence on, volume 2, pages 515519. IEEE, 2002.
[57] A. Corradini. Dynamic time warping for o-line recognition of a small gesture
vocabulary. In Recognition, Analysis, and Tracking of Faces and Gestures in Real-
Time Systems, 2001. Proceedings. IEEE ICCV Workshop on, pages 8289. IEEE,
2001.
152
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[58] T. Darrell and A. Pentland. Space-time gestures. In Computer Vision and Pattern
Recognition, 1993. Proceedings CVPR93., 1993 IEEE Computer Society Confe-
rence on, pages 335340. IEEE, 1993.
[59] P. Doliotis, A. Stefan, C. McMurrough, D. Eckhard, and V. Athitsos. Comparing
gesture recognition accuracy using color and depth information. In Conference on
Pervasive Technologies Related to Assistive Environments (PETRA), 2011.
[60] R. Stone. Haptic feedback : A brief history from telepresence to virtual reality.
Haptic Human-Computer Interaction, pages 116, 2001.
[61] D. Perzanowski, A.C. Schultz, W. Adams, E. Marsh, and M. Bugajska. Building a
multimodal human-robot interface. Intelligent Systems, IEEE, 16(1) :1621, 2001.
[62] A.C. Schultz, D. Perzanowski, E. Marsh, W. Adams, and M. Bugajska. Building a
multimodal human-robot interface, 2001.
[63] O. Rogalla, M. Ehrenmann, R. Zollner, R. Becher, and R. Dillmann. Using gesture
and speech control for commanding a robot assistant. In Robot and Human Inter-
active Communication, 2002. Proceedings. 11th IEEE International Workshop on,
pages 454459. IEEE, 2002.
[64] R. Stiefelhagen, C. Fugen, R. Gieselmann, H. Holzapfel, K. Nickel, and A. Wai-
bel. Natural human-robot interaction using speech, head pose and gestures. In
Intelligent Robots and Systems, 2004.(IROS 2004). Proceedings. 2004 IEEE/RSJ
International Conference on, volume 3, pages 24222427. Ieee, 2004.
[65] C.D. Wickens. Multiple resources and performance prediction. Theoretical issues
in ergonomics science, 3(2) :159177, 2002.
[66] D. Lee, O. Martinez-Palafox, and M.W. Spong. Bilateral teleoperation of a whee-
led mobile robot over delayed communication network. In Robotics and Automa-
tion, 2006. ICRA 2006. Proceedings 2006 IEEE International Conference on, pages
32983303. IEEE, 2006.
[67] S. Lee, G. Sukhatme, G.J. Kim, and C.M. Park. Haptic teleoperation of a mobile
robot : A user study. Presence : Teleoperators & Virtual Environments, 14(3) :345
365, 2005.
[68] J.K. Kies, R.C. Williges, and M.B. Rosson. Coordinating computer-supported co-
operative work : A review of research issues and strategies. Journal of the American
Society for Information Science, 49(9) :776791, 1998.
[69] C. Granata, M. Pino, G. Legoverneur, and A.S. Rigaud. Usability testing of a
graphical interface for a robot that supports older adults with cognitive impairment.
suomis, 2012.
[70] G. Lafortune and G. Balestat. Trends in severe disability among elderly people :
assessing the evidence in 12 oecd countries and the future implications. OECD
Health Working Papers, 2007.
153
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[71] UnitedNation. World population ageing. Department of Economic and Social
Aairs, Population Division, Working Paper ESA/P/WP/212, 2009.
[72] R.C. Petersen, G.E. Smith, S.C. Waring, R.J. Ivnik, E.G. Tangalos, and E. Kokmen.
Mild cognitive impairment : clinical characterization and outcome. Archives of
neurology, 56(3) :303, 1999.
[73] M.K. Gusmano and V.G. Rodwin. The elderly and social isolation. Testimony to
the New York City Council Committee on Aging, 2006.
[74] C. Victor, S. Scambler, J. Bond, and A. Bowling. Being alone in later life : loneli-
ness, social isolation and living alone. Reviews in Clinical Gerontology, 10(04) :407
417, 2000.
[75] H.G. Kang, D.F. Mahoney, H. Hoenig, V.A. Hirth, P. Bonato, I. Hajjar, and L.A.
Lipsitz. In situ monitoring of health in older adults : Technologies and issues.
Journal of the American Geriatrics Society, 58(8) :15791586, 2010.
[76] S. Lauriks, A. Reinersmann, HG Van der Roest, FJM Meiland, RJ Davies, F. Moe-
laert, MD Mulvenna, CD Nugent, and RM Dr
"oes. Review of ict-based services for identied unmet needs in people with demen-
tia. Ageing research reviews, 6(3) :223246, 2007.
[77] M.A. Hersh and M.A. Johnson. On modelling assistive technology systemspart i :
Modelling framework. Technology and Disability, 20(3) :193215, 2008.
[78] A. Mihailidis, J. Barbenel, and G. Fernie. The ecacy of an intelligent cognitive
orthosis to facilitate handwashing by persons with moderate to severe dementia.
Neuropsychological Rehabilitation, 14, 1(2) :135171, 2004.
[79] A.J. Astell, M.P. Ellis, L. Bernardi, N. Alm, R. Dye, G. Gowans, and J. Camp-
bell. Using a touch screen computer to support relationships between people with
dementia and caregivers. Interacting with Computers, 22(4) :267275, 2010.
[80] F. Miskelly. Electronic tracking of patients with dementia and wandering using
mobile phone technology. Age and ageing, 34(5) :497, 2005.
[81] G. Cipriani, A. Bianchetti, and M. Trabucchi. Outcomes of a computer-based
cognitive rehabilitation program on alzheimers disease patients compared with
those on patients aected by mild cognitive impairment. Archives of gerontology
and geriatrics, 43(3) :327335, 2006.
[82] L. Rozzini, D. Costardi, B.V. Chilovi, S. Franzoni, M. Trabucchi, and A. Pado-
vani. Ecacy of cognitive rehabilitation in patients with mild cognitive impairment
treated with cholinesterase inhibitors. International journal of geriatric psychiatry,
22(4) :356360, 2007.
[83] A. Burns, H. Allen, B. Tomenson, D. Duignan, and J. Byrne. Bright light therapy
for agitation in dementia : a randomized controlled trial. International Psychoge-
riatrics, 21(04) :711721, 2009.
154
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[84] K. Yasuda, B. Beckman, M. Yoneda, H. Yoneda, A. Iwamoto, and T. Nakamura.
Successful guidance by automatic output of music and verbal messages for daily
behavioural disturbances of three individuals with dementia. Neuropsychological
rehabilitation, 16(1) :6682, 2006.
[85] C. McCreadie and A. Tinker. The acceptability of assistive technology to older
people. Ageing and Society, 25(1) :91110, 2005.
[86] P. Riley, N. Alm, and A. Newell. An interactive tool to promote musical creativity
in people with dementia. Computers in Human Behavior, 25(3) :599608, 2009.
[87] P. Topo, O. M
"aki, K. Saarikalle, N. Clarke, E. Begley, S. Cahill, J. Arenlind, T. Holthe, H. Mor-
bey, K. Hayes, et al. Assessment of a music-based multimedia program for people
with dementia. Dementia, 3(3) :331, 2004.
[88] D. Feil-Seifer and M.J. Mataric. Dening socially assistive robotics. In Rehabilita-
tion Robotics, 2005. ICORR 2005. 9th International Conference on, pages 465468.
IEEE, 2005.
[89] J. Hirth, N. Schmitz, and K. Berns. Towards social robots : Designing an emotion-
based architecture. International Journal of Social Robotics, pages 118.
[90] J.E. Young, R. Hawkins, E. Sharlin, and T. Igarashi. Toward acceptable domestic
robots : applying insights from social psychology. International Journal of Social
Robotics, 1(1) :95108, 2009.
[91] J. Broekens, M. Heerink, and H. Rosendal. Assistive social robots in elderly care :
A review. Gerontechnology, 8(2) :94103, 2009.
[92] R. Pak and A. McLaughlin. Designing Displays for Older Adults. CRC, 2010.
[93] K.W. Schaie. Cognitive aging. National Academies Press, 2004.
[94] W.A. Rogers, A.K. Mayer, and C.B. Fausset. Understanding human-system inter-
actions is the broad goal of the eld of human factors/ergonomics (hf/e). Neuro-
psychology of everyday functioning, page 39, 2009.
[95] J. Rubin and D. Chisnell. Handbook of usability testing : how to plan, design &
conduct eective testing. Recherche, 67 :02, 2008.
[96] J.G. Snodgrass and M. Vanderwart. A standardized set of 260 pictures : Norms
for name agreement, image agreement, familiarity, and visual complexity. Journal
of experimental psychology : Human learning and memory, 6(2) :174, 1980.
[97] C. Granata, M. Chetouani, A. Tapus, P. Bidaud, and V. Dupourque. Voice and
graphical-based interfaces for interaction with a robot dedicated to elderly and
people with cognitive disorders. In RO-MAN, 2010 IEEE, pages 785790. IEEE,
2010.
155
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[98] P. Bonin, R. Peereman, N. Malardier, A. Mot, and M. Chalard. A new set of
299 pictures for psycholinguistic studies : French norms for name agreement, image
agreement, conceptual familiarity, visual complexity, image variability, age of ac-
quisition, and naming latencies. Behavior Research Methods, 35(1) :158167, 2003.
[99] Pitcure communication symbols (pcs). [Online] Available : http ://www.mayer-
johnsonsymbols.com/aboutsymbols/pcs.htm.
[100] Mayer-johnson boardmaker. [Online] Available : http ://www.mayer-
johnson.com/products/boardmaker/.
[101] Fotolia. [Online] Available : http ://fr.fotolia.com/.
[102] J. Nielsen. Usability inspection methods. In Conference companion on Human
factors in computing systems, pages 413414. ACM, 1994.
[103] A.D. Fisk, W.A. Rogers, N. Charness, S.J. Czaja, and J. Sharit. Designing for
older adults. CRC Press, 2004.
[104] A. van Breemen, X. Yan, and B. Meerbeek. icat : an animated user-interface robot
with personality. In Proceedings of the fourth international joint conference on
Autonomous agents and multiagent systems, pages 143144. ACM, 2005.
[105] C. Schaeer and T. May. Care-o-bot-a system for assisting elderly or disabled
persons in home environments. Assistive technology on the threshold of the new
millenium.
[106] C. Scialfa, P. Spadafora, M. Klein, A. Lesnik, L. Dial, and A. Heinrich. Iconic
sign comprehension in older adults : The role of cognitive impairment and text
enhancement*. Canadian Journal on Aging, 27(3) :253265, 2008.
[107] E.J. Jung, J.H. Lee, B.J. Yi, I.H. Suh, S. Yuta, and S.T. Noh. Marathoner tracking
algorithms for a high speed mobile robot. In Intelligent Robots and Systems (IROS),
2011 IEEE/RSJ International Conference on, pages 35953600. IEEE.
[108] E. Prassler, J. Scholz, M. Schuster, and D. Schwammkrug. Tracking a large number
of moving objects in a crowded environment. In IEEE Workshop on Perception for
Mobile Agents, 1998.
[109] M. Lindstrom and J.O. Eklundh. Detecting and tracking moving objects from a
mobile platform using a laser range scanner. In Intelligent Robots and Systems,
2001. Proceedings. 2001 IEEE/RSJ International Conference on, volume 3, pages
13641369. IEEE, 2001.
[110] D. Schulz, W. Burgard, D. Fox, and A.B. Cremers. Tracking multiple moving
targets with a mobile robot using particle lters and statistical data association.
In Robotics and Automation, 2001. Proceedings 2001 ICRA. IEEE International
Conference on, volume 2, pages 16651670. IEEE, 2001.
156
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[111] A. Fod, A. Howard, and MAJ Mataric. A laser-based people tracker. In Robotics
and Automation, 2002. Proceedings. ICRA02. IEEE International Conference on,
volume 3, pages 30243029. IEEE, 2002.
[112] H. Zhao and R. Shibasaki. A novel system for tracking pedestrians using multiple
single-row laser-range scanners. Systems, Man and Cybernetics, Part A : Systems
and Humans, IEEE Transactions on, 35(2) :283291, 2005.
[113] J. Cui, H. Zha, H. Zhao, and R. Shibasaki. Laser-based detection and tracking
of multiple people in crowds. Computer Vision and Image Understanding, 106(2-
3) :300312, 2007.
[114] X. Shao, H. Zhao, K. Nakamura, K. Katabira, R. Shibasaki, and Y. Nakagawa.
Detection and tracking of multiple pedestrians by using laser range scanners. In
Intelligent Robots and Systems, 2007. IROS 2007. IEEE/RSJ International Confe-
rence on, pages 21742179. IEEE, 2007.
[115] K.O. Arras, O.M. Mozos, and W. Burgard. Using boosted features for the detection
of people in 2d range data. In Robotics and Automation, 2007 IEEE International
Conference on, pages 34023407. IEEE, 2007.
[116] Z. Zivkovic and B. Krose. Part based people detection using 2d range data and
images. In Intelligent Robots and Systems, 2007. IROS 2007. IEEE/RSJ Interna-
tional Conference on, pages 214219. IEEE, 2007.
[117] J. Fritsch, M. Kleinehagenbrock, S. Lang, T. Pltz, GA Fink, and G. Sagerer.
Multi-modal anchoring for human-robot interaction. Robotics and Autonomous
Systems, 43(2-3) :133147, 2003.
[118] N. Bellotto and H. Hu. Multisensor integration for human-robot interaction. The
IEEE Journal of Intelligent Cybernetic Systems, 1, 2005.
[119] N. Bellotto and H. Hu. Multisensor-based human detection and tracking for mo-
bile service robots. Systems, Man, and Cybernetics, Part B : Cybernetics, IEEE
Transactions on, 39(1) :167181, 2009.
[120] X. Wang, X. Clady, and C. Granata. A human detection system for proxemics
interaction. In ACM/IEEE International Conference on Human-Robot Interaction
(Late Breaking Results), Lausanne, Switzerland, 6-9 March 2011.
[121] C. Yardim, P. Gerstoft, and W.S. Hodgkiss. Tracking refractivity from clutter
using kalman and particle lters. Antennas and Propagation, IEEE Transactions
on, 56(4) :10581070, 2008.
[122] J. Woo, Y.J. Kim, J. Lee, and M.T. Lim. Localization of mobile robot using particle
lter. In SICE-ICASE, 2006. International Joint Conference, pages 30313034.
IEEE.
157
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[123] N. Bellotto and H. Hu. People tracking with a mobile robot : a comparison of
kalman and particle lters. In Robotics and Applications, 2007. Proceedings., 2007
IASTED International Conference on, pages 388393.
[124] M.S. Arulampalam, S. Maskell, N. Gordon, and T. Clapp. A tutorial on particle
lters for online nonlinear/non-gaussian bayesian tracking. Signal Processing, IEEE
Transactions on, 50(2) :174188, 2002.
[125] Y. Ito, K. Kobayashi, and K. Watanabe. Development of an intelligent vehicle that
can follow a walking human. In SICE 2003 Annual Conference, volume 1, pages
10901093. IEEE, 2003.
[126] J. Satake and J. Miura. Robust stereo-based person detection and tracking for
a person following robot. In ICRA Workshop on People Detection and Tracking,
2009.
[127] R.E. Kalman et al. A new approach to linear ltering and prediction problems.
Journal of basic Engineering, 82(1) :3545, 1960.
[128] C.M. Wang. Location estimation and uncertainty analysis for mobile robots. In
Robotics and Automation, 1988. Proceedings., 1988 IEEE International Conference
on, pages 12311235. IEEE, 1988.
[129] E. Kiriy and M. Buehler. Three-state extended kalman lter for mobile robot
localization. McGill University., Montreal, Canada, Tech. Rep. TR-CIM, 5, 2002.
[130] M. Kohler. Using the kalman lter to track human interactive motion-modelling and
initialization of the kalman lter for translational motion. University of Dortmund,
Germany, 1997.
[131] G. Bishop and G. Welch. An introduction to the kalman lter. Proc of SIGGRAPH,
Course, 8 :275993175, 2001.
[132] L. Boutin. Biomimtisme : gnration de trajectoires pour la robotique humanode
partir de mouvements humains. PhD thesis, Universit de Poitiers, 2009.
[133] S. Vieilledent, Y. Kerlirzin, S. Dalbera, and A. Berthoz. Relationship between
velocity and curvature of a human locomotor trajectory. Neuroscience letters,
305(1) :6569, 2001.
[134] H. Hicheur, S. Vieilledent, MJE Richardson, T. Flash, and A. Berthoz. Velocity
and curvature in human locomotion along complex curved paths : a comparison
with hand movements. Experimental brain research, 162(2) :145154, 2005.
[135] P.H.C. Eilers and B.D. Marx. Flexible smoothing with b-splines and penalties.
Statistical Science, pages 89102, 1996.
[136] ALGLIB. [Online] Available : http ://www.alglib.net/.
[137] D. Ruppert. Selecting the number of knots for penalized splines. Journal of Com-
putational and Graphical Statistics, 11(4) :735757, 2002.
158
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[138] C. Papageorgiou and T. Poggio. Trainable pedestrian detection. In Image Pro-
cessing, 1999. ICIP 99. Proceedings. 1999 International Conference on, volume 4,
pages 3539. IEEE, 1999.
[139] N. Dalal and B. Triggs. Histograms of oriented gradients for human detection.
In Computer Vision and Pattern Recognition, 2005. CVPR 2005. IEEE Computer
Society Conference on, volume 1, pages 886893. Ieee, 2005.
[140] O. Tuzel, F. Porikli, and P. Meer. Pedestrian detection via classication on rieman-
nian manifolds. Pattern Analysis and Machine Intelligence, IEEE Transactions on,
30(10) :17131727, 2008.
[141] Y. Mu, S. Yan, Y. Liu, T. Huang, and B. Zhou. Discriminative local binary pat-
terns for human detection in personal album. In Computer Vision and Pattern
Recognition, 2008. CVPR 2008. IEEE Conference on, pages 18. IEEE, 2008.
[142] X. Wang, T.X. Han, and S. Yan. An hog-lbp human detector with partial occlusion
handling. In Computer Vision, 2009 IEEE 12th International Conference on, pages
3239. IEEE, 2009.
[143] C. Wojek and B. Schiele. A performance evaluation of single and multi-feature
people detection. Pattern Recognition, pages 8291, 2008.
[144] T. Darrell, G. Gordon, M. Harville, and J. Woodll. Integrated person tracking
using stereo, color, and pattern detection. International Journal of Computer Vi-
sion, 37(2) :175185, 2000.
[145] D. Grest and R. Koch. Realtime multi-camera person tracking for immersive en-
vironments. In Multimedia Signal Processing, 2004 IEEE 6th Workshop on, pages
387390. IEEE, 2004.
[146] M. Harville. Stereo person tracking with adaptive plan-view statistical templates.
In Proc. ECCV Workshop on Statistical Methods in Video Processing, pages 6772,
2002.
[147] M. Jones and P. Viola. Fast multi-view face detection. Mitsubishi Electric Research
Lab TR-20003-96, 2003.
[148] C. Huang, H. Ai, Y. Li, and S. Lao. High-performance rotation invariant multiview
face detection. Pattern Analysis and Machine Intelligence, IEEE Transactions on,
29(4) :671686, 2007.
[149] R.I. Hammoud and J.W. Davis. Guest editorial : Advances in vision algorithms and
systems beyond the visible spectrum. Computer Vision and Image Understanding,
106(2-3) :145147, 2007.
[150] M. Bregonzio, M. Taj, and A. Cavallaro. Multi-modal particle ltering tracking
using appearance, motion and audio likelihoods. In Image Processing, 2007. ICIP
2007. IEEE International Conference on, volume 5, pages V33. IEEE, 2007.
159
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[151] H.J. Bhme, T. Wilhelm, J. Key, C. Schauer, C. Schrter, H.M. Gro, and T. Hem-
pel. An approach to multi-modal human-machine interaction for intelligent service
robots. Robotics and Autonomous Systems, 44(1) :8396, 2003.
[152] P. Perez, J. Vermaak, and A. Blake. Data fusion for visual tracking with particles.
Proceedings of the IEEE, 92(3) :495513, 2004.
[153] C.H. Lin, C.H. Yang, C.K. Wang, K.T. Song, and J.S. Hu. A new design on multi-
modal robotic focus attention. In Robot and Human Interactive Communication,
2008. RO-MAN 2008. The 17th IEEE International Symposium on, pages 598603.
IEEE.
[154] N. Bellotto and H. Hu. Computationally ecient solutions for tracking people with
a mobile robot : an experimental evaluation of bayesian lters. Autonomous Robots,
28(4) :425438, 2010.
[155] N. Bellotto and H. Hu. A bank of unscented kalman lters for multimodal human
perception with mobile service robots. International Journal of Social Robotics,
2(2) :121136, 2010.
[156] Z. Zhang and KRS Kodagoda. Multi-sensor approach for people detection. In
Intelligent Sensors, Sensor Networks and Information Processing Conference, 2005.
Proceedings of the 2005 International Conference on, pages 355360. IEEE, 2005.
[157] J. Cui, H. Zha, H. Zhao, and R. Shibasaki. Multi-modal tracking of people using
laser scanners and video camera. Image and vision Computing, 26(2) :240252,
2008.
[158] Dirk Schulz, Dieter Fox, and Jerey Hightower. People tracking with anonymous
and id-sensors using rao-blackwellised particle lters. In Proceedings of the 18th in-
ternational joint conference on Articial intelligence, pages 921926, San Francisco,
CA, USA, 2003. Morgan Kaufmann Publishers Inc.
[159] M. Anne, J.L. Crowley, V. Devin, and G. Privat. Localisation intra-btiment multi-
technologies : Rd, wi et vision. In Proceedings of the 2nd French-speaking confe-
rence on Mobility and ubiquity computing, pages 2935. ACM, 2005.
[160] T. Germa, F. Lerasle, N. Ouadah, and V. Cadenat. Vision and rd data fusion
for tracking people in crowds by a mobile robot. Computer Vision and Image
Understanding, 114(6) :641651, 2010.
[161] T. Kanda, M. Shiomi, L. Perrin, T. Nomura, H. Ishiguro, and N. Hagita. Analysis
of people trajectories with ubiquitous sensors in a science museum. In Robotics
and Automation, 2007 IEEE International Conference on, pages 48464853. IEEE,
2007.
[162] S. Takahashi, J. Wong, M. Miyamae, T. Terada, H. Noma, T. Toriyama, K. Kogure,
and S. Nishio. A zigbee-based sensor node for tracking peoples locations. In
160
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
Proceedings of the 2nd ACM international conference on Context-awareness for
self-managing systems, pages 3438. ACM, 2008.
[163] J.Y. Bouguet. Camera calibration toolbox for matlab. [Online] Available :
http ://www.vision.caltech.edu/bouguetj/.
[164] X. Wang and X. Clady. A distance-dependent people detection system for a wheeled
mobile domestic robot. In 14th International Conference on Climbing and Walking
Robots and the Support Technologies for Mobile Machines (CLAWAR2011), 2011.
[165] M. Asghari Oskoei, M.L. Walters, and K. Dautenhahn. An autonomous proxemic
system for a mobile companion robot. AISB, 2010.
[166] W. Li. Fuzzy logic-basedperception-actionbehavior control of a mobile robot in
uncertain environments. In Fuzzy Systems, 1994. IEEE World Congress on Com-
putational Intelligence., Proceedings of the Third IEEE Conference on, pages 1626
1631. IEEE.
[167] P. Rusu, E.M. Petriu, T.E. Whalen, A. Cornell, and H.J.W. Spoelder. Behavior-
based neuro-fuzzy controller for mobile robot navigation. Instrumentation and
Measurement, IEEE Transactions on, 52(4) :13351340, 2003.
[168] H. Seraji and A. Howard. Behavior-based robot navigation on challenging ter-
rain : A fuzzy logic approach. Robotics and Automation, IEEE Transactions on,
18(3) :308321, 2002.
[169] C.H. Hu, X.D. Ma, and X.Z. Dai. Reliable person following approach for mobile
robot in indoor environment. In Machine Learning and Cybernetics, 2009 Interna-
tional Conference on, volume 3, pages 18151821. IEEE.
[170] RC Luo, YJ Chen, CT Liao, and AC Tsai. Mobile robot based human detection
and tracking using range and intensity data fusion. In Advanced Robotics and Its
Social Impacts, 2007. ARSO 2007. IEEE Workshop on, pages 16. IEEE, 2007.
[171] K. Itoh, T. Kikuchi, H. Takemura, and H. Mizoguchi. Development of a person
following mobile robot in complicated background by using distance and color
information. In IEEE Industrial Electronics, IECON 2006-32nd Annual Conference
on, pages 38393844. IEEE, 2006.
[172] R. Gockley, J. Forlizzi, and R. Simmons. Natural person-following behavior for so-
cial robots. In Proceedings of the ACM/IEEE international conference on Human-
robot interaction, pages 1724. ACM, 2007.
[173] F. Yuan, M. Hanheide, and G. Sagerer. Spatial context-aware person-following for
a domestic robot. In International Workshop on Cognition for Technical Systems,
Munich, Germany, 2008.
[174] G.J.M. Kruij, H. Zender, P. Jensfelt, and H.I. Christensen. Situated dialogue and
spatial organization : What, where... and why. International Journal of Advanced
Robotic Systems, 4(1) :125138, 2007.
161
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2
[175] T. Bandyopadhyay, N. Rong, M. Ang, D. Hsu, and W.S. Lee. Motion planning for
people tracking in uncertain and dynamic environments. In Workshop on People
Detection and Tracking, IEEE International Conference on Robotics and Automa-
tion, 2009.
[176] C. Hu, X. Ma, and X. Dai. A robust person tracking and following approach for
mobile robot. In Mechatronics and Automation, 2007. ICMA 2007. International
Conference on, pages 35713576. IEEE, 2007.
[177] J.-P. Le Cadre. Optimisation des missions pour la trajectographie et la poursuite
de cibles mobiles. In P. Siarry, editor, Trait IC2, Optimisation en Traitement du
Signal et de lImage, chapter 7, pages 195220. Herms, 2007.
[178] H. Zender, P. Jensfelt, and G.J.M. Kruij. Human-and situation-aware people
following. In Proceedings of the 16th IEEE International Symposium on Robot and
Human Interactive Communication (RO-MAN 2007), Jeju Island, Korea, pages
11311136, 2007.
[179] A. Buendia. Spirops, a behavior production tool. [Online] Available :
http ://www.spirops.com/SpirOpsAI.php.
[180] www.spirops.com/spiropsabstractq2-2005.pdf. [Online] Available :
http ://www.spirops.com.
[181] C. Granata and Ph Bidaud. Interactive person following for social robots. In In
Proc. of CLAWAR 2011, 11th International Conference on Climbing and Walking
Robots and the Support Technologies for Mobile Machines, Paris, Sep. 2011, 2011.
[182] P. Morin and C. Samson. Motion control of wheeled mobile robots. Springer
Handbook of Robotics, Springer, 2008.
[183] C.L. Sidner, C. Lee, C.D. Kidd, N. Lesh, and C. Rich. Explorations in engagement
for humans and robots. Articial Intelligence, 166(1-2) :140164, 2005.
[184] J. Le Maitre and M. Chetouani. Self-talk discrimination in human robotinteraction
situations for engagement characterization. 2011.
[185] Karto robotics. [Online] Available : http ://www.kartorobotics.com/.
[186] H. Wang, Y. Yu, and Q. Yuan. Application of dijkstra algorithm in robot path-
planning. In Mechanic Automation and Control Engineering (MACE), 2011 Second
International Conference on, pages 10671069. IEEE, 2011.
[187] P. D. Magnus. Forall x : an introduction to formal logic.
162
t
e
l
-
0
0
6
8
4
7
7
2
,
v
e
r
s
i
o
n
1
-
3
A
p
r
2
0
1
2