We use benchmark functions carrying on the simulation experiments to verify the capability of optimization algorithms. However, some of the benchmark functions are easy to optimize, some of them not. The difference would rely mostly on the modality, scalability, separability, peak¿s flat-likeness, together with their symmetry characteristics. In this book, we collect 168 benchmark functions involved in literature and classify them into several types. Codes with Python programming language would also given in tables, and the three-dimensional profile would shown in figures.