Python 观察规格和动作规格为2D矩阵的TF规格代理
我正在尝试与自定义环境一起使用,以构建执行以下操作的代理:Python 观察规格和动作规格为2D矩阵的TF规格代理,python,tensorflow,keras,deep-learning,dqn,Python,Tensorflow,Keras,Deep Learning,Dqn,我正在尝试与自定义环境一起使用,以构建执行以下操作的代理: 代理通过向大量用户(10个用户)提供资源(12个资源)来为他们提供服务 它接收一个输入(观察/状态),该输入是0和1的2D矩阵;假设它有10行(用户数)和3列。如果某一行的某一列的值为1,则表示必须将资源分配给该行的用户 观察(状态)矩阵示例: 这意味着(例如)位于行[1]的用户需要一个资源。(用户1) 输出也是0和1的2D矩阵,有12行(资源数量)和10列(用户数量) 如果资源0被分配给(比如)用户1,那么输出矩阵中的第
- 代理通过向大量用户(10个用户)提供资源(12个资源)来为他们提供服务
- 它接收一个输入(观察/状态),该输入是0和1的2D矩阵;假设它有10行(用户数)和3列。如果某一行的某一列的值为1,则表示必须将资源分配给该行的用户
- 这意味着(例如)位于
的用户需要一个资源。(用户1)行[1]
- 输出也是0和1的2D矩阵,有12行(资源数量)和10列(用户数量)
- 如果资源0被分配给(比如)用户1,那么输出矩阵中的第一行将具有值为1的第二列<代码>行[0][1]
- 每个资源一次只能分配给一个用户,每个用户一次只能分配一个资源。(这意味着每一行只有一列的值为1,而整个矩阵中的每一列只能有一行的值为1 |例如:第一行的第一列和第二行的第一列的值均为1,其中一列必须为1,其他列都必须为0)
[
[0, 1, 0, 0, ...],
[0, 0, 0, 0, ...],
[1, 0, 0, 0, ...],
[0, 0, 0, 1, ...],
...
]
- 在上面的示例中,第一行在第二列中有1(
),这意味着第二个用户,即用户1,被分配了资源0,如果我们验证输入矩阵,我们确实会看到用户1(行[0][1]
)请求分配资源行[1]
- 如果用户没有请求资源,则不应向该用户提供任何资源
[
[0, 1, 0, 0, ...],
[0, 0, 0, 0, ...],
[1, 0, 0, 0, ...],
[0, 0, 0, 1, ...],
...
]