AgradeçoA Deus, pela vida e oportunidade do estudo.A toda a minha família pelo apoio incondicional e pelo constante incentivo. Aos meus pais Antônio e Elvira, por me ensinarem a humildade e companheirismo, sendo sempre uma fonte de amor inesgotável. Às tias, tios, primos, primas e todos outros membros da família: muito obrigado.À minha orientadora Dr a Célia Ghedini Ralha, pela confiança depositada em mim, sempre apoiando e aconselhando durante toda jornada do projeto. Obrigado por todo apoio e direcionamento ao longo do processo.À Thaynara Gomes, minha namorada, por ter suportado toda distância, sabendo lidar com minha grande variação de humor. Obrigado por estar sempre ao meu lado.Ao amigo Michel Junio, pela parceria de tantos anos de amizade. Por todos os desafios e projetos que encaramos juntos. Agradeço as centenas de vezes que já me socorreu.À Universidade de Brasília e ao Departamento de Ciência da Computação, que me forneceu um ambiente acolhedor e bem estruturado.Aos amigos da minha Igreja Apostólica, pelos momentos de alegria e louvores que juntos entoamos a cada apresentação. Obrigado por sempre me apoiarem e compreenderem minha ausência nos últimos tempos.A todos que de forma direta ou indireta participaram da minha jornada: obrigado, nada conseguiria sem vocês. v "Ama-se mais o que se conquista com esforço."Benjamin Disraeli vi
ResumoA computação em nuvem surgiu como um modelo computacional inovador que permite que usuários acessem recursos com alto poder computacional de forma distribuída e com baixo custo. Uma execução adequado de aplicações em nuvem requer o provisionamento apropriado de recursos. Monitorar tais aplicações para criar históricos de execução é uma alternativa adequada para desenvolver modelos de predição de uso de recursos das máquinas virtuais na nuvem. No entanto, essa abordagem não é trivial quando se deseja viabilizar o provisionamento dinâmico de recursos nas máquinas virtuais. Nesta dissertação foi definido um modelo de monitoramento, predição e provisionamento dinâmico de recursos na nuvem computacional através do uso de um sistema multiagente. Os agentes utilizam raciocínio lógico com regras de inferência através de uma abordagem de interação cooperativa. O modelo foi validado com um estudo de caso utilizando um simulador ambiental denominado MASE-BDI. O modelo de predição com regressão linear múltipla alcançou 96, 41% de acerto no uso de CPU e 94, 72% no tempo de execução. Os resultados experimentais demonstraram a potencialidade da proposta, uma vez que o uso médio de CPU ficou acima de 76%, além de manter um equilíbrio entre o uso de CPU, o tempo e o custo das execuções.