Can someone help me to solve or specify what type of problem is this:
I have a set of resources and a number of users, and for each user there is a specific subset of resources that can choose a single resource from for allocation. Two different users could not be assigned to the same resource.I need to allocate resources to users in a way to maximize the allocation. for example:
R={r1,r2,r3,r4} %set of resources
U={u1,u2,u3,u4} %set of users
u1 can choose a single resource from: {r1, r2, r3}
u2 can choose a single resource from: {r1, r2}
u3 can choose a single resource from: {r1, r4}
u4 can choose a single resource from: {r2}
in this case I should allocate
r3->u1, r1->u2, r4->u3, r2->u4.
If this was allocated differently u4 will have no resource to be allocated.
This is only to explain the problem, I need to solve this for 200 users and 100 resources. Can I seek your advise on which algorithm to use or how to solve this?