Recently, I thought of developing a mathematical approach to a task I commonly do every week. Simply enough, it's a schedule.
That said, I have a few questions regarding the process. I haven't worked with linear programming before, but the math isn't the concern. It's expressing the constraints.
Let me describe them:
I have several roles to fill. Role A, say, is a priority, then each role after that is less important. I then have several groups of individuals. Group A can perform tasks in role A, and any other tasks after that. Then Group B, can't fill Role A, but any task after that. Each group, from increasing alphabetical order, has less individuals then the previous (i.e. A
That is the general idea.
Like I said before, I don't have much experience with linear programming (I recently ordered a book on the subject, but if there are any good suggestions that deal with applications like the above would be very much appreciated).
In any case, I'm particularly curious as how the constraints would look regarding having several roles with priorities that only certain groups can perform. Obviously, it's quite simple to write a constraint stating that each role must be filled, but I haven't seen many constraints describing what I'm needing.
Also, I'm still trying to find a way to express each group. For instance, say group A was composed of {Ed, Ted, Red, Bob, John}. Would I express that group as a variable itself, such as x? However, that violates one of the needed constraints: Ed can't have two roles at the same time! I need a way to prevent that. A matrix within a matrix perhaps? So A=[Ed, Ted,...]. It would more likely be a column matrix though.
Regardless, a little insight would be helpful. I don't necessarily want a complete answer, such as do this then this - more so a good starting place.
Any help is appreciated.