Aprendizagem por reforço profundo uma nova perspectiva sobre o problema dos k-servos - Lins, Ramon Augusto Sousa (2020)
O problema dos k-servos em um grafo ponderado (ou espaço métrico) é definido pela necessidade de mover eficientemente k servos para atender uma sequência de requisições que surgem de maneira online em cada nó do grafo. Este é talvez o problema mais influente de computação online cuja solução continua em aberto servindo de abstração para diversas aplicações, como a compra e venda de moedas, reatribuição de processos em processamento paralelo para balanceamento de carga, serviços de transporte online, gerenciamento de sondas de produção de petróleo, dentre outros. Sua simplicidade conceitual contrasta com sua complexidade computacional que cresce exponencialmente com o aumento do número de nós e servos. Anteriormente a este trabalho, o algoritmo Q-learning foi utilizado na solução de pequenas instâncias do problema dos k-servos. A solução ficou restrita à pequenas dimensões do problema pois sua estrutura de armazenamento cresce exponencialmente com o aumento do número de nós e servos. Este problema, conhecido como maldição de dimensionalidade, torna ineficiente ou até impossibilita a execução do algoritmo para certas instâncias do problema. Para lidar com maiores dimensões, o Qlearning em conjunto com o algoritmo guloso foi aplicado a um número reduzido de nós separados por um processo de agrupamento (abordagem hierárquica). A política local obtida em cada agrupamento, em conjunto com a política gulosa, foi utilizada na formação de uma política global, abordando de maneira satisfatória grandes instâncias do problema. Os resultados foram comparados a importantes algoritmos da literatura, o Work function, o Harmonic e o guloso. As soluções até então propostas dão ênfase ao aumento do número de nós, porém se analisarmos o crescimento da estrutura de armazenamento definida por Cn,k ' O(nk), é possível perceber que o aumento do número de servos pode torná-la rapidamente limitada pelo problema da maldição da dimensionalidade. Para contornar esta barreira, o problema dos k-servos foi modelado como um problema de aprendizagem por reforço profundo cuja a função de valor estado-ação foi definida por uma rede neural perceptron de múltiplas camadas capaz de extrair as informações do ambiente a partir de imagens que codificam a dinâmica do problema. A aplicabilidade do algoritmo proposto foi ilustrada em um estudo de caso no qual diferentes configurações do problema foram consideradas. O comportamento dos agentes foi analisado durante a fase de treinamento e sua performance foi avaliada a partir de testes de desempenho que quantificaram a qualidade das políticas de deslocamento dos servos geradas. Os resultados obtidos fornecem uma visão promissora de sua utilização como solução alternativa ao problema dos k-servos.