A survey on combinatorial optimization in dynamic environments