OptiMUS: Scalable Optimization Modeling with (MI)LP Solvers and Large Language Models

OptiMUS: Scalable Optimization Modeling with (MI)LP Solvers and Large Language Models

15 Feb 2024 | Ali AhmadiTeshnizi, Wenzhi Gao, Madeleine Udell
OptiMUS is a Large Language Model (LLM)-based agent designed to formulate and solve (mixed integer) linear programming (MILP) problems from natural language descriptions. It addresses the challenge of optimization modeling by automating the process of converting natural language problem descriptions into mathematical formulations and solver code. OptiMUS uses a modular structure to handle long descriptions and complex data without requiring long prompts. It employs a connection graph to track variables and parameters across constraints, enabling efficient processing. The agent consists of multiple components, including a manager, formulator, programmer, and evaluator, which work iteratively to refine the problem formulation, generate code, and debug solutions. OptiMUS outperforms existing state-of-the-art methods on both easy and hard datasets, achieving over 20% and 30% improvements, respectively. It introduces NLP4LP, a new dataset of 67 complex optimization problems, to address the limitations of existing datasets. The system's modular design allows it to scale to problems with long descriptions and large data files. Experiments show that OptiMUS can solve more problems on difficult datasets when more agent calls are allowed, demonstrating the importance of self-improvement. The system also handles coding errors and formulation errors, with the programmer agent fixing code errors and the formulator agent adjusting formulations. OptiMUS's performance is evaluated across various datasets, including NL4OPT, ComplexOR, and NLP4LP. It achieves high accuracy and efficiency, with the manager agent playing a crucial role in coordinating the workflow. The system's modular structure and use of a connection graph enable it to process complex problems effectively. However, it still faces challenges in handling ambiguous terms, long problem descriptions, and large data sets. Future work includes improving the system's performance with smaller LLMs, integrating user feedback, and automatically selecting the best solver based on problem characteristics. OptiMUS represents a significant advancement in automating optimization modeling, making it more accessible and efficient for a wide range of applications.OptiMUS is a Large Language Model (LLM)-based agent designed to formulate and solve (mixed integer) linear programming (MILP) problems from natural language descriptions. It addresses the challenge of optimization modeling by automating the process of converting natural language problem descriptions into mathematical formulations and solver code. OptiMUS uses a modular structure to handle long descriptions and complex data without requiring long prompts. It employs a connection graph to track variables and parameters across constraints, enabling efficient processing. The agent consists of multiple components, including a manager, formulator, programmer, and evaluator, which work iteratively to refine the problem formulation, generate code, and debug solutions. OptiMUS outperforms existing state-of-the-art methods on both easy and hard datasets, achieving over 20% and 30% improvements, respectively. It introduces NLP4LP, a new dataset of 67 complex optimization problems, to address the limitations of existing datasets. The system's modular design allows it to scale to problems with long descriptions and large data files. Experiments show that OptiMUS can solve more problems on difficult datasets when more agent calls are allowed, demonstrating the importance of self-improvement. The system also handles coding errors and formulation errors, with the programmer agent fixing code errors and the formulator agent adjusting formulations. OptiMUS's performance is evaluated across various datasets, including NL4OPT, ComplexOR, and NLP4LP. It achieves high accuracy and efficiency, with the manager agent playing a crucial role in coordinating the workflow. The system's modular structure and use of a connection graph enable it to process complex problems effectively. However, it still faces challenges in handling ambiguous terms, long problem descriptions, and large data sets. Future work includes improving the system's performance with smaller LLMs, integrating user feedback, and automatically selecting the best solver based on problem characteristics. OptiMUS represents a significant advancement in automating optimization modeling, making it more accessible and efficient for a wide range of applications.
Reach us at info@study.space