关于OptaPlanner的使用(二)——运行案例

简介: 关于OptaPlanner的使用(二)——运行案例

以案例中的Cloud Balancing为例,这是一个给任务分配计算机的规划任务。

我们可以看到上面的Unassigned的是未被分配的任务,每个任务有CPU,内存,网络带宽三个参数,计算机也有这三个参数还有一个使用成本(这个成本在后台有做定义,下一章会提到)。

这个例子的目标就是把任务分配给计算机,硬规则是任务所占用的CPU,内存等参数不能超过计算机对应的参数,而且这个数值是累加的,如果一个计算机里有两个任务,计算机的参数的剩余量要减去两个任务参数的和才行。软规则是要使得计算机的使用成本尽量的小。

以4个计算机,12个任务为例。

这里可以手动给任务分配计算机,点击Unassigned的Detail按钮(按钮1),会出现每个任务的各个参数值,

可以修改这些参数值,也可以手动给任务分配计算机。也可以点击按钮2新增一个任务或点击按钮3新增一个计算机。

之后,点击solve按钮,Optaplanner自动给任务开始分配计算机。.

给一种颜色都代表一个任务,可以看到任务的分配情况。

下面通过一个分数来判断当前分配情况的好坏。

我们可以看到0hard/-7410soft这个分数,hard就是硬规则,是0分就代表所有的任务都被分配给了计算机没有不符合硬规则的条件存在。 soft是软规则的分数,是-7410分,代表所有的计算机的成本加起来是7410。

这一章说到这,下一章说说代码导入和运行。

目录
相关文章
|
算法
OR-tools求解器使用介绍(二)
OR-tools求解器使用介绍(二)
1560 0
|
数据采集 编解码 Java
解锁Hutool魔法箱:Java开发者不可错过的神奇工具集
解锁Hutool魔法箱:Java开发者不可错过的神奇工具集
737 0
|
5月前
|
API 定位技术 调度
实现精准定位的—坐标系经纬度转换API技术说明和行业应用
在地图服务、物流调度等应用中,多源地理位置数据因采用不同坐标系(如WGS84、GCJ02、BD09)需统一转换,以避免位置偏移影响路径规划与分析精度。本文介绍坐标转换背景、技术方案及Python调用示例,强调其在智慧交通与物流系统中的重要性。
626 0
|
6月前
|
存储 数据采集 JSON
供应链管理优化:通过京东API实现库存自动预警
通过京东API实现库存自动预警,可实时监控库存变化,结合销售、采购数据动态设置预警规则,优化库存周转效率,降低缺货风险与仓储成本,提升供应链管理自动化水平。
|
11月前
|
人工智能 自然语言处理 搜索推荐
飞算 JavaAI:开发界的 “AI 教练”,助你飞速成长!
飞算JavaAI如同开发者的“AI教练”,通过深度洞察需求、精准绘制开发蓝图,以自然语言解析需求,自动生成接口和表结构,简化业务理解。其全方位开发指导功能,细致设计每个细节,帮助开发者梳理业务规则与数据流程,提高开发效率。全程智能辅助则自动输出完整工程源码,涵盖配置类文件、Java代码及测试资源,让开发者专注于优化业务逻辑和实现个性化功能。无论是新手还是资深开发者,飞算JavaAI都是不可或缺的得力伙伴,助力快速成长与技术突破。
|
机器学习/深度学习 存储 人工智能
【AI系统】流水并行
在大模型训练中,单个设备难以满足计算和存储需求,分布式训练成为必要。模型并行是其中关键技术之一,通过将模型计算任务拆分至不同设备上执行,提高训练效率。模型并行主要包括朴素模型并行、张量并行和流水线并行。流水线并行通过将模型的不同层分配到不同设备上,采用微批次处理,提高设备利用率。Gpipe和PipeDream是两种流行的流水线并行方案,前者通过重叠前向和反向传播提升效率,后者则通过1F1B策略实现交错执行,最大化利用计算资源。
571 15
|
存储 计算机视觉
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
本文介绍了使用OpenCV进行图像读取、显示和存储的基本操作,以及如何绘制直线、圆形、矩形和文本等几何图形的方法。
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
Swagger2 常用注解介绍
Swagger2 常用注解介绍
667 3
|
SQL 关系型数据库 数据库
在 PostgreSQL 中使用 IS NULL
【8月更文挑战第12天】
1397 1
|
Java Spring
使用spring boot的@Async实现异步调用和线程池复用
使用spring boot的@Async实现异步调用和线程池复用
1132 0
使用spring boot的@Async实现异步调用和线程池复用