我正在实施一个员工计划解决方案,员工可以有自己喜欢的工作时间,这个系统还可以建议员工的最佳工作时间。
为了向员工提供工作时间的建议,我希望有一个推荐系统,可以根据以下内容向员工推荐多个工作班次:
组织的员工要求。它是一个基于人员需求的间隔(1小时),并且具有该间隔所需的最小/最大人员(例如:在1300-1400时,我需要最少4名员工,最多6名员工)。
建议班次必须遵循的规则(例句:提供的任何班次不得超过一周内允许的最大工作时间。如果员工到周四为止已经工作了35个小时,并且每周最多允许工作时间是40小时,那么我建议最多轮班5个小时)
建议也需要尊重我的历史转变(例句:我喜欢在星期五晚上工作,我的历史告诉我。所以,星期五的一个好建议是(猜猜看:)夜班。
我没有做太多的家庭作业,因为一切都导致了hadoop生态系统,关于hadoop,我有很多想法,就像一个学步的孩子(非神童)知道量子物理一样。不管怎样,我想到的是:
我可以使用apachespark、mahout或者独立的apachepredictionio
我知道像optaplanner这样的约束求解器,我可以推动它来解决这个问题,但它不是这个工作的正确工具,我相信,但可能是错误的。
我的问题是,你推荐我什么样的推荐系统,spark/predictionio是这项工作的最佳工具吗?
1条答案
按热度按时间qzlgjiam1#
我正在实施一个员工计划解决方案,员工可以有自己喜欢的工作时间,这个系统还可以建议员工的最佳工作时间。
您的用例与optaplanner中的员工排班示例非常相似。每个员工都有自己喜欢的工作时间,并被写进员工和医院之间的合同中。
组织的员工要求。它是一个基于人员需求的间隔(1小时),并且具有该间隔所需的最小/最大人员(例如:在1300-1400时,我需要最少4名员工,最多6名员工)。
这个例子也有同样的要求,每个轮班都需要最少的员工。
建议班次必须遵循的规则(例句:提供的任何班次不得超过一周内允许的最大工作时间。如果员工到周四为止已经工作了35个小时,并且每周最多允许工作时间是40小时,那么我建议最多轮班5个小时)
这些规则都是在员工合同中规定的,例如,员工必须每周至少工作35小时或每周连续工作3天。
建议也需要尊重我的历史转变(例句:我喜欢在星期五晚上工作,我的历史告诉我。所以,星期五的一个好建议是(猜猜看:)夜班。
只要员工有历史数据,就可以将其添加为新的软约束。
我没有做太多的家庭作业,因为一切都导致了hadoop生态系统,关于hadoop,我有很多想法,就像一个学步的孩子(非神童)知道量子物理一样。不管怎样,我想到的是:我可以使用apachespark或mahout或独立的apachepredictionio(我在java世界中)我知道像optaplanner这样的约束求解器,我可以推动它来解决这个问题,但它不是这个工作的正确工具,我相信,但可能是错误的。
我认为你可以结合hadoop来存储和处理你的大数据。然后您可以将处理后的数据提供给optaplanner,以获得优化的结果。如果您想构建一个实时计划,可以使用apachespark对新数据进行快速处理,并将其提供给optaplanner以获得最新的优化结果。所以我真的建议你去试试optaplanner的护士排班例子。希望这有帮助,亲切的问候。