Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1.1 Introduction

Since the beginning of the first industrial revolution, engineers were always attempting to resolve problems related to the operation of machinery and their maintenance. They also aimed at the improvement of the efficiency of manufacturing processes and generally at the organization of the production and other relative subjects. As it was anticipated, systematic approaches for the scientific study of industry-related problems were established and the solutions were proposed. However, after the introduction of computers and development of computational methods, a new promising era for solving industry-related problems emerged, as advanced computational techniques were capable of providing approximate but significantly accurate solutions. Especially, when it is desired to increase the efficiency of manufacturing processes by determining the optimum process parameters or when the solution of hard production-based problems, such as scheduling, is required, optimization methods can be employed.

In advanced manufacturing, intelligence is a key element for future development and progress. Intelligent production is at some level incorporated into industrial practice, however, it is expected to play a major role in the near future; it is also expected to affect manufacturing business globally, at any level, so that enterprises will be flexible enough to respond to production changes swiftly. One very important and contemporary concept, related to advanced and intelligent manufacturing, is the concept of Industry 4.0.

Industry 4.0 can be conceived as the merge of manufacturing technology methods and processes and Information Technology (IT) [1,2,3]. The concept of Industry 4.0, a term which actually refers to the “4th industrial revolution”, was introduced initially in the German-speaking areas, in 2011, by the name of “Industrie 4.0” [1, 3, 4] and has currently become a topic of high interest in the field of industrial engineering. This industrial revolution was evoked by the considerable advances in IT and electronics, such as advances in networks and Internet or embedded electronic systems, which have given rise to technologies, such as Cyber-Physical Systems (CPS), Internet of Things (IoT), cloud computing, and big data analytics [5, 6]. One of the basic characteristics of the 4th industrial revolution is the shift from the automated manufacturing concept to the intelligent manufacturing concept, which involves the integration of organizations, equipment, humans, and products, as well as the cooperation between them and their ability to communicate in real time [2, 3, 7]. Thus, a higher level of automation and digitization will be achieved and more than before, artificial intelligence will play a considerable role, enhanced by the ability to manipulate and evaluate large amount of data and exchange information within a fully networked system [3, 8]. Through the use of technologies of many disciplines, the establishment of efficient, collaborative, and sustainable industrial production is intended.

A considerable economic impact is expected from the introduction of Industry 4.0 concept into actual industries, due to the increase of effectiveness and efficiency [1, 9], as well as the creation of new business models, which can take into account the contribution of Industry 4.0 methods [1]. The most important capability of the industries of the new era will be their higher level of adaptability to the dynamic requirements of individual customers. The latter demand highly customized products with a relatively small lot size [3, 7, 9, 10]. In order to fulfill the requirements of such customers, several characteristics relevant to Industry 4.0 methods should be harnessed. For example, the ability to transmit information in real time can effectively reduce the time required in order to meet the customer needs, and the ability of using flexible and reconfigurable processes for “smart products” facilitates the creation of specialized products, when at the same time it becomes feasible for the industry to make profit, even at low production sizes [3, 7, 8, 11]. Furthermore, it is important to note that the ability to monitor energy consumption in real time leads also to high levels of energy efficiency and consequently to reduction of costs and implementation of green manufacturing concept [10,11,12].

Despite the fact that Industry 4.0 concept has already become a topic of major importance in the industrial engineering sector, it still lacks a proper definition and it appears that there is no universal agreement on the fact that it can be accepted as a new industrial revolution [1, 13]. However, several researchers relying on the description of Industry 4.0 by Kagermann [4] were able to determine its basic constituents and characteristics. Thus, CPS, IoT and “smart factory” can be identified as key features of Industry 4.0 concept [3]. More specifically, CPS constitute actually a fusion of the physical and virtual world of the modern industries; embedded systems can monitor and control physical processes, e.g., product quality inspection, machine tool maintenance, energy consumption management, and physical systems’ responses have an impact on the calculations performed in the virtual world [1, 14]. Essentially, the virtual world is created as a model or “copy” of the physical world in a factory in order to facilitate monitoring and decision-making processes by the embedded systems [5, 8]. There is direct and real-time communication between the physical and the virtual worlds, with the capability of acting autonomously [7]; in order to achieve this, many aforementioned technologies such as IoT, big data analytics, and cloud computing are employed [10].

IoT is stated as the “key enabler for Industry 4.0”, along with CPS [1, 7, 15], as it directly enables various constituents of the manufacturing system to integrate into the network of the modern factory and to be able to interact by providing information and cooperate with other components of this system, by using technological features such as RFID, sensors or actuators, or other embedded electronics [3, 6, 7, 11]. The proper integration of IoT and CPS will eventually enable the creation of the “smart factory”. In specific, smart factories are factories which have the abilities to assist humans and machines to perform their tasks. This capability is offered by CPS, which can effectively interconnect the physical and virtual world in these factories [1]. Smart factories can achieve both vertically and horizontally integrated production systems, e.g., networked manufacturing systems within the smart factory and multiple smart factories, respectively [5, 7]. Within the smart factories, the goal of decentralization of decision-making can be achieved by using CPS and IoT, alongside big data analytics, and even artificial intelligence methods can be employed in order to aid the machines to complete complex tasks and exhibit self-optimization and self-configuration capabilities [6]. Finally, within the smart factories, end-to-end integration will be also possible, related to the value chain of the product life cycle [5].

Outside the German-speaking world, various relevant concepts have been introduced in various technologically advanced countries or multinational entities, such as: United States (US), China, European Union (EU), Japan, India, France, United Kingdom (UK), South Korea, and Singapore [1, 2, 7, 11, 13]. More specifically, in the US, there exist several initiatives close to the Industry 4.0 concept. For example, the “Industrial Internet” concept proposed the integration of complex physical machinery and embedded, networked systems in order to predict, control and plan for the improvement of business and societal outcomes [7]. Other related concepts in the US include the “Integrated Industry”, “Smart Industry”, and “Smart manufacturing” [1, 2, 7, 13]. In China, the initiative “Made in China 2025” proposes an upgrade of the industry, relevant to Industry 4.0, in order to achieve a green, open and shared development alongside the “Internet Plus” initiative [2, 13]. The EU has also proposed an initiative entitled “Factories of the Future”, related also to Horizon 2020 programs [2, 13]. Apart from these countries or political entities, various large companies have also taken similar initiatives such as the Industrial Industry Consortium (IIC), which is a cooperation between AT&T, Cisco, General Electric, IBM and Intel companies [13].

As it becomes evident, Industry 4.0 relies on IT technologies to a significant degree. Apart from the implementation of the required infrastructure, e.g., hardware, embedded systems, networks, it is also important to implement the software required, e.g., for monitoring or decision-making processes for the CPS. For that reason, it is possible to include algorithms and methods pertinent to soft computing, such as Artificial Neural Networks (ANN) or computational methods for optimization, such as Evolutionary Algorithms (EA), as these methods are capable of providing fast simulation models or resolve industry-related problems efficiently. Especially, in the case of hard problems such as the job shop scheduling problem, it is possible to include a rapidly converging optimization method as a part of the decision-making system, which will receive information in real time from the physical processes in the industrial environment and provide reliable results. Thus, it is possible to enable a higher degree of reasoning for the CPS. During the last decades, nontraditional optimization techniques, with generic capabilities, such as Genetic Algorithms (GA), Swarm Optimization Algorithms, or others, were introduced to the field of industrial engineering in order to facilitate the solution of industry-related problems. These methods are intended to be presented in this book, with a view to inform the interested reader of the optimization techniques available and be assistive to the selection of appropriate optimization techniques for each problem. Furthermore, the details regarding the computational efficiency of each technique, which are provided in each section of this book, are important to be considered in the case of actual integration of these algorithms in the decision-making processes of CPS.

As it will be shown in this book, the field of optimization methods in industrial practice is always active and of great importance and thus, it is necessary to acquire a general knowledge of the most useful methods and their applications in order to be able to apply them efficiently in real-life situations. Thus, computational methods, which can be used by intelligent systems within the concept of Industry 4.0, were gathered and presented. These methods include Evolutionary-Based and Swarm Intelligence-Based methods; however, some more methods are included, such as Simulated Annealing method. Each method is explained in its fundamental aspects, while some notable bibliography is provided for further reading.

In specific, the outline of the present book is structured as follows: in the current chapter, the general aspects of optimization are summarized and a brief literature survey is presented with a view to underline the popularity and relevance of the described methods in the field of industrial engineering. In Chap. 2, several evolutionary-based metaheuristics, e.g., the Imperialist Competitive algorithm, the Biogeography-Based Optimization method or the Teaching-Learning Based Optimization method are presented, with emphasis set on the most popular of them, namely the Genetic Algorithm. In Chap. 3, the Swarm Intelligence-Based methods, such as Particle Swarm Optimization, Artificial Bee Colony optimization, Ant Colony Optimization, and others, are described. Finally, in Chap. 4, other optimization techniques, not pertinent to the aforementioned categories, such as Simulated Annealing method, are presented.

1.2 General Aspects and Definitions on Optimization Methods

An optimization problem is essentially the problem of determining the best solution from the feasible solutions of this problem. Optimization problems may involve either continuous or discrete value variables; the latter problems are also called combinatorial optimization problems. Furthermore, one of the most important aspects of optimization problems is that they can be also subjected, or not, to several restrictions.

A continuous optimization problem can be formulated generally as follows [16]:

  • minimize F(x), in respect to x,

  • subject to g i (x) ≤ 0, i = 1, …, m and h i (x) = 0, i = 1, …, p

where F(x) is the function that is required to be optimized and is referred to as the objective function. F(x) is usually a function of multiple variables, so x is usually defined as a vector; this vector is referred to as the vector of design variables of the problem. For most engineering optimization problems, the lower and upper bound of design variables value is defined according to the exact requirements of each problem, or defined as a reasonable range for each problem, otherwise. Furthermore, h i (x) represents the equality constraints and g i (x) represents the inequality constraints that are imposed.

When the purpose of optimization is the determination of the best solution according to multiple goals, then a multi-objective optimization problem arises. In order to solve these problems, some modifications are required and the use of Pareto charts is essential for the determination of favorable solutions, according to the criteria set.

Although the optimization methods are actually related with the mathematical problems of determining the extrema of a function, optimization problems in the field of engineering are nowadays usually resolved with the aid of special computational methods. Optimization can be conducted either by a deterministic method, in which an initial solution is guided towards the region of optimum solution in a deterministic way, by taking advantage of analytical properties of the problem [17] or by a stochastic method, which incorporates stochastic processes and random variables in order to provide more flexibility and be capable to avoid reaching a local optimum instead of the global one. Deterministic or exact optimization methods can guarantee the determination of an optimal solution, while stochastic methods cannot [18]. Generally, there are methods that may require no further information except for the objective function, e.g., zero-order methods, or they may require the computation of first, second, and rarely third derivative of this function in respect to the design variables in order to establish a better guidance of the solution towards the optimum point, i.e., a technique mostly related to deterministic optimization methods. Some of the main differences between deterministic and stochastic techniques are the convergence speed or computational cost and also the ability to prevent the optimization process from premature convergence in local optima. Usually, deterministic algorithms can provide a quicker solution but most of them cannot handle the situation when the solution is attracted to a local optimum [19]. All stochastic optimization algorithms described in the present work do not require other information for the problem, which is attempted to be solved except for the optimization function, the design variables bound and the constraints, so they can be employed as “black-box” without the need to intervene with the physics or other details of the optimization problem.

As far as computational optimization techniques are concerned, many categories of methods exist; especially before presenting details of the methods, which will be presented in the current work, it is important to define two basic categories of methods closely related to optimization, namely heuristics and metaheuristics.

Heuristic techniques constitute a common approach for determining appropriate and feasible solutions for various problems without ensuring that these solutions are optimal. These techniques often involve the use of practical methods or even trial-and-error method in order to approach the solution of a problem. Regarding computer science, heuristic techniques are employed to solve a large variety of problems. The characteristics of these techniques are the relatively low computational cost and high speed but also lower accuracy and no guarantee that the optimal solution can be determined; however in many practical problems for which the optimal solution is hard to be found in a reasonable time, solutions of heuristic can be acceptable. It is to be noted that these algorithms can be combined with optimization techniques to enhance their capabilities.

Metaheuristics are considered to be a heuristic or generally a similar procedure of a higher level which manages the optimization procedure. In fact, they are capable of guiding underlying heuristics to solve optimization problems [20]. These algorithms do not ensure that a globally optimum solution will be determined, but they are capable to determine good solutions by conducting search in large regions and perform better than other optimization techniques or simple heuristics. It is usual for metaheuristics to employ stochastic procedures and they can be used for generic, problem independent applications. One of the basic features of these methods is the appropriate way to balance between global and local search capability, termed also as exploration and exploitation (or diversification and intensification), respectively. Methods should be capable of exploring many promising regions of the search space and move away from regions of local optima before converging to a less optimal solution. However, they also should be able to conduct local search in the proximity of promising solutions in order to find a potentially better neighboring solution.

A considerable amount of metaheuristics and actually the majority of recently invented ones are based on metaphors related to nature. It is generally assumed from the researchers that natural processes, derived from thousands or even millions of years of evolutionary, possess incredibly optimum features, which can be interpreted as algorithms. However, this cannot be sufficient in some cases and hybridization of different metaheuristics or other techniques is performed. The reason for the development of such methods is that some of the metaheuristics are based on metaphors which cannot guarantee efficient performance. For example, some algorithms are weak in the exploration part and are prone to trapping in local minima, whereas others cannot conduct efficient local search in the vicinity of promising candidate solutions.

As far as optimization problems are concerned, it should be necessary to mention some of the most important problems encountered in the field of engineering. These problems arise usually from the everyday practice in industry and most of them are shown to be almost impossible to be solved by regular optimization methods, such as exact optimization methods [20], which are capable of solving problems whose cost grows polynomially with the problem size [18]. For difficult problems (NP-Hard), the cost of solution required by an exact method grows exponentially with the problem size, so it is necessary to use a metaheuristic in order to obtain a solution in reasonable time [18]. Some of the problems often encountered in production engineering are assembly line worker assignment, facility layout problem, workforce allocation problem, cell formation and task scheduling, vehicle routing problem, job shop scheduling problem, single or parallel machine scheduling, and optimal allocation of manufacturing process among other.

Metaheuristics can be generally classified into several categories according to some of their characteristics. In the present work, a classification is necessary as many methods share common characteristics and is more proper to present them successively. Although classifications with different criteria may be possible, the classification performed in the present work distinguishes between classical Evolutionary-Based Metaheuristics and Swarm Intelligence-Based Metaheuristics with the following criterion: methods which involve the creation of offspring with improved characteristics at each generation are classified in the first category, whereas algorithms that involve the cooperation of individuals for the accomplishment of a common task are classified in the second category. Moreover, other important methods which should be presented separately from the others are presented in Chap. 4. The aforementioned methods are using a different type of metaphor than the majority of methods described in the other sections, which were mostly bioinspired, population-based methods or do not contain a metaphor. In fact, two of them are inspired from physics, namely Simulated Annealing and Electromagnetism-like Mechanism, and two of them are not related to any real-life process, i.e., Tabu Search and Response Surface Methodology, which is not a metaheuristic. However, these methods play a considerable role in the solution of production-related optimization problems, as it will be shown in the next subsection and deserve being mentioned.

It is worth mentioning that the field of metaheuristics is a very rapidly progressing one, and as new variants and hybrid algorithms emerge in a relatively high rate, it could be difficult to cover every metaheuristic method in detail. However, as the literature survey indicates, the methods presented cover a wide range of older and newer metaheuristics frequently utilized for industrial problems. In the current work, only algorithms which have been at least once employed for this type of problems are presented. Each method is briefly presented aiming to inform the readers about the basic characteristics and then details on the significance of method parameters and notable variants are also described with a view to aid the selection of an appropriate method for their needs. Before processing to the methods’ description, a short literature survey is conducted with a view to inform the readers about the significance and popularity of each of the methods which will be presented afterwards.

1.3 Literature Survey

In order to present the significance of the use of metaheuristics in the field of engineering, but also to demonstrate the popularity of each of these methods, a literature survey was conducted in journals of the field. In total, about 1500 scientific papers were searched in online databases of major publishing companies such as Elsevier, Springer, and Taylor & Francis during the literature survey. Results were obtained separately for each method, which will be presented in the current work and then were aggregated according to the general category of methods to which they belong.

More specifically, in this survey, search results for each method belonging to each of the major categories of methods present in the current work are summed for the last 10 years, i.e., 2007–2017. In Fig. 1.1, the total results concerning the number of journal articles relevant to each category of methods are presented, whereas in Fig. 1.2, the detailed results for each year from 2007 to present can be observed.

Fig. 1.1
figure 1

Percentage of articles referring to Evolutionary-Based, Swarm Intelligence-Based and other methods

Fig. 1.2
figure 2

Number of publications per year for each method

From Fig. 1.1, it can be seen that about one out of two papers concerning the application of metaheuristics for industrial engineering problems is related to evolutionary algorithms and the rest of papers are almost equally divided between the other two categories, namely 767, 316 and 410 papers for each category, respectively. Thus, genetic algorithm and other related methods, including several variants, are sufficiently suited for this type of problems, although they are not problem-based methods. However, it should not be underestimated that the Swarm Intelligence (SI) methods, although generally being more recent compared to other types of methods, have considerable popularity during the last decade, as well as more “traditional” methods such as Simulated Annealing and Tabu Search, which were categorized in the third category.

From the more detailed graph in Fig. 1.2, some of the aforementioned observations can be directly confirmed and other trends can be observed.

As for the EA-based algorithms, it can be easily observed that the results presented in Fig. 1.1 are again confirmed, as the number of relevant publications is in every year higher than the publications with all the other types of methods and almost every year they constitute about 50% of the total number of publications. A trend of temporary increase or decrease of the number of such publications is observed, but every year about 60–80 publications are regularly reported. For the SI-based methods, it is interesting to see that the number of publications has considerably risen since 2007, especially after 2011–2012, and it fluctuates around 30 each year, with some exceptions. The number of publications using SI-based methods was initially lower than that of the two other categories but since 2011 it is almost equal with the category, related to the other computational methods. Finally, the total number of publications is almost over 140 during the last years, implying that they constitute a considerable part of industrial engineering-related research.