基于递归穷举的0-1整数规划求解系统
项目介绍
本项目实现了一个针对小规模0-1整数规划问题的通用求解器。采用递归算法枚举所有可能的解组合(共2^n种情况),通过遍历计算每个解对应的目标函数值,并验证其是否满足所有给定的约束条件,最终确定问题的最优解与最优值。该系统适用于教学演示、算法验证等场景,特别适合处理背包问题、指派问题等基础整数规划建模问题。
功能特性
- 完整枚举:采用递归深度优先搜索,确保遍历解空间中的所有可能组合
- 精确求解:基于穷举法保证获得问题的全局最优解
- 约束处理:支持线性约束条件(A*x ≤ b形式)的验证与过滤
- 结果分析:提供最优解向量、最优目标函数值以及完整的可行解列表输出
- 教学友好:适用于教材案例验证与算法对比分析
使用方法
- 准备输入数据:
- 目标函数系数向量(例如:[3, 5, 2, ...])
- 约束条件矩阵A和约束值向量b(线性不等式约束A*x ≤ b)
- 变量数目n(要求n ≥ 3)
- 运行求解程序:
- 系统将自动递归枚举所有2^n种可能的解组合
- 对每个解验证约束条件,计算可行解的目标函数值
- 输出最优解和最优值
- 查看输出结果:
- 最优解向量(0-1变量取值序列)
- 最优目标函数值
- 可选:所有可行解的完整枚举列表
系统要求
- MATLAB R2016b或更高版本
- 适用于Windows/Linux/macOS操作系统
- 内存需求:建议至少4GB RAM(变量数量n ≤ 20时)
文件说明
主程序文件实现了系统的核心求解逻辑,包含递归枚举算法的完整实现、约束条件验证机制、目标函数计算与最优解筛选功能。具体负责处理用户输入的参数配置,执行递归搜索过程,管理解空间的遍历与可行性判断,并最终输出最优解及相关分析结果。