Machine learning with constraints on features
To be honest I didn't understand the problem very well, but it looks like genetic learning could be a good direction to study.
Essentially a genetic algorithm works by iteratively trying many combinations of values for some features, evaluating &quot;something&quot; based on the features, selecting the best combinations and starting again with a combination of the best features so far. The goal is to eventually converge to an optimal combination of values.