Adaptation in heterogeneous environments by Sergei Volis