CRAN Tâche Afficher l'optimisation et la programmation mathématique

De nombreux paquets fournissent des fonctionnalités pour plus d'un des sujets énumérés à la fin de ce point de vue de la tâche. Par exemple. mixtes entiers solveurs de programmation linéaire offrent généralement des routines de programmation linéaire standard comme l'algorithme simplex. Par conséquent, après chaque description du paquet une liste d'abréviations décrit les caractéristiques typiques de l'optimiseur (à savoir les problèmes de qui peuvent être résolus). Les noms et prénoms des abréviations données entre crochets se trouvent à la fin de ce point de vue de la tâche selon la classification selon le sujet.

Si vous pensez que certains paquet est absent de la liste, s'il vous plaît laissez-nous savoir.

  • Essayer d'unifier les algorithmes d'optimisation via une seule fonction d'emballage, OPTIMX aide à spécifier appropriée le problème d'optimisation (non linéaire), y compris la fonction objectif, la fonction gradient et mise à l'échelle. Ce package prend en charge l'optimisation (local) des fonctions non linéaires lisses, avec la plupart des contraintes de boîte (hors limites). OPTIMX dépend non seulement sur les emballages et / ou des fonctions mentionnées dans cette section de ce point de vue de la tâche, mais aussi sur deux packages mis en œuvre par l'auteur (s), à savoir Rcgmin et Rvmmin. Les deux sont mises en oeuvre « pur R » de minimisation du gradient conjugué et des algorithmes de minimisation variables de fonction non linéaire métriques, respectivement.
  • Le package R Infrastructure Optimization (ROI) fournit un cadre pour la gestion des problèmes d'optimisation R. Il utilise une approche orientée objet pour définir et résoudre diverses tâches d'optimisation dans R qui peuvent être de différentes classes de problèmes (par exemple linéaire, programmation quadratique, non linéaire problèmes). Cela rend transparent l'optimisation pour l'utilisateur R comme le flux de travail correspondant est complètement abstraction du solveur sous-jacent. De plus, cette approche permet de basculer facilement entre les solveurs, étant donné que les plug-ins de solveur correspondants sont disponibles, et améliore ainsi la comparabilité.

Problèmes moindres carrés

Solveurs semidéfinies et Convex

  • Package ECOSolveR fournit une interface pour le CONIC intégré Solver (ECOS), une bibliothèque C bien connu, efficace et robuste pour des problèmes convexes. les contraintes et l'égalité Conic peuvent être spécifiées en plus à un nombre entier et des contraintes variables booléennes pour des problèmes mixtes entiers.
  • Emballage scs applique le fractionnement de l'opérateur pour résoudre des programmes linéaires, des programmes de cône (SOCP) et des programmes semi-définies; cônes peuvent être du second ordre, exponentielle, des cônes d'alimentation, ou une combinaison quelconque de ceux-ci.
  • CCCP contient des routines pour résoudre les problèmes de cône contraint convexes au moyen de méthodes de point intérieur (partiellement portés à partir du cvxopt de python).
  • Le paquet CLSOCP fournit une implémentation d'une seule étape de lissage méthode de Newton pour la solution des problèmes de programmation deuxième cône de commande (SOCP).
  • PSDC est une bibliothèque de routines qui met en œuvre une méthode de barrière primaire-double pour résoudre les problèmes de semidéfinie; elle est interfacée dans le paquet Rcsdp. [SDP]
  • La bibliothèque DSDP met en œuvre une méthode de point intérieur pour semidéfinie avec des solutions primale et duale; elle est interfacée dans le paquet Rdsdp. [SDP]
  • Package Rmosek fournit une interface au (commercial) bibliothèque d'optimisation de MOSEK à grande échelle LP, QP et problèmes MIP, en mettant l'accent sur (non linéaire) tâches coniques, semidéfinies et convexes; licences universitaires sont disponibles. (Un article sur Rmosek paru dans le numéro spécial JSS sur l'optimisation avec R, voir ci-dessous.) [SDP, CP]

Optimisation globale et Stochastique

Cette section donne un aperçu de l'open source, ainsi que les optimiseurs commerciales. Quel type de problème de programmation mathématique peut être résolu par un paquet ou la fonction peut être vu à partir des abréviations entre crochets. Pour un classement par sujet, voir la liste à la fin de ce point de vue de la tâche.
  • Package linprog résout les problèmes de programmation linéaire en utilisant le solveLP () fonction (le solveur est basé sur lpsolve) et peut lire les fichiers au format modèle MPS. [LP]
  • Dans le paquet quadprog solve.QP () permet de résoudre des problèmes de programmation quadratique avec des contraintes d'égalité et d'inégalité linéaires. [QP]
  • BB contient la fonction SPG () la fourniture d'une méthode de gradient spectral prévu pour l'optimisation de grande ampleur avec des contraintes simples. Il faut une fonction objective non linéaire comme argument, ainsi que les contraintes de base. En outre, BB contient deux fonctions (dfsane () et sane ()) selon la méthode du gradient spectral pour résoudre un système d'équations non linéaires.
  • Dans le paquet d'amorçage il y a une routine appelée simplex () qui réalise la méthode simplex tableau en deux phases pour (relativement faible) des problèmes de programmation linéaire. [LP]
  • kernlab contient la fonction ipop pour résoudre les problèmes de programmation quadratique en utilisant des méthodes de point intérieur. [IPM, QP]
  • limSolve propose de résoudre des fonctions d'optimisation linéaire ou quadratique. [LP, QP]
  • LowRankQP méthode de point intérieur primaire / double résolution de problèmes de programmation quadratique [IPM, QP]
  • Forfait RCDD offre la lpcdd () fonction pour la résolution de programmes linéaires avec l'arithmétique exacte en utilisant la bibliothèque GNU Multiple Precision (GMP). [LP]
  • Dans le paquet Rdonlp2 (voir le projet rmetrics) fonction donlp2 (). une enveloppe pour le solveur DONLP2, offre la minimisation des fonctions non-linéaires lisses et des contraintes. DONLP2 peut être utilisée gratuitement pour tout type de fins de recherche, sinon il exige des licences. [GO, la PNL]
  • Le serveur NEOS pour l'optimisation permet d'accéder en ligne à l'état de l'art résoudre des problèmes d'optimisation. Package rneos permet à l'utilisateur de passer des problèmes d'optimisation pour NEOS et récupérer des résultats dans R.

Interfaces à l'Open Source optimiseurs

Interfaces à optimiseurs Commercial

paquets: CRAN

Liens connexes: