Vers un merchandising multi-agents
Définition conceptuelle et opérationnelle
p. 295-311
Texte intégral
Introduction théorique à la problématique
1Si la détermination de la localisation optimale des offres, compte tenu de leur caractère complémentaire ou non, est un problème crucial en merchandising, les méthodes employées sont pour l’essentiel encore purement empiriques. L’adoption d’une posture plus scientifique mène ici : en 1) à une formalisation mathématique du problème ; en 2) à la définition d’un protocole de résolution numérique, explicitant les différents choix à effectuer et les alternatives existant en chaque cas, puis les options finalement retenues ; en 3) à la formulation d’un modèle composé d’agents interagissant.
Introduction théorique à la problématique
2En première instance, le problème que l’on se propose de traiter ici correspond à la décision d’implantation dans un espace de vente E (dans notre cas, un rayon) d’un ensemble G d’offres notées Ai (i = 1,…, n). Techniquement, ces offres sont réparties par catégories issues d’une partition de l’assortiment G en sous-ensembles complémentaires, chaque sous-ensemble étant constitué de références substituables entre elles. L’espace E est muni de caractéristiques particulières, ainsi que d’une configuration. Formellement, un ensemble F de sous-rayons, F ⊃ E, est noté F = {Sk}, avec k ∈ K, ensemble fini ou non d’indices. La non-trivialité de F implique que card (F) > 1. En d’autres mots, l’espace est discrétisé en sous-rayons d’étendues non nulles. On pose card (F) = p, et p = n, de sorte que l’on ait un et un seul type d’offre localisable par sous-rayon et qu’à chacun des différents sous-rayons définis sur E soit associée une catégorie donnée d’offres.
3On note Aik l’offre Ai localisée en Sk (i = 1,…, n ; k = 1,…, p). On note P(G) et P(Aik) respectivement les performances de G et de Aik, performances dont on ne spécifie pas a priori la forme, notamment le caractère linéaire ou non linéaire de la fonction f les liant. Comme plus avant, il s’agit ce faisant de garder au problème traité le caractère le plus général possible. On suppose qu’il n’est pas de condition particulière contraignant les déplacements de produits au sein du même espace E.
4On pose, par axiomatique, P(G) ≠ ∑i P(Ai).
Formalisation du problème
5Compte tenu de ces différents éléments, le problème énoncé plus avant, d’optimisation fonctionnelle de l’offre G, devient un problème d’optimisation structurelle. L’hypothèse retenue plus avant, qu’il est un nombre a priori non déterminé de possibilités de cheminements entre les sous-rayons complique quelque peu le problème qui, finalement, s’écrit formellement :
max P(G) ↔ max f (P(Ai)) ↔ min DG, avec DG = ∑i ∑j (δij . dij)
6où δij désigne la distance physique (topographique) entre les offres Ai et Aj et dij leur dépendance fonctionnelle. DG désigne la « dissipation structurelle » de l’offre G. L’idéal fonctionnel du modèle, dans le cas d’offres complémentaires, est défini de fait par l’existence d’une distance nulle entre elles – toute autre organisation structurelle donnant une probabilité non nulle, et plus ou moins forte selon la configuration retenue des implantations, d’une moindre performance.
Cadre factuel des axes de recherche
7En pratique, l’abandon de l’hypothèse d’additivité des performances spécifie l’existence de dépendances fonctionnelles entre les diverses offres proposées. Dans le cas d’offres commerciales, on sait ainsi que, souvent, l’optimisation de la rentabilité de l’assortiment « ne peut être assurée par une organisation fragmentée, considérant chacun des produits isolément, car leurs performances ne sont que rarement séparables » (Bultez et al. 1995 : 72). La performance P(G) d’un assortiment d’offres est effectivement conditionnée par : 1) le fait qu’il est des produits de nature complémentaire, autrement dit tels que leurs consommations sont liées, et donc tels que l’achat de l’un implique, à un moment ou à un autre, l’achat d’au moins l’un des autres ; 2) le fait que certaines catégories de produits ne sont complémentaires d’aucune autre, et sont même d’une nature telle que les praticiens éprouvent de réelles difficultés à placer d’autres produits à proximité (exemple des produits pour animaux, évoqué par Cros 1992 : 88) ; 3) le fait qu’il est des catégories de produits de nature mutuellement non complémentaires, mais se faisant au contraire concurrence, sous certaines conditions d’implantation. C’est ainsi, notamment, que des rayons de produits d’impulsion placés en face à face obtiennent des résultats le plus souvent médiocres (Jallais et al. 1987 : 314).
8La prise en considération de ce type de phénomènes amène à une conception « connexionniste » du merchandising, pensant les assortiments comme des réseaux d’offres liées (Robert et al. 1998). On sait que le désir pour les produits est partiellement construit dans l’espace de vente. Dans cette perspective également la proximité physique des produits complémentaires est une nécessité, qui permet l’accroissement de leur probabilité d’achat sur le même point de vente (exemple de l’implantation distribuée des vins – selon leurs complémentarités avec d’autres produits : vins pour viandes rouges, vins pour poissons et fruits de mer, vins pour desserts, etc. – évoqué par Gaulin et al. 1993 : 473).
Cadre conceptuel des axes de recherche
9Dans sa syntaxe, ce problème est apparenté à celui formalisé par Fermat, Cavalieri puis Torricelli au xviie siècle, visant à établir la localisation d’un point tel que la somme de ses distances aux sommets d’un triangle (puis, par extension, d’une configuration géométrique à n points) soit minimale. Repris par Weber (1909) dans la perspective, plus pragmatique, d’optimiser la localisation des sites industriels de production, compte tenu des localisations des sites d’approvisionnement et de distribution, ce problème s’avère d’une importance telle qu’on le considère actuellement comme un paradigme (Ponsard 1987 : 12). Son extension par Cooper (1963) au cas, incidemment noté par Weber, sans résolution, d’une localisation dans l’espace de plusieurs établissements, soit indépendants, soit interdépendants, a impulsé le développement d’un vaste programme de recherche. Dans le cas, notamment, où il s’agit d’assurer la localisation optimale de p établissements différents parmi n sites possibles, pour la satisfaction d’une demande dispersée sur m sites, de telle sorte que le coût total de l’action soit minimal, le problème est identifié comme celui de la p-médiane. La nature des établissements importe peu : il peut s’agir, indifféremment, de services publics d’urgence ou d’établissements industriels (Ghosh & Rushton 1987). En tous les cas, la syntaxe est la même, ou presque. Seule la sémantique diffère. En ce sens, le champ d’application de ce paradigme s’étend pleinement, de droit, au domaine du marketing, pour la résolution de problèmes de distribution (Goodchild & Noronha 1987 : 121). Pour autant, force est d’observer qu’actuellement encore très peu d’applications d’inspiration ou à orientation marketing ont été développées (Achabal et al. 1982 ; Craig et al. 1984 ; Ghosh & Craig 1983, 1984 ; Goodchild 1983 ; McLafferty & Ghosh 1987). L’essor d’un programme de recherche réellement consistant en marketing ne date guère que d’une dizaine d’années (Cliquet 1992 : 188) et paraît s’être borné exclusivement, jusqu’à présent, à l’exploitation du paradigme de Weber pour la définition de procédures d’implantations optimales de points de vente au détail.
Définition d’un protocole de résolution
10D’après Fisher et Gurghan (2007), l’optimisation d’un problème de merchandising peut-être représenté de la manière suivante. Les étagères du rayon sont divisées en présentoirs. La capacité du présentoir dépend de la profondeur des étagères et de la taille du produit unitaire.
11Le nombre de présentoirs, fj, alloué à un produit j, détermine son nombre maximum de références, cjfj, en considérant cj comme la capacité du présentoir. Lors de l’initialisation de la situation, un nombre de boîtes (dans le cas du rayon épicerie, par exemple), de taille bj est en place de telle sorte que le nombre de références soit le plus proche du nombre de références maximum de références possibles sur ce rayon, sans être excédentaire. Les tailles varient de façon significative d’un produit à un autre. Les produits périssables sont déposés jusqu’à la fin de leur date limite de consommation.
12L’objectif du merchandising est de maximiser les profits du distributeur que l’on peut définir comme : marge/unité, nombre de ventes, prix d’achat, stock disponible.
13Si l’on considère cette équation à l’intérieur d’une sous-catégorie prédéfinie, on cherche à maximiser : Z = ∑Gj(fj,Dj(f, d))
14wj étant la largeur du packaging du produit j
15avec ∑ fj wj < l’espace disponible
16fj appartient à {0,1,2,… } pour tout j
17et j ∈ N = {1,…, J}, l’ensemble des variables d’une sous-catégorie
18Gj représente la moyenne des profits réalisés par le distributeur pour le produit j selon la configuration fj et Dj est le taux de demande.
19Différentes méthodes peuvent être utilisées pour résoudre ce problème d’optimisation, notamment la méthode heuristique proposée par les auteurs. Ces de travaux se limitent à déterminer des solutions « statiques ». Par ailleurs, ce problème de merchandising doit prendre en compte la localisation des produits dans le rayon mais aussi leur voisinage qui va influencer la performance globale du rayon.
20L’originalité de notre article consiste à s’inspirer des systèmes multi-agents SMA pour approcher cet optimum mathématique à l’aide d’une simulation informatique permettant aux agents de se déplacer virtuellement dans le rayon. Il s’agit donc d’une alternative consistant à considérer comme agents les produits et leurs interactions possibles. Dans le modèle de simulation que nous proposons, les produits agiront entre eux via des phénomènes de « coopération ».
21L’environnement du SMA correspond aux rayons étudiés et sera défini comme une grille de cases (« patch ») dans laquelle les agents pourront se déplacer. Chaque case représentera la place d’un produit donné dans le rayon étudié.
22Au niveau de la représentation et en se référant à Ferber (1995), les agents auront les possibilités suivantes :
- agir dans leur environnement : se déplacer, par exemple ;
- percevoir et partiellement se représenter leur environnement : pour déterminer s’ils sont bien à leur place ;
- communiquer directement ou indirectement avec d’autres agents : pour définir encore une fois s’ils sont bien à leur place ;
- être mus par des tendances internes (buts, recherche de satisfaction) : ici, « se vendre ».
23Les agents auront donc un comportement autonome, conséquence de leurs perceptions, représentations et communications : soit ils restent à leur place, soit ils se déplacent si leur environnement ne leur convient pas.
24Plusieurs groupes peuvent être créés décrivant un ensemble possédant la même marque ou le même prix, ou le même poids par exemple.
25Des rôles pourront être définis, par exemple, pour les marques leaders sur le marché.
26Au niveau des fonctions qui nous intéressent, nous avons défini :
- une fonction représentationnelle : dans notre cas, cette fonction intègre l’environnement, c’est-à-dire le rayon et ses contraintes implicites définies par le chef de rayon ;
- une fonction conative avec :
- la fonction motivationnelle qui définit le besoin de se vendre ;
- la fonction déontique qui correspond aux contraintes implicites du chef de rayon et qui limiteront les déplacements virtuels des produits ;
- la fonction de sélection d’action qui s’occupe du déplacement des agents : soit notre agent se déplace car sa place ne lui convient pas, soit il reste à sa place.
- la fonction motivationnelle qui définit le besoin de se vendre ;
- une fonction interactionnelle qui intègre l’étude du voisinage immédiat de l’agent pour définir l’action de l’agent ;
- une fonction végétative que nous n’avons pas retenue dans cette application.
Conditions initiales du problème : pré-enquête sur le terrain
27Pour tester notre modèle multi-agents, nous avons choisi d’étudier l’agencement d’un rayon de cafés moulus dans une grande surface de distribution. Pour se rendre compte des habitudes de dispositions des cafés à l’intérieur d’un linéaire, une étude sur le terrain a été réalisée dans trois grandes surfaces Leclerc, Marché U et Auchan (voir exemple de linéaire étudié en figure 1).
Figure 1. – Photographie du rayon étudié.

28Dans un hypermarché Leclerc et dans un supermarché U, nous avons pu observer l’organisation du linéaire suivante (figure 2) :
Figure 2. – Schéma de la disposition des marques de café moulu au sein du linéaire café de Leclerc.

- Les cafés commerces équitables, marques de distributeurs, sont placés en tête de gondole (1).
- Puis, une zone « café moulu décaféiné » est présente : les grandes marques sont exposées en hauteur jusqu’au milieu du rayon (2). Les cafés « marques repères » de cette gamme sont vraiment exposés au milieu du rayon (3). Ces produits sont les plus visibles.
- Quant aux produits premiers prix, ils sont exposés au niveau le plus inférieur du rayon (4).
- Puis une autre bande verticale est consacrée aux gros packagings de différentes marques (5).
- Enfin, une disposition verticale « Marque Repère » (3’), « Carte Noire » (2’), et une autre zone « Marque Repère » est consacrée au rayon (2’’).
29Plus précisément, de manière à comparer notre modèle à l’implantation réelle d’un supermarché, nous avons choisi de partir d’une situation initiale observée dans le magasin du groupe Auchan de Champ-sur-Yonne (seuls les cafés moulus sont représentés).
30Le rayon est organisé de la manière suivante (voir figure 3) :
- 7 niveaux de présentation ;
- 1,20 mètre de linéaire ;
- 31 produits différents ;
- 7 marques : Auchan, Maison du Café, Café Grand-Mère, Jacques Vabre, Lavazza, Carte Noire, San Marco, Lobodis ;
- 1 marque premier prix.
Figure 3. – Représentation schématique du linéaire café d’un supermarché du groupe Auchan.

31Nous avons pu constater que les produits de marque de distributeur, ici Auchan, sont placés au milieu du rayon et sont encadrés par les produits de marques nationales. Cependant, contrairement aux deux autres GMS étudiées, dans ce linaire sur une rangée médiane sont disposés une dizaine de cafés premier prix alors que nombreuses sont les marques nationales disposées dans la partie basse et haute du rayon. Globalement, nous pouvons dire que la marque distributeur Auchan est disposée au centre du rayon et les grandes marques encadrent ces produits.
32Dans tous les GMS, les produits, quelle que soit leur gamme (premier prix, haut de gamme) sont systématiquement regroupés par type de packaging.
Protocoles de calcul
33En nous inspirant de la fonction d’optimisation de Fisher et Gurhan (2007), nous proposons la fonction Z de maximisation de la marge totale :
34Max (Z) = ∑produits (quantités vendues * marge unitaire – stock en rayon * prix de vente unitaire) * fposition.
35Nous avons complété Z par un facteur f de position déterminé à partir des observations précédentes et qui fera évoluer la marge totale en fonction de la localisation des produits dans le rayon.
36Dans un premier temps nous avons choisi d’implanter huit produits. Le modèle développé cherche à améliorer la marge totale en intégrant trois types de contraintes :
- Une contrainte de gamme : en effet, dans un linéaire, les cafés moulus ne sont pas mélangés aux cafés solubles. Nous cherchons donc à ne pas séparer ces deux catégories. Un produit va ainsi examiner ces huit voisins et va se déclarer « insatisfait » si ces voisins ne sont pas de la même gamme que lui.
- Une contrainte de format : dans la réalité, les cafés de même poids sont regroupés ensemble. Un produit va donc se déclarer insatisfait si ces voisins ne sont pas du même format que lui. Dans notre cas, nous avons deux formats :
200 g et 250 g. - Une contrainte de prix : dans les linéaires, les produits chers ne sont pas placés à côté des produits premiers prix. Un produit qui sera placé à côté de produits plus de deux fois plus chers que lui sera considéré comme insatisfait.
37Le modèle va donc baser ses calculs à partir d’un taux de produits « insatisfaits » fixé par l’utilisateur.
38Ensuite, il suivra les heuristiques suivantes :
- S’il y a trop de produits insatisfaits et que la marge du distributeur ne s’est pas améliorée, tous les produits changeront de place. La marge sera recalculée ainsi que le pourcentage d’insatisfaction.
- S’il y a trop de produits insatisfaits et que la marge du distributeur s’est améliorée, seuls les produits insatisfaits changeront de place. La marge sera recalculée ainsi que le pourcentage d’insatisfaction.
- S’il y a suffisamment de produits « satisfaits » (la disposition répond aux exigences de l’utilisateur) mais que la marge n’a pas été améliorée, tous les produits changeront de place. La marge sera recalculée ainsi que le pourcentage d’insatisfaction.
- S’il y a suffisamment de produits satisfaits et que la marge a été améliorée, toutes les exigences sont respectées, le modèle de simulation s’arrêtera.
39L’utilisateur peut visualiser l’évolution de la marge du distributeur durant la simulation sur Netlogo, logiciel libre utilisé pour les simulations (Wilensly 1999). Lorsque le programme s’arrête, il visualise la disposition proposée et la marge totale associée.
Analyse des résultats
40Les simulations du modèle ont montré une vitesse de convergence exponentielle en fonction du taux d’insatisfaction choisi. Par exemple, pour un taux de produits « insatisfaits » de 26 %, le logiciel propose une solution en quelques secondes, pour 25 % il met environ 2 min et ce temps croît exponentiellement si on réduit ce taux et après un certain seuil le modèle ne converge plus dans un temps raisonnable.
41La figure 4 montre une solution obtenue avec 26 % de produits « insatisfaits » de leur localisation.
Figure 4. – Proposition d’implantation optimale du linéaire.

42Dans cet exemple simplifié, nous pouvons constater que la marge journalière est passée de 2933 € à 2886 € soit un gain de 47 € par jour sur la base de huit produits seulement.
43Par ailleurs, nous pouvons voir dans la figure 4 que les cafés solubles ne sont pas mélangés aux cafés moulus étant placés sur l’étagère au-dessus des autres. Ceci s’explique aussi par leur format, différent du format des autres cafés. Les produits Arabica et Colombia, proches en termes de prix de vente sont placés près l’un de l’autre, ainsi que l’ensemble des cafés de marque Auchan. Les cafés Lobodis restent groupés. Les contraintes que nous avons fixées sont donc plutôt bien respectées.
44Nous pouvons également noter que les produits de la marque distributeur restent en position assez centrale comme nous l’avions observé sur le terrain.
Limites du modèle
45Le modèle présenté s’appuie sur des données empiriques et sur un cas se limitant à huit références à implanter dans un linéaire (une case = une référence unique). Le choix des contraintes imposées pour déterminer la satisfaction des produits est laissé à l’appréciation de l’utilisateur du modèle. Quand peut-on décider qu’un produit a une localisation satisfaisante ? Toute la logique du modèle se base sur cette évaluation. Une discussion avec un responsable de rayon est donc utile pour fixer des contraintes empiriques propres à l’enseigne et à chaque espace de vente.
46Un autre point qui mériterait d’être discuté avec les décideurs notamment le choix de réagencer tout le linéaire ou bien de ne déplacer que les produits « insatisfaits ».
47Enfin, la taille réelle d’un rayon pouvant correspondre à plus de 200 produits augmenterait les temps de calcul.
Bibliographie
Des DOI sont automatiquement ajoutés aux références bibliographiques par Bilbo, l’outil d’annotation bibliographique d’OpenEdition. Ces références bibliographiques peuvent être téléchargées dans les formats APA, Chicago et MLA.
Format
- APA
- Chicago
- MLA
Bibliographie
AARTS, E., KORST, J., Simulated Annealing and Boltzmann Machines : a Stochastic Approach to Combinatorial Optimization and Neural Computing, New York, J. Wiley & Sons, 1989.
ACHABAL, D., GORR, W. L., MAHAJAN, D., Multiloc : a multiple store location decision model, Journal of Retailing, vol. 58, 1982, p. 5-25.
BORIM, N., FARRIS, P. W., FREELAND, J. R., A model for determining retail product category assortment and shelf space allocation, Decision Sciences, vol. 25, n° 3, 1994, p. 359-384.
BOUCHON-MEUNIER, B., La logique floue et ses applications, Addison-Wesley, 1995.
BULTEZ, A., PARDOEN, E., SIRIGAGLIA, N., L’esprit de géométrie souffle dans les gondoles, Revue française de gestion, janvier-février 1995, p. 71-85.
CASTA, J. F., BRY, X., Modéliser la synergie dans les évaluations financières : l’apport des intégrales floues, ACSEG, 3e rencontre internationale, Nantes, 1996, p. 209-223.
CLIQUET, G., Le management stratégique des points de vente, Paris, Dalloz-Sirey, 1992.
10.1287/opre.11.3.331 :COOPER, L., Location-allocation problems, Operations Research, vol. 11, 1963, p. 331-343.
10.1137/1006005 :COOPER, L., Heuristic method for location-allocation problems, SIAM Review, vol. 6, 1964, p. 37-52.
10.1287/mnsc.25.8.808 :CORNUEJOLS, G. M., FISCHER, M. L., NEMHAUSER, G. L., Location of bank accounts to optimize float : an analytic study of exact and approximate algorithms, Management Science, vol. 23, 1977, p. 789-810.
CROS, V., Marchandiseurs, à vos marques, Paris, Presses du Management, 1992.
10.1287/opre.28.6.1375 :DREZNER, Z.V.I., DISCON : a new method for the layout problem, Operations Research, vol. 28, n° 6, 1980, p. 1375-1384.
ERLENHOTTER, D., A dual-based procedure for uncapacitated facility location, Operations Research, vol. 26, 1978, p. 992-1009.
FADY, A., SERET, M., Merchandising, Paris, Vuibert, 1994.
FERBER, J., Les systèmes multi-agents. Vers une intelligence collective, InterÉditions, 1995.
FISHER, M., GURHAN, A., Demand estimation and assortment optimisation under substitution : methodology and application, Operations Research, vol. 55, n° 6, 2007, p. 1001-1021.
GAREY, M. R., JOHNSON, D. S., Computers and Intractability : a Guide to the Theory of NP-Completeness, San Francisco, Freeman, 1979.
10.1177/002224298304700307 :GHOSH, A., CRAIG, C. S., Formulating retail location strategy in a changing environment, Journal of Marketing, vol. 47, 1983, p. 56-68.
10.1111/j.1538-4632.1984.tb00799.x :GHOSH, A., CRAIG, C. S., A location-allocation model for facility planning in a competitive environment, Geographical Analysis, vol. 16, n° 1, 1984, p. 39-51.
GHOSH, A., MCLAFFERTY, S., Location Strategies for Retail and Service Firms, Lexington Books, 1987.
GHOSH, A., RUSHTON, G., Spatial Analysis and Location-Allocation Models, Van Nostrand Reinhold, 1987.
GOLDBERG, D., Algorithmes génétiques : exploration, optimisation et apprentissage automatique, Addison-Wesley France, 1994.
GOODCHILD, M. F., NORONHA, V. T., Location-allocation and impulsive shopping : the case of gasoline retailing, in GHOSH, A., RUSHTON, G. (eds.), Spatial Analysis and Location-Allocation Models, Van Nostrand Reinhold, 1987, p. 121-136.
10.7551/mitpress/1090.001.0001 :HOLLAND, J., Adaptation in Natural and Artificial Systems, Ann Arbor, University of Michigan Press, 1975.
JALLAIS, J., ORSONI, J., FADY, A., Marketing de la distribution, Paris, Vuibert, 1987.
10.1126/science.220.4598.671 :KIRKPATRICK, S., GELATT, C. D., VECCHI, M. P., Optimization by simulated annealing, Science, vol. 220, 1983, p. 4598.
10.1287/mnsc.9.4.643 :KUEHN, A., HAMBURGER, M. J., A heuristic program for locating warehouses, Management Science, vol. 9, 1963, p. 643-666.
MOUTON, D., Le merchandising stratégique, Paris, Éditions d’Organisation, 1989.
NARULA, S. C., OGBU, U. I., SAMUELSSON, H. M., An algorithm for the p-median problem, Operations Research, vol. 25, 1977, p. 709-713.
PROTH, J.-M., Conception des systèmes de production, Paris, Presses universitaires de France, 1992.
TEITZ, M., BART, P., Heuristic methods for estimated generalized vertex median of a weighted graph, Operations Research, vol. 16, 1968, p. 955-961.
WEBER, A., Theory of the Location of Industries, Chicago, University of Chicago Press, 1909 (traduction en anglais en 1929 par C. J. Friedrich).
WILENSKY, U., NetLogo, Center for Connected Learning and Computer-Based Modeling, Evanston, Illinois, Northwestern University, 1999. Disponible à l’adresse : http://ccl.northwestern.edu/netlogo.
Annexe
Annexe
Pseudocode du modèle
Définition des variables
1) Les groupes= marques
breed [adts AuchanDecafeineTradition]
breed [ads AuchanDecafeine]
breed [nescafes nescafe]
breed [arabicas AuchanPurArabica]
breed [colombias Colombia]
breed [adss AuchanDecafeineSoluble]
breed [ltms lobodisTingoMaria]
breed [lss LobodisSoleila]
patches-own [facteur]
2) Les variables utilisées pour les calculs
globals
[marge-distri
somme
sf
mylist
percent-similar
percent-unhappy
]
3) Les caractéristiques des agents
turtles-own
[
marque
format
prix-vente
gamme
marge
prix-achat
stock
nbr-vente
happy ?
similar-nearby
other-nearby
total-nearby
]
Fonction pour stopper le programme
to pause
stop
end
Fonction pour créer l’environnement (les patchs)
1) Colorer les patchs en noir
to setup
clear-all
ask patch -2 0 [set pcolor black
set facteur 1.5]
ask patch -1 0 [set pcolor black
set facteur 2]
ask patch 0 0 [set pcolor black
set facteur 2]
ask patch 1 0 [set pcolor black
set facteur 1.5]
ask patch -2 -1 [set pcolor black
set facteur 1.5]
ask patch -1 -1 [set pcolor black
set facteur 2]
ask patch 0 -1 [set pcolor black
set facteur 2]
ask patch 1 -1 [set pcolor black
set facteur 1.5]
ask patch -3 1 [set pcolor black
set facteur 1.5]
ask patch -2 1 [set pcolor black
set facteur 1.5]
ask patch -11 [set pcolor black
set facteur 1.5]
ask patch 0 1 [set pcolor black
set facteur 1.5]
ask patch 1 1 [set pcolor black
set facteur 1.5]
ask patch 2 1 [set pcolor black
set facteur 1.5]
ask patch -3 0 [set pcolor black
set facteur 1.5]
ask patch -3 -1 [set pcolor black
set facteur 1.5]
ask patch -3 -2 [set pcolor black
set facteur 1.5]
ask patch -2 -2 [set pcolor black
set facteur 1.5]
ask patch -1 -2 [set pcolor black
set facteur 1.5]
ask patch 0 -2 [set pcolor black
set facteur 1.5]
ask patch 1 -2 [set pcolor black
set facteur 1.5]
ask patch 2 -2 [set pcolor black
set facteur 1.5]
ask patch 2 -1 [set pcolor black
set facteur 1.5]
ask patch 2 0 [set pcolor black
set facteur 1.5]
3) Appeler les formes représentant les produits
set-default-shape adts “adt”
set-default-shape nescafes “nescafe”
set-default-shape arabicas “arabica”
set-default-shape ads “ad”
set-default-shape colombias “colombia”
set-default-shape ltms “ltm”
set-default-shape lss “ls”
set-default-shape adss “ads”
ask patch -2 0 [sprout-lss 1]
ask patch -1 0 [sprout-ltms 1]
ask patch 0 0 [sprout-arabicas 1]
ask patch 1 0 [sprout-adss 1]
ask patch -2 -1 [sprout-colombias 1]
ask patch -1 -1 [sprout-adts 1]
ask patch 0 -1 [sprout-ads 1]
ask patch 1 -1 [sprout-nescafes 1]
4) Initialiser la matrice qui contiendra les marges calculées pour chaque disposition
calcul-marge
set marge-distri sf
print marge-distri
set mylist (list 0)
set mylist lput marge-distri mylist
end
Fonction qui définit les caractéristiques de chaque produit
to set-initial-turtle-vars
ask lss
[
set marque lss
set format 250
set prix-vente 3.92
set gamme 1
set marge 0.116
set prix-achat 3.804
set stock 0
set nbr-vente 520
]
ask ltms
[set marque ltms
set format 250
set prix-vente 3.38
set gamme 1
set marge 0.0949
set prix-achat 3.2
set stock 0
set nbr-vente 301]
ask arabicas
[set marque arabicas
set format 250
set prix-vente 2.14
set gamme 1
set marge 0.81
set prix-achat 1.33
set stock 0
set nbr-vente 338]
ask adss
[set marque adss
set format 200
set prix-vente 4.88
set gamme 2
set marge 1.21
set prix-achat 3.67
set stock 0
set nbr-vente 485]
ask colombias
[set marque colombias
set format 250
set prix-vente 1.73
set gamme 1
set marge 0.51
set prix-achat 1.22
set stock 0
set nbr-vente 441]
ask adts
[set marque adts
set format 250
set prix-vente 1.29
set gamme 1
set marge 0.32
set prix-achat 0.97
set stock 0
set nbr-vente 317]
ask ads
[set marque ads
set format 250
set prix-vente 2.14
set gamme 1
set marge 0.81
set prix-achat 1.33
set stock 0
set nbr-vente 441]
ask nescafes
[set marque nescafes
set format 200
set prix-vente 6.42
set gamme 2
set marge 0.19
set prix-achat 6.23
set stock 0
set nbr-vente 196]
end
Fonction qui calcule la marge
to calcul-marge
set sf 0
set-initial-turtle-vars
ask lss
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
ask ltms
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
ask arabicas
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
ask adss
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
ask colombias
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
ask adts
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
ask ads
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
ask nescafes
[set somme ((marge * nbr-vente – prix-achat * stock) * [facteur] of patch-here)
set somme (sf + somme)]
set sf (somme)
end
Initialisation du graphe qui représente l’évolution de la marge distributeur
to setup-plot
set-plot-y-range 0 (3000)
plot marge-distri
end
Fonction qui gère la satisfaction des produits en fonction de la marge du distributeur
to go
set-initial-turtle-vars ; ; « Calcule la marge et l’intègre dans une matrice
calcul-marge
set marge-distri sf
set mylist lput marge-distri mylist
Lorsque la nouvelle marge intégrée n’est pas meilleure que le marge maximale trouvée, les
produits sont « mécontents »
if (marge-distri < max mylist)
[ask turtles
[set happy ? false]
print marge-distri
setup-plot
]
if marge-distri >= max mylist
[print marge-distri
]
end
La fonction go2 devient la fonction principale
to go2
1) On calcule le pourcentage de produits insatisfaits dans la disposition
update-variables
2) Si ce pourcentage est supérieur au maximum fixé par l’utilisateur :
1er cas : si la marge n’a pas augmenté : tous les produits changent de place,
la marge distributeur est recalculée ainsi que le pourcentage de satisfaction
if (percent-unhappy >= MAXpercent-unhappy)
[if marge-distri <= max mylist
[move-tortue
go
update-variables
go2
]
2e cas : la marge a augmenté :
seuls les produits non satisfaits vont changer de place,
la marge distributeur est recalculée ainsi que le pourcentage de satisfaction
if marge-distri > max mylist
[move-unhappy-turtles
go
update-variables
go2]
]
Pour arrêter le programme, il faut que le pourcentage d’insatisfaction
respecte la contrainte fixée par l’utilisateur
et que la marge trouvée soit meilleure que la marge initiale
if (percent-unhappy < MAXpercent-unhappy) and marge-distri > 2885
[stop
print marge-distri]
Si le pourcentage de satisfaction correspond à la contrainte de l’utilisateur
mais que la marge ne s’est pas améliorée,
tous les produits changent de place
la marge distributeur est recalculée ainsi que le pourcentage de satisfaction
if (percent-unhappy < MAXpercent-unhappy) and (marge-distri <= max mylist)
[move-tortue
go
update-variables
go2]
Pendant chaque itération, l’utilisateur visualise l’évolution de la marge distributeur
setup-plot
end
Fonction qui va bouger les produits non contents
to move-unhappy-turtles
ask turtles with [not happy ?]
[find-new-spot]
end
Fonction qui bouge tous les produits
to move-tortue
ask turtles
[find-new-spot]
end
Fonction qui permet au produit de trouver une nouvelle place
to find-new-spot
rt random-float 360
fd random-float 10
if any ? other turtles-here
[find-new-spot]
move-to patch-here
end
to update-variables
update-turtles
update-globals
end
Fonction qui permet de savoir si les produits sont bien à leur place
to update-turtles
en fonction de leur gamme (soluble ou moulu)
ask turtles [
set similar-nearby count (turtles-on neighbors)
with [gamme = [gamme] of myself]
set other-nearby count (turtles-on neighbors)
with [gamme ! = [gamme] of myself]
set total-nearby similar-nearby + other-nearby
set happy ? similar-nearby >= (100 * total-nearby / 100)
]
En fonction de leur poids ou format
ask turtles [
set similar-nearby count (turtles-on neighbors)
with [format = [format] of myself]
set other-nearby count (turtles-on neighbors)
with [format ! = [format] of myself]
set total-nearby similar-nearby + other-nearby
set happy ? similar-nearby >= (100 * total-nearby / 100)
]
En fonction du prix de vente
; ; les produits sont mieux lorsqu’il n’y a pas de grande différence de prix avec leur voisin
ask turtles [
set similar-nearby count (turtles-on neighbors)
with [prix-vente <= 2 * [prix-vente] of myself]
set other-nearby count (turtles-on neighbors)
with [prix-vente > 2 * [prix-vente] of myself]
set total-nearby similar-nearby + other-nearby
set happy ? similar-nearby >= (100 * total-nearby / 100)
]
end
Fonction qui calcule le pourcentage d’insatisfaction
to update-globals
set percent-unhappy (count turtles with [not happy ?]) / (8) * 100
end
Fonction pour tout effacer
to clear
ca
end
Auteurs
-
Philippe Robert-Demontrond
Professeur en sciences de gestion à l’IGR-IAE de Rennes (Université de Rennes 1). Docteur et agrégé en sciences de gestion et docteur en philosophie, il est l’auteur de plus de 350 articles de recherche, chapitres d’ouvrages académiques et communications scientifiques, et a publié 11 ouvrages de recherche, produits en corédaction ou sous sa direction. Ses recherches entreprises procèdent de plusieurs choix méthodologiques, privilégiant originellement la modélisation mathématique (réseaux neuronaux et logique floue, systèmes biomimétiques), pour l’étude de phénomènes engageant des relations causales complexes ; puis, actuellement, les approches phénoménologiques et ethnographiques pour l’étude de problèmes relevant de variations dans la donation de sens et les imaginaires de consommation.
-
Daniel Thiel
Professeur émérite en sciences de gestion à l’Université de Paris 13. Il est l’auteur de deux ouvrages, d’une coordination d’ouvrage collectif, de dix-huit chapitres d’ouvrage, de trente-deux articles publiés dans des revues à comité de lecture, de deux coordinations de numéros spéciaux de revue. Ses recherches sur les systèmes complexes utilisent la modélisation multi-agents et la dynamique des systèmes.
-
Jean-Marc Ferrandi
Professeur en sciences de gestion à ONIRIS (École nationale vétérinaire, agroalimentaire et de l’Alimentation). Spécialiste du marketing agroalimentaire, il est responsable de l’équipe « Laboratoire de recherches en gestion et en économie de l’innovation et de la consommation alimentaire » du LEMNA (Laboratoire d’économie et management de Nantes-Atlantique) de l’université de Nantes, où il mène ses recherches sur l’éco-innovation et sur la persuasion en lien avec l’éducation thérapeutique du malade chronique (amélioration de l’observance nutritionnelle grâce aux serious games).
Le texte seul est utilisable sous licence Licence OpenEdition Books. Les autres éléments (illustrations, fichiers annexes importés) sont « Tous droits réservés », sauf mention contraire.
De la porosité des secteurs public et privé
Une anthropologie du service public en Méditerranée
Ghislaine Gallenga (dir.)
2012
Vers de nouvelles figures du salariat
Entre trajectoires individuelles et contextes sociétaux
Annie Lamanthe et Stéphanie Moullet (dir.)
2016
Piloter la performance organisationnelle
Une aide à la décision avec la valeur ajoutée horaire
Michel Pendaries
2017
La démarche stratégique
Entreprendre et croître
Katia Richomme-Huet, Gilles Guieu et Gilles Paché (dir.)
2012
La logistique
Une approche innovante des organisations
Nathalie Fabbe-Costes et Gilles Paché (dir.)
2013
L’entreprise revisitée
Méditations comptables et stratégiques
Pierre Gensse, Éric Séverin et Nadine Tournois (dir.)
2015
Activités et collectifs
Approches cognitives et organisationnelles
Lise Gastaldi, Cathy Krohmer et Claude Paraponaris (dir.)
2017
Performances polynésiennes
Adaptations locales d’une « formule culturelle-touristique » globale en Nouvelle-Zélande et à Tonga
Aurélie Condevaux
2018