I have a Reinforcement-Learning environment where the state is an array of 0s and 1s with length equals to the number of users the agent must satisfy (11 users).
The agent must choose one of 12 resources for the 11 users according to the state array. If state[0] == 1
, that means that user0 needs a resource, so the agent must choose a resource out of the 12 resources it has. So, the action array's first element would be, for example: action[0] = 10
, which means that resource 10 was allocated to user0.
If the next user (user1) is asking for a resource as well, then the number of resources to choose from is 12 - 1
, in other words, because resource10 was already allocated to user0, it cannot be allocated to another user.
If state[X] == 0
, it means that userX is not asking for a resource, therefore it must not be allocated any resource.
An example of a state array:
[1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0]
An example of an action array according to the state array example: (resource count starts at 0 | -1 indicates no resource was allocated)
[10, 2, -1, -1, -1, 3, 11, 5, -1, -1, -1]
I'm new to Reinforcement Learning and Deep Learning, and I have no idea how to translate that into a neural network.