Excel 2020: trouver des solutions optimales avec le solveur - Conseils Excel

Table des matières

Excel n'était pas le premier programme de tableur. Lotus 1-2-3 n'était pas le premier programme de tableur. Le premier programme de tableur a été VisiCalc en 1979. Développé par Dan Bricklin et Bob Frankston, VisiCalc a été publié par Dan Fylstra. Aujourd'hui, Dan dirige Frontline Systems. Son entreprise a écrit le Solver utilisé dans Excel. Frontline Systems a également développé toute une suite de logiciels d'analyse fonctionnant avec Excel.

Si vous avez Excel, vous avez Solver. Il n'est peut-être pas activé, mais vous l'avez. Pour activer Solver dans Excel, appuyez sur Alt + T suivi de I. Ajoutez une coche à côté de Solver Add-in.

Pour utiliser avec succès Solver, vous devez créer un modèle de feuille de calcul comportant trois éléments:

  • Il doit y avoir une seule cellule Objectif. Il s'agit d'une cellule que vous souhaitez soit réduire, maximiser ou définir une valeur particulière.
  • Il peut y avoir de nombreuses cellules d'entrée. Il s'agit d'une amélioration fondamentale par rapport à la recherche d'objectifs, qui ne peut traiter qu'une seule cellule d'entrée.
  • Il peut y avoir des contraintes.

Votre objectif est de définir les exigences de planification pour un parc d'attractions. Chaque employé travaillera cinq jours consécutifs, puis disposera de deux jours de congé. Il existe sept façons différentes de programmer quelqu'un pour cinq jours consécutifs et deux jours de congé. Celles-ci sont présentées sous forme de texte au format A4: A10 dans la figure ci-dessous. Les cellules bleues dans B4: B10 sont les cellules d'entrée. C'est ici que vous spécifiez le nombre de personnes qui travaillent pour chaque horaire.

La cellule Objectif correspond au total de la paie / semaine, indiquée en B17. Ce sont des mathématiques simples: le nombre total de personnes de B11 fois le salaire de 68 $ par personne et par jour. Vous demanderez à Solver de trouver un moyen de minimiser la masse salariale hebdomadaire.

La boîte rouge montre des valeurs qui ne changeront pas. C'est le nombre de personnes dont vous avez besoin pour travailler dans le parc chaque jour de la semaine. Vous avez besoin d'au moins 30 personnes les jours de fin de semaine chargés, mais aussi peu que 12 le lundi et le mardi. Les cellules orange utilisent SUMPRODUCT pour calculer le nombre de personnes qui seront programmées chaque jour, en fonction des entrées dans les cellules bleues.

Les icônes de la ligne 15 indiquent si vous avez besoin de plus ou moins de personnes ou si vous avez exactement le bon nombre de personnes.

Tout d'abord, j'ai essayé de résoudre ce problème sans Solver. J'y suis allé avec 4 employés chaque jour. C'était génial, mais je n'avais pas assez de monde dimanche. Alors, j'ai commencé à augmenter les horaires pour avoir plus d'employés du dimanche. J'ai fini avec quelque chose qui fonctionne: 38 employés et 2584 $ de masse salariale hebdomadaire.

Bien sûr, il existe un moyen plus simple de résoudre ce problème. Cliquez sur l'icône Solveur dans l'onglet Données. Dites au Solveur que vous essayez de régler la paie dans B17 au minimum. Les cellules d'entrée sont B4: B10.

Les contraintes entrent dans des catégories évidentes et pas si évidentes.

La première contrainte évidente est que D12: J12 doit l'être >= D14:J14.

Mais, si vous essayiez d'exécuter Solver maintenant, vous obtiendriez des résultats bizarres avec un nombre fractionnaire de personnes et peut-être un nombre négatif de personnes travaillant sur certains horaires.

Bien qu'il vous semble évident que vous ne pouvez pas embaucher 0,39 personne, vous devez ajouter des contraintes pour indiquer à Solver que B4: B10 sont >= 0et que B4: B10 sont des nombres entiers.

Choisissez Simplex LP comme méthode de résolution et cliquez sur Résoudre. Dans quelques instants, Solver présente une solution optimale.

Solver trouve un moyen de couvrir la dotation en personnel du parc d'attractions en utilisant 30 employés au lieu de 38. Les économies par semaine sont de 544 $, soit plus de 7 000 $ au cours de l'été.

Notez les cinq étoiles ci-dessous Employés nécessaires dans la figure ci-dessus. Le programme proposé par Solver répond exactement à vos besoins pendant cinq des sept jours. Le sous-produit est que vous aurez plus d'employés mercredi et jeudi que vous n'en avez vraiment besoin.

Je peux comprendre comment Solver a proposé cette solution. Vous avez besoin de beaucoup de monde samedi, dimanche et vendredi. Une façon d’amener les gens là-bas ce jour-là est de leur donner congé le lundi et le mardi. C'est pourquoi Solver a donné 18 personnes le lundi et le mardi.

Mais ce n'est pas parce que Solver a proposé une solution optimale qu'il n'existe pas d'autres solutions également optimales.

Lorsque je devinais simplement la dotation en personnel, je n'avais pas vraiment une bonne stratégie.

Maintenant que Solver m'a donné l'une des solutions optimales, je peux mettre mon chapeau logique. Avoir 28 employés en âge de fréquenter l'université le mercredi et le jeudi alors que vous n'avez besoin que de 15 ou 18 employés va créer des problèmes. Il n'y aura pas assez à faire. De plus, avec exactement le bon nombre d'effectifs sur cinq jours, vous devrez appeler quelqu'un pour des heures supplémentaires si quelqu'un d'autre appelle malade.

Je suis convaincu que Solver a besoin de 30 personnes pour que cela fonctionne. Mais je parie que je peux réorganiser ces personnes pour égaliser le calendrier et fournir un petit tampon les autres jours.

Par exemple, donner à quelqu'un le mercredi et le jeudi de congé garantit également que la personne est au travail les vendredi, samedi et dimanche. Donc, je déplace manuellement certains travailleurs de la ligne du lundi, mardi à la ligne mercredi, jeudi. Je continue à brancher manuellement différentes combinaisons et à proposer la solution ci-dessous qui a les mêmes dépenses salariales que Solver mais de meilleurs actifs incorporels. La situation de sureffectif existe maintenant sur quatre jours au lieu de deux. Cela signifie que vous pouvez gérer les absences du lundi au jeudi sans avoir à appeler quelqu'un de son week-end.

Est-ce dommage que j'ai pu trouver une meilleure solution que Solver? Non. Le fait est que je n'aurais pas pu accéder à cette solution sans utiliser Solver. Une fois que Solver m'a donné un modèle qui minimisait les coûts, j'ai pu utiliser la logique des actifs incorporels pour conserver la même masse salariale.

Si vous avez besoin de résoudre des problèmes plus complexes que ce que Solver peut gérer, consultez les solveurs Excel premium disponibles sur Frontline Systems.

Merci à Dan Fylstra et Frontline Systems pour cet exemple. Walter Moore a illustré les montagnes russes XL.

Articles intéressants...