SISTEMA DE RECOMENDAÇÃO DE PACOTES TURÍSTICOS BASEADO EM FILTRAGEM COLABORATIVA USANDO ALGORITMOS GENÉTICOS

Tamanho: px
Começar a partir da página:

Download "SISTEMA DE RECOMENDAÇÃO DE PACOTES TURÍSTICOS BASEADO EM FILTRAGEM COLABORATIVA USANDO ALGORITMOS GENÉTICOS"

Transcrição

1 SISTEMA DE RECOMENDAÇÃO DE PACOTES TURÍSTICOS BASEADO EM FILTRAGEM COLABORATIVA USANDO ALGORITMOS GENÉTICOS Edivan Melo Dias Fabiana Lorenzi - Orientadora Universidade Luterana do Brasil (ULBRA) Curso de Ciência da Computação Campus Canoas Av. Farroupilha, Bairro São José CEP Canoas - RS RESUMO 22 de junho de 2011 Sistemas de recomendações têm sido amplamente utilizados com a intenção de cativar clientes indicando produtos ou serviços de acordo com as preferências do usuário. Diferentemente dos estudos que aplicam as técnicas padrões para esses tipos de sistemas, este artigo apresenta o desenvolvimento de um protótipo de sistema de recomendação que utiliza Algoritmos Genéticos para sugerir aos usuários pacotes turísticos que se encaixem devidamente em seus perfis, alvejando avaliar a eficácia e o comportamento desta técnica inteligente dentro do domínio proposto. Palavras-chave: Sistemas de Recomendação; Filtragem Colaborativa e Algoritmos Genéticos. ABSTRACT Title: A travel package recommender system based on Collaborative Filtering using Genetic Algorithms Recommender systems have been widely used with the intent to engage customers indicating goods or service according to user preferences. Unlike studies that apply the standard techniques for these types of systems, this article presents the development of a prototype recommendation system that uses Genetic Algorithms to suggest users to tour packages that fit properly in their profiles, targeting valuate the efficacy and behavior this clever technique within the proposed area. Key-words: Recommender Systems; Collaborative Filtering and Genetic Algorithms. 1 INTRODUÇÃO Com a grande quantidade de informações e com a fácil disponibilidade obtida das mesmas principalmente por meio da internet, o usuário depara-se com uma grande diversidade de opções. Na maioria das vezes um indivíduo não se sente seguro ou não possui experiência pessoal suficiente para realizar escolhas dentre as alternativas que lhe são oferecidas. Para tornar mínimas as dúvidas diante às escolhas dentre diferentes opções, comumente confia-se nos conselhos e recomendações que são passadas por outras pessoas. Recomendar informações, produtos ou itens que se enquadre no perfil do gosto pessoal de um indivíduo a partir de um sistema informatizado, é uma tendência altamente desafiadora para o mundo virtual, visto que uma recomendação adequada pode fazer a diferença entre conquistar o usuário ou perdê-lo. Para auxiliar neste desafio surgiram os sistemas de recomendação (RESNICK et al., 1994). Fundamentado neste raciocínio, este estudo aborda os conceitos da Filtragem Colaborativa e dos Algoritmos Genéticos para propor um protótipo de aplicação de recomendação que utiliza essas técnicas para a busca da melhor combinação de pesos baseados nas preferências pessoais dos perfis dos usuários, a fim de encontrar o modelo de pacote turístico ideal a ser recomendado. Ao contrário da maioria das pesquisas e artigos que utilizam as técnicas já existentes para esses tipo de aplicações, neste estudo foi utilizado Algoritmos Genéticos, objetivando avaliar o comportamento e a eficácia que essa técnica pode vir a ter quando aplicada nestes tipos de sistemas. Dentro do domínio proposto neste trabalho, o Algoritmo Genético trabalha a fim de encontrar a melhor recomendação dentre um conjunto de possíveis opções a serem indicadas. O trabalho objetiva a criação de uma ferramenta que auxilie na tomada de decisões dos usuários 1

2 alvejando mostrar o processo de desenvolvimento de um protótipo que aplica técnicas inteligentes e agregando conhecimentos dos procedimentos empregados para chegar à solução proposta. Além dos Algoritmos Genéticos, que evoluem dentro de um determinado espaço de busca, a ferramenta também trabalha baseada na técnica de Filtragem Colaborativa, uma vez que possui como base outros perfis de usuários para ajudar na sugestão da melhor opção. O artigo está estruturado da seguinte forma: a seção 2 apresenta além dos trabalhos e pesquisas relacionados á área, o referencial teórico que serviu de apoio para o desenvolvimento do trabalho. A seção 3 descreve o funcionamento e a metodologia do projeto. A seção 4 apresenta o desenvolvimento do protótipo para análise do comportamento do algoritmo. A seção 5 mostra como foi feita a validação e os testes. E finalizando o artigo, a seção 6 apresenta as considerações finais deste estudo. 2 FUNDAMENTAÇÃO TEÓRICA Neste capítulo estão apresentados os principais conceitos de sistemas de recomendação e Algoritmos Genéticos, que ajudarão na compreensão do trabalho. Foram abordadas as características de sistemas de recomendação estabelecidos na literatura e em trabalhos científicos publicados, apontando as principais técnicas de recomendações utilizadas. Além disso, apresenta também, as características dos Algoritmos Genéticos, explicando seu funcionamento, sua estrutura e seus principais parâmetros que podem vir a influenciar em seus resultados finais. Também são apresentados alguns trabalhos e sistemas de recomendações inteligentes que aplicam a técnica de Filtragem Colaborativa. 2.1 Sistemas de Recomendações Os sistemas de recomendação auxiliam na ação de indicar e/ou receber recomendações de itens ou produtos, sejam eles referentes a livros, artigos, discos, restaurantes ou qualquer outro tipo de informação (SHAFFER, 2001). A maneira mais tradicional de recomendar produtos de forma personalizada é pedir aos usuários avaliarem os produtos que consomem, dando-lhes uma nota (geralmente dentro de uma escala, ou representação por estrelas). Essas notas são chamadas de ratings e são utilizadas para identificar "vizinhanças" de usuários similares (MILANI e CAZELLA, 2007), ou seja, usuários que avaliam produtos de forma iguais. Dessa forma, é possível identificar como os usuários semelhantes se comportam e, a partir desse "modelo" de comportamento, gerar ofertas personalizadas a cada um deles (TORRES, 2004 apud MILANI e CAZELLA, 2007). Esta técnica é amplamente utilizada em sites de e-commerce para auxiliar o cliente a localizar produtos, assim como oferecer outros que também sejam do seu interesse. Segundo Milani e Cazella (2007), a utilização de sistemas de recomendação gera uma satisfação a todos os clientes que utilizam esse serviço, pois o cliente sente-se único e reconhecido. Outro fator positivo na utilização de sistemas de recomendação é o fato de que os clientes satisfeitos recomendam a loja ou o sistema para amigos, resultando no aumento de seus clientes e posteriormente o lucro Perfil do Usuário Para identificar o tipo de perfil do usuário existem duas técnicas possíveis: Extração Implícita A criação do perfil do usuário na forma implícita ocorre de uma maneira simples, o usuário deve apenas utilizar o sistema e suas informações são coletadas de uma forma transparente, informações do tipo, histórico de compras, itens procurados, menus navegados entre outras. Depois de coletadas essas informações são armazenas em um banco de dados, para posterior utilização (MILANI e CAZELLA, 2007); Extração Explícita Nesse método é necessário que o próprio usuário informe seus conteúdos de interesse, esses interesses podem ser extraídos através de questionários no momento do cadastro de um site, na 2

3 avaliação de produtos de diferentes áreas, ou de outra maneira que seja possível obter as informações pertinentes para a composição do perfil do usuário. Depois desses dados coletados cria-se o primeiro perfil e o qual pode ser alterado pelo próprio usuário ou através de outras perguntas que o sistema poderá fazer (MILANI e CAZELLA, 2007) Filtragens de Informações A Filtragem de Informações se refere nas preferências, dos usuários. Esta filtragem deve ser aplicada a cada novo item adicionado buscando verificar se este atende ao usuário em questão (REATEGUI e CAZELLA, 2005). A seguir são descritas técnicas de filtragem aplicáveis a sistemas de recomendação. Filtragem Baseada em Conteúdo Alguns softwares têm como objetivo gerar de forma automática descrições dos conteúdos dos itens e, comparar estas descrições com os interesses dos usuários visando verificar se o item é ou não relevante para cada um. Esta técnica é chamada de Filtragem Baseada em Conteúdo por realizar uma seleção baseada na análise de conteúdo dos itens e no perfil do usuário (MILANI e CAZELLA, 2007). A Filtragem Baseada em Conteúdo mede a semelhança de produtos para recomendá-los em vez de utilizar a similaridade entre usuários, leva em consideração produtos ou serviços adquiridos anteriormente e recomenda para o usuário itens que sejam similares a esses (TORRES, 2004 apud MILANI e CAZELLA, 2007). Uma maneira de trabalhar com a está técnica é através de uma solicitação de análise de itens feita ao próprio usuário, onde ele deve avaliar alguns itens indicando se estes são de interesse ou não. Uma vez realizada esta avaliação, o sistema busca itens que "casam" em conteúdo com o que foi classificado como de interesse (REATEGUI e CAZELLA, 2005). Sistemas deste tipo apresentam limitações como: o entendimento do conteúdo do texto pode ser prejudicado devido a uso de sinônimos. Filtragem Colaborativa A Filtragem Colaborativa é uma das técnicas de recomendação mais utilizada, empregando a similaridade entre os usuários para gerar as recomendações (RESNICK et al., 1994). O princípio dessa técnica é fazer com que pessoas tenham condições de ajudar outras no processo de tomadas de decisões, na forma que, pessoas com perfil semelhantes são agrupadas (Vizinhos) e os produtos altamente avaliados são recomendados para o grupo (MILANI e CAZELLA, 2007). Segundo Resnick et al. (1994), um usuário de um sistema de filtragem colaborativa deve pontuar cada item experimentado, indicando o quanto este item casa com sua necessidade de informação. Estas pontuações são coletadas para grupos de pessoas, fazendo com que cada usuário se beneficie das pontuações (experiências) apresentadas por outros usuários na comunidade. A técnica de filtragem colaborativa pode ser separada em três passos (MILANI e CAZELLA, 2007): 1. Calcular o peso de cada usuário em relação à similaridade ao usuário ativo (similaridade). 2. Selecionar um subconjunto de usuários com maiores similaridades (vizinhos) para considerar na predição. 3. Normalizar as avaliações e computar as predições comparando as avaliações dos vizinhos com seus pesos. Esta técnica também é chamada de nearest-neighbor (vizinho mais próximo). No primeiro passo, a definição da similaridade pode ser realizada através de diversas técnicas, sendo mais comumente usada a correlação de Pearson (ALCAZAR, SALAH e VELEZ-LANGS, 2006). A Figura 1 mostra a equação de correlação utilizada. wa,u= ra,i r a ru,i r u σa σu Figura 1 Equação da Correlação de Pearson 3

4 Dado o conjunto de avaliações r a,i do usuário ativo a, e o conjunto de avaliações r u,i do vizinho u, w a,u é o índice de similaridade entre os dois usuários. É preciso mais de uma avaliação em comum para que o índice seja válido, e os resultados variam entre 1 para similaridade total, e -1 para total dissimilaridade (ALCAZAR, SALAH e VELEZ-LANGS, 2006). 2: No passo três, o cálculo da predição é efetuado através da equação de Predição mostrada pela Figura pa,i=r a+ ru,i ru wa,u wa,u Figura 2 Equação de Predição Em Alcazar, Salah e Velez-Langs (2006) explica-se que o valor da predição p a,i do item i para o usuário ativo a é a média ponderada das avaliações dadas ao item i pelos n vizinhos u do usuário ativo a. A quantidade n de melhores vizinhos - com maiores correlações - é uma escolha de cada sistema que utiliza a filtragem colaborativa. Resnick et al. (1994) também destaca que neste tipo de técnica nenhuma informação sobre os itens em si é conhecida, as recomendações são baseadas na semelhança entre os usuários, ou seja, utilizando informações de outras pessoas e trabalhando com a ideia de que se os interesses do usuário X são similares aos interesses do usuário Y, os itens preferidos pelo usuário Y podem ser recomendados ao usuário X. O Quadro1 apresenta na prática como a filtragem colaborativa pode funcionar. Quadro 1 Exemplo de Recomendação Baseada em Filtragem Colaborativa Usuário Prod 1 Prod 2 Prod 3 Prod 4 Prod 5 Paulo X X João X X Márcia X X X Ana X X Mauro X Por exemplo, para recomendar um produto ao usuário Mauro, outros usuários com hábitos de consumo semelhantes serão procurados. No caso acima, Paulo e João já compraram produtos que Mauro também comprou (Prod 2 ). Em seguida, serão recomendados a Mauro produtos que estes dois outros usuários possuem, mas que Mauro ainda não possui como Prod 1 e Prod 5. Algumas das vantagens deste tipo de técnica são: Segundo Milani e Cazella (2007), como as recomendações são baseadas em avaliações de outros usuários é possível tratar diferentes tipos de conteúdo, não somente documentos textuais. A qualidade das recomendações é superior se comparado a sistemas que utilizam filtragem baseada em conteúdo. A justificativa está no fato de sistemas automatizados não serem eficientes em determinar a qualidade de um produto analisando apenas seu conteúdo. A qualidade de um item está implícita na avaliação de outros usuários, sendo possível produzir recomendações de melhor qualidade. Como desvantagens pode-se destacar: - Se um novo item é introduzido no sistema, não será recomendado até que um dos usuários o avalie. O que traz outra consequência: se o número de usuários do sistema é reduzido em relação à quantidade de itens, ocorre um problema de cobertura, ou seja, a coleção de itens que podem ser recomendados será resumida (MILANI e CAZELLA, 2007). - Outro problema em sistemas utilizando esta técnica ocorre quando há um usuário cujas preferências diferem dos demais usuários, conhecidos como ovelhas-negras. Neste caso, não há vizinhos semelhantes ao usuário ativo, ocasionando recomendações que não correspondem às preferências desse usuário. Os algoritmos utilizados em Filtragem Colaborativa partem do princípio de que os usuários classificam os conteúdos através de uma avaliação, na qual são atribuídos valores de acordo com a sua 4

5 relevância. Segundo Milani e Cazella (2007), a avaliação pode ser como implícita ou explícita. Na primeira, o usuário avalia os itens através de uma escala numérica, classificando-os de acordo com a sua relevância, já na segunda, essa avaliação é relacionada com o comportamento do usuário, consultando o histórico ou visitas a outros itens. Os algoritmos assumem que o usuário irá gostar dos itens que usuários com preferências afins também gostem. Conforme as duas classes de algoritmos de filtragem colaborativa são (ALCAZAR, SALAH e VELEZ-LANGS, 2006): Algoritmos baseados em memória: Esses algoritmos são caracterizados por manter uma base de dados de todas as preferências de todos os usuários para todos os itens e, para cada previsão, executa algum processamento em toda a base de dados. Geralmente, um escore entre usuários ativo e outros usuários é calculado e serve como base para cálculo de previsão (ALCAZAR, SALAH e VELEZ-LANGS, 2006). Segundo Torres (2004) apud MILANI e CAZELLA, 2007, esses algoritmos são simples, possuem um bom funcionamento e novos dados são facilmente adicionados, porém podem se tornar computacionalmente caros e ter seu desempenho comprometido com o crescimento da base de dados. Algoritmos baseados em modelos: Esses algoritmos agrupam as preferências do usuário formando um modelo que é usado para realizar as previsões. Este modelo pode ser produzido off-line, e podem gastar várias horas ou dias. Este método baseado em modelo pode ser usado em um ambiente em que as preferências dos usuários sejam pouco modificadas, porém não recomendado para sistemas em que estas preferências sejam atualizadas rapidamente ou frequentemente. 2.2 Trabalhos Relacionados A seguir são apresentados alguns exemplos de sistemas de recomendação acadêmicos e comerciais pesquisados. O SADTur (MARCONDES, 2003) é um protótipo de Sistema Especialista capaz de organizar diversas informações específicas da área de turismo, e auxiliar os seus usuários na definição do planejamento turístico de uma localidade. Em seu desenvolvimento foram utilizadas redes bayesianas, também conhecidas como cadeias de decisão (diagramas de influência). As inferências são representadas por meio de regras do tipo SE [evidência] ENTÃO [hipótese], ou seja, se SE Mangues ENTÃO Ecoturismo. Como desvantagem não é capaz de sintetizar novos conhecimentos e possui dificuldades de lidar com situações inesperadas. Outro exemplo que aborda a aplicação dos algoritmos evolucionários é apresentado em (ALCAZAR, SALAH e VELEZ-LANGS, 2006). Neste trabalho, os autores utilizam algoritmo genético no tratamento tradicional de Sistemas de Recomendação. O trabalho examina as possibilidades de algoritmos genéticos para oferecer características adaptáveis ao aprendizado desses sistemas, a fim de fornecer um mecanismo novo para aumentar a capacidade de aprendizagem desses sistemas, com o objetivo de melhorar a eficácia na hora de encontrar as recomendações e sugestões apropriadas para os usuários. O projeto MovieLens, disponível em é um sistema de recomendação de filmes que se caracteriza como um ambiente baseado em filtragem colaborativa. Segundo Torres (2004) apud MILANI e CAZELLA (2007) o usuário insere pontuações para filmes que tenha visto e o sistema utiliza estas pontuações para encontrar pessoas com gostos similares. Desta forma o sistema pode recomendar filmes nos quais indivíduos com gostos semelhantes se interessariam, mas que não assistiram ainda. 2.3 Algoritmos Genéticos Algoritmos Genéticos são métodos computacionais de busca baseados nos mecanismos da genética e da seleção natural (GOLDBERG, 1989), que imitam a idéia da Teoria da Seleção Natural, proposta por Darwin, na resolução de problemas computacionais que exigem busca, adaptação e otimização. 5

6 Segundo Darwin (1859) a seleção natural tem como princípio privilegiar os indivíduos mais aptos e com maior probabilidade de reprodução em um ambiente. Embasado nesta idéia, os Algoritmos Genéticos atuam sobre uma população de indivíduos, baseados no fato de que indivíduos com boas características genéticas têm maiores chances de sobrevivência e de produzirem indivíduos cada vez mais aptos uma vez que perpetuam seus bons códigos genéticos, enquanto indivíduos menos aptos tendem a desaparecer (CATARINA, 2009). Estes algoritmos começaram a ser estudados por Jonh Holland, onde se deu iniciou uma pesquisa sobre algoritmos que manipulavam strings de 0 e 1, a qual ele chamou de cromossomos. Seus algoritmos realizavam a evolução simulada destas populações de cromossomos, resolvendo de forma eficiente o problema de encontrar bons cromossomos através da manipulação do material contido nos mesmo (CATARINA, 2009). Jonh Holland acreditava que usando a evolução, assim como na natureza, e utilizando adequadamente as características da evolução natural nos algoritmos computacionais, era possível ajudar na solução de problemas (HOLLAND, 1975). Devido ao fato dos Algoritmos Genéticos serem algoritmos de busca inspirada na Teoria da Seleção Natural, o seu processo de evolução é sempre guiado por um mecanismo de seleção baseado em cada iteração do algoritmo, fazendo com que um novo conjunto de indivíduos seja criado através da troca de informações entre os indivíduos mais bem adaptados que foram selecionados na geração anterior (SOBRINHO, 2003). Dessa forma, novos indivíduos são gerados e incluídos na população. Sobrinho (2003) também relata que ao evoluir, a população tende a ter um aumento da adaptação dos indivíduos ao meio, fazendo com que a mesma se aproxime cada vez mais de uma solução ótima, ou seja, convergir o indivíduo mais apto da população Funcionamento de um Algoritmo Genético O funcionamento de um Algoritmo Genético, descrito por Tinós (2007), caracteriza-se em produzir inicialmente uma população de indivíduos aleatoriamente, e em seguida analisar o desempenho destes indivíduos dentro do problema proposto. Para que isso seja possível, uma função de aptidão chamada fitness é aplicada para esses indivíduos a fim de definir quais deles são mais aptos a resolver o problema. Em seguida, os indivíduos menos aptos da população serão descartados e os mais aptos selecionados para reproduzirem-se e assim gerar uma nova população de indivíduos (TINÓS, 2007). Após a seleção, ocorrerão as operações de cruzamento (crossover) e mutação, nas quais os indivíduos poderão trocar partes de seu cromossomo e cada gene pode ter seu valor alterado. Para isto, taxas de cruzamento e de mutação são utilizadas (TINÓS, 2007). Após a reprodução recomeça-se um novo ciclo onde a nova geração será avaliada e novamente reproduzida até que se chegue a uma população final Representação da solução e geração da população inicial A representação da solução é de fundamental importância para um adequado funcionamento dos algoritmos genéticos. O indivíduo é uma representação do espaço de busca do problema e ser resolvido, geralmente na forma de bits ou caracteres (FERREIRA, 2003). A população inicial é gerada de forma aleatória, pois é a mais simples e garante uma maior diversidade das estruturas (TIMÓTEO, 2002). Segundo Timóteo (2002) quando não se define uma quantidade razoável de informações torna a população muito pequena e restringe o nível de variabilidade genética. Porém se a população é muito grande, mais recursos computacionais são necessários e o algoritmo pode apresentar um desempenho de execução abaixo do esperado. Portanto, é necessário um equilíbrio na escolha do número inicial de indivíduos da população (TIMÓTEO, 2002) Operadores Genéticos Os operadores genéticos são responsáveis pela transformação da população através de sucessivas gerações, estendendo a busca até chegar a um resultado satisfatório. Um Algoritmo Genético evolui, em suas sucessivas gerações, frente ao uso de três operadores básicos (SHAPIRO, 1999 apud SOBRINHO e GIRARDI, 2003): Seleção A função deste operador em um Algoritmo Genético é oferecer aos melhores indivíduos da 6

7 população, preferência para se tornarem os pais de novos indivíduos de uma nova geração (SOBRINHO e GIRARDI, 2003). Esta seleção pode ser executada de maneiras diferentes. A mais popular é conhecida como método da roleta, no qual o valor de fitness de um indivíduo dividido pela soma de todos os fitness na população equivale à probabilidade deste indivíduo ser selecionado (TINÓS, 2007). Imagina-se uma roleta onde são colocados todos os indivíduos da população, onde segundo Goldberg (1989) cada indivíduo possui uma fatia da roleta proporcional à sua adaptação, isto é, aos indivíduos com alta aptidão é dada uma porção maior da roleta, enquanto aos de aptidão mais baixa uma porção menor. A roleta é girada um determinado número de vezes, e são escolhidos, como indivíduos que participarão da próxima geração, aqueles sorteados na roleta. Quanto melhores são os indivíduos, mais chances de serem selecionados (TINÓS, 2007). Cruzamento O operador cruzamento é utilizado após o de seleção que se caracteriza pela troca de segmentos entre pares de indivíduos selecionados, com a finalidade de originar novos indivíduos que poderão ser incluídos na próxima geração (SOBRINHO e GIRARDI, 2003). Segundo Sobrinho e Girardi (2003), a idéia principal do cruzamento é a propagação das melhores características dos indivíduos mais aptos da população. As formas mais comuns utilizadas são de um ponto de cruzamento, onde é selecionado um ponto aleatoriamente nos indivíduos e, a partir daí, é efetuada a troca do material genético. Mutação A mutação responsável pela introdução e manutenção da diversidade genética na população. Ela trabalha alterando arbitrariamente, logo após o cruzamento, um ou mais genes de um ou mais indivíduos escolhidos, fornecendo dessa forma meios para a introdução de novos elementos na população (SOBRINHO e GIRARDI, 2003). Como essa alteração é aleatória, não é possível garantir que a mesma seja boa. Em caso positivo, permanecerá nas próximas gerações, caso contrário, será eliminada pela seleção Parâmetros Genéticos Segundo Sobrinho e Girardi (2003), alguns parâmetros influenciam o comportamento dos Algoritmos Genéticos. A seguir, são listados alguns parâmetros genéticos utilizados freqüentemente: Tamanho da população Uma população pequena, o desempenho pode cair, pois a população fornece uma pequena cobertura do espaço de busca do problema. Uma grande população geralmente fornece uma cobertura representativa do domínio do problema, além de prevenir convergências. No entanto, para se trabalhar com grandes populações, são necessários maiores recursos computacionais (SOBRINHO e GIRARDI, 2003). Taxa de Cruzamento Quanto maior for esta taxa, mais rapidamente novas estruturas serão introduzidas na população. Mas se esta for muito alta, a maior parte da população será substituída, e pode ocorrer perda de estruturas de alta aptidão. Com um valor baixo, o algoritmo pode tornar-se muito lento (SOBRINHO e GIRARDI, 2003). Tipos de Cruzamento O tipo de cruzamento a ser utilizado determina a forma como se procederá a troca de genes de informação entre os pares de indivíduos selecionados para o cruzamento. O ideal é testar diversos tipos de cruzamento em conjunto com as outras configurações do Algoritmo Genético para verificar qual apresenta um melhor resultado (CHEIN-SHUNG HWANG, 2010). Taxa de Mutação A taxa de mutação determina a probabilidade em que uma mutação ocorrerá. Uma taxa baixa de mutação previne que uma posição fique estagnada em um valor. Com uma taxa muito alta a busca se torna essencialmente aleatória além de aumentar muito a possibilidade de que uma boa solução seja destruída (SOBRINHO e GIRARDI, 2003). A melhor taxa de mutação é dependente da aplicação, mas, para a maioria 7

8 dos casos está entre 0,001 e 0,1 (BÄCK, 1996 apud SOBRINHO e GIRARDI, 2003). 3 PROJETO E METODOLOGIA Este trabalho apresenta o a implementação de Algoritmos Genéticos em um sistema de recomendações. A aplicação dessa técnica da Inteligência Artificial, baseada na evolução e seleção natural dos indivíduos, é empregada em um sistema de recomendação de pacotes de viagens com a finalidade de analisar seu comportamento e sua eficácia na resolução do problema dentro deste contexto proposto. Algoritmos Genéticos é uma técnica muito utilizada nos dias atuais, que podem ser aplicada nos mais diversos tipos de sistemas computacionais para a resolução de problemas que necessitam basicamente de buscas e otimizações (KO, S. J., & LEE, J. H, 2001). Foi pensado nisso que a aplicação desta técnica nesses tipos de sistemas pode se tornar uma possível solução na melhora dessa busca a fim de encontrar a recomendação ideal. 3.1 Funcionamento O processo de funcionamento foi dividido basicamente em quatro partes: 1) Aquisição do Conhecimento 2) Extração do perfil do usuário 3) Busca baseada na Filtragem Colaborativa a) Consulta a base de dados b) Processamento c) Retorno dos indivíduos mais compatíveis 4) Aplicação do Algoritmo Genético a) Indivíduo e População b) Fluxo do algoritmo c) Função de fitness d) Retorno da Recomendação O sistema monta o perfil do usuário de forma explícita, a partir de um questionário que é disponibilizado para que o mesmo responda. O usuário então, responde essas questões atribuindo conceitos a cada característica relacionada ao seu perfil. Esses conceitos são mensurados por pesos, a fim de obter-se uma variância entre ótimo, regular e ruim, possibilitando, dessa forma, mensurar o nível de importância que o usuário tem por suas opções dentro de um pacote turístico. A forma de avaliação e os conceitos serão detalhados nas seções a seguir. O perfil do usuário é construído em um vetor linear onde cada posição contém o peso de cada uma das características respondidas no questionário. Esse vetor é dividido em dois grupos, cada um contém em seus respectivos genes: A) O grupo das características pessoais. B) O grupo das características de preferências. A figura 3 apresenta essas características modeladas no vetor. Figura 3 Características do Usuário O sistema funciona por um processo de recomendação baseado em características dos perfis de usuários já existentes a partir de uma base de dados. Quando solicitada a recomendação, o algoritmo responsável por essa etapa faz a busca nessa base de dados a fim de encontrar indivíduos semelhantes ao usuário ativo, tendo por parâmetros a similaridade do grupo das características pessoais dos itens presentes 8

9 em seus perfis. Uma vez que esses indivíduos são recuperados, outro grupo de características presentes no perfil do usuário é utilizado, são as características referentes às suas preferências. A partir deste momento, o algoritmo genético presente no sistema começa a atuar. Após o sistema selecionar na base de dados os usuários semelhantes ao ativo, esses genes referentes às características quanto as suas preferências por pacotes turísticos, são utilizados para gerarem os indivíduos da primeira população do Algoritmo Genético. Dessa forma, a população terá um número de cromossomos geneticamente forte. O restante dos indivíduos será formado aleatoriamente, possibilitando a diversificação populacional do Algoritmo Genético. Reproduzindo indivíduos e gerando novas populações, o Algoritmo Genético submeterá a um teste de aptidão esse grupo de características presentes nos cromossomos objetivando buscar o modelo de pacote turístico ideal para o usuário ativo. O Algoritmo Genético será responsável por evoluir uma população finita de indivíduos - que serão os pacotes turísticos até encontrar o indivíduo que possui as melhores características que caibam no perfil do usuário ativo em questão. Essa população será evoluída fazendo com que esses indivíduos troquem informações entre seus genes, através de cruzamentos e mutações, até o momento em que o fitness ideal seja atingido. Isto é, o fluxo de evolução do algoritmo somente irá terminar quando o melhor indivíduo da população for encontrado. Esse indivíduo será retornado no formato de um pacote turístico que estará previamente cadastrado na base de dados. 3.2 Aquisição do Conhecimento Para que fosse possível o desenvolvimento deste estudo, se fez necessário consultar uma pessoa especialista na área de Turismo para a aquisição do conhecimento para que fosse possível a implementação real do protótipo. A aquisição de conhecimento foi adquirida junto com uma profissional que atua na área de domínio deste trabalho possuindo experiência suficiente para fornecer informações confiáveis. Com a obtenção dos conhecimentos necessários, chegou-se a conclusão dos seguintes parâmetros para o desenvolvimento do protótipo: Os atributos preferenciais do usuário: são as principais características que o usuário procura no momento de escolher um pacote turístico. Dentro do sistema, esses atributos foram modelados com a finalidade de permitir ao usuário atribuir pesos conforme as suas preferências: litoral, campo, montanha, Eventos culturais e teatrais, festividades noturnas, e o clima inverno e verão. Características pessoais dos usuários: as características pessoais básicas necessárias para se saber a respeito do usuário são: sexo, idade ou faixa de idade e o tipo de viagem. No protótipo, essas características, tratadas como pessoais, foram modeladas a fim de servirem como base de comparação no momento da busca baseada na Filtragem Colaborativa. Limiar de similaridade: o percentual mínimo indicado para recomendar o pacote turístico para um usuário é de 80%. Neste trabalho, este valor é importante pelo fato de estar diretamente ligado ao cálculo de fitness do Algoritmo Genético. Para fins de testes, este valor será manipulável na interface do protótipo. É importante lembrar que esse limiar varia de acordo com o domínio que o algoritmo for aplicado. 3.3 Extração do Perfil do Usuário A criação do perfil do usuário se dá através da coleta de forma explícita. Para tanto, é solicitado que o usuário preencha um questionário no momento em que o mesmo fazer uso do sistema pela primeira vez. A coleta de informações é feita por duas categorias de perguntas: uma de cunho pessoal, (idade, sexo, viaja sozinho ou acompanhado, etc.) que são tratadas como dados pessoais ; e outro conjunto de perguntas em nível de interesses que o usuário busca (se prefere atrações turísticas mais esportivas, ou mais culturais, se prefere praia, campo, etc.) que são tratadas como dados de interesses. Essas duas categorias de perguntas compõem o perfil do usuário, que o sistema trata como um vetor 9

10 de posições, onde cada posição refere-se a uma característica com os pesos que o usuário respondeu no momento do questionário. A Figura 4 mostra essas características dividias no perfil do usuário modelado no formato de vetor. Figura 4 Características do Usuário O usuário responde atribuindo pesos a estas questões, que por sua vez são as características que pertencem ao seu perfil. Esses pesos são mensurados por valores que vão de 1 (um) a 4 (quatro), a fim de obter-se uma variabilidade entre o conceito bom e ruim considerado pelo usuário. Essa escala de mensuração pode ser visualizada no Quadro 2, que mostra os conceitos que o sistema usa de base para considerar os pesos dados pelo usuário. Quadro 2 Pesos e Conceito de avaliação Nota Conceito 1 Não gosto (ruim) 2 Gosto pouco (regular) 3 Gosto (bom) 4 Gosto muito (ótimo) Após as perguntas serem respondidas, os dados são submetidos e armazenados na base de dados do sistema, dessa forma então são criados os perfis dos usuários. 3.4 Busca baseada na Filtragem Colaborativa A Filtragem Colaborativa do sistema consiste basicamente em: consulta ao banco de dados, processamento e o retorno dos usuários mais parecidos ao usuário ativo. Esta fase é aplicada para buscar na base de dados os usuários cadastrados mais parecidos com o usuário ativo. Essa etapa de filtragem é caracterizada por um processo de identificação de similaridade pelos genes referentes ao grupo dos dados pessoais presentes no perfil do usuário Consulta a base de dados O sucesso de um sistema de recomendação depende bastante da eficácia do algoritmo que se encarrega a encontrar os mais semelhantes conjuntos de perfis caracteristicamente parecidos para o usuário ativo (ALCAZAR, SALAH e VELEZ-LANGS, 2006). Por este motivo, é muito importante que um algoritmo que tenha essa função utilize um determinado método que capture apenas os melhores perfis ou os perfis mais próximos. A fim de selecionar os melhores perfis possíveis, o método ideal seria utilizar todos os perfis da base de dados que apresentam semelhança. No entanto, isso nem sempre é a opção mais viável, principalmente se essa base for muito grande e possuírem-se poucos recursos computacionais. Como resultado em nível didático, neste trabalho, foi predefinido um número máximo de indivíduos que possuem o maior grau de semelhança ao usuário ativo. Primeiramente, quando o algoritmo de filtragem for iniciado, o perfil do usuário ativo será carregado com suas características em um vetor linear. Uma busca é feita na base de dados, procurando os usuários que possuem as mesmas características pessoais do usuário ativo características essas referentes aos dados pessoais, que serão: idade, sexo, viajar sozinho ou acompanhado Processamento de similaridade O processamento da similaridade para encontrar os usuários mais parecidos ao que está ativo, é feito pelo critério de semelhança dos dados pessoais contidos no vetor de perfil do usuário. Para que o perfil do 10

11 usuário cadastrado seja considerado semelhante ao ativo, segundo a especialista da área, é necessário o mesmo ter 80% das características pessoais iguais. Sendo que esse valor só vale para este domínio do turismo aplicado. Na Figura 5 está representado o perfil do usuário em forma de um vetor, e pode-se visualizar a parte do elemento que é usado para se achar a similaridade nessa fase de comparação Retorno dos usuários mais compatíveis Figura 5 Características pessoais do vetor usuário Uma vez aplicado o processo de similaridade entre o perfil do usuário ativo com os perfis guardados no banco, o sistema tem como retorno desse processo, os perfis com as características pessoais iguais ou mais próximas ao usuário ativo. Essa etapa é importante para que o Algoritmo Genético seja aplicado de forma que os genes dos usuários conhecidos ajudem na recomendação ideal. É a partir desse momento que a o Algoritmo Genético começa a atuar no sistema. Até a etapa de filtragem para buscar os usuários semelhantes, trabalhou-se apenas com o conjunto referente às características pessoais do perfil do usuário. A partir desse ponto, o conjunto das preferências presentes nos perfis, tem grande importância para a aplicação da técnica. As características de preferências contidas nos genes dos perfis dos usuários retornados pela busca servem como base para a criação dos indivíduos da primeira população do Algoritmo Genético. 3.5 Aplicação do Algoritmo Genético Esta é a etapa que o estudo traz como o foco principal. Nesse momento, quando já se possui os usuários mais similares ao ativo e, baseado nas características desses, o sistema inicia a busca da melhor recomendação que se enquadre ao usuário ativo. Os genes referentes às preferências de pacotes turísticos dos usuários semelhantes ao ativo, retornados na fase anterior, servem pra gerar a primeira população do Algoritmo Genético. Se esse retorno for um número pequeno de indivíduos, o restante é gerado de maneira aleatória, completando a população inicial. Dessa forma a população já começa com um número de indivíduos geneticamente próximo ao que o usuário precisa Indivíduo e população Uma vez conhecendo as preferências que o usuário ativo possui por um pacote turístico, tem-se então a missão de buscar a melhor solução que caiba dentro dessas características. O individuo usado pelo Algoritmo Genético é um vetor linear onde cada um de seus genes contém os pesos das características que um pacote turístico possui, para que se consiga chegar a um modelo de pacote turístico ideal baseado nas preferências inicialmente respondidas pelo usuário. O individuo usado pelo Algoritmo Genético é um vetor linear onde cada posição desse vetor representa os fenótipos contendo os pesos das características que um pacote turístico possui, para que se consiga chegar a um modelo de pacote turístico ideal baseado nas preferências inicialmente respondidas pelo usuário. O conjunto dessas características chama-se genótipo. Uma população de indivíduos é então criada, a fim de evoluir e convergir ao indivíduo (pacote turístico) que melhor se adapte as evoluções da população. A figura 6 mostra o indivíduo criado pelo Algoritmo Genético com cada gene sendo uma característica representada por um peso. Características essas que se relacionam com as do usuário. 11

12 3.5.2 Fluxo do algoritmo Figura 6 Indivíduo da população do AG O algoritmo funciona de forma corresponde à aplicação de um conjunto de operações básicas: inicialização, cálculo de aptidão, seleção, cruzamento e mutação, sendo este o fluxo de iteração básico de qualquer Algoritmo Genético. A Figura 7 mostra o fluxograma que o Algoritmo Genético funciona. Inicialização Figura 7 Fluxograma de funcionamento do AG Uma população de n indivíduos, contendo as características dos usuários já conhecidos, são utilizados e o restante dos indivíduos são gerados aleatoriamente. Cada um dos cromossomos da população representa uma possível solução para o problema. Cálculo de Aptidão A aptidão do indivíduo é determinada através do cálculo da função de fitness, que será vista mais adiante. Neste trabalho, essa aptidão se da pela similaridade do pacote turístico para com as preferências contidas no perfil usuário. Seleção Nesta fase os indivíduos mais aptos da geração atual são selecionados. Esses indivíduos são utilizados para gerar uma nova população por cruzamento. Cada indivíduo tem uma probabilidade de ser selecionado proporcional à sua aptidão. Para selecionar esses indivíduos mais aptos, é utilizado o método da roleta. Cruzamento Os cromossomos de cada par de indivíduos que são cruzados são divididos em um ponto, chamado ponto de corte, sorteado aleatoriamente. Um novo cromossomo é gerado permutando-se a metade inicial de um cromossomo coma metade final do outro. 12

13 Mutação A operação de mutação é utilizada para garantir uma maior varredura do espaço de estados e evitar que o Algoritmo Genético convirja muito cedo. A mutação é efetuada alterando-se o valor de um gene de um indivíduo sorteado aleatoriamente, ou seja, vários indivíduos da nova população podem ter um de seus genes alterado aleatoriamente Função fitness As características, tanto do perfil do usuário, quanto dos pacotes turísticos são mensuradas de 1(um) a 4(quatro), com a diferença que nos pacotes turísticos elas já estão pré-definidas no momentos do cadastro. Os dados são comparados através da diferença entre os dois valores e depois é gerada uma média entre todos os valores para saber o grau de similaridade entre o usuário e o pacote turístico. Para que fique mais claro seu funcionamento o Quadro 3 apresenta um modelo. Quadro 3 Comparação entre Preferência e Usuário e o Pacote Turístico Atributos Pacote Turístico Perfil do Usuário Esporte Gastronomia Festividades Peso: 2 Peso: 3 Peso: 4 Peso: 3 Peso: 2 Peso: 4 O Quadro 3 mostra como as informações são armazenadas no banco de dados para o usuário do sistema, elas estão mensuradas no formato de pesos do mesmo modo que anteriormente foi apresentado no Quadro 2 para o perfil do usuário, apenas com conceito de avaliação diferente, como mostra abaixo o Quadro 4. Quadro 4 Pesos e Conceito de avaliação para os Pacotes Nota Conceito 1 Não Presente 2 Mais ou menos 3 Bastante Presente 4 Muito Presente Para calcular os valores de diferença apresentados no quadro 3 se terá base no seguinte cálculo: Esporte: (2 3) = -1 Gastronomia: (3-2) = 1; Festividades: (4-4) = 0. Todos os valores devem ser utilizados na forma positiva. Para que a recomendação seja feita ao usuário, o cálculo deve ser maior que 80%, que é o limiar mínimo proposto pela especialista. Se alguma das características não estiver presente no pacote turístico, será levado em consideração pelo fato do usuário querer e o pacote não oferecer. Nesse caso, o indivíduo, então, sofrerá uma penalidade na pontuação no seu fitness, mas ele não será descartado, isto é, se ainda possuir o fitness mínimo para recomendação, ele será selecionado. Depois das diferenças encontradas os valores são transformados em percentual, seguindo a escala apresentada abaixo pela Tabela 1. 13

14 Tabela 1 Percentuais Correspondentes Diferença Percentual 0 100% 1 80% 2 50% 3 30% O cálculo final será feito através da fórmula padrão para se calcular a média aritmética. Considerando-se os dados do quadro 3, um exemplo seria: 80% (relativo a esportes), 80% (relativo à gastronomia) 100% (relativo a festividades): Resultando num total de: (80% + 80% + 100%) 3 = Similaridade de 86,6% (Se o pacote não oferecesse todas algumas das preferências do usuário, esse indivíduo sofreria uma penalidade, diminuindo esse valor em 10, ficando com 76,6% de similaridade) Retorno da Recomendação Após a identificação do modelo ideal de pacote turístico ao usuário, o sistema vai até a base de dados buscar o pacote turístico, previamente cadastrado com seus respectivos pesos, e retorná-los na tela para o usuário. Esta etapa é a parte final do sistema, após essa etapa o Algoritmo Genético encerra sua etapa de processamento dentro do sistema. A apresentação retorna todas as recomendações que atingem o limiar mínimo de similaridade que é de 80%, indicado como ideal pela especialista. 4 DESENVOLVIMENTO DO PROTÓTIPO Uma vez que o escopo principal deste estudo não é o desenvolvimento de um sistema baseado nas qualidades ditadas pela engenharia de software abrangendo e focando em todos os requisitos padrões no processo de criação de uma aplicação, foi desenvolvido um protótipo de sistema para a visualização da ideia concebida, isto é, uma ferramenta de recomendações que aplique a técnica dos Algoritmos Genéticos, cujo objetivo maior foi o de analisar o comportamento e a eficácia que o algoritmo pode vir a ter quando aplicado nesses tipos de sistemas. Para implementação do protótipo fez-se uso da linguagem de programação Java, combinada à API do Swing para compor a interface gráfica, ou seja, a parte visual do protótipo. Para a criação da base de dados local, que armazena fisicamente os perfis dos usuários e os modelos de pacotes turísticos a serem recomendados, foi utilizado o Java DB Derby, que é um servidor de banco de dados com escrito inteiramente em Java, e dá suporte total a SQL, JDBC API. A interface gráfica do protótipo é composta por um conjunto de algumas telas, dentre elas a de login e cadastro do perfil do usuário. A primeira foi criada para permitir o acesso do usuário no sistema por meio do nome de login e senha previamente cadastrada na base de dados, e a segunda para a criação e mapeamento do perfil dos usuários no momento da recomendação. O cadastro do perfil do usuário é um conjunto de telas divididas em duas etapas dentro do projeto, é composto por requisitos que o sistema necessita para a criação deste cadastro. É com base no processamento destes requisitos que o sistema tem a possibilidade de montar o perfil do usuário e guardá-lo fisicamente no banco de dados. Esses requisitos foram divididos em dois grupos, o grupo dos Dados Pessoais e os Dados Preferenciais, como explicados na seção de metodologia deste artigo. Para a definição desses requisitos, foi feito um estudo baseado nos artigos e trabalhos anteriormente produzidos e que são apresentados como referencias no final deste artigo. Esses requisitos, por sua vez, 14

15 foram trabalhados e adaptados especificamente para o funcionamento do Algoritmo Genético que atua neste protótipo, possuindo assim importância fundamental e específica para a criação dos perfis que serão montados, utilizados e armazenados na base de dados. Na tela de recomendação, que possui foco principal neste estudo, é o módulo que ocorre todo o trabalho de processamento do Algoritmo Genético existente no protótipo. Nesta são apresentados os resultados dos perfis mais compatíveis ao usuário ativo. Possui também campos de entradas de valores a fim de testar os parâmetros genéticos característicos de análises do Algoritmo Genético, isto é, testar o comportamento do Algoritmo Genético quanto ao tamanho da população, quanto aos números dos pais e iterações, e a taxa de mutação e dos bits mutantes. Esses campos que serviram de parâmetros para os testes de análise do funcionamento do Algoritmo Genético foram os seguintes: Tamanho da População de Indivíduos: Determina o número máximo de indivíduos que serão criados. Um número de indivíduos tem origem dos perfis já existentes no banco, se o número de indivíduos retornados da base de dados for menor que o valor de entrada, os indivíduos faltantes são criados de forma aleatória a fim de completar o número de indivíduos no campo de entrada. Número de Iterações: Determina o número de vezes que a rotina de evolução da população será realizada enquanto não houver resultado. Número de Pais: Determina o número de indivíduos que sofrerão crossover, isto é, o número de pais que serão cruzados e gerarão novos descendentes para a população. Taxas de Mutação: Determina o percentual de indivíduos, das novas gerações, que sofrerão mutações. Uma baixa taxa de mutação previne que uma dada posição fique estagnada em um valor, Com uma taxa muito alta a busca se torna essencialmente aleatória. Número de Bits Mutantes: determina a quantidade de fenótipos dos indivíduos que sofrerão mutação. Esses campos foram projetados para auxiliar nos testes de validação final do Algoritmo Genético, esses parâmetros foram fundamentais para testar, analisar e chegar às devidas conclusões que o projeto necessita para que sua validação possa ser de fato concretizada. Nesta tela também se encontra uma aba que apresenta os dados pessoais do usuário ativo no sistema. Foi pensado nessa possibilidade para que, além de permitir que o usuário visualize seus dados na base de dados, a comparação dos perfis que o algoritmo tomar por semelhantes e retornados, foram comparados individualmente no momento dos testes a fim de possuir uma confiança maior na validade do algoritmo. A figura 8 mostra esta tela com a aba de recomendação ativa, permitindo a visualização da tabela que recebe o usuário mais compatível, e os campos utilizados para os testes do Algoritmo Genético, como por exemplo, o tamanho da população. 15

16 Figura 8 Tela de Solicitação de Recomendação A figura 9 mostra uma recomendação gerada. A descrição do pacote turístico, acompanhada pelos pesos de suas características. Figura 9 Retorno da Recomendação 16

17 5 VALIDAÇÃO E RESULTADOS Para a validação do sistema e viabilidade dos testes, a base de dados foi alimentada com perfis de 143 pessoas diferentes, que já viajaram para algum destino utilizando pacote turístico pelo menos uma vez. Relativo a essa quantidade de cadastros, o número de pessoas pertencentes ao sexo feminino foram 87 (60,80%) e pertencentes ao sexo masculino foram de 56 (39,20%). Esses cadastros foram de pessoas com as seguintes classificações etárias: 86 pessoas (60,10%) = 18 a 25; 33 pessoas (23,10%) = 26 a 35; 24 pessoas (16,80%) = mais de 35 anos. Esses dados referentes a sexo e idade dos usuários são relevantes pelo fato de servirem de parâmetros de similaridade para acharem-se os indivíduos com perfis mais semelhantes. Uma vez a base de dados iniciada com um número de registros suficiente para conseguir-se fazer os testes desejados no protótipo, o seguinte passo foi à inicialização dos mesmos para achar os valores ideais nos parâmetros genéticos do algoritmo. Para tanto, foi criado um perfil exclusivo para essa etapa dos testes. Da mesma forma padrão que são criados os outros perfis, porém esse usuário foi utilizado apenas para a análise do funcionamento de recomendação do sistema. O método utilizado para a seleção dos pais mais aptos para o crossover foi o método da roleta, isso ajudou nas gerações futuras da população, capturando apenas os pais com os maiores fitness para gerarem descendentes. Bem como a substituição dos indivíduos, que foram feitas substituindo os novos cromossomos pelos piores da população. A função de fitness calculou a aptidão dos indivíduos classificando-os da seguinte forma: analisou o limiar de similaridade dos indivíduos e separou-os entre bons e ruins. Se houvesse indivíduo bom, ele convergia, caso contrário, ele selecionava os melhores pais capturando os que estavam posicionados no topo da lista para o cruzamento. Pois já estavam organizados de forma ordenada quanto a seus fitness. Com os testes foi constatado que quanto maior a taxa de mutação da população e maior o número de genes mutantes nos indivíduos, mais tempo levava-se para o algoritmo convergir alguma solução. Com isso, aumentou-se o número da população para o mínimo de 1200 indivíduos, e diminui-se a taxa de mutação da população para 5%. O número de genes mutantes nos fenótipos desses indivíduos foram ajustados para 2 e esses genes sofrem mutações de forma aleatória. Testes foram realizados com a população de até 3000 indivíduos, mas o comportamento de retorno não diferiu muito apenas acarretou na demora de processamento. O crossover utilizado foi o corte do tipo one-point, isto é, cada casal de pais geram o primeiro filho unindo os 5 primeiros fenótipos do pai com os 5 primeiros fenótipos da mãe, e o segundo filho com os 5 últimos fenótipos do pai e os 5 últimos da mãe. Para introduzir esses novos indivíduos na população, foi feito a substituição nos últimos indivíduos do vetor, ou seja, os piores indivíduos. Quanto ao limiar de similaridade mínimo, usou-se o valor de 80% recomendado pelo especialista. Os indivíduos que não possuíssem as características que o usuário gostaria, não foram descartados, apenas sofreram uma penalidade, baixando seu valor de fitness. Mas se ainda assim ele continuasse com o limiar igual ou acima do permitido, ele seria selecionado e recomendado. Após definidos os valores dos parâmetros genéticos que iriam ser colocados no algoritmo, foi disponibilizados a cinco usuários para que testassem e avaliassem o funcionamento do protótipo. Todos os usuários possuem curso superior, três deles são formados na área de comunicação e dois deles na área de informática, e todos já viajaram utilizando pacote turístico pelo menos uma vez. A experiência junto ao usuário foi bastante positiva. Os mesmos satisfizeram-se e concordaram com as recomendações geradas pelo sistema. O que aconteceu foi certo desconforto para com a interface, cuja reclamação foi por não estar totalmente amigável e intuitiva, porém o foco deste estudo não foi essa parte do desenvolvimento. 17

18 6 CONSIDERAÇÕES FINAIS Com este estudo, pode-se constatar na prática que esta técnica inteligente tem muito a ser explorada dentro desses sistemas. Na maior parte das literaturas, trabalhos e artigos científicos pesquisados para o desenvolvimento deste estudo, percebeu-se que em sistemas de recomendação a aplicação de técnicas diferentes das que geralmente são aplicadas, são muito pouco utilizadas. Os Algoritmos Genéticos, por exemplo, possuem pouca utilização para a resolução de problemas dentro desses sistemas. Com este estudo foi possível constatar que é possível utilizar esta técnica com bastante segurança e confiabilidade. A montagem de um protótipo foi apenas para estudar a técnica e trabalhar com a ideia dentro do universo proposto, porém a solução dos Algoritmos Genéticos é capaz de ser aplicada em diversos outros ambientes de sistema, e das mais diversas formas. Na aplicação dos testes foi constatado que, quanto maior variedade de cadastros dos sexos femininos e masculinos dentro da base de dados, assim como das faixas etárias será melhor para a filtragem que acontece antes do algoritmo. Isso se explica pelo fato de que o sistema se baseia na filtragem colaborativa para buscar no banco os indivíduos que possuem as características de sexo e faixa etária iguais ao usuário ativo do sistema. Os resultados dos testes técnicos em cima do algoritmo foram bastante regulares, o algoritmo se comportou dentro do esperado. Os parâmetros genéticos que trabalham junto ao algoritmo, foram descobertos após alguns testes e ajustes na quantidade de bits que sofriam mutações nos fenótipos dos indivíduos. Os pesos contidos nos cromossomos necessitou-se usar números inteiros de 1 a 4, diferente dos bits 0 e 1 que geralmente são utilizados nesta técnica, confirmando essa possibilidade de mudança. O cálculo da função de fitness convergiu indivíduos aptos a partir das cinco primeiras gerações. Isso se dá ao fato da utilização do método roleta para a seleção dos pais mais para crossover, juntamente com o número de bits e taxa de mutação baixa. A contribuição desse trabalho é também permitir a futuros estudos a possibilidades de aprimoramentos, melhorias e até mesmo mudanças na forma de abordagem e aplicação desta técnica dentro do contexto apresentado, como por exemplo, a aplicação do Algoritmo Genético para descobrir não só o pacote turístico ideal, mas também os pesos das preferências que o usuário tem em um pacote turístico, definindo limites máximos e mínimos para esses atributos e limiares, equivalentes como se encontra no Knapsack problem (problema da mochila), também utilizado Algoritmos Genéticos em sua resolução. Como trabalhos futuros relacionados a este sistema, o desenvolvimento de uma versão que funcione online, e em dispositivos móveis. Bem como o estudo do desenvolvimento de uma interface gráfica mais intuitiva e funcional visando na comodidade dos usuários. É importante ressaltar que essas conclusões relativas às validações e testes, só valem para esse domínio estudado. Uma vez mudado o domínio da aplicação, os valores dos parâmetros genéticos devem ser revistos. Pois o fato de necessitar-se de outros requisitos e remodelagem de problema dentro do domínio, pode acontecer do algoritmo necessitar de mudanças para chegar-se ao comportamento desejado do mesmo. Por fim conclui-se que a aplicação do Algoritmo Genético no sistema de recomendação dentro do domínio proposto foi bastante satisfatória, como mostraram as validações e conclusões. Tendo em vista que os Algoritmos Genéticos podem ser exponencialmente explorados e adaptados aos mais diversos tipos de situações, muitos outros tipos de trabalhos e aplicações podem surgir contribuindo ainda mais com novas descobertas para essa área, que ainda é bastante desafiadora para o mundo virtual. REFERÊNCIAS ALCAZAR, Julio; SALAH, Jorge; VELEZ-LANGS, Osvaldo Learning User s Characteristics in Collaborative Filtering Through Genetic Algorithms Dpto de Arquitectura y Tecnologia de Comp. E Inteligencia Artificial Universida Rey Juan Carlos, Mostelos Espanha BÄCK, T. - Evolutionary Algorithms in Theory and Practice: Evolution Strategies, Evolutionary Programming, Genetic Algorithms - New York:Oxford University Press, CATARINA, Adair S., SAHGA Um Algoritmo Genético Híbrido com Representação Explícita de 18

19 Relacionamentos Espaciais para Análise de Dados Geoespaciais, Instituto Nacional de Pesquisas Espaciais (INPE) - São José dos Campos p. CHEIN-SHUNG HWANG (2010), Genetic Algorithms for Feature Weighting in Multi-criteria Recommender Systems, JCIT: Journal of Convergence Information Technology, Dept. of Information Management Chinese Culture University Taipei, Taiwan. FERREIRA, L.P. (2003). TDSGEN Uma Ferramenta de Geração de Dados de Teste Baseada em Algoritmos Genéticos - (Dissertação de Mestrado). UFPR. Curitiba/Paraná. GOLDBERG, D. E. (1989) - Genetic Algorithms in Search, Optimization, and Machine Learning - Addson Wesley Pub. Ko, S. J., & Lee, J. H. (2001). Discovery of user preference through genetic algorithm and Bayesian categorization for recommendation. Conceptual Modeling for New Information Systems Technologies, ER 2001 Workshops, HUMACS, DASWIS, ECOMO, and DAMA. Revised Papers (Lecture Notes in Computer Science Vol.2465). Berlin, Germany: Springer-Verlag,. xvii+500, MARCONDES, Jorge. SADTUR Sistema Especialista De Apoio À Decisão Em Inventário E Diagnóstico Turístico. Universidade Federal de Santa Catarina MILANI, Fabio e CAZELLA, Silvio César - Um modelo para determinar a autoridade de usuários em Sistemas de Recomendação - Universidade do Vale do Rio dos Sinos (Unisinos), REATEGUI, Elisio Berni e CAZELLA, Sílvio Cézar. Sistemas de Recomendação. In: XXV Congresso da Sociedade Brasileira de Computação, São Leopoldo, RESNICK, P. et al. GroupLens: an open architecture for collaborative filtering of netnews. - In: ACM CONFERENCE ON COMPUTER-SUPPORTED COOPERATIVE WORK. Proceedings... [s.l.: s.n.], SHAFFER, J. B. et al. (2001) - E-Commerce Recommendation applications. Data Mining and Knowledge Discovery, Kluwer Academic Publishers, Hingham, MA, USA, Vol. 5. Issue 5. SHAPIRO, J. - Genetic Algorithms in Machine Learning, taught at the Advanced Summer School on Machine Learning and Applications, SOBRINHO, Antonio Carlos - Uma análise dos algoritmos genéticos e suas aplicações em sistemas de acesso à informação - Monografia de conclusão de curso, CGCC, Universidade Federal do Maranhão, SOBRINHO, Antonio Carlos e GIRARDI, Rosário. Uma Análise das Aplicações dos Algoritmos Genéticos em Sistemas de Acesso À Informação Personalizada. REIC. Revista Eletrônica de Iniciação Científica, v. III n. IV TIMÓTEO, G. T. S. (2002) - Desenvolvimento de um algoritmo genético para a resolução de timetabling - 76 f. Monografia (Ciência da Computação) Departamento de Ciência da Computação, Universidade Federal de Lavras, Lavras. TINÓS, Renato - Comportamento auto-organizável em algoritmos genéticos aplicados a robôs móveis em ambientes dinâmicos - SBA. Sociedade Brasileira de Automática, v. 18, p TORRES, Roberto. (2004) - Personalização na Internet: Como Descobrir os Hábitos de Consumo de Seus Clientes, Fidelizá-los e Aumentar o Lucro de Seu Negócio - 1ª ed. São Paulo, Brasil. Novatec Editora. 19

ALGORITMOS GENÉTICOS: UMA VISÃO EXPLANATÓRIA

ALGORITMOS GENÉTICOS: UMA VISÃO EXPLANATÓRIA 136 ALGORITMOS GENÉTICOS: UMA VISÃO EXPLANATÓRIA FILITTO, Danilo 1 Resumo: Os algoritmos Genéticos inspiram-se no processo de evolução natural e são utilizados para resolver problemas de busca e otimização

Leia mais

CHECK - LIST - ISO 9001:2000

CHECK - LIST - ISO 9001:2000 REQUISITOS ISO 9001: 2000 SIM NÃO 1.2 APLICAÇÃO A organização identificou as exclusões de itens da norma no seu manual da qualidade? As exclusões são relacionadas somente aos requisitos da sessão 7 da

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Processo de Controle das Reposições da loja

Processo de Controle das Reposições da loja Processo de Controle das Reposições da loja Getway 2015 Processo de Reposição de Mercadorias Manual Processo de Reposição de Mercadorias. O processo de reposição de mercadorias para o Profit foi definido

Leia mais

Manual SAGe Versão 1.2 (a partir da versão 12.08.01)

Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação

Leia mais

Manual Portal Ambipar

Manual Portal Ambipar Manual Portal Ambipar Acesso Para acessar o Portal Ambipar, visite http://ambipar.educaquiz.com.br. Login Para efetuar o login no Portal será necessário o e-mail do Colaborador e a senha padrão, caso a

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia

Leia mais

Módulo 4. Construindo uma solução OLAP

Módulo 4. Construindo uma solução OLAP Módulo 4. Construindo uma solução OLAP Objetivos Diferenciar as diversas formas de armazenamento Compreender o que é e como definir a porcentagem de agregação Conhecer a possibilidade da utilização de

Leia mais

Documento de Análise e Projeto VideoSystem

Documento de Análise e Projeto VideoSystem Documento de Análise e Projeto VideoSystem Versão Data Versão Descrição Autor 20/10/2009 1.0 21/10/2009 1.0 05/11/2009 1.1 Definição inicial do documento de análise e projeto Revisão do documento

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

5 Mecanismo de seleção de componentes

5 Mecanismo de seleção de componentes Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações

Leia mais

Sistema de Controle de Solicitação de Desenvolvimento

Sistema de Controle de Solicitação de Desenvolvimento Sistema de Controle de Solicitação de Desenvolvimento Introdução O presente documento descreverá de forma objetiva as principais operações para abertura e consulta de uma solicitação ao Setor de Desenvolvimento

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

Complemento IV Introdução aos Algoritmos Genéticos

Complemento IV Introdução aos Algoritmos Genéticos Complemento IV Introdução aos Algoritmos Genéticos Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações e

Leia mais

Manual de Utilização

Manual de Utilização Manual de Utilização Versão 1.0 18/01/2013 Sempre consulte por atualizações deste manual em nossa página. O Cotação Web está em constante desenvolvimento, podendo ter novas funcionalidades adicionadas

Leia mais

ADM041 / EPR806 Sistemas de Informação

ADM041 / EPR806 Sistemas de Informação ADM041 / EPR806 Sistemas de Informação UNIFEI Universidade Federal de Itajubá Prof. Dr. Alexandre Ferreira de Pinho 1 Sistemas de Apoio à Decisão (SAD) Tipos de SAD Orientados por modelos: Criação de diferentes

Leia mais

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas PIM PROGRAMA DE INTEGRAÇÃO COM O MERCADO GUIA DE CURSO Tecnologia em Sistemas de Informação Tecnologia em Desenvolvimento Web Tecnologia em Análise e Desenvolvimento de Sistemas Tecnologia em Sistemas

Leia mais

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de

Leia mais

TOTVS Série 1 Varejo (Simples) - Módulo e-commerce

TOTVS Série 1 Varejo (Simples) - Módulo e-commerce Novo Módulo disponível no TOTVS S1 Varejo: permissão de utilização através de licença específica. Mesmo não adquirindo a licença de uso do módulo ele continuará presente na tela do usuário. 1 Na opção

Leia mais

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE Mariane Alves Gomes da Silva Eliana Zandonade 1. INTRODUÇÃO Um aspecto fundamental de um levantamento

Leia mais

Controle de Almoxarifado

Controle de Almoxarifado Controle de Almoxarifado Introdução O módulo de Controle de Almoxarifado traz as opções para que a empresa efetue os cadastros necessários referentes a ferramentas de almoxarifado, além do controle de

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 04 Algoritmos Genéticos Introdução Algoritmos genéticos são bons para abordar espaços de buscas muito grandes e navegálos

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento

Leia mais

Cálculo utilizando variáveis do tipo DATA

Cálculo utilizando variáveis do tipo DATA Cálculo utilizando variáveis do tipo DATA Pré requisitos: Elaboração de questionário Análise de resultados Visões: relatórios multimídia Publicação de questionário na internet O uso de variáveis do tipo

Leia mais

OCOMON PRIMEIROS PASSOS

OCOMON PRIMEIROS PASSOS OCOMON PRIMEIROS PASSOS O OCOMON ainda não possui um arquivo de Help para atender a todas questões relacionadas ao sistema. Esse arquivo serve apenas para dar as principais instruções para que você tenha

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

LEVANTAMENTO DE MERCADO E SEGMENTAÇÃO DE CLIENTES POR PRODUÇÃO AGRÍCOLA

LEVANTAMENTO DE MERCADO E SEGMENTAÇÃO DE CLIENTES POR PRODUÇÃO AGRÍCOLA LEVANTAMENTO DE MERCADO E SEGMENTAÇÃO DE CLIENTES POR PRODUÇÃO AGRÍCOLA Módulo CRM Siagri AgriBusiness Do ponto de vista tecnológico, o CRM é utilizado para coletar os dados dos clientes, armazená-los

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Cruzeiro SP 2008 FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Projeto de trabalho de formatura como requisito

Leia mais

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MANUAL

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

Footprints Service Core. Manual de uso do sistema

Footprints Service Core. Manual de uso do sistema Footprints Service Core Manual de uso do sistema Sumário Acessando o sistema... 3 Visão geral... 4 Criação de chamados... 5 Acompanhamento de chamados... 7 Compartilhamento de chamados... 8 Notificações...

Leia mais

Expresso Livre Módulo de Projetos Ágeis

Expresso Livre Módulo de Projetos Ágeis Expresso Livre Módulo de Projetos Ágeis Desenvolvedor / Orientador Rafael Raymundo da Silva Guilherme Lacerda Out / 2010 1 Sumário 1.Conhecendo a ferramenta...3 2.Gerência de projetos ágeis...3 2.1Product

Leia mais

P4-MPS.BR - Prova de Conhecimento do Processo de Aquisição do MPS.BR

P4-MPS.BR - Prova de Conhecimento do Processo de Aquisição do MPS.BR Data: 9 de Dezembro de 2005 Horário: 13:00 às 17:00 horas (hora de Brasília) e-mail: Nota: INSTRUÇÕES Você deve responder a todas as questões. O total máximo de pontos da prova é de 100 pontos (100%),

Leia mais

Eduardo J. A. e SILVA 2 Camilla P. BRASILEIRO 3 Claudomilson F. BRAGA 4 Universidade Federal de Goiás, Goiânia, GO

Eduardo J. A. e SILVA 2 Camilla P. BRASILEIRO 3 Claudomilson F. BRAGA 4 Universidade Federal de Goiás, Goiânia, GO Estudo da proporção e o nível de conhecimento dos alunos de graduação do período vespertino do Campus II da UFG sobre o Programa Coleta Seletiva Solidária 1 Eduardo J. A. e SILVA 2 Camilla P. BRASILEIRO

Leia mais

ACOMPANHAMENTO GERENCIAL SANKHYA

ACOMPANHAMENTO GERENCIAL SANKHYA MANUAL DE VISITA DE ACOMPANHAMENTO GERENCIAL SANKHYA Material exclusivo para uso interno. O QUE LEVA UMA EMPRESA OU GERENTE A INVESTIR EM UM ERP? Implantar um ERP exige tempo, dinheiro e envolve diversos

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão 2.0 - Atualização 26/01/2009 Depto de TI - FASUL Página 1

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão 2.0 - Atualização 26/01/2009 Depto de TI - FASUL Página 1 MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento Toledo PR Página 1 INDICE 1. O QUE É O SORE...3 2. COMO ACESSAR O SORE... 4 2.1. Obtendo um Usuário e Senha... 4 2.2. Acessando o SORE pelo

Leia mais

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO AGOSTO DE 2013 SUMÁRIO STI/UFF - Sistema de Gerenciamento de Projetos do PDI SUMÁRIO... 2 1 Introdução... 3 1.1 O que é e qual a finalidade

Leia mais

Manual do sistema SMARsa Web

Manual do sistema SMARsa Web Manual do sistema SMARsa Web Módulo Gestão de atividades RS/OS Requisição de serviço/ordem de serviço 1 Sumário INTRODUÇÃO...3 OBJETIVO...3 Bem-vindo ao sistema SMARsa WEB: Módulo gestão de atividades...4

Leia mais

Manual Geral do OASIS

Manual Geral do OASIS Manual Geral do OASIS SISTEMA DE GESTÃO DE DEMANDA, PROJETO E SERVIÇO DE TECNOLOGIA DA INFORMAÇÃO OASIS Introdução Esse manual tem como objetivo auxiliar aos usuários nos procedimentos de execução do sistema

Leia mais

Gerenciamento de software como ativo de automação industrial

Gerenciamento de software como ativo de automação industrial Gerenciamento de software como ativo de automação industrial INTRODUÇÃO Quando falamos em gerenciamento de ativos na área de automação industrial, fica evidente a intenção de cuidar e manter bens materiais

Leia mais

Pag: 1/20. SGI Manual. Controle de Padrões

Pag: 1/20. SGI Manual. Controle de Padrões Pag: 1/20 SGI Manual Controle de Padrões Pag: 2/20 Sumário 1 Introdução...3 2 Cadastros Básicos...5 2.1 Grandezas...5 2.2 Instrumentos (Classificação de Padrões)...6 3 Padrões...9 3.1 Padrão Interno...9

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. Visão Geral do Sistema Prof. Raul Sidnei Wazlawick UFSC-CTC-INE 2010 Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. A fase de concepção do UP consiste

Leia mais

MUDANÇAS NA ISO 9001: A VERSÃO 2015

MUDANÇAS NA ISO 9001: A VERSÃO 2015 MUDANÇAS NA ISO 9001: A VERSÃO 2015 Está em andamento o processo de revisão da Norma ISO 9001: 2015, que ao ser concluído resultará na mudança mais significativa já efetuada. A chamada família ISO 9000

Leia mais

AVALIAÇÃO DE INTERFACES UTILIZANDO O MÉTODO DE AVALIAÇÃO HEURÍSTICA E SUA IMPORTÂNCIA PARA AUDITORIA DE SISTEMAS DE INFORMAÇÕES

AVALIAÇÃO DE INTERFACES UTILIZANDO O MÉTODO DE AVALIAÇÃO HEURÍSTICA E SUA IMPORTÂNCIA PARA AUDITORIA DE SISTEMAS DE INFORMAÇÕES AVALIAÇÃO DE INTERFACES UTILIZANDO O MÉTODO DE AVALIAÇÃO HEURÍSTICA E SUA IMPORTÂNCIA PARA AUDITORIA DE SISTEMAS DE INFORMAÇÕES Rafael Milani do Nascimento, Claudete Werner Universidade Paranaense (Unipar)

Leia mais

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9

PR 2 PROCEDIMENTO. Auditoria Interna. Revisão - 2 Página: 1 de 9 Página: 1 de 9 1. OBJETIVO Estabelecer sistemática de funcionamento e aplicação das Auditorias Internas da Qualidade, fornecendo diretrizes para instruir, planejar, executar e documentar as mesmas. Este

Leia mais

Sistemas de Gestão Ambiental O QUE MUDOU COM A NOVA ISO 14001:2004

Sistemas de Gestão Ambiental O QUE MUDOU COM A NOVA ISO 14001:2004 QSP Informe Reservado Nº 41 Dezembro/2004 Sistemas de Gestão O QUE MUDOU COM A NOVA ISO 14001:2004 Material especialmente preparado para os Associados ao QSP. QSP Informe Reservado Nº 41 Dezembro/2004

Leia mais

LINGUAGEM DE BANCO DE DADOS

LINGUAGEM DE BANCO DE DADOS LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados

Leia mais

No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o

No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o DATABASE MARKETING No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o empresário obter sucesso em seu negócio é

Leia mais

O que é a estatística?

O que é a estatística? Elementos de Estatística Prof. Dr. Clécio da Silva Ferreira Departamento de Estatística - UFJF O que é a estatística? Para muitos, a estatística não passa de conjuntos de tabelas de dados numéricos. Os

Leia mais

Operações de Caixa. Versão 2.0. Manual destinado à implantadores, técnicos do suporte e usuários finais

Operações de Caixa. Versão 2.0. Manual destinado à implantadores, técnicos do suporte e usuários finais Operações de Caixa Versão 2.0 Manual destinado à implantadores, técnicos do suporte e usuários finais Sumário Introdução... 3 Suprimento... 3 Sangria... 4 Abertura de Caixa... 6 Fechamento de Caixa...

Leia mais

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES CELG DISTRIBUIÇÃO S.A EDITAL N. 1/2014 CONCURSO PÚBLICO ANALISTA DE GESTÃO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI RESPOSTAS ESPERADAS PRELIMINARES O Centro de Seleção da Universidade Federal de Goiás

Leia mais

4 Implementação e Resultados Experimentais

4 Implementação e Resultados Experimentais 4 Implementação e Resultados Experimentais Com o objetivo de fazer a criação automática de visões materializadas, ou seja, prover uma solução on-the-fly para o problema de seleção de visões materializadas,

Leia mais

Gestão de Relacionamento com o Cliente CRM

Gestão de Relacionamento com o Cliente CRM Gestão de Relacionamento com o Cliente CRM Fábio Pires 1, Wyllian Fressatti 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil pires_fabin@hotmail.com wyllian@unipar.br RESUMO. O projeto destaca-se

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Memória Cache. Prof. Leonardo Barreto Campos 1

Memória Cache. Prof. Leonardo Barreto Campos 1 Memória Cache Prof. Leonardo Barreto Campos 1 Sumário Introdução; Projeto de Memórias Cache; Tamanho; Função de Mapeamento; Política de Escrita; Tamanho da Linha; Número de Memórias Cache; Bibliografia.

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

PLANEJAMENTO DA MANUFATURA

PLANEJAMENTO DA MANUFATURA 58 FUNDIÇÃO e SERVIÇOS NOV. 2012 PLANEJAMENTO DA MANUFATURA Otimizando o planejamento de fundidos em uma linha de montagem de motores (II) O texto dá continuidade à análise do uso da simulação na otimização

Leia mais

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO 10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO UMA DAS GRANDES FUNÇÕES DA TECNOLOGIA É A DE FACILITAR A VIDA DO HOMEM, SEJA NA VIDA PESSOAL OU CORPORATIVA. ATRAVÉS DELA, ELE CONSEGUE

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos UNIVERSIDADE PRESBITERIANA MACKENZIE Laboratório de Computação Natural LCoN I ESCOLA DE COMPUTAÇÃO NATURAL Algoritmos Genéticos Rafael Xavier e Willyan Abilhoa Outubro/2012 www.computacaonatural.com.br

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

Guia de Especificação de Caso de Uso Metodologia CELEPAR

Guia de Especificação de Caso de Uso Metodologia CELEPAR Guia de Especificação de Caso de Uso Metodologia CELEPAR Agosto 2009 Sumário de Informações do Documento Documento: guiaespecificacaocasouso.odt Número de páginas: 10 Versão Data Mudanças Autor 1.0 09/10/2007

Leia mais

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE Questionamento a alta direção: 1. Quais os objetivos e metas da organização? 2. quais os principais Produtos e/ou serviços da organização? 3. Qual o escopo da certificação? 4. qual é a Visão e Missão?

Leia mais

Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática.

Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática. Documento de Requisitos Projeto SisVendas Sistema de Controle de Vendas para Loja de Informática. 1 Introdução 1.1 Propósito O propósito deste documento de especificação de requisitos é definir os requisitos

Leia mais

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 3º PERÍODO - 5º MÓDULO AVALIAÇÃO A4 DATA 23/04/2009 ENGENHARIA DE SOFTWARE Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA

Leia mais

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário

Leia mais

SERVICE DESK MANAGER SDM. Manual do Sistema - DPOI

SERVICE DESK MANAGER SDM. Manual do Sistema - DPOI SERVICE DESK MANAGER SDM Manual do Sistema - DPOI Conteúdo SERVICE DESK MANAGER SDM... 1 Manual do Sistema - DPOI... 1 INTRODUÇÃO... 4 ACESSO AO SISTEMA... 5 OPÇÕES DO SISTEMA... 6 SISTEMA... 7 Pesquisar

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Manual de Publicaça o no Blog da Aça o TRIBOS nas Trilhas da Cidadania

Manual de Publicaça o no Blog da Aça o TRIBOS nas Trilhas da Cidadania Manual de Publicaça o no Blog da Aça o TRIBOS nas Trilhas da Cidadania Sumário Objetivos do Blog... 2 Log-in... 3 Esqueci minha senha... 4 Utilizando o Blog... 5 Encontrando seu Blog... 5 Conhecendo o

Leia mais

TOTVS BA Guia de Customização Linha Logix

TOTVS BA Guia de Customização Linha Logix TOTVS BA Guia de Customização Linha Logix Guia de Customização Sumário Título do documento 1. Objetivo... 3 2. Introdução... 3 3. Customização... 3 2 TOTVS BA Linha Logix Guia de Customização Projeto/Versão:

Leia mais

Manual Operacional SIGA

Manual Operacional SIGA SMS - ATTI Julho -2012 Conteúdo Sumário... 2... 3 Consultar Registros... 4 Realizar Atendimento... 9 Adicionar Procedimento... 11 Não Atendimento... 15 Novo Atendimento... 16 Relatórios Dados Estatísticos...

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

SISTEMA INTEGRADO DE GESTÃO ACADÊMICA

SISTEMA INTEGRADO DE GESTÃO ACADÊMICA MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO TRIÂNGULO MINEIRO SISTEMA INTEGRADO DE GESTÃO ACADÊMICA MÓDULO PROTOCOLO MANUAL DO USUÁRIO VERSÃO: SETEMBRO/2010 SUMÁRIO Introdução...

Leia mais

6 Construção de Cenários

6 Construção de Cenários 6 Construção de Cenários Neste capítulo será mostrada a metodologia utilizada para mensuração dos parâmetros estocásticos (ou incertos) e construção dos cenários com respectivas probabilidades de ocorrência.

Leia mais

Manual do usuário. v1.0

Manual do usuário. v1.0 Manual do usuário v1.0 1 Iniciando com o Vivo Gestão 1. como fazer login a. 1º acesso b. como recuperar a senha c. escolher uma conta ou grupo (hierarquia de contas) 2. como consultar... de uma linha a.

Leia mais

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários

Leia mais

ISO 9001:2008. Alterações e Adições da nova versão

ISO 9001:2008. Alterações e Adições da nova versão ISO 9001:2008 Alterações e Adições da nova versão Notas sobe esta apresentação Esta apresentação contém as principais alterações e adições promovidas pela edição 2008 da norma de sistema de gestão mais

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

Sistema de Chamados Protega

Sistema de Chamados Protega SUMÁRIO 1. INTRODUÇÃO... 3 2. REALIZANDO ACESSO AO SISTEMA DE CHAMADOS... 4 2.1 DETALHES DA PÁGINA INICIAL... 5 3. ABERTURA DE CHAMADO... 6 3.1 DESTACANDO CAMPOS DO FORMULÁRIO... 6 3.2 CAMPOS OBRIGATÓRIOS:...

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

Sistema para Visualização dos Resultados de Pesquisas de Clima Organizacional. PERSPECTIVA Consultores Associados Ltda.

Sistema para Visualização dos Resultados de Pesquisas de Clima Organizacional. PERSPECTIVA Consultores Associados Ltda. PERSPECTIVA Consultores Associados Ltda. Sistema para Visualização dos Resultados de Pesquisas de Clima Organizacional Manual do Usuário Este documento é de autoria da PERSPECTIVA Consultores Associados

Leia mais

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo. Manual de Instruções ECO Editor de Conteúdo Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo. O ECO é um sistema amigável e intui?vo, mas abaixo você pode?rar eventuais dúvidas e aproveitar

Leia mais

Cadastramento de Computadores. Manual do Usuário

Cadastramento de Computadores. Manual do Usuário Cadastramento de Computadores Manual do Usuário Setembro 2008 ÍNDICE 1. APRESENTAÇÃO 1.1 Conhecendo a solução...03 Segurança pela identificação da máquina...03 2. ADERINDO À SOLUÇÃO e CADASTRANDO COMPUTADORES

Leia mais

Versão 6.0.1 Melhorias Melhorias Versão 6.0.1

Versão 6.0.1 Melhorias Melhorias Versão 6.0.1 Versão 6.0.1 Novembro 2010 Versão 6.0.1 Funcionalidade Completa de Planejamento do Trabalho Através dessa funcionalidade o usuário pode planejar quais tarefas e quanto tempo destinará para trabalhar em

Leia mais

Introdução a Banco de Dados

Introdução a Banco de Dados Introdução a Banco de Dados Ricardo Henrique Tassi - Departamento de Replicação Índice 1- Introdução... 03 2- Quais são os bancos de dados mais conhecidos hoje em dia...04 3- Quais são os tipos de banco...05

Leia mais

GESTOR ONLINE Gestor Online Principais Recursos:

GESTOR ONLINE Gestor Online Principais Recursos: O GESTOR ONLINE da Claro é a ferramenta para gerenciamento dos celulares da sua empresa. Com o Gestor Online sua empresa tem mais facilidade e controle no consumo das linhas dos seus funcionários. Principais

Leia mais