重新安置乘客是一个强化学习问题吗?

数据挖掘 机器学习 优化 强化学习 方法
2021-10-07 09:13:12

要求是最佳地将乘客从一个座位图移动到另一个具有不同配置的座位图。

移动应该基于许多规则,例如 -
1) 家人应该坐在一起
2) 如果可以的话,那些坐在靠窗座位上的人应该搬到靠窗座位上。
3) 儿童应坐在中间座位。
4) 还有更多..

有许多可用的座位图配置,一次我们需要根据要求将乘客从一个人转移到另一个人。

这是一个强化学习问题吗?如果是,如何处理。

2个回答

强化学习更多的是与环境交互,虽然这可能是一个 RL 问题,但我认为使用全局优化将是一种更直接的方法。

本质上,您想设计一个成本函数来描述特定座位的好坏,然后使用它来搜索可能的座位空间。

例如用模拟退火解决问题:

  1. 设计成本函数e(s)衡量座位安排的好坏。更低的成本意味着更好的座位。

  2. 设计一个接受概率函数P(e,e,T)这需要座位安排的费用ss, 和温度T, 并返回一个概率P具有属性 (a)P>0即使ss(b) 更好s是相对于s, 越高P是和 (b) 温度越低,T, 关闭P0什么时候ss.

  3. 设置一些大的首字母T并设计一个退火时间表以减少T与迭代次数。

  4. 从一些座位安排开始S. 这可以是随机的,也可以根据试图满足尽可能多的约束的贪婪策略来选择。

  5. 重复ik步骤(对于一些足够大的k):

    • 考虑一个邻国S这可以通过随机交换两个坐着的人或将某人移动到一个空座位来实现。SS有概率P(S,S,T)

    • 减少T根据步骤中的退火时间表i

从 (4) 开始的模拟可以运行一次或多次,只保存最佳结果。最后,您应该到达接近或完全可能的最佳座位安排。

是的。有可能。对于强化学习,您需要状态、动作和奖励来针对某种情况运行强化算法。

状态是座位,行动是将一个人从一个座位转移到另一个座位,而奖励是根据特定的规则产生的。

例如,将婴儿搬到靠窗的座位上可能会 奖励(或者您可以阻止执行此操作并将其排除在可能的操作之外)。