EvoOpt_oppangu_optimization_model  by WillowHe

LLM solutions for operations research optimization

Created 4 weeks ago

New!

514 stars

Top 60.8% on SourcePulse

GitHubView on GitHub
Project Summary

EvoOpt-LLM provides a specialized suite for applying Large Language Models (LLMs) to operations research (OR) optimization tasks, using Openpangu-7B as its base. It targets OR professionals and researchers aiming to automate complex modeling processes, offering enhanced capabilities in generating mathematical models, creating new constraints, and optimizing existing models through variable pruning. The primary benefit is the acceleration and simplification of OR problem formulation and solution.

How It Works

The project leverages LoRA (Low-Rank Adaptation) for efficient fine-tuning of the Openpangu-7B model on domain-specific OR datasets. This specialized training enables three core functionalities: automated generation of mathematical optimization models (e.g., linear programming) directly from natural language descriptions; automatic creation of new constraints for existing LP models to expand problem scenarios; and identification of decision variables that can be safely fixed to zero, thereby reducing model size and improving solver efficiency.

Quick Start & Requirements

This project is specifically developed and optimized for the Huawei Ascend AI processor (NPU) environment. Key prerequisites include:

  • Operating System: Huawei BMS (Bare Metal Server)
  • Firmware/Driver: ≥ 23.0.6
  • AI Software Stack: CANN 8.1.rc1
  • Core Python Components: vllm (0.9.2), vllm-ascend (0.9.2rc1), torch (2.5.1), torch_npu (2.5.1.post1), opencompass (0.5.0), transformers (4.53.2).

Fine-tuning involves modifying train_config.py parameters (e.g., model_name_or_path, lora_rank, train_dataset_name_or_path) and running finetune.py (potentially with torchrun for multi-card setups). End-to-end modeling and variable pruning are executed via provided shell scripts (e.g., generate_finetuned_example.sh, analyze_zero_variables_example.sh).

Highlighted Details

  • End-to-End Automated Modeling: Generates mathematical optimization models from natural language prompts using fine-tuned LLMs.
  • New Constraint Generation: Automatically creates additional constraints for existing linear programming models.
  • Variable Pruning: Identifies and fixes zero-value decision variables to compress MILP models and enhance solver performance.
  • LoRA Fine-tuning: Employs LoRA for efficient adaptation of the base Openpangu-7B model to specific OR tasks.

Maintenance & Community

The provided README does not contain specific details regarding maintainers, community channels (like Discord/Slack), or project roadmaps.

Licensing & Compatibility

The README does not specify the project's license. This omission requires clarification for assessing commercial use or integration into closed-source projects.

Limitations & Caveats

The project's primary limitation is its strict dependency on Huawei Ascend AI processors (NPU) and the associated CANN software stack, significantly restricting its use on other hardware platforms. Compatibility with non-Ascend environments is not addressed.

Health Check
Last Commit

4 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
1
Star History
514 stars in the last 29 days

Explore Similar Projects

Feedback? Help us improve.