Inscription / Connexion Nouveau Sujet
Niveau exercices
Partager :

Connaîtriez-vous l'algorithme du chien de berger?

Posté par
alainpaul
21-09-14 à 10:14

Bon dimanche à tous,

Je passe le plus souvent mes vacances d'été à la campagne ou à la montagne,
la question posée m'est suggérée par l'observation de bergers et bergères menant
leurs troupeaux.

Ne voilez pas votre réponse,


Alain

Posté par
weierstrass
re : Connaîtriez-vous l'algorithme du chien de berger? 21-09-14 à 16:40

Bonjour,
Fin août, un chercheur à créé un algorithme simulant le mouvement d'un chien de berger.
On trouve facilement des articles le relatant, mais il n'y à pas beaucoup de précisions sur cette algorithme...

A moins d'apprécier traduire l'anglais...

Posté par
dpi
re : Connaîtriez-vous l'algorithme du chien de berger? 21-09-14 à 18:22

Bonjour,

Je pense que la solution tourne autour de cela:

Un troupeau est au départ considéré comme une forme
plus ou moins elliptique.

L'œil du chien est le sommet d'un angle dont
les deux cotés sont tangents à cette ellipse .

Le chien surveille ces tangentes (contraste entre
la couleur dominante du troupeau et le vert du
pâturage)...

Dès qu'un animal franchit une de ces lignes virtuelles.
le chien se précipite pour la faire rentrer dans le troupeau
puis reviens à l'arrière pour continuer ce manège.

Posté par
Imod
re : Connaîtriez-vous l'algorithme du chien de berger? 21-09-14 à 19:40

Moi y'en a pas comprendre la question ni la réponse in the Shakespeare language

Imod

Posté par
Yzz
re : Connaîtriez-vous l'algorithme du chien de berger? 21-09-14 à 20:24

--> Imod :

Un p'tiut copier-coller dans reverso (déjà évoqué dans le coin) donne toute la lumière :

Citation :
L'élevage de mouton par des chiens est un exemple puissant d'un individu causant beaucoup d'individus peu disposés se déplacer dans la même direction. Des phénomènes semblables le plus importent dans le contrôle de foule, nettoyant l'environnement et d'autres problèmes d'ingénierie. Malgré des chiens seuls(simples) cet résolvant ' shepherding le problème ' chaque jour, il reste inconnu quel algorithme ils emploient ou si un algorithme général existe pour shepherding. Ici, nous démontrons un tel algorithme, basé sur la commutation adaptative entre le rassemblement des agents quand ils sont aussi dispersés et la conduite d'eux une fois qu'ils sont agrégés. Notre algorithme reproduit les caractéristiques(fonctions) clés de données empiriques rassemblées d'interactions de chien de berger et suggère de nouvelles façons(chemins) dont les robots peuvent être conçus pour influencer les mouvements de vie et des agents artificiels.
...Etonnant, non ?  

Posté par
Imod
re : Connaîtriez-vous l'algorithme du chien de berger? 21-09-14 à 22:19

je comprends encore moins quand c'est dans la langue Molière , c'est grave docteur

Imod

Posté par
alainpaul
re : Connaîtriez-vous l'algorithme du chien de berger? 22-09-14 à 09:20

Bon,


La langue de Molière me sied.

Une ébauche de l'algorithme pourrait être:
1) les brebis sont-elles toutes arrivées à destination? oui=fin
2)non,sont-elles rassemblées ? non, les rassembler
                                  oui, les pousser

Retour au 1)



Alain

Posté par
weierstrass
re : Connaîtriez-vous l'algorithme du chien de berger? 22-09-14 à 19:23

Effectivement, c'est un bon début, mais je pense que le problème est légèrement plus complexe que ça...

Posté par
weierstrass
re : Connaîtriez-vous l'algorithme du chien de berger? 22-09-14 à 21:01

Pour ceux qui veulent en savoir plus, mais qui ont la flemme de traduire l'anglais, voilà un exposé de ce que j'ai compris de l'exposé (Je ne prétend pas avoir tout compris, si il y a des erreurs, signalez les...):

Concernant la modélisation du mouvement des moutons:
Connaîtriez-vous l\'algorithme du chien de berger?
Considérons l'un des moutons... (en vert sur le schéma)
Le mouton a son espace vital, et il s'éloigne donc un peu des moutons qui voudrait trop s'approcher de lui...
Une partie de son mouvement sera donc représentée par un vecteur Ra, qui part en direction opposée des moutons situé à une distance inférieure à ra.
(sur le schéma, les moutons très proche sont en rouge, Ra est en rouge)

Le mouton à toutefois envie de jouer avec ses copains, et décide de se rapprocher du centre de l'action...
Une partie de son mouvement est donc dirigée vers le barycentre des n plus proches voisins, représentée par un vecteur C.
(sur le schéma, n = 5, ces 5 moutons sont en bleu, le barycentre est orange, C est bleu)

Le mouton à évidemment peur du chien de berger , et cherche à s'en éloigner...
Une partie de son mouvement sera donc représentée par un vecteur Rs, en direction opposée à celle du chien.
(Sur le schéma, le chien est en jaune , Rs est en jaune)

Si le mouton est situé à une distance du chien de berger supérieure à rs, le mouton ne voit pas le chien, le vecteur Rssera donc nul.

Le mouton va évidemment effectuer ces 3 déplacements en même temps, déplacement modélisé par la somme vectorielle H = PaRa + cC + PsRs, avec Pa, c et Ps des coefficients dépendant du modèle, traduisant l'importance de chaque déplacement. (voir 2eme schéma, H en noir...)

Ainsi, Ra ne présentera pas beaucoup d'importance par rapport à Rs et c.

De plus, le mouton a des problèmes de freinage...
On ajoute donc un faible terme d'inertie dH, prolongeant la trajectoire de H.

Enfin, les moutons n'étant pas des machines, ils ont certains mouvements imprévisibles, qui seront modélisés par l'ajout d'un vecteur aléatoire de faible norme, e (en violet sur le schéma...)

On obtient alors le vecteur déplacement du mouton: H' (en vert sur le schéma 2)
Connaîtriez-vous l\'algorithme du chien de berger?


La suite pour le déplacement du chien, bref, ce qui nous intéresse...

Posté par
weierstrass
re : Connaîtriez-vous l'algorithme du chien de berger? 23-09-14 à 20:25

2eme épisode:

Le déplacement du chien:
Le rôle du chien est de déplacer les moutons dans le coin inférieur gauche.(noté cible sur le schéma, en bleu...)

Si le chien est situé à une distance de moins de 3ra (ra étant la distance caractérisant les moutons gênant, car trop près...), alors il ne se déplace pas.

Sinon, notons d la distance du barycentre de l'ensemble des moutons au plus éloigné de ces moutons (en violet sur le schéma)
Considérons aussi le nombre f(N), (dépendant du nombre N de moutons).

si d<f(N):

Le chien est dit en phase de "conduite"...
Considérons la droite portée par la cible, et le barycentre des moutons(en vert sur le schéma...)
On y place un point Pd, situé légèrement au delà du barycentre.
Le mouvement du chien sera donc dirigé vers ce point.
Il se déplacera d'une distance delta dans cette direction.

Connaîtriez-vous l\'algorithme du chien de berger?

si f(N)<d:
Le chien est dit en phase de "collecte"...
Considérons la droite portée par le barycentre et le mouton le plus éloigné du barycentre.
On y place un point Pc situé légèrement au delà du mouton.
Le mouvement du chien sera donc dirigé vers ce point.
Il se déplacera d'une distance delta dans cette direction.

Connaîtriez-vous l\'algorithme du chien de berger?

Si j'ai le courage, un dernier post sur les conclusions quand au réalisme de cette simulation.
En attendant, vous pouvez juger vous même du résultat en regardant les simulations effectuées...


Le texte en anglais est finalement plutôt accessible.
La solution est assez différente de l'hypothèse des tangentes de dpi...

Posté par
alainpaul
re : Connaîtriez-vous l'algorithme du chien de berger? 24-09-14 à 10:49

Bonjour  weierstrass,


Je reconnais le gros travail que tu as accompli,nous avons sous
les yeux une simulation expliquée et claire.

Mon objectif était un peu différent,je pensais à un modèle applicable
à une organisation humaine telle que le pilotage d'un projet d'entreprise,
d'autres questions alors se posent;qu'est-ce que la "distance" entre acteurs?
leur degré d'assimilation au temps t,leur enthousiasme ; comment les mesurer?



Alain



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !