La programmation linéaire est un modèle mathématique qui est généralement utilisé dans la science des données pour l'optimisation. L'optimisation signifie que nous pouvons comprendre le sens comme un profit maximum et moins de coûts. L'entreprise ou l'organisation a principalement deux objectifs principaux, la minimisation et la maximisation. La minimisation signifie réduire le coût supplémentaire qui vient en production pour obtenir les bénéfices maximiser. La programmation linéaire est une technique d'optimisation simple qui peut aider de la même manière. La programmation linéaire est partout autour de nous; Par exemple, lorsque nous travaillons sur n'importe quel projet, nous réalisons également des stratégies pour gérer le travail d'équipe à la livraison rapide efficacement.
Terminologie de la programmation linéaire:
Déclaration de problème: Considérons une entreprise qui fabrique des chocolats de deux types - A et B. Les deux chocolats ont besoin de deux matériaux nécessaires - le lait et le choco. Pour fabriquer chaque chocolat A et B, les quantités suivantes sont nécessaires:
Le stock actuel de la société dispose de 25 unités de lait et de 10 unités de choco. L'entreprise obtient des bénéfices de chaque unité de vente au chocolat comme ci-dessous:
Maintenant, la société veut réaliser son bénéfice maximum des actions disponibles.
Lait | Choco | Bénéfice par unité | |
---|---|---|---|
UN | 3 | 2 | Rs 25 |
B | 4 | 1 | Rs 10 |
Solde total en stock | 25 | dix |
Solution: Depuis le tableau ci-dessus, nous pouvons comprendre que l'entreprise veut augmenter son profit. Alors d'abord, nous allons définir notre fonction maximisée pour ce problème. Ainsi, en utilisant le modèle mathématique, disons que nous créons des unités x des unités A et Y de B, alors nous pouvons dire que le modèle de fonction maximisé ressemblera ci-dessous:
Laissez le nombre total d'unités produites par A be = x
Laissez le nombre total d'unités produites par B be = y
Maintenant, le bénéfice total est représenté par Z
Pour calculer le bénéfice maximum, nous devons multiplier les unités totales de chocolat produites par A et B avec leur bénéfice unitaire de Rs. 25 et Rs. 20, respectivement.
Profit: Max z = 25 * x + 20 * y
Maintenant, nous avons notre fonction maximisée z.
L'entreprise veut toujours produire autant que possible pour obtenir des bénéfices importants, mais les matériaux sont limités. Selon le tableau d'informations ci-dessus, chaque unité de A et B nécessite respectivement 3 et 4 unités de lait. Donc, la formule sera comme 3 * x + 4 * y. Mais il y a une limitation du lait, qui est de 25 unités uniquement dans le stock. Ainsi, après avoir ajouté cette contrainte, la formule ci-dessus sera:
3 * x + 4 * y ≤ 25
De même, chaque unité de A et B nécessite respectivement 2 et 1 unités de choco,. Donc la formule sera comme 2 * x + y. Mais il y a aussi une limitation du choco, qui est de 20 unités uniquement dans le stock. Ainsi, après avoir ajouté cette contrainte, la formule ci-dessus sera:
2 * x + y ≤ 20
La valeur donnée par les A et B est toujours positive car ce sont des quantités. Donc, ils doivent être égaux à zéro ou supérieurs à zéro.
x ≥ 0 & y ≥ 0
Donc, maintenant notre modèle mathématique de l'énoncé du problème est fait. Maintenant, nous allons voir dans le code Python l'instruction Problème ci-dessus.
Programmation Python:
Nous devons donc installer la pulpe de package Python, qui résout les problèmes de programmation linéaire.
Ligne 52: Nous importons la bibliothèque de pupl.
Ligne 53: Nous définissons l'énoncé du problème et donnons le nom approprié de notre problème. Nous donnons le nom de notre problème, le profit de la fabrication du chocolat AIS, et décrivons l'objectif de la fonction dans la variable suivante, qui est maximisée.
Ligne 54: Nous définissons la variable pour maintenir les variables de décision. Les deuxième et troisième arguments sont des valeurs de liaison inférieure et supérieure. Nous savons également qu'il n'y aura pas de valeur négative, nous définissons donc la valeur de borne inférieure (deuxième argument) à 0, et dans la borne supérieure (troisième argument), nous n'en mentionnons aucun. La dernière déclaration parle de valeurs étant un entier (lpinteger).
Ligne 57: Nous définissons notre fonction objective comme indiqué dans l'instruction Problème.
Ligne 58: Nous avons créé nos variables avec les contraintes données dans l'instruction Problème.
Ligne 59: Nous imprimons notre déclaration de problème.
Ligne 60: Nous enregistrons l'ensemble des données du problème dans un fichier.
Ligne 61: Nous avons appelé un solveur de méthode de la bibliothèque Pulp pour résoudre la programmation linéaire.
Ligne 63 et 64: Nous imprimons les valeurs calculées, et le bénéfice final montre le RS. 155.
Le fichier ci-dessous, que nous enregistrons à la ligne no. 60
Le fichier ci-dessus a la sortie de l'objectif et des contraintes que nous avons enregistrées dans un fichier. Alors la prochaine fois, nous pouvons simplement charger et exécuter le code.
Le code Python complet dans .Le format PY est donné ci-dessous:
Conclusion
Nous comprenons des exemples de programmation linéaire de base et comment les résoudre par la programmation Python. Mais dans la vraie vie, les problèmes plus complexes viennent toujours, donc au lieu de les résoudre manuellement, le pays ou l'entreprise a toujours besoin d'automatisation pour être rapide et maximiser les bénéfices.