Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/92824
Título: | Optimization of the inventory routing problem with Artificial Intelligence |
Autor(es): | Silva, João Miguel Pimenta da |
Orientador(es): | Analide, Cesar |
Palavras-chave: | Optimization Inventory routing problem Approximate methods Exacts methods Metaheuristics Otimização Métodos aproximados Métodos exatos Metaheurísticas |
Data: | 8-Jan-2024 |
Resumo(s): | Nowadays the success of a business is dependent on the ability to effectively integrate in an intricate
network of entities that are connected by material and information flows, inventory management being
one of the main concerns. These flows are characterized by decision-making processes that will vary
depending on the environment, entities and business models in the network. So, these networks need
a decision-making system capable of providing solutions that dictate the optimal way the network and its
entities provide and collect inventory in order to reduce costs and maximize profit. In the context of this
dissertation, the problem arises when there is a stock disruption in the network and outside entities can no
longer answer the stores’ supply requests and these stores become the entities responsible for requesting and delivering products to each other. This problem is modeled as an Inventory Routing problem,
since it encompasses inventory management and routing decisions. The main goal of the system can be
described as maximizing the collection of products per travel distance, without causing stock-outs at any
supplier, for the entire network. The problem at hand is an optimization problem.
In order to solve this optimization problem, first, the structural characteristics and key aspects were identified and studied, followed by the mathematical conceptualization, which involved the definition of the
objective function and the corresponding set of constraints. The mathematical formulation allows the
problem to be translated into a specific and precise mathematical language, making it possible to evaluate
solutions, by means of a fitness function, and apply optimization algorithms to solve the problem. These
optimization algorithms can be approximate or exact methods and their suitability to the problem depends
on many factors such as the size, structure and complexity of the problem. So, the choice of the optimization algorithms must be preceded by a careful analysis of the problem at hand and its characteristics.
After this, in the implementation phase, two adaptations of the genetic algorithm, two adaptions of the
simulated annealing algorithm, two adaptations of the tabu search algorithm were developed. Additionaly,
another algorithm responsible for generating reference solutions was also developed (Dynamic2). In order to test and compare the developed optimization algorithms, three different sized scenarios were generated.
Each of these scenarios has a different amount of data associated with it, whether it be in the number of
stores, types of products or number of requests. As to compare the results of the different instances of
the algorithms fairly in each scenario, these were made to generate roughly the same number of solutions.
In scenarios 1 and 3, all the optimization algorithms developed were successful in finding solutions with
higher fitness values than the baseline Dynamic2 solution. In scenario 2, due to time constraints and
computational complexities, only the Genetic algorithm and the Genetic algorithm with Elitism using an
initial population consisting of solutions generated by the Dynamic2 algorithm, managed to find solutions
with higher fitness value than the baseline solution. In this scenario, the developed optimization algorithms
were also tested using feasible solutions generated through random mechanisms as initial solutions. These
instances also achieve solutions with improved fitness values when compared to their respective initial solutions or populations.
Furthermore, in scenarios 1 and 3, the Genetic algorithm with an initial population consisting of feasible
solutions generated through random mechanisms was the optimization algorithm that found the best solutions, with these solutions having fitness values 56.14% and 92.07% greater than the baseline Dynamic2
solution’s, respectively. In scenario 2, the Genetic algorithm with Elitism, utilizing an initial population consisting of solutions generated by the mentioned Dynamic2 algorithm, found the solution with the highest
fitness value, being approximately 1.00% higher than the baseline solution. Atualmente, o sucesso de um negócio depende da capacidade de se integrar de uma forma eficaz numa rede de entidades conectadas por fluxos de materiais e informações, sendo a gestão de inventário uma das principais preocupações. Esses fluxos são caracterizados por processos de tomada de decisão que variam dependendo do ambiente, entidades e modelos de negócios na rede. Estas redes precisam de um sistema de tomada de decisão capaz de fornecer soluções que otimizem a forma como a rede e as suas entidades fornecem e recolhem inventário para reduzir custos e maximizar lucros. No contexto desta dissertação, o problema surge quando há uma interrupção de stock na rede e as entidades externas já não conseguem responder às solicitações de abastecimento das lojas e essas lojas tornam-se as entidades responsáveis por solicitar e entregar produtos entre si. Este problema é modelado como um Inventory Routing Problem, pois engloba decisões de gestão de inventário e routing. O objetivo principal do sistema pode ser descrito como maximizar a recolha de produtos por distância percorrida, sem causar stock-outs nos fornecedores, para toda a rede. O problema em questão é um problema de otimização. Para resolver este problema de otimização, primeiro foram identificadas e estudadas as características es truturantes do problema, seguido de uma conceptualização matemática do mesmo, através da definição da função objetivo e do conjunto de restrições associadas. A formulação matemática permite que o problema seja traduzido para uma linguagem específica e precisa, tornando possível avaliar e comparar soluções, através da função objetivo, e aplicar algoritmos de otimização para resolver o problema. Esses algoritmos de otimização podem ser métodos aproximados ou exatos e sua adequação ao problema depende de muitos fatores, como tamanho, estrutura e complexidade do problema. Então, a escolha dos algoritmos de otimização deve ser precedida por uma análise cuidadosa do problema em questão e suas características. Posteriormente, na fase de implementação, foram desenvolvidas duas adaptações de algoritmos genéticos, duas de simulated annealing e duas de tabu search, juntamente com outro algoritmo, responsável por gerar soluções de referência (Dynamic2). Com o intuito de testar e comparar os algoritmos de otimização desenvolvidos, foram criados três cenários de tamanhos diferentes. Cada um destes cenários possui diferentes quantidades de dados associados, seja em termos do número de lojas, tipos de produtos ou quantidade de pedidos. Para garantir uma comparação justa entre as diferentes instâncias dos algoritmos em cada cenário, estes foram configurados para gerar aproximadamente o mesmo número de soluções. Nos cenários 1 e 3, todos os algoritmos de otimização desenvolvidos tiveram sucesso em encontrar soluções com valores de fitness superiores à solução de referência do algoritmo Dynamic2. No cenário 2, devido a limitações de tempo e complexidades computacionais, apenas o algoritmo Genético e o algoritmo Genético com Elitismo, utilizando uma população inicial composta por soluções geradas pelo algoritmo Dynamic2, conseguiram encontrar soluções com valores de fitness superiores à solução de referência. Neste cenário, os algoritmos de otimização desenvolvidos foram também testados utilizando soluções possíveis geradas aleatoriamente como soluções iniciais. Estes casos também alcançaram soluções com valores de fitness maiores quando comparadas às soluções iniciais ou populações respetivas. Adicionalmente, nos cenários 1 e 3, o algoritmo Genético com uma população inicial composta por soluções possíveis geradas aleatoriamente foi o algoritmo de otimização que encontrou as melhores soluções, sendo que estas soluções tinham valores de fitness superiores em 56.14% e 92.07%, respetivamente, à solução de referência do algoritmo Dynamic2. No cenário 2, o algoritmo Genético com Elitismo, utilizando uma população inicial composta por soluções geradas pelo algoritmo Dynamic2, encontrou a solução com o valor de fitness mais elevado, sendo este aproximadamente 1.00% superior à solução de referência. |
Tipo: | Dissertação de mestrado |
Descrição: | Dissertação de mestrado em Informatics Engineering |
URI: | https://hdl.handle.net/1822/92824 |
Acesso: | Acesso aberto |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Joao Miguel Pimenta da Silva.pdf | Dissertação de mestrado | 8,18 MB | Adobe PDF | Ver/Abrir |
Este trabalho está licenciado sob uma Licença Creative Commons