Finding the best answer among the various solutions to complex and mathematical problems is called optimization. There are two types of optimization problems; continuous optimization and discrete optimization. Finding the solution in these environments is the best solution for that particular solution. Optimization exists in many fields and sciences, and it shows that if researchers provide the most quality optimization algorithms, it can have a great impact on human life. Optimization is similar to finding a treasure in an area. In this analogy, you have to mobilize a crowd to find this treasure. Since the population does not know the location of the treasure from the beginning, these populations will start searching at random and will reach near to it at a certain time. The topic of the search here is very important. It is very important to find a mechanism that can best organize the population. The search engine must follow certain ideas and rules. In the optimization problem, the most important step is proper search. In optimization issues, the concept of the best answer, best search, best solution and best organization is desired. Nowadays, optimization can be applied everywhere we deal with big data.