Variable neighborhood search (VNS) is a metaheuristic for solving combinatorial and global optimization problems whose basic idea is a systematic change of neighborhood both within a descent phase to find a local optimum and in a perturbation phase to get out of the corresponding valley. In this chapter we present the basic schemes of VNS and some of its extensions. We then describe recent developments, i.e., formulation space search and variable formulation search. We then present some families of applications in which VNS has proven to be very successful: (i) exact solution of large scale location problems by primal-dual VNS; (ii) generation of solutions to large mixed integer linear programs, by hybridization of VNS and local branching; (iii) generation of solutions to very large mixed integer programs using VNS decomposition and exact solvers (iv) generation of good feasible solutions to continuous nonlinear programs; (v) adaptation of VNS for solving automatic programming problems from the Artificial intelligence field and (vi) exploration of graph theory to find conjectures, refutations and proofs or ideas of proofs.
Published September 2009 , 26 pages