解决分隔调度问题的方法

我遇到了一个问题,难以决定/想出解决它的方法。问题如下:

给定N个电话需要打,安排一个时间表,使得尽可能多的电话被打出去。

已知信息:

  • 待处理的电话数量
  • 打电话的人数(将使用电话的人)
  • 电话类型(提醒、计费、谈判等…)
  • 电话类型的预估时长(提醒:1分钟,计费:3分钟,谈判:15分钟等…)
  • 待处理的电话数量
  • 特定电话的理想日期
  • 特定电话的“最早”日期(不能在此之前进行…)
  • 特定电话的“最晚”日期(不能在此之后进行…)
  • 一天只有8小时
  • 规则:

  • 电话不能在“最早”日期之前或“最晚”日期之后进行
  • 完成提醒电话奖励1分,错过提醒电话扣2分
  • 完成计费电话奖励6分,错过计费电话扣9分
  • 完成谈判电话奖励20分,错过谈判电话扣25分
  • 给John打电话必须由第一个给他打电话的人来打。请注意,这不是必须的,但如果这样做,该电话将获得额外的分数…
  • 我对人工智能略知一二,我能认出这是一个适合该领域的问题,但我不知道该采取什么方法…我应该使用神经网络吗?图搜索?

    PS:这不是学术问题。这是我在现实世界中面临的问题。
    PS2:积分系统仍在创建中…这里的样本点数不是真实的…
    PS3:结果算法可以多次执行(批处理作业风格),也可以根据性能在线解决…
    PS4:我的合同规定我将根据以下内容向客户收费:(我打出的电话数量)+(比率*电话的时长),但有一条关于服务质量的条款,仅打提醒电话对我来说不好,因为即使提醒了,人们仍然会忘记参加他们的约会…这降低了我提供的服务的“质量”…我还不知道具体的数字


    回答:

    这似乎不适合用AI解决。

    如果是我,我会创建一套按优先级排序的规则。然后开始填充打电话者的时间表。

    也许其中一条规则是先分配时长最短的电话类型(以满足“最大电话数量”的标准)。

    这听起来越来越像是一个背包问题,你可以用电话时长和电话积分来替代重量和价格。

    Related Posts

    L1-L2正则化的不同系数

    我想对网络的权重同时应用L1和L2正则化。然而,我找不…

    使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

    我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

    f1_score metric in lightgbm

    我想使用自定义指标f1_score来训练一个lgb模型…

    通过相关系数矩阵进行特征选择

    我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

    可以将机器学习库用于流式输入和输出吗?

    已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

    在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

    我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

    发表回复

    您的邮箱地址不会被公开。 必填项已用 * 标注