Ant colony optimisation for scheduling of flexible job shop with multi-resources requirements

The paper presents application of ant colony optimisation algorithm for scheduling multi-resources operations in flexible job shop type of production systems. Operations that require the participation of two or more resources are common in industrial practice, when planning are subject not only machines, but also other additional resources (personnel, tools, etc.). Resource requirements of operation are indicated indirectly by resource groups. The most important parameters of the resource model and resource groups are also described. A basic assumptions for ant colony algorithm used for scheduling in the considered model with multiresources requirements of operations is discussed. The main result of the research is the schema of metaheuristic that enables searching best-score solutions in manufacturing systems satisfying presented constraints.


Introduction
Efficient organization of production flow, setting achievable plans and efficient use of available resources is one of the basic assumptions of a successful enterprise.Detailed scheduling of production processes improves coordination of activities in this area.In particular, it allows assessing the capacity of production resources for given constraints, precisely define the amount and dates of realization of the orders received, etc.However, the growing level of complexity of the issues in the production planning and control, and the dynamics of changes resulting from the interaction with the environment significantly hinder making the right decisions and motivate the use of efficient methods and software tools.
There are many methods for supporting the process of scheduling; among them we can distinguish methods which guarantee finding the optimal solution and approximate methods, heuristics, which do not give such a guarantee.Optimal methods are dedicated for precisely defined tasks structure and system configuration, with specific constraints and criteria.Hence, only a small percentage of problems can apply them in practice.
More attractive in practical applications are approximate algorithms and methods using heuristics, metaheuristics [1] and fuzzy logic [2,3] and simulation tools [4,5].Abandoning the determination of optimal solutions for sufficient solutions provides an acceptable time for determination of a satisfactory solution and the ability to analyze more complex models [6,7].Among metaheuristics, promising results are obtained by using swarm intelligence methods.Swarm intelligence (SI) deals with the implementation of rules of collective behaviour of small beings from biological systems.In this paper we focus on the ant colony and their behaviour when searching for a food -characterized by decision-making decentralization and self-organization.
The implementation of ant colony algorithm in scheduling domain is the subject of many works [8,9,10,11].In many cases authors proposes some extensions dedicated for a special kind of scheduling task's model: flow configuration, constraints etc.In [12] a simple resource levelling approach used for scheduling projects with multi-mode execution activities is proposed.Modified ACO approach for a multi-constraint (precedence and resources constraints) project scheduling problem is described in [13].In [14] they implement Elitist Ant System algorithm with Job Shop Scheduling Problem.Improving the basic ant system is also proposed in [15], where a pheromone alteration strategy that utilizing the behaviour of artificial ants to perform local search is introduced.ACO algorithms can also effectively solve the scheduling problems with employee allocation [16] and multiple objectives [17,18].An ant colony optimization approach (ACO) is also widely used for the shop scheduling [19][20][21][22][23] resource-constrained scheduling (RCS) and resource-constrained project scheduling problems (RCPSP) [24].Novel operation scheduling algorithms using the ant colony optimization approach for both timing-constrained scheduling (TCS) and RCS is proposed in [25].The combinations of two pheromone evaluation methods are discussed in [26].

Issue description
The considered scheduling problem can generally be formulated as follows: given is the flexible job shop type manufacturing system.The set of available resources production R is given by: R = {R i , i=1,…, m}, where: R i -i-th resource m -the number of all available resources.Resources may have a different level of specialization (machines and equipment), skills and abilities (human resources) as presented in [27].The tasks for the system are represented by a set of orders.A production order is described by a set of operations, with given precedence relationships.An operation requirements regarding to resources are formulated indirectly, through resource groups: where: GRz -set of resource groups, mg -size of this set, GRz s -s-th resource group.The resource group is understood as a set of unrelated, parallel resources, enabling the execution of a certain number of treatments of a particular operation.The need for the required number of competences groups and the required number of resources from these groups are defined separately for each operation.A single production resource Ri (renewable, discrete) is described by: where: c i -capacity, kj i -unit cost, LwGR i -list of resources groups, Ka b -b-th working timetable.
The capacity of the resource indicates the maximum number of concurrently executed tasks.A resource with a capacity greater than 1 is a resource that can process more tasks simultaneously.Unit cost of resource is a parameter used in determining the cost of the in the given route.List of groups determines the ability to perform treatments/operations or groups of operations.The level of resource competence in a given group is determined by priority factor.Working timetables describe availability of the resources to perform operations.Resources can operate according to the same or different working timetables.In presented model, the problem of finding a feasible schedule that meets all hard constraints and best meets time and cost based criteria (as soft constrains) is considered.

Ant colony optimisation algorithm
Proposed method of determining solution is based on ant colony optimisation metaheuristic.Proposed algorithm attempts to imitate natural, collective behaviour of ants in the anthill environment when they search and collect food [10,22,26].In particular, the following characteristics of this kind of swarms are taken into account: pheromone trail and the strength of its impact for ants move, evaporation of the pheromone over time and trend for finding the easiest path to food.A general scheme of ACO algorithm is shown in Figure 1.The base of searching is a directed and/or type graph of operations, describing precedence relationships between all planned operations [7,27].This graph is created from given production orders and enables defining complex processes, containing machining and assembling/disassembling operations and their multi-routes structures.At the beginning, initial values of parameters affecting the way of searching for solutions are set: the pheromone trail τ, pheromone evaporation factor ρ, and α, β -parameters representing importance of pheromone (global heuristic) and importance of calculated distance between given node and allowable successors (local heuristic), respectively.The number of iterations and/or stop conditions should be also defined.Population of ants may be fixed or variable in subsequent iterations.Each ant generates one solution by passing through the graph of operations.Beginning from the first node, the set of eligible successor nodes (E) is updated.Given operation is assigned to this set only if all its predecessors are visited.The ant chooses the next operation probabilistically.The value of the probability of the v node selection starting from the node u is calculated as follow [8,10]: where: S k -the set of eligible nodes, w -the id of node, τ(u,w) -the current amount of pheromone of transition u → w, η(u,w) -the distance (local attractiveness) of transition u → w.
The distance is calculated separately in each decision situation, depending on selected parameters connected with an operation: These parameters are used for searching resources in required operations groups using local heuristic.An example of a single operation scheduled with requirements of resources groups is presented in Figure 2. The operation has following characteristics: processing time t=7, divisibility = true, resource requirements (resources group, required amount of resources): (1,2), (2,2), (3,1).Resources have limited availability, white bars in Gantt chart means that a resource is busy.Because of lack of required number of two available resources from the group 1 in 2-4 time interval and from the group 2 in 6-7 operation should be temporarily suspended.
After selecting an operation the set E is updated (selected operation is removed and new eligible are added).Obtained solution is positioned in the ranking list.When all ants from a given iteration have built complete schedules the Stop conditions are checked.Both quality and time based criteria can be used there.If the Stop conditions are not satisfied the subset of schedules are selected for updating pheromone.The rule of updating pheromone is as follow [10,12,

Summary
The article presents the ant colony optimization algorithm dedicated for extended scheduling model related to distribution of operations on greater number of resources.Although ACO do not guarantee finding optimal solutions, this kind of metaheuristics, classified to widely understood swarm intelligence, is an effective tool for searching feasible solutions in computationally hard tasks, such as NP-complete problems.
The presented method can be used for scheduling both machining and assembly operations of production processes, in which the limited resources belong to different groups of resources (machines, human resources with different competences, tools etc.) and require simultaneous assignment to the operation.It is also be useful when resources have to be exchanged during long-time operations, e.g. in shift work or in a hazardous environment.The area of potential applications of the proposed approach is also in operations where the number of resources from particular resources groups does not have to be constant and The duration of the operation may be vary depending on the number of working resources.
The results obtained are a promising alternative for exploring the space of possible solutions in scheduling of manufacturing systems.Software implementation, as an extension of

8 Fig. 2 .
Fig. 2. The distribution of the single operation between resources groups.
amount of pheromone adding to the edge (u,v) calculated proportionally to the value of solution in the set of best solutions.
KbRS scheduling system [28] functionality, and performance testing of the presented algorithm is provided for further research.