Baixe o app para aproveitar ainda mais
Prévia do material em texto
15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 1/30 INTELIGÊNCIAINTELIGÊNCIA ARTIFICIAL PARA JOGOSARTIFICIAL PARA JOGOS UNIDADE 2 - APRENDIZADOUNIDADE 2 - APRENDIZADO DE MÁQUINADE MÁQUINA Autor: George Santiago AlvesAutor: George Santiago Alves Revisor: Felipe Oviedo FrosiRevisor: Felipe Oviedo Frosi INICIAR Introdução Caro(a) estudante, Atualmente, o setor de jogos eletrônicos é considerado o mais rentável da indústria do entretenimento, superando até mesmo o cinema e a música. Todavia, deseja-se crer que os jogos vão além de simples números, mas uma representação da autoexpressão do homem que, ao que tudo indica, é uma síntese dialética entre o lúdico e a tecnologia. Dessa forma, a dimensão multifacetada e multidimensional dos jogos permite discutir tópicos que vão além da ludicidade, propondo um estudo interdisciplinar de áreas como programação, psicologia, matemática, design, antropologia, e assim por diante. Neste âmbito, a dimensão da tecnologia é um pilar importante no que tange à inovação e implementação de novas abordagens em uma indústria altamente dinâmica. Dessa forma, nesta unidade de ensino, discutiremos tópicos importantes para compor os conceitos da inteligência artificial como uma área em constante desenvolvimento, sendo usada para resolver uma série de problemas e possíveis soluções no desenvolvimento de jogos eletrônicos. Então, inicialmente, discutiremos a importância da lógica 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 2/30 fuzzy como uma dimensão da lógica booleana; buscando uma base para discutir as principais vertentes do aprendizado de máquina. Bons estudos! 2.1 Lógica fuzzy Embora seja temerário fazer generalizações, deseja-se crer que a injunção tecnológica foi capaz de reorientar todas as dimensões da práxis social, promovendo uma pluralidade de concepções que, doravante, está evidenciando o início de uma nova era apoiada na convergência entre as áreas da ciência. Nesse sentido, é importante notar o papel dos principais conceitos que permeiam a ciência em áreas que, à primeira vista, podem parecer não compatíveis com sua aplicação; por exemplo, os jogos eletrônicos, que, a partir da subjetividade do homem, foram capazes de inaugurar uma era que, inicialmente, era condicionada a uma limitação tecnológica (BEHESHTI, 2013; CERRI, 2014; BRITO, 2018). Os jogos eletrônicos eclodiram a partir do advento das novas tecnologias, pautando-se na convergência entre ideias dos precursores desta nova era, ou seja, ideias dos diversos autores, professores, programadores e profissionais técnicos que estudavam os jogos eletrônicos, cuja essência, na época, encontrava-se difundida na criação e implementação de abordagens da ciência da computação, como a inteligência artificial (IA). Nessa época, a fronteira da consciência artificial passou a ser vista como um conceito tangível, deixando de ser um campo exclusivo da reflexão filosófica. Há de se considerar, ainda, que o avanço no estudo do mecanismo de funcionamento do cérebro humano foi a base para o desenvolvimento das redes neurais artificiais, da IA e do aprendizado de máquina (LUGER, 2004, ROSA, 2008), conceitos que serão discutidos ao longo dos tópicos subsequentes. Nesse sentido, conforme se pretende mostrar, é possível identificar alguns conceitos importantes e promissores que são aplicados na indústria dos jogos eletrônicos, como fundamentos que compõem a IA. Retornando à questão da subjetividade, de acordo com Tanscheit (2007, p. 2), os “seres humanos são capazes de lidar com processos bastante complexos, baseados em informações imprecisas ou aproximadas”, por exemplo, Karlsson (2005a, p.22) aponta que os humanos “fazem uso de termos como 'pouca força', 'muito longe' ou 'bastante apertado'” como elementos descritivos que definem uma determinada situação. Observe, portanto, que a percepção e interpretação das informações é uma dimensão humana, que trabalha a subjetividade. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 3/30 Assim, como trabalhar com estados imprecisos e vagos quando há conhecimento insuficiente para representar o raciocínio humano por abordagens de controle? A teoria matemática de conjuntos fuzzy e lógica fuzzy, como extensões da teoria clássica dos conjuntos e da lógica formal, são abordagens que podem ser utilizadas para representar, em termos matemáticos, os dados e informações imprecisas de um determinado contexto (FACELI et al., 2011; RABIN, 2015). Falando noutros termos, a essência da teoria fuzzy é trabalhar com situações que exigem respostas que vão além do clássico "sim" ou "não", mas situações em que termos como "talvez", "possivelmente", "provavelmente", "praticamente" e outros semelhantes são mais adequados para descrever processos, sistemas, estados, objetos, e assim por diante (LUGER, 2015). De fato, Tanscheit (2007) apresenta que a teoria fuzzy é uma abordagem que permite descrever conceitos que operam nas incertezas e imprecisões do mundo real, sendo uma teoria com alto grau de compatibilidade com a representação de estados dos personagens em jogos eletrônicos. De acordo com Tanscheit (2007), os primeiros trabalhos sobre a lógica fuzzy são datados da década de 1960, elaborados pelo professor, matemático, engenheiro eletrônico e cientista da computação Lotfi A. Zadeh. Zadeh sustentava que desde os primórdios da computação, os pesquisadores passaram a trabalhar com situações de natureza biológica, sendo incapazes de modelar determinados eventos com os recursos teóricos e tecnológicos da época. Idealmente, de acordo com Cavalcanti et al. (2012), o professor Zadeh publicou em 1965 na revista Information and Control um artigo denominado de " Fuzzy sets " (ZADEH, 1965), propondo uma descrição matemática para trabalhar com situações ambíguas, próximas à lógica humana. Partindo dessas premissas, conforme discute Tanscheit (2007, p. 22), “sua versatilidade faz dela uma excelente opção para aplicações que têm um certo grau de incerteza ou que necessitam de grande flexibilidade e capacidade de adaptação”. De certo modo, o pesquisador Lotfi A. Zadeh deu origem a uma teoria em que é possível modelar situações A lógica Fuzzy consegue então representar problemas de uma maneira similar à maneira com que humanos pensam sobre eles, pois conceitos (termos) como longe e pouco não são representados por intervalos discretos, mas por conjuntos Fuzzy que permitem que um valor pertença a vários conjuntos com diversos graus de pertinência. Por exemplo, um certo personagem de um jogo pode ter seu estado emocional pertencente ao conjunto feliz com grau de pertinência 0.7 e ao conjunto frustrado com grau 0.5 (ZADEH, 1965 apud TANSCHEIT, 2007, p. 22). 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 4/30 Mccuskey (2000), Karlsson (2005b) e Pirovano (2012) sugerem que a lógica fuzzy se revela como uma referência importante para, por exemplo, implementar máquinas de estados e sistemas que precisam lidar com a tomada de decisões dos personagens não jogáveis (NPC, do inglês: non-player character ), como a escolha de determinados artefatos – armaduras, armas, poções, habilidades, etc –, análise e seleção das melhores estratégias em contextos distintos – ameaças, objetivos, missões, controle de unidades, ataques, etc. –, ou mesmo na classificação de personagens jogáveis e não jogáveis em termos de atributos ou características, como a estamina, saúde, energia e mana, além do cálculo para definir o comportamento do NPC baseado na distância de uma ameaça. Por exemplo, com base no alcance de uma arma no jogo, é possível selecionar uma arma para ataque corpo a corpo, à distância ou forade alcance – quando o NPC não tem nenhuma arma para atacar em uma determinada distância ou a arma do personagem jogável não tem alcance para o evento atual, conforme ilustra a Figura 1. adversas e pouco casuais, implementando algoritmos para compor, por exemplo, o estado emocional de um personagem de um jogo eletrônico. VOCÊ SABIA? No âmbito dos jogos eletrônicos, desde que foi introduzida a discussão sobre a aplicação da lógica fuzzy no desenvolvimento de games em 1996 por O’Brien (1996) na revista Game Developer Magazine, verifica-se que a teoria do professor Lotfi A. Zadeh passou a ser uma das principais abordagens de IA utilizada por desenvolvedores. Convém lembrar, em primeiro lugar, que a lógica fuzzy – ou lógica difusa – é um desdobramento de IA, que pode auxiliar no desenvolvimento de praticamente todos os jogos modernos. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 5/30 Figura 1– Demonstração de variáveis fuzzy em um jogo. Fonte: BOURG; SEMMANN, 2005 apud PIROVANO, 2012, p. 3 (Adaptado). #PraCegoVer : A figura 1 demonstra as faixas que compõem as variáveis fuzzy em um jogo. Elas são representadas por linhas que se cruzam dentro de dois eixos verticais, marcando 0 e 1. A primeira faixa, na parte superior, representa a faixa difusa de uma arma. As duas linhas sobem e descem entre os limites de 0 e 1 se cruzando duas vezes, para depois se manterem constantes uma em zero e outra em um. No início da descida da linha superior está uma seta com a palavra multidão, no primeiro cume uma seta com a palavra projétil e assim que a linha se mantém constante na parte 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 6/30 Nos subtópicos subsequentes serão discutidas as principais vertentes que compõem a lógica fuzzy. Para tanto é necessário comparar, ou melhor, realizar uma pequena recapitulação da lógica clássica, de modo a se entender os conceitos e aplicações lógica fuzzy no âmbito da inteligência artificial. 2.1.1 Conjuntos CRIPS e Conjuntos fuzzy Em primeiro lugar, precisamos considerar que a teoria fuzzy trabalha diretamente com as premissas que compõem a lógica matemática; isto é, uma dada função lógica pode ser representada por uma forma normal conjuntiva ou disjuntiva. Esmiuçando um pouco mais, verifica-se que a função lógica clássica pode representar os cálculos das operações proposicionais – conjunção (&&), disjunção (||) e negação (!) –, usando uma tabela verdade para avaliar dois valores lógicos (A e B), em que 0 retorna um valor FALSO, enquanto um valor diferente de zero retorna VERDADEIRO. Por exemplo: Tabela 1 – Operadores lógicos Operador && (E) - Conjunção A B A && B superior, há uma seta com a palavra fora de alcance. No final da linha constante inferior, há a palavra alcance. A faixa do centro representa a saúde difusa de um NPC. As duas linhas se cruzam 4 vezes para depois se manterem constantes. No início da descida da linha superior há uma seta com a expressão morte próxima; no primeiro cume, uma seta com a palavra crítico; no segundo cume, a palavra grave; no terceiro cume, a palavra reduzida e na linha superior constante a expressão não afetada. Na linha constante inferior, há a palavra saúde. Por fim, a última faixa, na parte inferior, demonstra a classificação difusa de avaliação um jogador. As linhas se cruzam três vezes. No início da descida da linha superior há uma seta com a palavra fraco; no primeiro cume, uma seta com a palavra fácil; no segundo cume, a palavra moderado e na linha superior constante a palavra difícil. Na linha constante inferior, há a palavra classificação. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 7/30 0 1 0 0 0 0 1 0 0 1 1 1 Operador || (OU) - Disjunção 0 1 0 0 0 0 1 0 0 1 1 1 A B A || B Operador ! (NÃO) - Negação A !A 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 8/30 1 0 0 1 Fonte: Elaborada pelo autor, 2020. Tanscheit (2004) comenta que na teoria clássica dos conjuntos, quando utilizada em uma condição que exija a definição exata dos predicados, não é possível trabalhar com respostas diferentes de verdadeiro ou falso. Dessa forma, verifica-se que a relação entre um determinado elemento de um conjunto – pertinência – fica bem definido no contexto da lógica clássica. Por exemplo, no contexto dos jogos digitais, podemos verificar que dado um conjunto C – constituído apenas por elementos que representam tipos de habilidades, como fogo, água, recuperar vida, velocidade, etc – em um universo qualquer U, os elementos que constituem o universo U podem assumir apenas os valores: VERDADEIRO ou FALSO. Mas, por quê? Idealmente, a álgebra booleana – ou lógica de Boole – opera apenas com os valores 0 e 1, classificando o grau de pertinência da variável observada. Noutros termos, os elementos do universo U pertencem (u=0) ou não pertencem (u≠0) ao conjunto A – ou seja, os elementos do universo U só podem pertencer ao conjunto A se forem classificadas (Verdadeiro) como um tipo de habilidade. Em síntese, podemos expressar tal premissa pela função f , em que os conjuntos são denominados "crisp" (TANSCHEIT, 2004; CORCOLL-SPINA, 2010): Já na lógica fuzzy, em vez de trabalhar com os valores verdadeiro ou falso para representar o grau de pertinência de uma variável, são utilizados diferentes graus de pertinência para assumir quaisquer valores definidos em um conjunto infinito entre um intervalo [0,1] (ZAROZINSKI, 2002). Observe, portanto, que ao contrário da lógica clássica, não é possível representar as operações lógicas na forma tabular – tabela verdade –, mas são expressos por funções: Exemplos de funções com expressão a lógica fuzzy » Clique nas setas ou arraste para visualizar as imagens c #PraCegoVer : Dado um conjunto C em um universo U, os elementos deste universo pertencem ao conjunto C se e somente se U for igual a 1; ou não pertencem ao conjunto C se e somente se U for igual a 0. A || B 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 9/30 Retornando à questão do nosso conjunto C – constituído apenas por elementos que representam tipos de habilidades –, na lógica fuzzy, de acordo com Tanscheit (2004), o conjunto C em um universo U pode ser expresso pela função de pertinência: Também expresso por uma função que representa um conjunto de pares ordenados: Em que: Equação básicaC= {u (u)/u} x∈ C » Clique nas abas para saber mais sobre o assunto #PraCegoVer : Um conjunto fuzzy C em um dado universo U pode assumir um valor infinito no intervalo entre zero e um. #PraCegoVer : Um conjunto fuzzy C é expresso por uma função que representa um conjunto de pares ordenados, onde a função de pertinência do universo U incida o quanto o universo C é compatível com o conjunto A. c max (a, b) - abordagem MaximinA && B min (a, b) - abordagem Maximin A || B a + b - a * b: expressão para quantificar o valor que representa a percepção de uma cor - Colorimetria ! A 1 – a: representando a negação A && B a * b - expressão para quantificar o valor que representa a percepção de uma cor - Colorimetria 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 10/30 De acordo com Tanscheit (2004, p. 3), no âmbito da lógica fuzzy, “um determinado elemento pode pertencer a mais de um conjunto fuzzy, com diferentes graus de pertinência”. Como um exemplo simples, imagine que em um determinado jogo, a IA precisa controlar um sistema de mísseis, calculando possíveis obstáculos usando alógica fuzzy. Como poderíamos trabalhar com a situação descrita? Primeiramente, a IA deve tomar uma decisão utilizando diferentes graus de pertinência. Para tanto, é necessário dividir o conjunto [0,1] em intervalos, em que: Onde: Pertinência 1.0 a um obstáculo no caminho do míssil de 0%; Pertinência 0.75 a um obstáculo no caminho do míssil de 25%; Pertinência 0.50 a um obstáculo no caminho do míssil de 50%; Pertinência 0.00 a um obstáculo no caminho do míssil em 80% ou mais. 2.1.2 Variáveis linguísticas e regras de inferência Na lógica fuzzy, observa-se que para expressar formalmente uma determinada sentença, é necessário basear-se em palavras e não em números (TANSCHEIT, 2004; ZAROCINSKI, 2002). Nesse sentido, aliás, verifica-se que a lógica fuzzy introduz o conceito de variáveis linguísticas, cujos valores são representados pela linguagem natural, em termos específicos. Portanto, uma variável fuzzy pode ser descrita por um dado conjunto (A, X, B), onde A representa o nome da variável, X é um conjunto universo, B é um conjunto fuzzy no universo X (COPIN, 2010). C= {uc (u)/u} x∈ C Representa o universo observado – também denominado de universo de discurso. VOCÊ QUER LER? Argumenta-se cada vez mais hoje em dia que o setor de jogos eletrônicos é um dos mais dinâmicos e receptivos a novas tecnologias e abordagens inovativas. Dessa forma, 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 11/30 iniciando a nova geração de videogames em 2020, verifica-se que a indústria de games, como a mais rentável dos setores do entretenimento, é sem dúvidas, uma das principais a implementar conceitos multifacetados da Inteligência Artificial. Sendo assim, no momento, portanto, as tecnologias inovativas e abordagens de Inteligência Artificial, aprendizado de máquina e redes neurais são parte integrante da indústria de jogos eletrônicos. Em outras palavras, conceitos antes empregados em outros setores, como a lógica fuzzy e redes neurais são amplamente utilizados em jogos e soluções gamificadas. Para saber mais sobre esse assunto, leia o artigo "Aplicação de Lógica fuzzy e Redes Neurais em Jogos Computacionais", de Pereira, Pozzebon, Frigo e Santos (2016), no link:< https://bit.ly/3n0pSex >. Apesar dos conjuntos enfatizarem normalmente o uso dos números para representar os valores de um determinado estado, a lógica fuzzy utiliza as variáveis linguísticas como uma representação que obtém valores de um dado conjunto de palavras; corroborando com a premissa de Lotfi A. Zadeh, em que definir o valor de uma variável em linguagem natural, sem valores numéricos, é mais natural para os seres humanos. (TANSCHEIT, 2004; NILSSON, 2014; HURWITZ e KIRSCH, 2018). Corcoll-Spina (2010, p. 66) aponta “é aquela cujos valores são subconjuntos fuzzy, que correspondem por sua vez a termos linguísticos. Podemos dizer que uma variável linguística é um substantivo enquanto seus valores são adjetivos”. Dessa forma, por exemplo, variáveis linguísticas como "velocidade", “temperatura” e “altura”, podem assumir valores como: “muito baixo”, "baixo", “médio”, “alto” e “muito alto”. Conforme nos lembra Tanscheit (2004), “estes valores são descritos por intermédio de conjuntos fuzzy, representados por funções de pertinência”, conforme ilustra a Figura 2. https://bit.ly/3n0pSex 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 12/30 Possíveis categorias para classificar os valores de uma variável linguística » Clique nas setas ou arraste para visualizar as imagens Figura 2– Demonstração das funções de pertinência para uma data variável (temperatura).Fonte: TANSCHEIT, 2002, p. 4 (Adaptado). Neste âmbito, Tanscheit (2004, p. 4) aponta que é possível classificar os valores de uma variável em um a função de pertinência com base nos termos: #PraCegoVer: A figura 2 demonstra as funções de pertinência para uma data variável (temperatura) em um gráfico que usa as seguintes variáveis linguísticas: baixa, média e alta. O eixo horizontal marca a temperatura em graus Celsius e o eixo vertical marca a pertinência. Na temperatura, há as marcas 25º, 50º e 75º. O eixo pertinência tem apenas uma marca com o número 1. Há uma linha inferior saindo da marca 25°, subindo em diagonal até a altura 1 e a marca de 50/ no eixo horizontal. A partir daí ela desce verticalmente até zero na marca 75°. Uma outra linha sai do ponto 1 do eixo vertical, segue reta até a marca 25° do eixo horizontal. A partir daí ela decresce até o ponto 0 na marca 50°, depois cresce até o ponto 1 na marca 75° e segue reta na marca 1. Em marca de temperatura há um vale e uma cume das variações das linhas e eles estão ligados por uma linha pontilhada. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 13/30 Admitindo a pertinência dessas hipóteses, Silva (2010, p. 44) observa que é necessária uma abordagem para avaliar regras que constituem as características das variáveis – denominado de Inferência fuzzy; que “permite tirar conclusões (deduzir, concluir) partindo de fatos conhecidos (Min-Max) e as variáveis linguísticas, de entrada e saída, representam o conhecimento em inferência fuzzy”. Teste seus conhecimentos Atividade não pontuada. 2.2 Aprendizado supervisionado Nota-se que o advento tecnológico permitiu que os dados dos usuários – os jogadores – fossem coletados em tempo real, de múltiplas formas e em contextos específicos. Assim, conceitos como o aprendizado de máquina e redes neurais passaram a ser um campo não apenas conceitual, mas uma abordagem implementada em diferentes áreas, com contextos distintos. A fragmentação da cultura digital é um fator favorável para a disseminação dos dados, de forma que a análise computacional coleta informações da melhor maneira possível e em qualquer lugar da rede. Milhares de dados são processados e analisados diariamente na web, em aplicações, mídias sociais e outras tecnologias modernas para prever cenários e acionar gatilhos para eventos distintos (KOTER e KELLER, 2019). Baixo, médio e alto; pequeno, médio e grande, etc. CONECTIVOS LÓGICOS A negação N O, além dos conectivos E e OU. MODIFICADORES Muito, demais levemente, extremamente, etc. DELIMITADORES O símbolo de parênteses. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 14/30 Dessa forma, consideram-se os dados como um elemento intrínseco na modelagem de soluções para o treinamento de uma máquina, um paradigma no processo de análise, de modo que as diversas fontes de dados – aplicações, mídias sociais, websites, jogos, etc. – possam ser expressas como um recurso para análise de detecção de padrões no conjunto de dados coletados pela máquina (LUGER,2015). Por ora, focaremos no aprendizado de máquina como um subcampo da IA, que descreve os instrumentos para compreender uma estrutura de dados e, em seguida, fornecer subsídios para modelar soluções que possam ser disponibilizadas para a tomada de decisões. Em síntese, de acordo com Mccuskey (2007) e Zhang et al. (2016), o aprendizado de máquina estuda métodos e abstrações para construir algoritmos que podem aprender utilizando recursos, parâmetros, diretrizes, características, propriedades e qualquer elemento que possa classificar determinado dado ou conjunto de dados de acordo com suas características. Noutros termos, a máquina deve saber o que procurar. Embora o advento tecnológico tenha reorientado a práxis social, além de compor uma era de injunção tecnológica que, à primeira vista, foi capaz de operar na complexidade da existência subjetiva do homem; verifica-se que as máquinas ainda estão longe de pensarem ou assumir o protagonismo da sua existência. Dessa forma, campos e subcamposcomo IA e aprendizado de máquina buscam por métodos para que entidades artificiais possam aperfeiçoar automaticamente suas diretrizes com base nas experiências. Portanto, se observamos autores em períodos diferentes da injunção tecnológica, como Holland (1975) e Luger (2015), é possível notar que ambos trabalharam com a premissa de que os métodos da AI são tentativas de reproduzir artificialmente o processo que define os seres humanos: a capacidade de pensar logicamente. Partindo dessas premissas, Bueno (2018, p. 20), defende que “os algoritmos de aprendizagem de máquina usam métodos computacionais para aprender informações diretamente dos dados sem depender de uma equação predeterminada”, buscando implementar o conceito da adaptabilidade para, por exemplo, compor suas diretrizes à medida que coletam e analisam amostras com base em um processo de aprendizagem. Admitindo a pertinência dessas hipóteses, Shalev-Scwartz e Ben-David (2014) sugerem de maneira bastante clara que o aprendizado de máquina trabalha com o conceito de análise dos dados. Sendo assim, conforme demonstrado na Figura 3, os dois principais métodos para compor a dimensão do aprendizado são: aprendizado supervisionado e não supervisionado. Por hora, discutiremos as vertentes da aprendizagem supervisionada e, em tópicos subsequentes, os conceitos do método não supervisionado. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 15/30 Figura 3 – Dimensões que compõem o aprendizado de máquina. Fonte: BUENO, 2018, p. 20. (Adaptado). #PraCegoVer : A figura 3 demonstra, em um diagrama de blocos, as dimensões que compõem o aprendizado de máquina. Assim, o primeiro bloco à esquerda representa o Aprendizado de máquina. Ele se desdobra em duas vertentes, sinalizadas por setas azuis apontando para dois outros blocos. No bloco superior há a Aprendizagem Supervisionada e abaixo dela há o texto: desenvolve modelos preditivos baseados em dados de entrada e saída. Deste bloco saem duas setas azuis apontando para os blocos: classificação, acima e regressão, abaixo. No bloco abaixo de aprendizagem supervisionada, há o bloco Aprendizagem não supervisionada, em que há o texto: agrupa e interpreta dados baseado apenas em dados de entrada. Saindo deste bloco, há uma seta azul apontando para o bloco agrupamento. De acordo com Luger (2015), a aprendizagem supervisionada é um conceito que trabalha usando dados (ou conjunto de dados) rotulados para treinar uma máquina; de forma que além dos dados de entrada, é necessário informar os resultados esperados. Observe, portanto, que a 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 16/30 dimensão supervisionada usa os conceitos de IA para alimentar as entradas com dados e, em seguida, iniciar o processo de análise com base nos parâmetros que compõem os resultados esperados. Esmiuçando um pouco mais, Faceli et al. (2011) nos lembra que se o resultado expresso pelos algoritmos IA forem incompatíveis com os resultados fornecidos, a IA deve automaticamente corrigir os seus cálculos em um processo cíclico que, possivelmente, é repetido inúmeras vezes de acordo com a quantidade de erros calculados pelos algoritmos, conforme figura 4. Figura 4 – Dimensões que compõem o aprendizado de máquina. Fonte: FURTADO, 2019, p. 16 (Adaptado). #PraCegoVer : A figura representa um esquema por setas. No início há um bloco com a palavra meio. Deste bloco saem duas setas que se bifurcam paralelamente. A primeira aponta para um bloco com a palavra supervisor. A segunda aponta para um bloco abaixo com a expressão sistema de aprendizado. Do bloco supervisor sai uma linha reta, que executa um ângulo de 90º, descendo, e aponta para um círculo. Do lado direito desta linha está a expressão resposta desejada. Abaixo do círculo, sai uma nova linha na mesma direção da resposta desejada, executa um ângulo de 90º e segue para a esquerda há uma pequena seta no meio desta linha, apontando para a esquerda, sob a qual está escrito sinal de erro. A linha sobe e atravessa o bloco sistema de aprendizado, finalizando com uma seta. Do bloco sinal de aprendizado sai mais uma linha com uma seta apontando para o círculo, na qual está escrito Resposta atual. Observe, portanto, que a máquina é treinada identificando padrões com base no conjunto de dados de entrada e respostas conhecidas sobre determinado contexto; em seguida, a experiência adquirida – processo de aprendizagem – é utilizada para compor um modelo que servirá de base para realizar previsões com base em novas entradas – dados e respostas, conforme demonstra a Figura 5 (LUGER, 2015; BUENO, 2018). 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 17/30 Figura 5 – Dimensões que compõem o aprendizado de máquina supervisionado. Fonte: BUENO, 2018, p. 21 (Adaptado). #PraCegoVer : A figura demonstra um esquema por setas. À esquerda há as expressões entradas conhecidas e abaixo respostas conhecidas de cada uma dela sai uma seta, ambas apontando para a palavra Modelo. À direita há a palavra modelo e abaixo entradas novas. De ambas saem setas apontando para a expressão respostas preditas. Nesse sentido, Bueno (2018, p. 20) evidencia que o “objetivo da aprendizagem supervisionada é construir um modelo que faça previsões baseadas em evidências na presença de incerteza. Usando essa técnica, um programa de computador pode ‘aprender’ a partir de observações". Além disso, o algoritmo de aprendizagem supervisionada aprende com base na quantidade de observações realizadas, sendo capaz de escolher os recursos necessários para analisar os dados e chegar a um resultado próximo do esperado; otimizando o seu desempenho preditivo, pois com base em experiência anteriores, por exemplo, com a análise e identificação de uma entidade específica – como identificar um indivíduo em uma foto, em meio a objetos e animais –, a máquina é capaz de reconfigurar seus parâmetros para analisar problemas semelhantes e reconhecer outras entidades, como objetos específicos. Classificações entre ramos da ciência moderna » Clique nas abas para saber mais sobre o assunto 2.2.1 Redes Neurais – MLP INTELIGÊNCIA ARTIFICIAL APRENDIZADO DE MÁQUINA REDES NEURAIS ARTIFICIAIS Um subcampo da inteligência artificial que estuda formas para implementar modelos com base no reconhecimento de padrões; assim, a partir da análise de dados, é possível treina ispositivos artificiais para imitar o comportamento humano na tomada de decisão. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 18/30 Ainda na década de 1950, o cientista da computação Arthur Samuel foi um dos pioneiros no estudo e implementação de algoritmos de IA, desenvolvendo um programa que simula uma partida de jogo de damas. O trabalho de Arthur Samuel forneceu subsídios para o projeto do psicólogo americano Frank Rosenblatt, denominado de perceptron, um projeto de rede neural artificial de 1957. Pelas limitações técnicas da época, o projeto de Frank Rosenblatt foi desenvolvido como um dispositivo físico, em vez do seu desejo inicial, como uma aplicação a ser implementada em diferentes contextos. É válido mencionar que embora o projeto perceptron tenha sido implementado usando o dispositivo da IBM – computador 704 –, o programa demandava um processo que dependia de um hardware específico. Dessa forma, com as futuras implementações da equipe do projeto, o perceptron foi subsequentemente aprimorado, chegando ao mark 1 perceptron. Em síntese, o dispositivo idealizado por Frank Rosenblatt buscava mapear as entradas de dados, um vetor de valor real, para um valor binário simples. Idealmente, a aplicação era projetada para compor futurassoluções que tivessem a capacidade de reconhecer padrões no âmbito visual. De acordo com Luger (2015), o algoritmo do Perceptron de Frank Rosenblatt foi uma das primeiras iniciativas a utilizar a teoria hebbiana para compor uma solução baseada no sistema sensorial humano, sendo a forma mais básica de rede neural projetada para um neurocomputador, usando um classificador linear. De acordo com Furtado (2019): Uma das primeiras e mais simples formas de RNA´s foram os perceptrons. Em um perceptron, os neurônios estão dispostos em várias camadas, que podem ser classificadas em camadas de entrada, onde os padrões são apresentados à rede; camadas ocultas, escondidas ou intermediárias, onde é feita a maior parte do processamento; e a camada de saída, onde a conclusão do processamento é apresentada (FURTADO, 2019, p. 11). O perceptron é um tipo de rede neural que utiliza da modelagem matemática para compor um modelo baseado na percepção do sistema sensorial humano. Idealmente, conforme descrito pelo psicólogo Rosenblatt, o perceptron trabalha com três elementos distintos: sensores, elementos associativos e elementos reativos (LUGER, 2015; FURTADO, 2019). O sensor simula a capacidade de receber os estímulos do meio externos (entradas), conectadas a vários sensores que representam as conexões dos neurônios, resultando em diferentes saídas, conforme demonstra a Figura 6. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 19/30 Figura 6 – Rede Neural Artificial de múltiplas camadas. Fonte: FURTADO, 2019, p. 11 (Adaptado). #PraCegoVer : A figura 6 demonstra um esquema de representação da arquitetura de uma rede Neural Artificial de múltiplas camadas. À esquerda há a palavra entradas. Logo depois há quatro pequenas esferas cinza enfileiradas em coluna, no centro três esferas cinza maiores enfileiradas em coluna e à direita há duas esferas cinza, do mesmo tamanho das anteriores, enfileiradas em coluna. Entre as esferas menores à direita e as centrais há linhas ligando todas elas. No alto, acima do esquema de linhas, há a palavra pesos. Abaixo das esferas centrais há a expressão neurônios intermediários e acima das esferas da direita há a expressão neurônios de saída. De cada uma das esferas da direita sai uma seta azul. À direita da imagem, entre as duas setas, há a palavra saídas. 2.2.2 Árvores de Decisão Em termos de aprendizado de máquina, podemos definir a árvore de decisão como um dos principais métodos de classificação e regressão a compor as vertentes dos algoritmos de IA. Idealmente, as árvores de decisão são utilizadas de maneira abrangente no cotidiano da sociedade, sem a necessidade de algoritmos e métodos complexos de IA. Por exemplo, a estrutura de uma árvore denota uma arquitetura visual contendo determinadas instruções, baseadas em condições para possibilitar uma transição entre estados (LUGER, 2015). Em outras palavras, a árvore de decisão é uma representação visual de um processo que busca classificar uma determinada situação usando expressões em linguagem natural, conforme exemplo da Figura 7. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 20/30 Figura 7– Exemplo de uma estrutura simples de árvore de decisão. Fonte: FURTADO, 2019, p. 11 (Adaptado). #PraCegoVer : A figura representa um diagrama mostrando uma árvore de decisão. Acima está a expressão Saldo em conta corrente, que está circulada. Dela saem duas setas: à esquerda uma seta com a palavra positivo, e à direita uma seta com a palavra negativo. Abaixo da seta positivo há um retângulo com a expressão Cliente sem risco. Abaixo da seta negativo, há um círculo com a palavra aplicações. Abaixo de aplicações saem duas setas: à esquerda a seta sim, sob a qual há um retângulo com a palavra cliente sem risco e à direita a palavra não, com a seta cliente com risco. Teste seus conhecimentos Atividade não pontuada. 2.3 Aprendizado não supervisionado Se observarmos a atual conjuntura da transformação digital, à primeira vista, é possível afirmar que os dados rotulados são uma das principais fontes a compor métodos de treinamento para o aprendizado de máquina. No entanto, conforme aponta Luger (2015), ainda existem diferentes conjuntos de dados não rotulados que podem ser úteis para compor as vertentes do treinamento de uma IA. Idealmente, os dados não estruturados trabalham com um grau de incerteza, permitindo que a máquina classifique os dados coletados de forma lógica, sem depender das 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 21/30 entradas respostas previamente conhecidas, conforme a aprendizagem supervisionada (Figura 8). Figura 8 – Exemplo de uma estrutura para treinamento não supervisionado. Fonte: FURTADO, 2019, p. 11 (Adaptado). #PraCegoVer : Trata-se de um esquema por setas e blocos. À esquerda há um bloco com a palavra meio. Dele sai uma grande seta, sobre a qual está escrito “vetor descrevendo o estado do meio”, que aponta para outro bloco em que está escrito sistema de aprendizado. Atualmente, diferentes sistemas utilizam da abordagem não supervisionada, como os sistemas de recomendação em e-commerce, plataformas de streamings, websites, aplicativos, e assim por diante. Basicamente, nos exemplos citados anteriormente o algoritmo trabalha analisando padrões com base no comportamento do usuário, como assistir determinado filme ou vídeo, comentar ou curtir uma foto, procurar um item em um buscador, clicar em links na web, classificar um produto etc. 2.3.1 K-means O K-means (ou clustering K-means) é uma abordagem que opera no âmbito da aprendizagem não supervisionada. Dessa forma, o algoritmo K-means é um método em que é possível classificar um conjunto de dados sem rótulos, buscando padrões em dados subjacentes (LUGER, 2015). Ou seja, o algoritmo k-means – em que K, significa o número de clusters – é uma abordagem de análise de agrupamento, cujo objetivo é observar e dividir um determinado espaço vetorial conhecido em um número predeterminado de clusters. Para Rodrigues (2012, p. 35), “a partir do algoritmo k-means é possível clusterizar dados em um espaço com d dimensões e ainda utilizar características como forma de discriminar o objeto analisado, desde que essas possam ser mapeadas para valores numéricos”. Observe, portanto, que o algoritmo K-means é um procedimento dinâmico e interativo, no qual se pode elencar as seguintes etapas para sua implementação: O número de clusters k é definido; 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 22/30 2.4 Aprendizado por Reforço Enquanto o aprendizado supervisionado e não supervisionado busca analisar informações, padrões e outras estruturas baseadas em dados ou no próprio comportamento dos usuários, o aprendizado por reforço, por sua vez, é uma vertente da aprendizagem supervisionada, embora o "treinador" seja um ambiente real ou virtual. Neste âmbito, o papel do treinador – ou professor – é desempenhado pelo ambiente, em que a máquina – chamada de agente – não possui informações preliminares sobre o contexto a ser observado, mas tem a capacidade de interagir com o ambiente, conforme demonstra a Figura 9. A partir do conjunto dos dados de entrada são selecionadas aleatoriamente as observações iniciais para os centróides; Para cada observação realizada nos dados de entrada, o centro do cluster mais próximo é associado com base em seu centroide, formando os agrupamentos iniciais; Os centróides são calculados, de modo que cada centroide é um vetor, assim, são calculados sobre todos os registros associados do cluster; O centro do cluster é alterado para seu centróide. As etapas 3 e 4 são repetidas iterativamente, “até queo número de iterações alcance o seu limite ou os pontos não troquem de centróide” (RODRIGUES, 2012, p.34. VAMOS PRATICAR? Experimente montar uma breve narrativa sobre um jogo eletrônico do gênero RTS ( Real-Time Strategy ), que simula o confronto entre jogadores. Em seguida, utilizando os conceitos da lógica fuzzy, busque compor uma função para calcular possíveis ataques com base na dificuldade de terrenos distintos e eventos adversos – como relevo, chuvas, fortes ventanias, florestas, desertos, gelo, pântanos, e assim por diante. Dessa forma, a IA deve tomar uma decisão utilizado diferentes graus de pertinência. Para tanto, é necessário dividir o conjunto [0,1] em intervalos, e compor os graus de pertinência. 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 23/30 Dessa forma, a aprendizagem por reforço é eficaz para lidar com situações que não dependem da observação de dados, mas de uma interação que compõe um sistema baseado no feedback entre entidades – agente e ambiente (LUGER, 2015). Assim, é possível aplicar o conceito da aprendizagem por reforço em, por exemplo: Sistemas de navegação para robôs; Planejamento Sistemas de percepção; Bots para jogos eletrônicos; Agendamento de tarefas; Trading bots; Na logística, compondo a definição de metas; Figura 9 – Exemplo de uma estrutura simples de arvore de decisão. Fonte: FURTADO, 2019, p. 11. (Adaptado). #PraCegoVer : A figura demonstra um esquema de decisão por setas e blocos. Há um bloco com a palavra meio. Dele saem duas setas cinzas grandes que se bifurcam paralelamente sobre as quais está escrito vetor de entrada. Elas apontam para os blocos críticos acima e Sistema de aprendizagem abaixo. Além disso, sai uma terceira seta na forma de uma linha preta que se liga ao bloco crítico e ao lado da qual há a expressão reforço primário. Entre o bloco Crítico e Sistema de Aprendizado há uma nova seta preta com a expressão heurística de reforço. Do bloco sistema de aprendizado sai uma nova seta cinza grande, que dá a volta na imagem 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 24/30 e se liga ao bloco meio, do início. Do lado direito desta seta está a palavra ações. 2.4.1 Q-Learning No âmbito da aprendizagem de máquina, temos o algoritmo Q-learning como uma solução para trabalhar no contexto do aprendizado por reforço. Dessa forma, enquanto o agente interage com o ambiente, através da execução de ações, o algoritmo busca analisar o contexto (estado atual) para encontrar a melhor ação a ser executada (LUGER, 2015). É válido mencionar que a letra “Q” em Q-learning é atribuída a quality (qualidade). A qualidade, neste contexto, representa o quão útil uma ação pode ser executada para obter determinado resultado (COPPIN, 2010). De acordo com Pessoa (2011, p. 24), “o mecanismo de aprendizagem Q-Learning foi descrito inicialmente em 1989 por Watkins da universidade de Cambridge, na sua tese de doutoramento”. Dessa forma, podemos definir o mecanismo de aprendizagem baseado no pseudo-código do Q- Learning proposto por Watkins (1989): 1. Initialize Q(s,a) 2. Repeat many times a) Pick start state b) Repeat each step to goal I) Choose a based on Q(s,a) II) Do a, observe r, s´ III) Q(s,a) = Q(s,a) + α[r + y.maxa´+Q(s´,a´,) – Q(s,a)] IV) s = s´ c) Until s terminal Em que: Variáveis do Pseudo-código do Q-Learning » Clique nas abas para saber mais sobre o assunto s a Q ( ) s ‘ α gama Atributo que opera modelando a relação entre as ações e as recompensas imediatas o uturas (LUGER, 2015). 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 25/30 VAMOS PRATICAR? Com base nos conhecimentos sobre a inteligência artificial e suas principais vertentes, projete um jogo de tabuleiro (Xadrez ou Jogo da Velha) que demonstre o comportamento da aprendizagem supervisionada, não supervisionada ou por reforço. Não se esqueça de implementar uma árvore de decisão para auxiliar no projeto. Síntese Atualmente, a inteligência artificial é uma das principais abordagens implementadas na indústria dos jogos eletrônicos; seja pela sua dimensão multifacetada, multidimensional ou mesmo pela dinâmica que compõe a subjetividade do desenvolvimento de um processo lúdico. Idealmente, deseja-se crer que a injunção tecnológica permitirá que abordagens como o aprendizado de máquina possa modelar o comportamento de agentes inteligentes, indo além da interação e feedback, que compõem os atuais algoritmos de IA. Além disso, conforme discutimos ao longo da unidade, conceitos fundamentais da lógica fuzzy e aprendizado de máquina permitem implementar métodos para analisar dados com base no comportamento dos jogadores e, em seguida, conduzir uma análise detalhada para modelar soluções inovadoras com diferentes graus de pertinência. SAIBA MAIS 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 26/30 Título: Fundamentos da Inteligência Artificial Autor: João Luís Garcia Rosa Editora: LTC Ano: 2011 Comentário: leia o Capítulo 3, que ampliará o entendimento sobre os principais conceitos que compõem a lógica de predicados, uma das bases para compor algoritmos de Inteligência Artificial (IA), bem como estratégias de busca para sistemas de produções IA, busca em grafos, redes neurais e aprendizado de máquina. Onde encontrar? Biblioteca Virtual da Ânima Título: Introdução ao desenvolvimento de games - Volume 2: Programação: técnica, linguagem e arquitetura Autor: Steve Rabin Editora: Cengage Learning Ano: 2012 Comentário: A obra de Steve Rabin é uma das principais referências no que tange ao estudo e implementação de soluções para games, abrangendo uma grande quantidade de tópicos importantes sobre programação, algoritmos, arquitetura de sistemas, estrutura de dados, e assim por diante. Leia o Capítulo 4, tópico 4.1 “conceitos matemáticos” do volume 2 da obra, que introduz os principais conceitos sobre a programação de jogos eletrônicos na dimensão da matemática. Onde encontrar? Biblioteca Virtual da Laureate Referências bibliográficas BRITO, R. G. G. Acessibilidade na internet para pessoas com deficiência visual: uma análise das páginas web dos tribunais do Poder Judiciário tocantinense . 2018. 186f. Dissertação (Mestrado profissional e interdisciplinar em Prestação Jurisdicional e Direitos Humanos) – Universidade Federal do Tocantins, Programa de Pós-Graduação em Prestação 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 27/30 Jurisdicional em Direitos Humanos, Palmas, 2018. BUENO, A. L. C. Relaxamento Adaptativo da Sincronização Através do Uso de Métodos de Aprendizagem Supervisionada . Tese (doutorado) - Pontifícia Universidade Católica do Rio de Janeiro, Departamento de Informática. Rio de Janeiro, 2018, p.29 BEHESHTI, Z.; MARIYAM, S.; SHAMSUDDIN, H. A Review of Population-based Meta-Heuristic Algorithms. International Journal of Advances in Soft Computing and its Applications . V. 5, n. 1, p. 1-35, 2013. BOURG, D. M.; SEEMANN, G. AI for Game Developers . Newton: O’Reilly Media, 2004. CAVALCANTI, J. H. F.; MELO, H.; SOUTO, C. R.; CAVALCANTI, M. T. Lógica Fuzzy aplicada às engenharias . João Pessoa: Câmara do Livro, 2012. 151 p. CERRI, L. F. Entrevista com o Prof. Dr. Luís Fernando Cerri (UEPG). Revista de Teoria da História , Goiânia, v. 6, n. 12, p. 369-391, 2014. COPPIN, B. Inteligência Artificial . São Paulo: LTC, 2010. CORCOLL-SPINA, C. O. Lógica fuzzy : reflexões que contribuem para a questão da subjetividade na construção do conhecimento matemático. 2010. Tese de doutorado - Faculdade de Educação, Universidade de São Paulo, São Paulo,2010. Disponível em: < http://www.teses.usp.br/teses/disponiveis/48/48134/tde-21012011- 104236/ >. Acesso em: 10 dez. 2020. FACELI, K.; LORENA, A. C.; GAMA, J.; CARVALHO, A. C. P. L. F. de. Inteligência artificial : uma abordagem de aprendizado de máquina. Rio de Janeiro: LTC, 2011. FURTADO, M. I. V. Redes neurais artificiais : uma abordagem para sala de aula. Belo Horizonte: Atena Editora, 2019. HURWITZ, J.; KIRSCH, D. Machine Learning for Dummies : IBM Limited Edition. Hoboken: John Wiley and Sons, 2018. HOLLAND, J. H. Adaptation in natural and artificial systems . Ann Arbor: The University of Michigan Press, 1975. http://www.teses.usp.br/teses/disponiveis/48/48134/tde-21012011-%20104236/ 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 28/30 HERBERT, M.; KUMAR, P; RAO, S. Population based metaheuristic algorithm approach for analysis of multi-item multi-period procurement lot sizing problem. Advances in Operations Research , [s. l.], p. 1-18, 2017. KUMAR, P.; HERBERT, M.; RAO, S. (2017). Population based metaheuristic algorithm approach for analysis of multi-item multi-period procurement lot sizing problem. Advances in Operations Research , 2017, 1–18. KARLSSON, B. F. F. Um middleware de Inteligência Artificial para games . 2005. 126 f. Dissertação (Mestrado Informática) – Pontifícia Universidade Católica, Rio de Janeiro, 2005a. Disponível em: < https://www.maxwell.vrac.puc-rio.br/colecao.php? strSecao=resultado&nrSeq=7861@1 > Acesso em: 25/11/2020 KARLSSON, B. Aplicando lógica fuzzy a agentes inteligentes em jogos digitais. In: WORKSHOP DE INTELIGÊNCIA COMPUTACIONAL APLICADA – ICA, 2005 Anais [...] PUC-Rio, Rio de Janeiro, 2005b. Disponível em: < https://www.maxwell.vrac.puc-rio.br/7861/7861_3.PDF >. Acesso em: 25/11/2020 LUGER, G. F. Inteligência artificial . Porto Alegre: Bookmann, 2004. LUGER, G. F. Inteligência artificial . São Paulo: Person, 2015. MCCUSKEY, M. Fuzzy logic for video games. In: DELOURA, M. A. GAME PROGRAMMING GEMS . Newton: Charles River Media, 2000. NILSSON, N. J. Principles of Artificial Intelligence . Morgan Kaufmann: Reprint edição, 2014. PIROVANO, M. The use of Fuzzy Logic for Artificial Intelligence in Games . Milano: University of Milano, 2012. PEREIRA, M. T.; POZZEBON, E.; FRIGO, L. B.; SANTOS; T. N. Aplicação de lógica fuzzy e redes neurais em jogos computacionais. In: Simpósio Latino-americano de jogos, 1, 2016, Araranguá. Anais […]. Araranguá: UNESC, 2016. Disponível em: < https://bit.ly/3n0pSex >. Acesso em: 10 dez. 2020. PESSOA, J. M. D. Análise funcional comparativa de algoritmos de aprendizagem por https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=7861@1 https://www.maxwell.vrac.puc-rio.br/7861/7861_3.PDF https://bit.ly/3n0pSex 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 29/30 reforço . 2011. 125 f. Dissertação (Mestrado em Engenharia Informática e de Computadores) – Instituto Superior de Engenharia de Lisboa, Lisboa, 2011. RABIN, S. Introdução ao desenvolvimento de games . São Paulo: Cengage Learning, 2012. RABIN, S. (Ed.). Game AI pro 2 : collected wisdom of game AI professionals. CRC Press, 2015. ROSA, J. G. Fundamentos da Inteligência Artificia l. São Paulo: LTC, 2008. RODRIGUES, L. M. Proposta e avaliação do algoritmo K-Means paralelo e distribuído para predição do sítio de início de tradução em RNA mensageiro para identificação de proteínas . Dissertação (Mestrado) – Pontifícia Universidade Católica de Minas Gerais. Programa de Pós-Graduação em Informática. Belo Horizonte, 2012. SHALEV-SCWARTZ, S.; BEN-DAVID, S. Understanding machine learning : From theory to algorithms. Cambridge: Cambridge university press, 2014. SILVA, M. A. Aplicação de lógica nebulosa para previsão do risco de escorregamentos de taludes em solo residual . 2008. 150p. Dissertação (Mestrado em Geotecnia) – Universidade do Estado do Rio de Janeiro (UERJ), Rio de Janeiro, 2008. SIMON, P. Too Big to Ignore : The Business Case for Big Data. [S.l.]: Wiley, 2013. STOJANOVA, D.; CECI, M.; MALERBA, D.; DZEROSKI, S. Using PPI network autocorrelation in hierarchical multi-label classification trees for gene function prediction. BMC Bioinformatics , v. 14, n. 1, p. 1-18, 2013. TANSCHEIT, R. Sistemas Fuzzy . Universidade Pontifícia Católica. Rio de Janeiro, 2004. Acessado em: 10/09/2004. Disponível em: < https://www.inf.ufsc.br/~mauro.roisenberg/ine5377/Cursos-ICA/LN-Sistemas%20Fuzzy.pdf >. Acesso em: 10 dez. 2020. TANSCHEIT, R. Sistemas fuzzy. In: Inteligência computacional aplicada a administração, economia e engenharia em Matlab . São Paulo: Thomson Learning, 2007, p.229-264. ZADEH, L. Fuzzy sets. Information and Control , v. 8, n. 3, p.338–353, 1965. https://www.inf.ufsc.br/~mauro.roisenberg/ine5377/Cursos-ICA/LN-Sistemas%20Fuzzy.pdf 15/02/2023 16:39 Unidade 2 - Inteligência artificial para jogos https://catalogcdns3.ulife.com.br/content-cli/CTI_INTERA_21/unidade_2/ebook/index.html# 30/30 ZHANG, C. B. S.; HARDT, M.; RECHT, B.; VINYALS, O. Understanding deep learning requires rethinking generalization . In preprint arXiv:1611.03530, 2016. ZAROZINSKI, M. An open source fuzzy logic library. In: AI Game Programming Wisdom . Newton: Charles River Media, 2002. WATKINS, C.J.C.H. Learning from Delayed Rewards . Cambridge: Cambridge University, 1989.
Compartilhar