SAS/OR最优化介绍
运筹学工具是用于解决资源管理和规划问题,在运筹学中模型都表示为物理结构的对象或概念或业务流程。使用运筹学模型研究涉及以下几方面:
● 基于调查定义模型结构系统
● 为模型收集数据
● 求解数学模型
● 理解结果
SAS/OR软件是一套集成程序,用来探索分销网络、生产系统、资源分配和调度问题的研究。基于优化决策支持系统常用的领域列表下面,在实践中,模型通常包含多种应用。
● SAS/OR混合产品问题。在争夺有限的资源条件下,寻找最大回报的几种产品。
● SAS/OR协调问题,产品组合上的最低成本与标准。
● SAS/OR时间规划问题。时间规划问题模型是将重复结构作为时间的函数。生产和库存就是时间规划问题的典型例子,在每个时期里,生产加库存减去当前需求等于下一个阶段存货过程。
● SAS/OR调度问题。调度问题是在不违反规定时间的前提下,合理的分配时间、地点或任务,从而优化行为。
● SAS/OR多目标问题。多目标问题有多个,或多个可能相互冲突的目标。典型的问题是目标按优先级排序,按顺序解决问题。
● SAS/OR资本预算和项目选择。资本预算和项目选择问题要求项目产生最大的回报。
● SAS/OR位置问题。以最小成本满足分配需求,寻求合适的位置。
● SAS/OR削减库存问题。寻找某种原料,可以使浪费最小化、满足需求。
SAS/OR基本优化问题是对变量函数的最小化或最大化约束。目标函数和约束可以线性或非线性;约束可以绑定约束、平等或不平等约束或者整数约束。传统上,优化问题分为不同的类型取决于设置的值,如变量被限制(真正的、整数、二进制或组合式),并且约束和目标的函数形式 (线性、二次或非线性)。如果优化问题的表达式表示为数学形式则称为数学程序。
如果数学程序可以提供一个适当的算法,那么该算法就确定了决策变量的优化值。这种优化值需在容许的范围内,服从约束。数学程序的这个过程就称为数学规划、数学优化或优化。
当在优化问题的约束是线性的或目标要么是线性或二次的,优化问题可以封装在SAS数据集,然后使用合适的SAS/OR过程解决:OPTLP,OPTMILP或OPTQP过程。
经常遇到的优化问题,特别是涉及到非线性元素,会使用模型所代表的问题的数学形式表达。抽象的数学形式表示特定的优化问题的数据与实际问题的关联。一个优化建模语言(也称为数学建模语言)是一种编程环境,这里有语法、结构和操作等部分,用以来表示所对应的数据模型。这些语法、结构和操作使您能够填写表示特定问题的数学模型,然后解决由此产生的优化问题和合适的解决方案。在SAS/OR软件里,OPTMODEL过程就是这样一个数学建模语言,可以视为一个单一的、统一的环境来制定和解决数学规划问题。
SAS/OR 9.3功能
在多个领域SAS/OR 9.3功能均有一定数量的增加、改善,这些更新也使它更容易的提供有效的解决方案。如下篇幅将进行简短的描述。
SAS/OR 9.3增强的功能
● SAS/OR的CLP过程的调度模式,解决了调度约束满足问题 (csp)。CLP程序现在支持该规范的目标函数。
● SAS/OR的CPM过程添加调度约束源(resource-constrained schedules)的更新功能。
● 微软产品的宏%SASTOMSP。
● SAS/OR的线性规划内点解添加了实验性的交叉选项,用于最优解与基本可行解间的转换。
● 线性规划求解器添加了网络单纯形算法,涉及主导式或嵌入式网络结构。
● SAS/OR的非线性规划求解算法添加了一个有关有效集解决方案的算法和多点搜索功能。
● SAS/OR中所有优化解决方案(线性,利用混合整数线性、二次和非线性)的性能均得到有效改善。
● SAS Simulation Studio添加Windows 64位支持,与JMP有了更紧密的集成,添加了几个接口和技术上的改进。