This document discusses nature-inspired optimization algorithms. It begins with an overview of the essence of optimization algorithms and their goal of moving to better solutions. It then discusses some issues with traditional algorithms and how nature-inspired algorithms aim to address these. Several nature-inspired algorithms are described in detail, including particle swarm optimization, firefly algorithm, cuckoo search, and bat algorithm. These are inspired by behaviors in swarms, fireflies, cuckoos, and bats respectively. Examples of applications to engineering design problems are also provided.