The chapter introduces the concept of local search in combinatorial optimization, which involves starting with a feasible solution and perturbing it slightly to improve the objective function. The neighborhood of a solution is defined as the set of solutions that can be reached by making small changes. Local search algorithms move from one solution to another in the neighborhood, aiming to decrease the objective function value. Key issues in implementing local search include choosing an initial solution, defining neighborhoods, and selecting the best neighbor to improve the solution. The effectiveness of local search depends on the size and quality of neighborhoods, with larger neighborhoods offering more potential for improvement but being more complex to explore. The selection of the best neighbor is often determined through experimentation. Local search is widely applicable due to its low empirical complexity and can be used for complex problems with large numbers of variables and constraints. However, it has limitations, such as getting stuck at local optima, which can be mitigated by multiple starts or using extensions like simulated annealing, tabu search, and genetic algorithms.The chapter introduces the concept of local search in combinatorial optimization, which involves starting with a feasible solution and perturbing it slightly to improve the objective function. The neighborhood of a solution is defined as the set of solutions that can be reached by making small changes. Local search algorithms move from one solution to another in the neighborhood, aiming to decrease the objective function value. Key issues in implementing local search include choosing an initial solution, defining neighborhoods, and selecting the best neighbor to improve the solution. The effectiveness of local search depends on the size and quality of neighborhoods, with larger neighborhoods offering more potential for improvement but being more complex to explore. The selection of the best neighbor is often determined through experimentation. Local search is widely applicable due to its low empirical complexity and can be used for complex problems with large numbers of variables and constraints. However, it has limitations, such as getting stuck at local optima, which can be mitigated by multiple starts or using extensions like simulated annealing, tabu search, and genetic algorithms.