单纯形算法matlab代码-Revised-Simplex-Algorithm:Matlab中实现的单纯形算法,用于求解线性程序

时间:2024-06-16 03:25:59
【文件属性】:

文件名称:单纯形算法matlab代码-Revised-Simplex-Algorithm:Matlab中实现的单纯形算法,用于求解线性程序

文件大小:14KB

文件格式:ZIP

更新时间:2024-06-16 03:25:59

系统开源

单纯形算法matlab代码Matlab单纯形算法 这是Matlab中单纯形算法的一种实现,这是我在线性编程中研究的一部分。 该实现是用Matlab编写的,目前能够使用自举方法创建基础来解决经过测试的LP问题。 还包括用于LU分解和矩阵逆计算(现在是冗余的)的代码。 免责声明 这是RSM算法的教育性实现。 某些极端情况可能没有考虑在内。 它是如何工作的? 线性程序可以由完整问题的“基本”子集描述,该子集具有与约束相同数量的元素。 这些解决方案称为“基本可行解决方案”,但并不总是最优的。 Simplex方法迭代地测试基本可行解的不同组合,直到发现仅在最优条件下才发现的条件。 单纯性方法可以在每次迭代中选择仅改善解决方案的组合,或者检测可能使问题无穷无尽或无法实现的条件,而不必用蛮力方法来测试每个单个组合。 自举 RSM算法的此实现包括引导阶段。 RSM算法在技术上与基础矩阵的逆函数一起工作。 查找反基础的一种方法是“随机地”选择将成为基本可行解的变量,然后求解反问题(使用LU分解或高斯消除)。 然而,对于大矩阵,这在计算上是昂贵的且不切实际的。 另一种方法是创建人工变量,然后使用RSM迭代


【文件预览】:
Revised-Simplex-Algorithm-master
----test-cases()
--------test-3-by-6-full.mat(365B)
--------test-2-by-4-unbounded.mat(366B)
--------test-3-by-6-GJ.mat(474B)
--------test-3-by-5-infeasible.mat(363B)
--------test-4-by-6-full2.mat(373B)
--------test-2-by-5-full.mat(366B)
--------test-4-by-6-full.mat(1KB)
--------test-2-by-2-full.mat(353B)
----fullfindEV.m(2KB)
----LICENSE(1KB)
----fullupdate.m(2KB)
----inverse-calc()
--------README.md(112B)
--------LUinv.m(1KB)
--------LUdec.m(1KB)
----README.md(2KB)
----fullfindLV.m(1KB)
----wrapper.m(581B)
----fullrsm.m(5KB)

网友评论