Répertoriez les problèmes typiques dans Optimisation de combinaison et comment s'exécuter avec Python. ([Courons](# Courons)) Pour une explication plus détaillée, reportez-vous au livre "Combination Optimization".
Classe de problème typique td> | # td> | Problème typique td> | Classe de complexité td> | Double problème td> tr> | ||||
Problème de réseau graphique td> | 1 td> | Problème minimal d'arborescence de surface entière td> | P td> | td> tr> | ||||
2 td> | Problème maximum d'ensembles stables ( Problème minimum de couverture de vertex , Problème de ruisseau maximum du graphe supplémentaire) td> | difficulté NP td> | td> tr> | |||||
3 td> | Problème de coupe maximum td> | difficulté NP td> | td> < / tr> | |||||
4 td> | Problème d'itinéraire le plus court td> | P td> | td> tr> | |||||
5 td> | Problème de débit maximum td> | P td> | Problème de coupe minimum td> tr> | |||||
6 td> | Problème de flux de coût minimum td> | P td> | td> < / tr> | |||||
Problème d'itinéraire td> | 7 td> | Problème d'itinéraire de transport (optimisation de la livraison) td> | Difficulté NP td> | td > tr> | ||||
8 td> | Problème de vendeur de patrouille td> | difficulté NP td> | td> tr> Moins | |||||
Problème de recouvrement / fractionnement collectif td> | 10 td> | Problème de couverture agrégée td> | difficulté NP td> | td> tr> | 11 td> | Problème de division de groupe td> | difficulté NP td> | td> tr> |
12 td> | Problème d'enchères combinées td> | Difficulté NP td> | td> < / tr> | |||||
Problème de planification td> | 13 td> | Problème d'atelier de travail td> | Difficulté NP td> | td> tr> | ||||
14 td> | Problème de planification du travail | Difficulté NP td> | td> td> < / tr> | |||||
Problème de coupure / brouillage td> | 15 td> | Problème de sac à dos td> | difficulté NP td> | td> tr> | ||||
16 td> | Problème d'emballage de bac td> | Difficulté NP td> | td> < / tr> | |||||
17 td> | Problème de brouillage en n dimensions td> | difficulté NP td> | td > tr> | |||||
Problème de placement td> | 18 td> | Problème de placement des installations td> | Difficulté NP td> | td> tr> | ||||
19 td> | Pas de contrainte de capacité Problème de placement des installations | Difficulté NP td> | td> td> tr> | |||||
Problème d'affectation / correspondance td> | 20 td> | Problème d'allocation secondaire td> | difficulté NP td> | td> tr > | ||||
21 td> | Problème d'allocation généralisé td> | Difficulté NP td> | td> tr> | |||||
22 td> | Problème de correspondance maximal td> | P td> | td> tr> | |||||
23 td> | Problème de correspondance de poids td> | P td> | td> tr> | |||||
24 td> | Problème de correspondance stable td> | (P) td> | td> tr> |
Installez Docker Toolbox et à partir de Kitematic, image Docker tsutomu7 / typique_optimization Veuillez exécuter le.
Après l'exécution, ouvrez http: // localhost: 8888
. Le mot de passe du Jupyter Notebook est jupyter
.
Pour l'installation de Docker, veuillez également vous reporter à Jusqu'à ce que vous démarriez Jupyter avec Docker.
Veuillez installer le logiciel suivant. Après l'installation, vous pouvez exécuter le code lié à chacun des problèmes ci-dessus.
--Installation de Python et pip: Sélectionnez le système d'exploitation cible dans le Guide de construction de l'environnement et installez-le.
pip install pandas matplotlib jupyter more-itertools scipy networkx ortoolpy
--ortoolpy: pour les problèmes typiques. Certains ont une fonctionnalité minimale et certains sont inefficaces. PuLP (modeleur et solveur pour l'optimisation mathématique) est également installé.
--Référence: Il existe également une méthode utilisant Anaconda, mais la gestion de la bibliothèque est différente de la méthode ci-dessus (Anaconda intègre Python et divers packages pour la science et la technologie). C'est une distribution qui a été faite).
Recommended Posts