localsolver
文章平均质量分 69
流水潺潺行云不语
专注于系统仿真建模、数学建模和求解器。精通Simio,Simul8,Promodel和数学优化器LocalSolver,面向企业咨询20+年。流水潺潺行云不语。
展开
-
LocalSolver快速入门指南(连载二十七) ---- Lambda函数的特殊情形
Local SolverLambda函数的特殊情形当在此上下文中使用数组(array)操作符时,它将创建一个数组,其大小将随着关联范围(associated range)的大小而变化。通过在函数中使用第二个参数,允许递归定义该数组的元素,该参数包含函数对范围的前一个元素的求值。形式上,如果我们定义v<-array(a..b,(i,prev)=>f(i,prev)),对于区间[a, b]内的所有i,我们有v[i] = f(i,v[i-1]),根据约定v[-1]等于0。这个特...原创 2021-06-22 12:52:31 · 113 阅读 · 0 评论 -
LocalSolver快速入门指南(连载二十六) ---- 整数范围
Ranges(整数范围)范围是连续整数的集合。注意:在LSP建模语言中,..操作符定义一个封闭范围。也就是说,两个端点都包含在区间内:a..b表示从a到b的整数序列。相反,当从LocalSolver的api调用时,range(a,b)表示从a到b-1的整数序列。范围的两端都可以是非常数表达式。请注意,当范围为空时,一些n元操作符(如min和max)将被认为是未定义的,也就是说,当范围为空时,解仍然是不可行的。例如,下面的表达式隐式地约束b大于或等于a:minimize max(.原创 2021-06-20 15:41:31 · 240 阅读 · 0 评论 -
LocalSolver快速入门指南(连载二十五) ---- Lambda表达式
Lambda expressions(拉姆达表达式)LocalSolver 提供了将 n 元运算符(如 sum、min、max 等)应用于一系列动态大小的可能性。例如,它允许定义一个总和,其项数将取决于其他表达式。在这样的表达式中,迭代项作为 lambda 函数引入。一个典型的用法是定义集合项的总和:// x是一个列表变量或集合变量total <- sum(x, i => quantity[i]);在上面的例子中, sum 有两个操作数:第一个操作数是集合。 第二.原创 2021-06-20 14:58:46 · 123 阅读 · 0 评论 -
LocalSolver快速入门指南(连载二十四) ---- 列表、集合变量4
使用集合变量构建模型集合可以作为一种紧凑的方法来建模各种问题中的组成员。如果k是货箱数量,则装箱问题将用k集合来建模。这些集合将被约束成一个分区(使用操作符partition)。虽然列表在建模排序约束的能力上是唯一的,但是集合变量可以被等效的布尔模型所代替。如果问题涉及到将一个项目分配给几个相似的组或容器中的某一个,则应首选集合变量。这是用不相交算子(disjoint)或分区算子(partition)自然地建模的。另一方面,在某些情况下,布尔模型可能执行得更好。当存在一个单独的集合时(...原创 2021-06-17 21:50:32 · 107 阅读 · 0 评论 -
LocalSolver快速入门指南(连载二十三) ---- 列表、集合变量3
列表变量特定的操作符at运算符允许访问列表中给定位置的值。它需要两个操作数:一个列表和一个整数表达式(不一定是常量)。当给定索引为负或大于或等于count(x)时,它返回-1。例如,以下模型中的目标函数是最大化列表中第一项和最后一项的乘积:x <- list(5);constraint count(x) > 0;maximize x[0] * x[count(x)-1];indexOf运算符返回给定整数在列表中的位置,如果该整数未包含在列表中,则返回-1。..原创 2021-06-17 15:49:02 · 155 阅读 · 0 评论 -
LocalSolver快速入门指南(连载二十二) ---- 列表、集合变量2
列表变量和集合变量操作符一元操作符和二元操作符Thecountoperator returns the number of elements in a collection. For example, the following model merely expresses the search for a set of maximum size:count运算符返回集合中的元素数量。例如,以下模型仅表示搜索一个集合的最大元素个数:x <- set(5);maximiz...原创 2021-06-14 16:25:05 · 98 阅读 · 0 评论 -
LocalSolver快速入门指南(连载二十一) ---- 列表、集合变量1
列表和集合变量(List /Set variables)除了布尔型,整数型和浮点型以外,localsolver还提供了两个更高层次的决策变量,即列表变量(list)和集合变量(sets)。Creation operator(创建运算符)列表(List)和集合(set)运算符允许定义一个决策变量,其值是值域是[0,n-1]上的整数集合,其中n是运算符的唯一操作数。它们不一定包含[0,n-1]中的所有值,并且列表或集合中的所有值都是两两不同的、非负的,并且严格小于n。请注意,操作数必须是一...原创 2021-06-13 15:58:45 · 129 阅读 · 0 评论 -
LocalSolver快速入门指南(连载二十) ---- 分段操作符
分段操作符 利用分段(piecewise)操作符在LocalSolver中引入分段线性函数。分段线性函数是由直线段组成的函数。每条直线的末端称为断点。我们定义分段函数是按照从左到右的顺序给出它的所有断点。分段操作符接受3个参数:一个非递减数组,包含“n”个常量,“n”>= 2。 一个包含“n”常量的数组。 整数或双精度表达式如果第三个操作数的值严格小于第一个数组的第一个元素,或严格大于第一个数组的最后一个元素,则此解决方案将不可行。该操作符返回一个浮点数。表达式piecewise原创 2021-05-31 21:30:53 · 121 阅读 · 0 评论 -
LocalSolver快速入门指南(连载十九) ---- 多维的At操作符(续)
Pitfalls(缺点)数组必须具有统一的维数不要求数组具有相同数量的元素(交错数组),但它们必须具有相同的维数。因此,在同一表达式中,不可能将二维数组与三维数组混合。// Will throw an error because the first operand is an expression of// dimension 0 (a boolean decision) whereas the second is an array of// dimension 1...原创 2021-05-30 11:33:01 · 86 阅读 · 0 评论 -
LocalSolver快速入门指南(连载十七) ---- LocalSolver可用的操作符-At操作符
超大规模数学求解器LocalSolver可用的操作符-At操作符At操作符运算符“at”是第一个操作数是数组或列表,后面的操作数是整数(或索引)的一种运算符。索引的数目必须与数组的维数相匹配(如果是列表,则为1)。它的值是数组中元素在给定索引处的值。本页介绍“at”操作符在数组(一维或多维)上的使用。有关在列表变量上使用“at”运算符的说明,请参见列表变量。如果对学习使用Local Solver有更多问题,请联系LocalSolver中国独家代理商无锡迅合信息科技有限公司开发人员。一.原创 2021-05-22 23:30:02 · 139 阅读 · 0 评论 -
LocalSolver快速入门指南(连载十六) ---- LocalSolver可用的操作符和函数列表
Local solver可用的操作符和函数列表在下表中,每个操作符用LSP语言的名称标识。请注意,在Python,C++,C语言或java语言中,这些名称可能略有不同,以尊重每个开发语言的编码约定和预留关键字:在C++和java中,决策变量被冠以“var”( boolVar, floatVar, intVar, setVar 和 listVar)前缀 在C#中所有函数都以大写字母开头. 下表列出了LocalSolver中可用的操作符和函数如有任何疑问请联系localsolver中国代理商/技术原创 2021-05-17 22:01:10 · 123 阅读 · 0 评论 -
LocalSolver快速入门指南(连载十五) ---- LocalSolver建模功能特色(约束和目标)
LocalSolver建模功能特色---约束 和目标Constraints(约束)约束是一种标记,它放置在表达式上强制让其变为true(表达式值等于1)。在LocalSolver中,可以约束具有布尔值(0、1)的任何变量或中间表达式。因此,“所有”涉及到关系运算符(<,<=,>,>=,=,=,!=)的表达式,以及逻辑操作符 “和”(&&)或(| |)、xor或iif(ImmediateIF)都可以被约束,不限于问题类型。特别是,LocalSolver不仅.原创 2021-05-17 20:37:40 · 223 阅读 · 0 评论 -
原创 LocalSolver快速入门指南(连载十四) ---- LocalSolver建模功能特色
LocalSolver建模功能特色本节首先介绍LocalSolver中可用的所有建模操作符。然后详细介绍了LocalSolver的一些强大功能,如基于集合的建模(set-based modeling)或外部函数。 数学建模功能 数学操作符 分段运算符 列表和集合变量 兰姆达表达式 外部函数 黑盒优化 车辆路由问题的模型指导 数学建模功能D原创 2021-05-16 17:00:56 · 224 阅读 · 0 评论 -
LocalSolver快速入门指南(连载十三) ---- 编译和运行LOCAL SOLVER的JAVA程序
编译和运行LOCAL SOLVER的JAVA程序用户采用Java构建LocalSolver数学模型后,要进行编译,必须在计算机上安装Java Development Kit 8.0(或更高版本)。在Windows上,使用以下行编译并启动上述程序javac OptimalBucket.java -cp %LS_HOME%\bin\localsolver.jarjava -cp %LS_HOME%\bin\localsolver.jar;. -Djava.library.path=%LS_H.原创 2021-05-09 15:00:03 · 183 阅读 · 1 评论 -
LocalSolver快速入门指南(连载十二)----使用Java语言求解您的第一个LocalSolver数学模型
使用Java语言求解您的第一个LocalSolver数学模型LocalSolver求解器是在C++语言中实施的。尽管如此,还是为Java7.0(或更高版本)提供了面向对象的API,允许在Java业务应用程序中完全集成LocalSolver方案。LocalSolver的API是轻量级的,只需要操作几个类。请注意,LocalSolver是一个“建模-运行”的数学编程求解器:实例化了模型之后,不需要编写额外的代码来运行解算器。在本节中,我们将向您展示如何用Java语言建模和解决第一个优化问题:桶形的优化。原创 2021-05-05 18:00:53 · 194 阅读 · 0 评论 -
LocalSolver快速入门指南(连载十一) ----编译和运行C#数学优化程序
编译和运行C#程序(LOCAL SOLVER数学优化模型)在Windows上,使用visualstudio命令提示符(x64)的以下语句行编译并启动上述优化程序。请注意,如果直接使用VisualStudio IDE构建程序,则必须在VisualStudio项目的属性中指定平台目标x64。copy %LS_HOME%\bin\localsolvernet.dll .csc OptimalBucket.cs /reference:localsolvernet.dllOptimal..原创 2021-05-03 17:39:47 · 171 阅读 · 1 评论 -
Local Solver快速入门指南(连载十)--LOCAL SOLVER的新功能JSON模块和建模器API
LOCAL SOLVER数学求解器两大新功能-JSON模块 、Modeler API。随着LocalSolver 10.0的发布,我们想要推进的一个关键特性就是将LSP程序集成到完全生产性的应用程序中。JSON模块和Modeler API都是为了方便LSP程序对内对外的数据处理而引入的。在本文中,我们将通过一些小示例来展示这些特性。如果您不熟悉LSP,我们建议您查看LOCAL SOLVER的语言参考。...原创 2021-04-14 21:15:49 · 207 阅读 · 0 评论 -
Local Solver快速入门指南(连载九)--使用C#求解您的第一个模型
使用C#语言求解您的第一个LOCAL SOLVER数学模型我们是用C++语言实施LocalSolver的。不过,也为.NET 2.0(或更高版本)提供了“面向对象”的应用程序编程接口(API),允许在.NET业务应用程序中完全集成LocalSolver数学求解器算法。LocalSolver的API是轻量级的,只需要操纵几个类。请注意,LocalSolver是一个建模-运行方式的数学规划解算器:在实例化了模型之后,不需要编写额外的代码就能运行解算器。在本节中,我们将向您展示如何用C#建模和解决您的第一个问原创 2021-04-11 00:02:53 · 219 阅读 · 0 评论 -
Local Solver快速入门指南(连载八)--编译和运行C++ 程序
编译和运行C++ 程序(连载八)在Windows上,使用visual studio命令提示符(x64)中对以下行进行编译并启动上述程序:cl /EHsc optimal_bucket.cpp -I%LS_HOME%\include /link %LS_HOME%\bin\localsolver100.liboptimal_bucket:请注意,在Windows上,在PowerShell窗口中,您将使用以下行:cl /EHsc optimal_bucket.cpp -I"...原创 2021-03-26 21:30:23 · 1048 阅读 · 2 评论 -
Local Solver快速入门指南(连载七)--使用C++求解您的第一个LocalSolver模型
使用C++求解您的第一个LocalSolver模型LocalSolver是在C++语言中实现的。一个高度可移植的C++库提供了面向对象的应用程序编程接口(API),允许在业务应用程序中完全集成LoalSover。LocalSolver的api是轻量的,只需要操纵几个对象类。请注意,LocalSolver是一个“建模和运行”的数学编程求解器:实例化了模型之后,用户不需要编写额外的代码来运行解算器。在这一章节中,我们将展示如何在C++语言中建模和解决第一个优化问题:桶形状的优化。在有限的材料表面(S=π原创 2021-03-22 09:08:50 · 489 阅读 · 0 评论 -
Local Solver快速入门指南(连载六)--在没有pip的情况下运行LocalSolver
在没有pip的情况下运行LocalSolver如果您没有pip或者不想使用pip,那么执行程序将需要预先设置PYTHONPATH环境变量,并且启动行语句将取决于您的系统。如果您使用的是Python开发环境,它的设置页面允许配置PYTHONPATH环境变量。否则,您可以按以下步骤进行:在Windows命令提示符下,您将键入:set PYTHONPATH=%LS_HOME%\bin\python在Windows PowerShell控制台中您将键入:$env:PYTHONPATH=”$e..原创 2021-03-22 08:53:48 · 144 阅读 · 0 评论 -
数学建模优化和仿真模拟的区别001
如果我们过于爽快地承认失败,就可能使自己发觉不了我们非常接近于正确!---卡尔·波普尔数学建模优化和仿真模拟的区别几十年来,工程师们一直使用模型(Model)来帮助他们理解系统过程并确定最佳解决方案。有时创建模型是为了让设计师发现特定设计问题的答案,而在其他情况下,则用来模拟模型在不同情况下的表现(即What-If假设性问题)。物理建模过程一直持续到20世纪末,当时建模软件的开发使工程师能够更容易地利用虚拟建模来探索模型的性能。虽然表面上相似,但仿真(Simulation)和建模过.原创 2021-03-21 14:52:07 · 10822 阅读 · 0 评论 -
Local Solver快速入门指南(连载五)-运行Python程序
运行Python程序 (Local Solver快速入门指南 续)必须在您的计算机上安装Python发行版。 LocalSolver与Python 2.7和Python> = 3.3版兼容。在任何系统上,如果应用了上述推荐的pip install安装过程,则Python程序将直接以下面的形式启动:python optimal_bucket.py然后,以下跟踪信息将出现在您的控制台中:LocalSolver 9.5.20200409-Win64. All rights re..原创 2021-03-20 16:09:41 · 232 阅读 · 0 评论 -
Local Solver求解JobShop问题 (Instances)
Local Solver求解JobShop问题学习的原则:添加多个列表决策变量 限制列表中的元素数量 通过将数值决策变量与列表变量配对来对它们进行排序问题必须在车间的每台机器上处理一组作业。每个作业都包含一个有序的任务序列(称为活动),每个任务代表在一台机器上对作业的处理。每个作业每台计算机都有一个活动,并且在作业的上一个活动未完成时无法启动活动。每个活动都有给定的处理时间,每台机器一次只能处理一个活动。目的是要找到一系列可最大程度缩短生产时间的作业:处理完所有作业.原创 2021-03-20 00:02:36 · 417 阅读 · 0 评论 -
Local Solver快速入门指南(连载四)---用Python求解您的第一个模型
用Python求解您的第一个模型(Local Solver) LocalSolver用C ++语言实现。尽管如此,我们还是为Python提供了面向对象的API,从而可以将LocalSolver完全集成到您的Python业务应用程序中去。LocalSolver的API是轻量级的,只有操作很少的几个类。请注意,LocalSolver是“建模-运行”方式的数学程序求解器:实例化数学模型后,无需编写其他代码即可运行该求解器。注意:在计算机上安装LocalSolver后,将LocalSolver链接到Py原创 2021-03-19 14:59:39 · 340 阅读 · 0 评论 -
Local Solver快速入门指南(连载三):启动数学模型
Local Solver快速入门指南(连载三):启动数学模型----------------------------------------------------------------------要求解此模型,请以LSP文件作为参数调用LocalSolver。然后,以下跟踪信息将出现在您的控制台中:localsolver/examples/optimal_bucket$ localsolver optimal_bucket.lspLocalSolver 9.5.20200409-Wi原创 2021-03-19 14:32:01 · 162 阅读 · 0 评论 -
Local Solver快速入门指南(连载二):容量最大的桶
LocalSolver第一个模型--容量最大的桶我们将从优化一个桶的形状开始。这是一个典型的非线性(non-linear) 问题,可以使用LocalSolver直接建模并在几秒钟内获得优化解。对于每种语言,我们将说明如何编写模型、编译代码(如果需要的话)并启动它。使用Localsolver模拟器(LSP)求解第一个模型在本节中,我们将向您展示如何建模和解决您的第一个问题:桶形的优化。在有限的材料表面(S=π)下,我们试图建造一个容量最大的桶。这个小例子在我们的示例导游中有更为精确...原创 2021-03-18 15:22:37 · 294 阅读 · 0 评论 -
Local Solver快速入门指南(连载一)
Local Solver快速启动指南(待续)本快速入门指南概述了LocalSolver数学求解器的主要功能,并帮助您在数分钟内构建第一个数学模型。在快速描述LocalSolver的基本原理之后,您将被邀请使用LocalSolver解决您的第一个优化问题。第一个模型可以用LoalSover专用建模语言(LocalSover编程语言LSP)或您最喜欢的语言(Python、C++、java、.NET)之一来实现。LSP的设计目的是让LocalSolver用户能够用自然的数学形式编写优化模型,甚至是基于集合原创 2021-03-17 22:11:50 · 709 阅读 · 0 评论 -
2021-03-10 带时间窗口的路径规划 (使用Local Solver求解实例学习)
带时间窗口的路径规划 (使用Local Solver求解实例学习)学到的原则:添加多个列表决策变量 定义表达式序列 使用lambda表达式定义递归数组在带时间窗的有限能力车辆路径问题(CVRPTW)中,一个具有统一能力的车队必须以已知的需求和单一商品的开放时间为顾客服务。车辆在公共车场开始和结束其路线。每位客户只能乘坐一辆车。其目标是使车队规模最小化,并为车队中的每辆卡车分配一系列客户,使总行驶距离最小化,以便为所有客户提供服务,并且每辆卡车提供的总需求不超过其容量。数 ...原创 2021-03-10 22:54:02 · 893 阅读 · 0 评论 -
Python中设置LocalSolver (可选) 2021-3-09
Python中设置LocalSolver (可选)在计算机上安装LocalSolver数学规划软件后,建议将LocalSolver链接到Python的方法是在命令提示符或Python环境(例如Anaconda)的提示符中键入以下命令:pipinstalllocalsolver-ihttps://pip.localsolver.com每次安装新版本的LocalSolver时都必须执行此命令。注意,它只是在Python中配置LocalSolver的集成。它不能替代具有合法的Loca...原创 2021-03-09 17:27:59 · 259 阅读 · 1 评论 -
LOCALSOLVER 数学求解器10.0版本发布:欢迎申请试用进行体验
LOCALSOLVER 数学求解器10.0版本发布:欢迎申请试用进行体验LocalSolver在2020年成绩喜人,有更多的商业客户加入了local solver用户家族,主要有博世汽车(德国,美国公司),CEZ Distribuce电网公司(捷克斯洛伐克),NEWTON Vaureal(法国),索尼(日本)。LocalSolver 10.0版本于2021年1月18日顺利发布,增加了很多新的求解功能和求解性能的提升:VRP路径优化—对于多个VRP的变种问题有很好的解决方案:更快地预处理大型实例原创 2021-03-07 21:45:18 · 318 阅读 · 1 评论 -
混合整数分布式蚁群优化算法-MIDACO介绍和试用
混合整数分布式蚁群优化算法-MIDACOMIDACO是数值优化问题的求解器。MIDACO可以应用于连续(NLP非线性规划)、离散/整数(IP整数规划)和混合整数规划(MINLP)问题。MIDACO可用于单目标和多目标优化问题。问题可能限于等式和/或不等式约束。MIDACO适用于具有上万个变量和数百个目标的问题。MIDACO实现了一种无导数的进化混合算法,该算法将问题视为黑盒,黑盒可能包含关键函数特性,如非凸性、不连续性或随机噪声。对于CPU时间昂贵的应用程序,MIDACO提供了一种高效的并行化策略。..原创 2021-03-07 00:09:43 · 1753 阅读 · 0 评论 -
macOS苹果电脑上安装LocalSolver并求解第一个数学模型!
macOS苹果电脑上安装LocalSolver下面介绍了在苹果电脑上安装和授权LocalSolver的主要步骤。Local Solver是在C++语言中实施的求解器。该软件可以作为独立的可执行文件使用或作为可调用库(C++、java、python、.net)使用。安装软件前,请检查您的计算机是否满足最低系统要求。系统要求架构: x64. 操作系统: OS X系统代号Mavericks (Mac OS X 10.9或更高版) 关于C++库: Clang 3.0 (或更高版本). 关.原创 2021-03-05 08:19:59 · 685 阅读 · 2 评论 -
如何在Linux系统上安装数学求解器LocalSolver并运行第一个数学优化模型
Linux操作系统安装指南-- Local Solver下面介绍了在计算机上安装和授权LocalSolver的主要步骤。LocalSolver优化器是在C++语言实施的高性能求解器。该软件可以作为独立的可执行文件使用,或可作为调用库(C++、java、python、.net)使用。安装LocalSolver软件前,请检查您的计算机配置是否满足最低系统要求。系统要求架构: x64. 操作系统: Linux libc 2.9 (或更高版本)和libstdc++ 6.0.21 (或更高版本).原创 2021-03-02 13:23:13 · 325 阅读 · 0 评论 -
如何在WINDOWS操作系统安装数学求解器LOCAL SOLVER并运行第一个优化程序
文档系列【1】Windows操作系统安装Local Solver下面介绍了在计算机上安装和授权LocalSolver的主要步骤。LocalSolver是在C++语言中实施的求解器。该软件可以作为独立的可执行文件使用或作为可调用库(C++、java、python、.net)使用。安装软件前,请检查您的计算机是否满足最低系统要求。如有疑问请给LOCALSOLVER中国授权代理商无锡迅合信息科技有限公司电邮或致电...系统要求架构: x64. 操作系统: Windows 7 (或更高),原创 2021-03-01 21:52:25 · 628 阅读 · 0 评论 -
xloptim 基于Excel的大规模数学求解器试用
xloptim 基于Excel的大规模数学求解器试用版下载业内领先的Excel优化器XLOPTIM®XLOPTIM®通过直接在Excel工作表中提供Local Solver优化引擎的求解效率来解决您的运营问题。这个无代码的AI平台将帮助您在短时间内获得强大的解决方案,并提高场景决策中的生产率。此外,XLOPTIM®优化器可以用作教育领域的重要助手,尤其可以轻松教授运筹学和业务分析课程。XLOPTIM®结合ADDINSOFT公司和LOCAL SOLVER公司20年研发经验,率先...原创 2021-02-25 09:07:39 · 577 阅读 · 0 评论 -
Local Solver 超大规模数学优化器/求解器介绍和试用
Local Solver 超大规模数学优化器/求解器介绍和试用版下载Local Solver是成功的全局优化求解器,她结合了精确求解技术和启发式技术。除了为您提供高效和可扩展的瑞士军刀式数学优化器外,Local Solver团队还提供专业的和响应性的支持服务,以使用Local Solver进行建模并解决您手头的棘手问题。您的业务需要交钥匙解决方案吗?Local Solver公司还提供定制的业务分析服务和优化服务。20多年来,Local Solver团队因其为客户开发的决策支持解决方案的价值...原创 2021-02-25 08:51:44 · 1280 阅读 · 0 评论