polyalgorithm

Noun

 * 1)  A set of algorithms together with rules for choosing when to use each one.