I have a combinatorial optimization problem that I am struggling with. The technical details of the problem are cumbersome, so I translated something from the point of view of a fictitious sweet birthday 16. Obviously, NP teenagers are difficult, but this is separate from the actual problem that I am trying to solve.
Let's say I have a son who is about to turn 16 years old. He invites all his friends to his birthday, but not all of his friends as each other. In fact, every friend of my son has at least one person whom they do not like, and some have more. These frenemies refuse to sit at the same table if one or more jury frenemy sit at the same table. My son has provided me with a list of all his invited friends, as well as who do not like who. This information is symmetrical (if friend A does not like friend B, friend B does not like friend A), but he is NOT transitive (if friend A does not like friend B, but loves friend C, friend C is still free to love or not love friend B) . My question is: how to determine the minimum number of tables that satisfy the condition that two "frenemies" are not in the same table?
source share