L'environnement de développement standard pour la solution d'optimisation IBM CPLEX est ** IBM ILOG CPLEX Optimization Studio ** (abrégé en ** COS **). Sur un PC sur lequel COS est installé, le développement de modèles est généralement effectué dans un langage spécifique à l'optimisation appelé OPL à l'aide d'un plug-in Eclipse, mais le développement à l'aide de l'API Python est également possible. J'écrirai un mémo de la procédure.
Setting up an optimization engine
Vérifiez le fonctionnement
MacOS: 10.14.6 CPLEX Optimization Studio: 12.9
Cela a été fait dans l'environnement de.
Comme pour COS, toutes les installations se font par défaut de la manière habituelle.
Le test a été effectué sur le Jupyter Notebook. Quant à l'anaconda, qui est la prémisse, tout se fait par défaut de la manière habituelle.
Vérifiez le chemin d'installation de COS avec la commande suivante.
$ ls -l /Applications | grep CPLEX
Dans l'environnement à portée de main
drwxrwxr-x 11 [email protected] admin 352 9 13 10:19 CPLEX_Optimizer129
C'était le résultat.
Vérifiez avec la commande suivante.
$ python -V
Dans mon environnement, j'ai obtenu les résultats suivants:
Python 3.7.3
En fonction des résultats obtenus jusqu'à présent, ajoutez une ligne comme celle-ci à ~ / .bash_profile.
export PYTHONPATH=/Applications/CPLEX_Optimizer129/cplex/python/3.7/x86-64_osx
Veuillez modifier la partie de `` 3.7 / x86-64_osx '' en fonction de la version et de la plate-forme Python.
Installez la bibliothèque d'API DO Python avec la commande pip suivante.
$ pip install docplex
Ceci termine les préparatifs nécessaires. Avec la variable d'environnement `` PYTHONPATH '' définie
$ jupyter notebook
Ensuite, démarrez Jupyter Notebook.
Résolution du problème du voyageur de commerce avec Watson Téléchargez et chargez le fichier Jupyter Notebook introduit dans.
Après cela, appuyez sur Maj + Entrée pour exécuter les cellules dans l'ordre, et CPLEX devrait trouver le meilleur itinéraire comme indiqué dans la figure ci-dessous.
COS a également une version d'évaluation qui est disponible gratuitement. Lorsque j'essaie de résoudre le problème des ventes itinérantes avec les paramètres ci-dessus en utilisant la version d'évaluation, le message suivant s'affiche.
CPLEX Error 1016: Community Edition. Problem size limits exceeded. Purchase at https://ibm.co/2s0wqSa.
Il s'agit littéralement d'une erreur causée par les restrictions fonctionnelles de la version d'évaluation (jusqu'à 1000 règles). Dans le cas de la version d'évaluation, si vous corrigez le nombre de points (N) = 5 dans le problème de vente circulaire et que vous l'exécutez, la contrainte fonctionnelle ne sera pas atteinte et se terminera normalement.
Recommended Posts