Loading [MathJax]/jax/output/CommonHTML/autoload/mtable.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【运筹学】线性规划 单纯形法 ( 原理 | 约定符号 | 目标系数矩阵 C | 目标函数变量矩阵 X | 约束方程常数矩阵 b | 系数矩阵 A | 向量 | 向量符号 | 向量 Pj )

【运筹学】线性规划 单纯形法 ( 原理 | 约定符号 | 目标系数矩阵 C | 目标函数变量矩阵 X | 约束方程常数矩阵 b | 系数矩阵 A | 向量 | 向量符号 | 向量 Pj )

作者头像
韩曙亮
发布于 2023-03-27 09:31:25
发布于 2023-03-27 09:31:25
1.4K0
举报

文章目录

代码语言:txt
AI代码解释
复制
        - [I . 单纯形法 引入](https://cloud.tencent.com/developer)
        - [II . 单纯形法 基本原理](https://cloud.tencent.com/developer)
        - [III . 线性规划 标准形式](https://cloud.tencent.com/developer)
        - [IV . 线性规划 标准形式 普通形式公式](https://cloud.tencent.com/developer)
        - [V . 线性规划 标准形式 展开完整形式公式](https://cloud.tencent.com/developer)
        - [VI . 线性规划 标准形式 矩阵形式公式 ( 矩阵 C | 矩阵 X | 矩阵 b | 矩阵 A )](https://cloud.tencent.com/developer)
        - [VII . 线性规划 标准形式 向量形式公式 ( 向量 Pj )](https://cloud.tencent.com/developer)
I . 单纯形法 引入

1. 方程组的解个数 :

  • ① 唯一解 : 如果方程组的方程个数 等于 变量的个数 , 变量的解是唯一的 ;
  • ② 多个解 : 如果方程组的方程个数 大于 变量的个数 , 变量的解可能会出现多个 ;

2. 单纯形法引入 : 在线性规划中 , 约束方程个数 , 一般情况下会小于变量个数 , 因此会有多个解 , 单纯形法就是针对这种情况求解的方法 , 可以得到符合要求的线性规划的最优解 ;

II . 单纯形法 基本原理

单纯形法原理 :

  • ① 初始单纯形 : 先从线性规划 约束方程 中找出单纯形 , 每个单纯形可以解出一组变量的解 ;
  • ② 判定趋势 ( 是否最优 ) : 然后判断这个解 影响的 目标函数的趋势 , 使目标函数增大 还是 减小 ;
  • ③ 找到更优可行解 : 根据该趋势选择下一个单纯形 , 不断迭代 , 直到找到一个单纯形 , 使目标函数达到最大值或最小值 ;

单纯形法 执行方案 :

  • ① 初始可行解 : 先找到 一个 初始可行解 , 判定其是否是最优解 , 如果是到此为止结束 ;
  • ② 判定 : 是否最优解 , 如果是 , 到此结束 ; 如果不是 , 继续执行 ③ ;
  • ③ 转化更优的可行解 : 那么按照一定法则 , 转换成另一组优化后的 可行解 , 跳转到 ② 继续判定 ;
III . 线性规划 标准形式

线性规划标准形式 : 使用单纯形法 求解 线性规划问题 , 这里要求线性规划数学模型必须是标准形式 , 有如下要求 :

  • ① 目标函数 : 变量组成的目标函数 , 求解极大值 ;
  • ② 约束方程 : 所有的约束方程都必须是等式 , 并且右侧的常数都必须 大于等于 0 ;
  • ③ 变量约束 : 所有的变量取值都必须大于等于 0 ;

线性规划标准形式转换方式 : 【运筹学】线性规划数学模型标准形式 ( 标准形式 | 目标函数转化 | 决策变量转化 | 约束方程转化 | 固定转化顺序 | 标准形式转化实例 ) , 参考上一篇博客内容 ;

IV . 线性规划 标准形式 普通形式公式

线性规划标准形式公式 :

n

个变量 ,

m

个约束方程 ,

n>m

变量数大于方程数 , 解有多个 ;

V . 线性规划 标准形式 展开完整形式公式

线性规划标准形式 展开式 :

个变量 ,

个约束方程 ,

变量数大于方程数 , 解有多个 ;

VI . 线性规划 标准形式 矩阵形式公式 ( 矩阵 C | 矩阵 X | 矩阵 b | 矩阵 A )

1. 线性规划标准形式 矩阵形式 :

个变量 ,

个约束方程 ,

变量数大于方程数 , 解有多个 ;

2. 矩阵

: 该矩阵是行向量 , 代表了目标函数中的系数 ;

*

3. 矩阵

: 该矩阵是列向量 , 表示目标函数中的变量 ;

4. 矩阵

: 该矩阵是列向量 , 表示约束方程的右侧常数 ;

5. 矩阵

: 该矩阵是

矩阵 , 有

列 ,

表示约束方程个数 ,

表示变量个数 ; (

)

同时也是 矩阵

的秩 ; 该矩阵是

个 约束方程的每个变量前的 系数 矩阵 ;

VII . 线性规划 标准形式 向量形式公式 ( 向量 Pj )

1. 向量概念 : 向量是特殊的矩阵 ,

列的矩阵 , 就是向量 ;

2. 线性规划 向量形式 : 其中 矩阵

, 矩阵

, 矩阵

与上面的矩阵形式内容一致 , 本公式之比上个公式多了一个 向量

;

3. 向量

表示 : 该向量是

列的矩阵 , 表示 约束方程

中的第

行的列向量 , 其中

;

4. 矩阵

与 向量

关系 :

5. 系数替换方案 : 在线性规划 普通公式中 , 约束方程系数

可以使用

进行替换 ;

向量

代替其中的

, 替换完毕后为 :

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Django数据库配置避坑指南:从初始化到生产环境的实战优化
下面命令检查你的项目配置是否符合规范,包括数据库连接。如果数据库配置错误或无法连接,会提示相关错误。
小王子1024
2025/06/30
1070
Django数据库配置避坑指南:从初始化到生产环境的实战优化
一个超级小的 Django 项目.
当用最简单的代码实现 Django 项目为最基本的要素的时候, 项目可以和微框架一样小.
用户1416054
2018/12/12
1.1K0
python测试开发django-1.开始hello world!
当你想走上测试开发之路,用python开发出一个web页面的时候,需要找一个支持python语言的web框架。django框架有丰富的文档和学习资料,也是非常成熟的web开发框架,想学python开发的小伙伴,从django入手是一个不错的选择。本篇写一个简单的“hello world! ”页面,开始django之旅~ 环境准备: Python 3.6.0 django 2.1.2 pycharm
上海-悠悠
2018/11/23
7370
python测试开发django-176.数据库迁移数据(manage.py dumpdata)
manage.py dumpdata 是 django 自带的管理命令,可以用来备份你的模型实例和数据库.
上海-悠悠
2021/12/17
1K0
python测试开发django-176.数据库迁移数据(manage.py dumpdata)
Django 自定义管理命令
Django 提供了一组非常实用的命令, 可以通过django-admin.py和pytohn manage.py脚本调用. 关于这个Management Command的一个优点是你可以创建自定义的command来扩展它.当你需要通过终端命令来对程序进行操作的时候, 通过这个管理命令就非常方便了。 在本篇中, 你将学习到如何编写自己的命令并通过manage.py 来调用.
用户1416054
2018/12/19
1.3K0
Django 自定义管理命令
python manage.py migrate无效的问题
已有的model,修改之后,想重新建模,于是将migrations文件夹中除init.py 之外其他文件都删掉,再次执行以下步骤
用户2936342
2018/08/27
2.9K0
Python 网络服务相关 杂记
[1].Python的原生版Socket [2].python自带的模块:`wsgiref`的简单使用 [3].Python和Idea的爱恨情,pip装了模块但不能用,或飘红了但能用 [4].随手一说 jinja2 [5].django的简单介绍 [6].django中使用MySQL数据库
张风捷特烈
2019/03/20
1.7K0
Python 网络服务相关 杂记
Python:Web框架 Django之manage.py
manage.py是每个Django项目中自动生成的一个用于管理项目的脚本文件,需要通过python命令执行。manage.py接受的是Django提供的内置命令。
Freedom123
2024/03/29
3660
Django来敲门~第一部分【5.2.模型和数据库交互】
通常情况下,如果你只是做测试使用,可以使用Django内置的数据库SQLite就完全可以满足需要了,我们在本次教程中,通过使用MySQL这个数据库来完成后续的功能操作
大牧莫邪
2018/08/27
5170
【Django 2.2 文档系列】django-admin和manage.py
我们在Django开发过程中,命令行执行最多的应该就是python manage.py <command>,今天聊聊manage.py这个命令。
BigYoung小站
2020/05/04
5750
Python笔记:Django框架做web开发(一)
开源!开源!开源大法好! Django除了功能强大之外,最主要的原因是资料丰富,同时Django具有很强的扩展性。 使用Django,你可以在几个小时内将Web应用程序从概念发布到启动。Django负责Web开发的大部分繁琐的事情,所以你可以专注于编写应用程序而无需重新发明轮子。 Django包含许多可用于处理常见Web开发任务的附加功能。Django负责用户身份验证,内容管理,站点地图,RSS源以及更多任务,呼之即来,开箱即用。
Altumn
2019/10/20
1.2K0
【愚公系列】2022年01月 Django商城项目02-Mysql的配置
必须确保Mysql用户表里为空的,如果之前有迁移过数据到Mysql,有可能会出错。注意出错的时候所报的错误信息。如果提示有重复主键,那需要先删掉数据。这些数据是在给MySQL数据库应用迁移文件的时候产生的,一般是content_type相关的表。
愚公搬代码
2022/01/04
3540
【愚公系列】2022年01月 Django商城项目02-Mysql的配置
一日一技:如何让Django 的app migration重新与数据库同步
今天的文章,没有用过Django的同学可能难以理解我在说什么。但是如果你被Django的migration折腾过,那么你一定会感谢这篇文章。
青南
2019/07/23
4.2K1
Python常见web框架汇总
目前,有非常多的Python框架,用来帮助你更轻松的创建web应用。这些框架把相应的模块组织起来,使得构建应用的时候可以更快捷,也不用去关注一些细节(例如socket和协议),所以需要的都在框架里了。接下来我们会介绍不同的选项。
若与
2019/03/01
1.7K0
Python常见web框架汇总
Restful接口开发与测试—Django安装
Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的框架模式,即模型M,视图V和控制器C。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。
清风穆云
2021/08/09
1.8K0
Django学习-第十一讲(上):ORM迁移命令
将模型生成迁移脚本。模型所在的app,必须放在settings.py中的INSTALLED_APPS中。这个命令有以下几个常用选项:
小海怪的互联网
2019/10/08
1.3K0
1.4 Django基础篇--数据库模型设计
新书小广告 《Python爬虫开发与项目实战》基础篇 试读章节链接: http://pan.baidu.com/s/1hrWEOYg 这本书包括基础篇,中级篇和深入篇三个部分,不仅适合零基础的朋友入门,也适合有一定基础的爬虫爱好者进阶,如果你不会分布式爬虫,不会千万级数据的去重,不会怎么突破反爬虫,不会分析js的加密,这本书会给你惊喜。 前言 从上一节我们知道home应用需要涉及文章,分类和标签三个部分,其实这就是个人博客系统最核心的功能:发表文章。下面我们分析一下数据库
七夜安全博客
2018/06/26
1.3K0
Django学习
Django的基本命令 startproject  创建一个Django项目    django-admin startproject 项目名 startapp      创建一个Django应用    python manage.py startapp 应用名(blog) check         校验项目完整性 runserver     本地建议运行Django项目  python manage.py runserver shell         进入Django项目的python shell环境 test          执行Django用例测试 与数据库相关的命令 makemigrations  创建模型变更的迁移文件   python manage.py makemigrations migrate         执行上一个命令创建的迁移文件  python manage.py migrate dumpdate        把数据库数据导出到文件     loaddate        把文件数据导入到数据库
用户10443079
2023/03/21
7690
Django学习
Django---MTV模型、基本命令、简单配置
MTV模型 Django的MTV分别代表:        Model(模型):负责业务对象与数据库的对象(ORM)        Template(模版):负责如何把页面展示给用户        Vi
用户1214487
2018/01/24
3K0
Django---MTV模型、基本命令、简单配置
【Django】 开发:静态文件,应用和模型层
指定访问静态文件时是需要通过 /static/xxx 或 127.0.0.1:8000/static/xxx
杨丝儿
2022/02/24
2.1K0
【Django】 开发:静态文件,应用和模型层
相关推荐
Django数据库配置避坑指南:从初始化到生产环境的实战优化
更多 >
交个朋友
加入腾讯云官网粉丝站
蹲全网底价单品 享第一手活动信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档