zl程序教程

您现在的位置是:首页 >  Java

当前栏目

java智能排班系统:基于遗传算法的排班算法(小部分采用遗传算法)

2023-04-18 16:07:32 时间

说明

该排班算法基于遗传算法实现,可以根据输入的员工信息全局自适应

算法规则要求

(1)零售门店管理:
门店信息包括:名称、地址、工作场所面积(单位:平方米)
(2)员工管理:
员工信息包括:姓名、职位、电话、电邮、工作门店、偏好:
职位可选值:门店经理,副经理,小组长,店员(收银,导购,库房)
偏好规则:
工作日偏好:周几到周几工作。如:周3到周6.缺省为全部。
工作时间偏好:工作时间范围,如:上午8点到下午6点。缺省为全部。
班次时长偏好,每天时长不超过多久。如:4小时。缺省为不限制;每周最
多工作多久等。如:20小时。缺省为不限制。
(3)排班规则维护
①固定规则
A.门店营业时间规则
a. 周一~周五:早 9 点~晚 9 点
b. 周末:早 10 点~晚 10 点
B.工作时长规则
a. 员工每周最多工作 40 小时
b. 员工每天最多工作8小时
c. 单个班次最少 2 小时,最多 4 小时。员工可以连续排多个班次
d. 员工最长连续工作时长:4 小时。达到连续工作时长,必须安
排休息时间
e. 必须给工作时间完全覆盖午餐、晚餐时间的员工,安排午餐或
晚餐时间
C.休息时间段:
a. 午餐时间:时间范围(如 11 点到 14 点,一小时)
b. 晚餐时间:时间范围(如 17 点到 20 点,半小时)
c. 休息时间:时间范围(不限。半小时)
②用户自定义规则
A.排班规则
a. 每天开店之前需要半小时做准备工作(如做清洁)。0.5 为缺省
值,可调整
i. 公式:门店面积/50 = 人数。50 为缺省值,可调整
ii. 用户可以设置允许执行此类工作的职位。可以设置为
所有职位,也可以限制特定职位(比如导购人员、收
银,店经理等)
b. 每天至少安排三个不超过 4 小时的班次
i. 公式:预测客流/3.8 = 店员需求数。3.8 为缺省值,可调
整 ii. 用户可以设置允许执行此类工作的职位。可以设置
为所有职位,也可以限制特定职位(比如导购人员、收
银,店经理等)
c. 如果没有客流量的时候,至少需要 1 个店员值班.1 为缺省值,可
调整
d. 每天关店之后需要 2 小时做收尾工作(如盘点、清算、清洁)。2
为缺省值。可调整
i. 公式:门店面积/30 + 2 = 人数。30 和 2 为缺省值。可
调整
ii. 用户可以设置允许执行此类工作的职位。可以设置为所有
职位,也可以限制特定职位(比如导购人员、收银,店经
理等)
(4) 业务预测数据
业务预测数据是根据网点历史营业数据,通过人工智能生成,不在本项目
范围内。
本赛题主要从客流量做业务预测,下方为每天各时间段的示例数据,参赛
团队可以按示例数据生成各个门店一段时间的详细预测数据。
门 店
ID
日期 开始时间 结束时间 预测顾客流量
01 2023/5/10 8:00 8:30 0
01 2023/5/10 8:30 9:00 0.1
01 2023/5/10 9:00 9:30 1.3
01 2023/5/10 9:30 10:00 5.7
01 2023/5/10 10:00 10:30 11.1
01 2023/5/10 10:30 11:00 13.4
01 2023/5/10 11:00 11:30 13.3
01 2023/5/10 11:30 12:00 17.3
01 2023/5/10 12:00 12:30 18.1
01 2023/5/10 12:30 13:00 22.8
01 2023/5/10 13:00 13:30 26.9
01 2023/5/10 13:30 14:00 21.6
01 2023/5/10 14:00 14:30 18.3
01 2023/5/10 14:30 15:00 17.2
01 2023/5/10 15:00 15:30 15.3
01 2023/5/10 15:30 16:00 14.3
01 2023/5/10 16:00 16:30 11.6
01 2023/5/10 16:30 17:00 8.3
01 2023/5/10 17:00 17:30 8.3
01 2023/5/10 17:30 18:00 7.2
01 2023/5/10 18:00 18:30 5.6
01 2023/5/10 18:30 19:00 5.6
01 2023/5/10 19:00 19:30 2.5
01 2023/5/10 19:30 20:00 2.1
01 2023/5/10 20:00 20:30 0.1
01 2023/5/10 20:30 21:00 0.1
(5) 排班基于给定预测数据、排班规则、门店信息、员工偏好等计算未来
排班表,排班表需要支持按日、按周查看,日视图和周视图里可以按技
能,岗位和员工分组查看,门店管理者可以编辑排班表,支持手动的班
次指派,可以把已经指派的班次重新分配给别的员工或者把未指派的开
放班次分配给可用的员工。

(1) 3 个门店;
(2) 3 种员工偏好类型。不少于一半员工设置至少一条员工偏好。每种员
工偏好都由每个门店的至少一个员工进行设置;
(3) 所有固定排班规则必须被使用;
(4) 不少于 5 种用户自定义排班规则,由开发团队设计。每个规则不少于
2 个门店设置门店规则值。至少一个门店使用系统规则值;
(5) 自定义不少于 30 天业务预测数据,使用业务预测数据生成所有门店
排班表。

效果展示

在这里插入图片描述
对结果的解析需要自己去完成
私聊获取源码