首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

设计Optaplanner下实时规划服务的失败经历

因为需要实时在线的服务,因此,需要设计多线程并发为外界请求提供响应,需要实现消息队列来管理并发请求的时序等问题。...= scoreDirector.getWorkingSolution(); scoreDirector.beforeEntityAdded(this.task); taskAssignmentSolution.getTaskList...().add(this.task); scoreDirector.afterEntityAdded(this.task); scoreDirector.triggerVariableListeners...即当一个新任务产生了,或一个已计划好的任务被生产完成了,或一个已计划好的任务无法按时执行生产作业而产生计划与实际情况存在差异时,或一个机台出现计划以外的停机等诸如此类对计划足以产生影响的事件,都将会作为触发重新规则的条件...主线程向外提供Restful webservice,当有Web请求到达时,就启动一个线程用于执行OptaPlanner的ProblemFactChange对象中的doChange方法,对现有solution

1.1K00

OptaPlanner实用技术 - 批量规划和实时规划(1)

本文原来只计划直接翻译OptaPlanner官网一篇关于SolverManager下实时规划的博文《Real-time planning meets SolverManager》,但在翻译过程中...相关的特性实现一个可批量、并行运算的规划服务,服务对规划请求的响应过程如下。...image.png 从上图可以看到,客户端的规划请求发送到规划服务后,规划服务会为每个请求的数据集开启一个solve线程,并在规划运算完成后将结果返回,当请求有重叠时,服务端会对这些数据集作并行运算...在绝大多数的规划应用场景中,计划是一种持续性、连贯性的工作,即前后两个计划周期存在一定承接要求。通常上一个周期的执行结果,作为下一周期计划输入内容的其中一部分。...就是因为"计划 - 执行 - 反馈 - 再计划..."是一个持续的、连贯的过程,因此,若存在一种技术可无限接近这种需求,那就能很大程度上解决上述过程中前后计划之间因时效性差异导致的各种问题。

1.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

普通企业的规划类项目中,OptaPlanner更适合作为APS的规划优化引擎

如排班、生产计划(包括高层次的供应链优化,到细粒度的车间甚至机台作业指令)、车辆调度等。因为这类场景需要解决的问题,均可以归约为数学中的NP-C或NP-Hard问题。...例如生产计划的排程,车辆路线规划与实时调度,工单的划分和开料问题等,都可以通过数学规划并优化。而求解器则提供了各种优化算法的软件,用于求解这类问题,也被称为规划引擎。...例如:生产计划中,结合订单与工艺信息,定义工单或生产任务。车辆路线规划场景中,根据车辆参数、运送物料的特性与要求等信息,识别出线路要求,走该节点顺序,最大运载量,节点走访时间限制等特性。...OptaPlanner的求解特点 在求解过程中,OptaPlanner与其它求解器有所区别。...因为,就算其中有部分人员在校时是研读相关专业,但若这类人员毕业后并没有持续这方面的工作,未能积累相当的规划方面项目经验,在面对零散、复杂的业务实体、约束与目标时,也很难将这些场景很好地建模成数学规划模型

2.3K00

相邻两个生产计划之间的衔接问题

因为生产活动并不一定能完全按照计划的既定预想的(当然编制计划时也会为此预留一定程度的缓冲),当生产活动与计划的差异少于预留的缓冲区时,不会对计划产生根本性改变;一但差异超过缓冲余量,实际情况与计划不再匹配...一、 在计划与实际生产活动之间设置缓冲区 进行每轮计划时,将与当前时间相近的未来一定时间范围内的计划任务设置为锁定状态,这些任务不纳入新一轮计划,在新一轮计划发布到生产单位前,这些锁定状态的任务用于保证生产活动持续进行...二、通过实时连续计划,保证计划的连贯性 该方法使用了OptaPlanner的实时规划功能(Real Time Planning),通过规划服务程序的全程在线、实时处理特性。...该方法虽然可以实现计划工作的持续性,可实时更新计划;但这种连贯性也只是基于变更前后两个方案承接关系,来实现最大程度连贯性。...在OptaPlanner用户手册中,有专门的章节介绍这处情况,其描述就是我们项目管理中,项目计划常用的滚动计划模型。将任务分为“未计划”,“草拟”“已发布”和“历史”四种状态。

52820

关于APS在企业生产计划上的应用

计划推进过程中,根据实际出现的情况,及逐步发现的问题,持续、动态地作出调整。所以给别人的印象就是,车间的生产计划毫无章法,质量低下。甚至有公司管理层认为,车间根本无计划可言。...因为主生产计划的底层支持(即更细的车间、产线生产计划,或称作业计划)未成体系,为了确保主生产计划可以达成,主生产计划的目标设定是存在冗余的。...我们基于Optaplanner + Drools作为规划与规则核心引擎,结合自身业务规则,将业务场景中的各类实体抽象(即建模),并将种类繁多的业务规则,抽象总结为硬约束与软件约束(其实对应于数学规划上的条件约束与目标函数...然后通过程序使用Optaplanner中的适当模式进行自动产生精确到分钟的生产计划。...方面的项目实现方面,有如下建议:如果觉得企业的业务相对比较复杂、个性化太强(其实任何一个公司,发展到一定程序,其业务个性化都是极强的),且自己公司具有一定的技术开发实力,建议还是使用规划引擎(开源比较成熟的有Optaplanner

1.5K30

【RunnerGo】(六)如何理解RunnerGo各个功能模块及如何使用——性能测试-计划管理

当到达最大并发后,则继续运行稳定持续时长所设置的时长运行后结束该计划。...,则继续运行稳定持续时长所设置的时长运行后结束该计划。...,则继续运行稳定持续时长所设置的时长运行后结束该计划。...每秒请求数模式:根据场景中设置的所有请求每秒完成数为准,与设定的阈值进行对比,如果达到设定的最大并发数后仍未到达设定的阈值,则自动停止计划。...如果该计划执行后,该接口的RPS(每秒请求数)大于所设阈值,那么并发数会直接增加到最大并发数:150,然后运行持续时长:20秒 如果多个接口设置了每秒请求数模式及阈值,那么已经设置的所有接口RPS都达到或超过阈值后

22230

项目管理之PMP需要掌握的76个成果

(更新) 全部变更请求的状态,无论;批准与否,都要在变更请求日志中更新。...规划采购、实施采购 活动成本估算 完成工作可能需要的成本数量 估算成本 制定预算、识别风险、规划采购 活动持续时间估算 完成某项活动所需工时数,不包括滞后,一般有个区间 估算活动持续时间 制定进度计划、...识别风险 活动清单 项目为产生成果所有必要的活动 定义活动 排列活动顺序、估算活动资源、估算活动持续时间、制定进度计划 活动属性 所有活动的详细描述 定义活动 排列活动顺序、估算活动资源、估算活动持续时间...规划采购、实施采购 活动成本估算 完成工作可能需要的成本数量 估算成本 制定预算、识别风险、规划采购 活动持续时间估算 完成某项活动所需工时数,不包括滞后,一般有个区间 估算活动持续时间 制定进度计划、...识别风险 活动清单 项目为产生成果所有必要的活动 定义活动 排列活动顺序、估算活动资源、估算活动持续时间、制定进度计划 活动属性 所有活动的详细描述 定义活动 排列活动顺序、估算活动资源、估算活动持续时间

79740

PMBook - 6.项目进度管理

持续时间估算 6.4.3.2 估算依据 6.4.3.3 项目文件更新 6.5 制定进度计划 6.5.1 制定进度计划:输入 6.5.1.1 项目管理计划 6.5.1.2 项目文件 6.5.1.3...6.5.3.4 项目日历 6.5.3.5 变更请求 6.5.3.6 项目管理计划更新 6.5.3.7 项目文件更新 6.6 控制进度 6.6.1 控制进度:输入 6.6.1.1 项目管理计划 6.6.1.2...6.3.2.4 项目管理信息系统(PMIS) 项目管理信息系统包括进度计划软件 6.4 估算活动持续时间 6.4.1 估算活动持续时间:输入 进度管理计划 范围基准 6.4.1.2 项目文件...6.5.1 制定进度计划:输入 6.5.1.1 项目管理计划 进度管理计划 范围基准 6.5.1.2 项目文件 活动属性 活动清单 假设日志 估算依据 持续时间估算 经验教训 里程碑清单 项目进度网络图...6.5.3.5 变更请求 6.5.3.6 项目管理计划更新 更新进度管理计划 更新成本基准 6.5.3.7 项目文件更新 活动属性 假设日志 持续时间估算 经验教训登记册 资源需求 风险登记册

1.6K00

Jmeter系列(7)- 基础线程组Thread Group

Thread Group的简单理解 线程组是一个测试计划的开始点 在一个测试计划中的所有元件都必须在某个线程组下 线程组决定Jmeter执行测试计划的线程数 Thread Group提供的主要作用 设置线程数...调度器的作用:控制每个线程组运行的持续时间以及它在多少秒后再启动 Duration (seconds) :持续时间;线程组运行的持续时间 Startup Delay (seconds):启动延迟;测试计划开始后...,线程组的线程将在多少秒后再启动运行 调度器和循环次数的关系 循环次数有固定值,持续时间不会生效,以循环次数为准 循环次数设置为永远,持续时间才会生效 调度器注意事项 当线程组运行完持续时间后,会逐步释放线程...,不会一下子把所有线程释放掉,而释放线程也是需要时间的~ 所以测试计划总的时间(右上角的时间)会 > 持续时间+启动延迟 ?...预习TPS 总的完成请求数 = 线程总数 * 循环次数 平均TPS = 总请求数 / 线程运行总时间【上图,右上角黄色三角形的时间】 平均TPS(即聚合报告的TPS)是仅供参考的 实际的TPS是由响应时间决定的

1.4K10

【PMP】8.15下午题

A A、按需求说明更新管理计划 B、评估变更,并与客户讨论对项目成本的影响 C、拒绝变更,因为项目接近完工,影响将很大 D、与项目相关方一起讨论变更的影响 3、在与相关方一起召开的季度状态评审会上...,由于计划外的运输罢工,施工公司的项目经理汇报了一个负成本偏差。...D A、调整成本绩效基准 B、从应急储备中分配资金 C、从管理储备金分配资金_ D、测量项目事件的影响 4、里程碑持续时间:C A、比最长活动的持续吋间短。...B、比它代表的活动的持续时间短 C、没有持续时间 D、和它代表的活动的持续时间相同。 5、准备每周状态报告时,项目经理注意到该周的计划里程碑满足。但是,项目的进度绩效指数为0.8。...2、正确答案:A 解析:该题考查的是变更管理流程,被批准的变更请求。PMBOK(6)4.6.3.1批准的变更请求是实施整体变更控制过程的输出,项目团队把批准的变更请求列入进度计划并付诸实施。

59230

【PMP】8.8下午练习题

C、保持原始范围,但比计划晚交付。 D、要求关键项目相关方做出最终决策。 2、在最终测试阶段,新项目经理请求主题专家(SME)协助解决产品的一个紧急产量问题。应使用哪一项?...A A、工作绩效数据 B、之前的状态报告 C、项目进度计划 D、问题日志 5、一个新项目的项目经理获得一份活动清单以及一份公司已经执行过的类似项目的资源估算,为了估算活动持续时间,项目经理首先必须制定哪一个过程...确认范围过程输入:项目管理计划包括范围基准、项目文件、核实的可交付成果、工作效绩数据等。...工作绩效数据包括已完成的工作、关键绩效指标、技术绩效测量结果、进度活动的开始日期、变更请求的数量、缺陷的数量、实际成本和实际持续时间等 5、正确答案:A 解析:PMBOK(60)P199-6.4.1.2...估算活动持续时间输入-项目文件-风险登记册。

1K30

第三版信息系统项目管理师47个过程的输入输出及工具「建议收藏」

3、 变更请求 4、 组织过程资产 5、 事业环境因素 1、 会议 2、 变更控制工具 3、 专家判断 1、 批准的变更请求 2、 变更日志 3、 项目管理计划更新 4、 项目文件更新...事业环境因素 8、 组织过程资产 1、 专家判断 2、 备选方案分析 3、 发布的估算数据 4、 项目管理软件 5、 自下而上估算 1、 活动资源需求 2、 资源分解结构 3、 项目文件更新 5、估算活动持续时间...2、 类比估算 3、 参数估算 4、 三点估算 5、 群体决策技术 6、 储备分析 1、 活动持续时间估算 2、 项目文件更新 6、制定进度计划 1、 进度管理计划 2、 活动清单 3、 活动属性 4...、 项目进度网络图 5、 活动资源需求 6、 资源日历 7、 活动持续时间估算 8、 项目范围说明书 9、 风险登记册 10、项目人员分配 11、资源分解结构 12、事业环境因素 13、组织过程资产 1...风险管理计划 2、 成本管理计划 3、 进度管理计划 4、 质量管理计划 5、 人力资源管理计划 6、 范围基准 7、 活动成本估算 8、 活动持续时间估算 9、 干系人登记册 10、项目文件 11、

80710

JMeter基本元素简介

你可以配置持续时间和启动延迟控制每一个线程组的持续时间和多少秒后启动。当测试开始后,jmeter将等待启动延迟时间后,启动启动线程组中的线程,并且执行配置的持续时间。...你可以在测试计划中添加一个或更多的配置元素定制样本器。如果你打算发送同一种类型的多个请求到相同的服务,可以考虑使用默认的配置元素。每一个控制器都有一个或多个默认元素。...记得为你的测试计划添加一个监听器来观看和存储每一个请求的结果到硬盘上。如果你对jmeter平台的响应的基本验证感兴趣,添加一个断言器到样本器。...3.2 逻辑控制器   逻辑控制器可以改变来自子元素的请求顺序。他们可以修改自己的请求,使jmeter重复请求。为了了解测试计划中逻辑控制器的效果,看一下下面的测试树: ?   ...这个测试计划的第一个事情就是只执行一次的登录请求,随后的迭代将跳过这一步,这是仅执行一次控制器的效果。登录之后,下一个样本器将加载搜索页,这是一个简单的请求,没有通过逻辑控制器。

57230

项目管理核心内容

变更请求、项目管理计划更新、项目文件更新工具与技术:专家判断、项目管理信息系统监控项目工作【监控过程组】输入:项目管理计划、进度预测、成本预测、确认的变更、工作绩效信息、事业环境因素输出:变更请求、工作绩效报告...、项目管理计划更新、项目文件更新工具与技术:专家判断、分析技术、项目管理信息系统实施整体变更控制【监控过程组】输入:项目管理计划、工作绩效报告、变更请求、事业环境因素、组织过程资产输出:批准的变更请求、...、资源分解结构、事业环境因素、组织过程资产输出:活动持续时间估算、项目文件更新工具与技术:专家判断、类比估算、参数估算、三点估算、群体决策分析、储备分析制定进度计划【规划过程组】输入:进度管理计划、活动属性...、活动清单、活动资源需求、活动持续时间估算、项目进度网络图、资源日历、项目范围说明书、风险登记册、项目人员分派、资源分解结构输出: 进度基准、项目进度计划、进度数据、项目日历、项目管理计划更新、项目文件更新工具与技术...、人力资源管理计划、范围基准、活动成本估算、活动持续时间估算、干系人登记册、项目文件、采购文件、事业环境因素、组织过程资产输出:风险等级计划工具与技术:文档审查、信息收集技术、核对单分析、假设分析、图解分析

36610

JMeter基本元素简介

[image1] 二、线程组 线程组元素是任何测试计划的开始点。所有的控制器和样本器必须在一个线程组下。其他元素,例如:监听器可以直接放在测试计划下,这样的话,它将应用于所有的线程组。...你可以配置持续时间和启动延迟控制每一个线程组的持续时间和多少秒后启动。当测试开始后,jmeter将等待启动延迟时间后,启动启动线程组中的线程,并且执行配置的持续时间。...你可以在测试计划中添加一个或更多的配置元素定制样本器。如果你打算发送同一种类型的多个请求到相同的服务,可以考虑使用默认的配置元素。每一个控制器都有一个或多个默认元素。...记得为你的测试计划添加一个监听器来观看和存储每一个请求的结果到硬盘上。如果你对jmeter平台的响应的基本验证感兴趣,添加一个断言器到样本器。...为了了解测试计划中逻辑控制器的效果,看一下下面的测试树: [image4] 这个测试计划的第一个事情就是只执行一次的登录请求,随后的迭代将跳过这一步,这是仅执行一次控制器的效果。

69320

JMeter(连载2)

1.测试计划 jmx文件是一个树形结构,这棵树的根节点就是测试计划,如图10所示。 ? 图10 测试计划 这里的名称为测试计划的名称,注释为对这个测试计划的详细注解。...l 如果循环计数不是-1(随机)或永久,则持续时间将为min(持续时间,循环计数*迭代持续时间) 3.HTTP Cookie 管理 HTTP Cookie 管理如图12所示。...l Redirect automatically:不会将重定向视为单独的请求。 l Follow redirects:会将每个重定向视为单独的请求。...l Use Keepalive:表示使用面向连接的请求,也就是说在请求头中包含keep-alive。...l browser-compatible headers:表示浏览器兼容请求头。 下面就是所要传输的参数,分别填写请求的名称,值及其他信息。

62221

Jmeter实例计划(查询天气)

Jmeter实例计划(查询天气) 查询计划(天气查询) 这是一个入门计划,仅使用jmeter进行查询功能的计划,可参考http://www.cnblogs.com/TankXiao/p/4045439....计划目标:根据城市名称,获取城市代码,然后获取到天气信息 分析步骤: 第一步: 发送请求到http://toy1.weather.com.cn获取城市代码 比如上海,http://toy1.weather.com.cn...循环次数:请求的重复次数,如果选择永远,则一直请求;输入次数,则根据指定次数重复请求;如果为1,则仅执行一次请求。...调度器:选中之后可以配置启动时间、结束时间,立即或者预定的启动及结束时间; 持续时间,即测试计划持续多长时间,会覆盖结束时间; 启动延迟,即测试计划延迟多长时间启动,会覆盖启动时间。 2....此时,再重复第第三步,清空上次结果,再,则可以获取到响应的天气信息,这样的一个计划就完成了。 ? 本文转自:http://www.cnblogs.com/testwang/p/5231945.html

1.8K40
领券