26 research outputs found

    Comparative study of pheromone control heuristics in ACO algorithms for solving RCPSP problems

    Get PDF
    Constraint Satisfaction Problems (CSP) belong to a kind of traditional NP-hard problems with a high impact on both research and industrial domains. The goal of these problems is to find a feasible assignment for a group of variables where a set of imposed restrictions is satisfied. This family of NP-hard problems demands a huge amount of computational resources even for their simplest cases. For this reason, different heuristic methods have been studied so far in order to discover feasible solutions at an affordable complexity level. This paper elaborates on the application of Ant Colony Optimization (ACO) algorithms with a novel CSP-graph based model to solve Resource-Constrained Project Scheduling Problems (RCPSP). The main drawback of this ACO-based model is related to the high number of pheromones created in the system. To overcome this issue we propose two adaptive Oblivion Rate heuristics to control the number of pheromones: the first one, called Dynamic Oblivion Rate, takes into account the overall number of pheromones produced in the system, whereas the second one inspires from the recently contributed Coral Reef Optimization (CRO) solver. A thorough experimental analysis has been carried out using the public PSPLIB library, and the obtained results have been compared to those of the most relevant contributions from the related literature. The performed experiments reveal that the Oblivion Rate heuristic removes at least 79% of the pheromones in the system, whereas the ACO algorithm renders statistically better results than other algorithmic counterparts from the literature

    DeepACO: Neural-enhanced Ant Systems for Combinatorial Optimization

    Full text link
    Ant Colony Optimization (ACO) is a meta-heuristic algorithm that has been successfully applied to various Combinatorial Optimization Problems (COPs). Traditionally, customizing ACO for a specific problem requires the expert design of knowledge-driven heuristics. In this paper, we propose DeepACO, a generic framework that leverages deep reinforcement learning to automate heuristic designs. DeepACO serves to strengthen the heuristic measures of existing ACO algorithms and dispense with laborious manual design in future ACO applications. As a neural-enhanced meta-heuristic, DeepACO consistently outperforms its ACO counterparts on eight COPs using a single neural model and a single set of hyperparameters. As a Neural Combinatorial Optimization method, DeepACO performs better than or on par with problem-specific methods on canonical routing problems. Our code is publicly available at https://github.com/henry-yeh/DeepACO.Comment: Accepted at NeurIPS 202

    A new ant colony optimization model for complex graph-based problems

    Full text link
    Tesis doctoral inédita leída en la Universidad Autónoma de Madrid. Escuela Politécnica Superior, Departamento de Ingeniería Informática. Fecha de lectura: julio de 2014Nowadays, there is a huge number of problems that due to their complexity have employed heuristic-based algorithms to search for near-to-optimal (or even optimal) solutions. These problems are usually NP-complete, so classical algorithms are not the best candidates to address these problems because they need a large amount of computational resources, or they simply cannot find any solution when the problem grows. Some classical examples of these kind of problems are the Travelling Salesman Problem (TSP) or the N-Queens problem. It is also possible to find examples in real and industrial domains related to the optimization of complex problems, like planning, scheduling, Vehicle Routing Problems (VRP), WiFi network Design Problem (WiFiDP) or behavioural pattern identification, among others. Regarding to heuristic-based algorithms, two well-known paradigms are Swarm Intelligence and Evolutionary Computation. Both paradigms belongs to a subfield from Artificial Intelligence, named Computational Intelligence that also contains Fuzzy Systems, Artificial Neural Networks and Artificial Immune Systems areas. Swarm Intelligence (SI) algorithms are focused on the collective behaviour of selforganizing systems. These algorithms are characterized by the generation of collective intelligence from non-complex individual behaviour and the communication schemes amongst them. Some examples of SI algorithms are particle swarm optimization, ant colony optimization (ACO), bee colony optimization o bird flocking. Ant Colony Optimization (ACO) are based on the foraging behaviour of these insects. In these kind of algorithms, the ants take different decisions during their execution that allows them to build their own solution to the problem. Once any ant has finished its execution, the ant goes back through the followed path and it deposits, in the environment, pheromones that contains information about the built solution. These pheromones will influence the decision of future ants, so there is an indirect communication through the environment called stigmergy. When an ACO algorithm is applied to any of the optimization problems just described, the problem is usually modelled into a graph. Nevertheless, the classical graph-based representation is not the best one for the execution of ACO algorithms because it presents some important pitfalls. The first one is related to the polynomial, or even exponential, growth of the resulting graph. The second pitfall is related to those problems that needs from real variables because these problems cannot be modelled using the classical graph-based representation. On the other hand, Evolutionary Computation (EC) are a set of population-based algorithms based in the Darwinian evolutionary process. In this kind of algorithms there is one (or more) population composed by different individuals that represent a possible solution to the problem. For each iteration, the population evolves by the use of evolutionary procedures which means that better individuals (i.e. better solutions) are generated along the execution of the algorithm. Both kind of algorithms, EC and SI, have been traditionally applied in previous NP-hard problems. Different population-based strategies have been developed, compared and even combined to design hybrid algorithms. This thesis has been focused on the analysis of classical graph-based representations and its application in ACO algorithms into complex problems, and the development of a new ACO model that tries to take a step forward in this kind of algorithms. In this new model, the problem is represented using a reduced graph that affects to the ants behaviour, which becomes more complex. Also, this size reduction generates a fast growth in the number of pheromones created. For this reason, a new metaheuristic (called Oblivion Rate) has been designed to control the number of pheromones stored in the graph. In this thesis different metaheuristics have been designed for the proposed system and their performance have been compared. One of these metaheuristics is the Oblivion Rate, based on an exponential function that takes into account the number of pheromones created in the system. Other Oblivion Rate function is based on a bioinspired swarm algorithm that uses some concepts extracted from the evolutionary algorithms. This bio-inspired swarm algorithm is called Coral Reef Opmization (CRO) algorithm and it is based on the behaviour of the corals in a reef. Finally, to test and validate the proposed model, different domains have been used such as the N-Queens Problem, the Resource-Constraint Project Scheduling Problem, the Path Finding problem in Video Games, or the Behavioural Pattern Identification in users. In some of these domains, the performance of the proposed model has been compared against a classical Genetic Algorithm to provide a comparative study and perform an analytical comparison between both approaches.En la actualidad, existen un gran número de problemas que debido a su complejidad necesitan algoritmos basados en heurísticas para la búsqueda de solucionas subóptimas (o incluso óptimas). Normalmente, estos problemas presentan una complejidad NP-completa, por lo que los algoritmos clásicos de búsqueda de soluciones no son apropiados ya que necesitan una gran cantidad de recursos computacionales, o simplemente, no son capaces de encontrar alguna solución cuando el problema crece. Ejemplos clásicos de este tipo de problemas son el problema del vendedor viajero (o TSP del inglés Travelling Salesman Problem) o el problema de las N-reinas. También se pueden encontrar ejemplos en dominios reales o industriales que generalmente están ligados a temas de optimización de sistemas complejos, como pueden ser problemas de planificación, scheduling, problemas de enrutamiento de vehículos (o VRP del inglés Vehicle Routing Problem), el diseño de redes Wifi abiertas (o WiFiDP del inglés WiFi network Design Problem), o la identificación de patrones de comportamiento, entre otros. En lo referente a los algoritmos basados en heuristicas, dos paradigmas muy conocidos son los algoritmos de enjambre (Swarm Intelligence) y la computación evolutiva (Evolutionary Computation). Ambos paradigmas pertencen al subárea de la Inteligencia Artificial denominada Inteligencia Computacional, que además contiene los sistemas difusos, redes neuronales y sistemas inmunológicos artificiales. Los algoritmos de inteligencia de enjambre, o Swarm Intelligence, se centran en el comportamiento colectivo de sistemas auto-organizativos. Estos algoritmos se caracterizan por la generación de inteligencia colectiva a partir del comportamiento, no muy complejo, de los individuos y los esquemas de comunicación entre ellos. Algunos ejemplos son particle swarm optimization, ant colony optimization (ACO), bee colony optimization o bird flocking. Los algoritmos de colonias de hormigas (o ACO del inglés Ant Colony Optimization) se basan en el comportamiento de estos insectos en el proceso de recolección de comida. En este tipo de algoritmos, las hormigas van tomando decisiones a lo largo de la simulación que les permiten construir su propia solución al problema. Una vez que una hormiga termina su ejecución, deshace el camino andado depositando en el entorno feronomas que contienen información sobre la solución construida. Estas feromonas influirán en las decisiones de futuras hormigas, por lo que produce una comunicación indirecta utilizando el entorno. A este proceso se le llama estigmergia. Cuando un algoritmo de hormigas se aplica a alguno de los problemas de optimización descritos anteriormente, se suele modelar el problema como un grafo sobre el cual se ejecutarán las hormigas. Sin embargo, la representación basada en grafos clásica no parece ser la mejor para la ejecución de algoritmos de hormigas porque presenta algunos problemas importantes. El primer problema está relacionado con el crecimiento polinómico, o incluso expnomencial, del grafo resultante. El segundo problema tiene que ver con los problemas que necesitan de variables reales, o de coma flotante, porque estos problemas, con la representación tradicional basada en grafos, no pueden ser modelados. Por otro lado, los algoritmos evolutivos (o EC del inglés Evolutionary Computation) son un tipo de algoritmos basados en población que están inspirados en el proceso evolutivo propuesto por Darwin. En este tipo de algoritmos, hay una, o varias, poblaciones compuestas por individuos diferentes que representan problems solutiones al problema modelado. Por cada iteración, la población evoluciona mediante el uso de procedimientos evolutivos, lo que significa que mejores individuos (mejores soluciones) son creados a lo largo de la ejecución del algoritmo. Ambos tipos de algorithmos, EC y SI, han sido tradicionalmente aplicados a los problemas NPcompletos descritos anteriormente. Diferentes estrategias basadas en población han sido desarrolladas, comparadas e incluso combinadas para el diseño de algoritmos híbridos. Esta tesis se ha centrado en el análisis de los modelos clásicos de representación basada en grafos de problemas complejos para la posterior ejecución de algoritmos de colonias de hormigas y el desarrollo de un nuevo modelo de hormigas que pretende suponer un avance en este tipo de algoritmos. En este nuevo modelo, los problemas son representados en un grafo más compacto que afecta al comportamiento de las hormigas, el cual se vuelve más complejo. Además, esta reducción en el tamaño del grafo genera un rápido crecimiento en el número de feronomas creadas. Por esta razón, una nueva metaheurística (llamada Oblivion Rate) ha sido diseñada para controlar el número de feromonas almacenadas en el grafo. En esta tesis, varias metaheuristicas han sido diseñadas para el sistema propuesto y sus rendimientos han sido comparados. Una de estas metaheurísticas es la Oblivion Rate basada en una función exponencial que tiene en cuenta el número de feromonas creadas en el sistema. Otra Oblivion Rate está basada en un algoritmo de enjambre bio-inspirado que usa algunos conceptos extraídos de la computación evolutiva. Este algoritmo de enjambre bio-inspirado se llama Optimización de arrecifes de corales (o CRO del inglés Coral Reef Optimization) y está basado en el comportamiento de los corales en el arrecife. Finalmente, para validar y testear el modelo propuesto, se han utilizado diversos dominios de aplicación como son el problema de las N-reinas, problemas de planificación de proyectos con restricciones de recursos, problemas de búsqueda de caminos en entornos de videojuegos y la identificación de patrones de comportamiento de usuarios. En algunos de estos dominios, el rendimiento del modelo propuesto ha sido comparado contra un algoritmo genético clásico para realizar un estudio comparativo, y analítico, entre ambos enfoques

    Meta-heuristic based Construction Supply Chain Modelling and Optimization

    Get PDF
    Driven by the severe competition within the construction industry, the necessity of improving and optimizing the performance of construction supply chain has been aroused. This thesis proposes three problems with regard to the construction supply chain optimization from three perspectives, namely, deterministic single objective optimization, stochastic optimization and multi-objective optimization respectively. Mathematical models for each problem are constructed accordingly and meta-heuristic algorithms are developed and applied for resolving these three problems

    Effective and efficient estimation of distribution algorithms for permutation and scheduling problems.

    Get PDF
    Estimation of Distribution Algorithm (EDA) is a branch of evolutionary computation that learn a probabilistic model of good solutions. Probabilistic models are used to represent relationships between solution variables which may give useful, human-understandable insights into real-world problems. Also, developing an effective PM has been shown to significantly reduce function evaluations needed to reach good solutions. This is also useful for real-world problems because their representations are often complex needing more computation to arrive at good solutions. In particular, many real-world problems are naturally represented as permutations and have expensive evaluation functions. EDAs can, however, be computationally expensive when models are too complex. There has therefore been much recent work on developing suitable EDAs for permutation representation. EDAs can now produce state-of-the-art performance on some permutation benchmark problems. However, models are still complex and computationally expensive making them hard to apply to real-world problems. This study investigates some limitations of EDAs in solving permutation and scheduling problems. The focus of this thesis is on addressing redundancies in the Random Key representation, preserving diversity in EDA, simplifying the complexity attributed to the use of multiple local improvement procedures and transferring knowledge from solving a benchmark project scheduling problem to a similar real-world problem. In this thesis, we achieve state-of-the-art performance on the Permutation Flowshop Scheduling Problem benchmarks as well as significantly reducing both the computational effort required to build the probabilistic model and the number of function evaluations. We also achieve competitive results on project scheduling benchmarks. Methods adapted for solving a real-world project scheduling problem presents significant improvements

    Project schedule optimisation utilising genetic algorithms

    Get PDF
    This thesis extends the body of research into the application of Genetic Algorithms to the Project Scheduling Problem (PSP). A thorough literature review is conducted in this area as well as in the application of other similar meta-heuristics. The review extends previous similar reviews to include PSP utilizing the Design Structure Matrix (DSM), as well as incorporating recent developments. There is a need within industry for optimisation algorithms that can assist in the identification of optimal schedules when presented with a network that can present a number of possible alternatives. The optimisation requirement may be subtle only performing slight resource levelling or more profound by selecting an optimal mode of execution for a number of activities or evaluating a number of alternative strategies. This research proposes a unique, efficient algorithm using adaptation based on the fitness improvement over successive generations. The algorithm is tested initially using a MATLAB based implementation to solve instances of the travelling salesman problem (TSP). The algorithm is then further developed both within MATLAB and Microsoft Project Visual Basic to optimise both known versions of the Resource Constrained Project Scheduling Problems as well as investigating newly defined variants of the problem class.EThOS - Electronic Theses Online ServiceGBUnited Kingdo

    Evolutionary Algorithms for Resource Constrained Project Scheduling Problems

    Full text link
    The resource constrained project scheduling problems (RCPSPs) are well-known challenging research problems that require efficient solutions to meet the planning need of many practical high-value projects. RCPSPs are usually solved using optimization problem-solving approaches. In recent years, evolutionary algorithms (EAs) have been extensively employed to solve optimization problems, including RCPSPs. Despite that numerous EAs have been developed for solving various RCPSPs, there is no single algorithm that is consistently effective across a wide range of problems. In this context, this thesis aims to propose a few new algorithms for solving different RCPSPs that include singular-resource and multiple-resource problems with single and multiple objectives. In general, RCPSPs are solved with an assumption that its activities are homogeneous, where all activities require all resource types. However, many activities are often singular, requiring only a single resource to complete an activity. Even though the existing algorithms that were developed for multi-resource problems, can solve this RCPSP variant with minor modifications, they are computationally expensive because they include some unnecessary resource constraints in the optimization process. In this thesis, at first, a problem with singular resource and single objective is considered. A heuristic-embedded genetic algorithm (GA) has been proposed for solving this problem, and it's effectiveness has been investigated. To enhance the performance of this algorithm, three heuristics are proposed and integrated with it. As there are no test problems available for singular resource problems, new benchmark problems are generated by modifying the existing multi-resource RCPSPs test set. As compared with experimental results of one of the modified algorithms and an exact solver, it was shown that the proposed algorithm achieved a better quality of solution while requiring a significantly smaller computational budget. The proposed algorithm is then extended to make it suitable for solving multi-resource cases with a single objective, which are known as traditional RCPSPs. A self-adaptive GA is developed for this problem. The proposed self-adaptive component of the algorithm selects an appropriate genetic operator based on their performance as the evolution progresses and increases. To judge the performance of this algorithm, small to large-scale problem instances have been solved from the PSP Library and the results are compared with state-of-the-art algorithms. Based on the experimental results, it was found that the proposed algorithm was able to obtain much better solutions than the non-self-adaptive GA. Furthermore, the proposed approach outperformed the state-of-the-art algorithms. In practice, cost of some resources varies with the day of the week or specific days in the month or year. To consider these day dependent costs, a new cost function is developed that is integrated with the usual cost fitness function in a multi-objective version of RCPSPs. Completion time is considered as the second objective. A heuristic-embedded self-adaptive multi-objective GA is proposed for both singular and multi-resource problems. In this algorithm, the selection mechanism is based on crowding distance and a reference point. A customized mutation operator is also introduced. The experimental results show that the proposed variant, with reference points-based selection, outperformed the variant, with crowding distance-based selection. In many situations, resource availability varies with time, such as time of the day and in some particular days. A dynamic multi-operators-based GA is proposed to deal with this variant. Along with the genetic operators, two local search methods are also included in the self-adaptive mechanism. The proposed approach has been validated using both large-scale singular and multi-resource problem instances with a single objective. Its experimental results demonstrate the efficiency of the proposed dynamic multi-operator-based approach. In summary, the proposed algorithms can solve different variants of RCPSPs that cover a broad spectrum of project scheduling problems, with significantly less computational tim

    Comparative Study on Ant Colony Optimization (ACO) and K-Means Clustering Approaches for Jobs Scheduling and Energy Optimization Model in Internet of Things (IoT)

    Get PDF
    The concept of Internet of Things (IoT) was proposed by Professor Kevin Ashton of the Massachusetts Institute of Technology (MIT) in 1999. IoT is an environment that people understand in many different ways depending on their requirement, point of view and purpose. When transmitting data in IoT environment, distribution of network traffic fluctuates frequently. If links of the network or nodes fail randomly, then automatically new nodes get added frequently. Heavy network traffic affects the response time of all system and it consumes more energy continuously. Minimization the network traffic/ by finding the shortest path from source to destination minimizes the response time of all system and also reduces the energy consumption cost. The ant colony optimization (ACO) and K-Means clustering algorithms characteristics conform to the auto-activator and optimistic response mechanism of the shortest route searching from source to destination. In this article, ACO and K-Means clustering algorithms are studied to search the shortest route path from source to destination by optimizing the Quality of Service (QoS) constraints. Resources are assumed in the active and varied IoT network atmosphere for these two algorithms. This work includes the study and comparison between ant colony optimization (ACO) and K-Means algorithms to plan a response time aware scheduling model for IoT. It is proposed to divide the IoT environment into various areas and a various number of clusters depending on the types of networks. It is noticed that this model is more efficient for the suggested routing algorithm in terms of response time, point-to-point delay, throughput and overhead of control bits
    corecore