• Nenhum resultado encontrado

A utilização de Algoritmos Genéticos para a formação de equipes heterogêneas em turmas universitárias

N/A
N/A
Protected

Academic year: 2021

Share "A utilização de Algoritmos Genéticos para a formação de equipes heterogêneas em turmas universitárias"

Copied!
78
0
0

Texto

(1)

CENTRO DE ENSINO SUPERIOR DO SERIDÓ DEPARTAMENTO DE COMPUTAÇÃO E TECNOLOGIA

BACHARELADO EM SISTEMAS DE INFORMAÇÃO

YURI KELVIN NASCIMENTO DA SILVA

A UTILIZAÇÃO DE ALGORITMOS GENÉTICOS PARA A FORMAÇÃO DE EQUIPES HETEROGÊNEAS EM TURMAS UNIVERSITÁRIAS

CAICÓ – RN 2017

(2)

A UTILIZAÇÃO DE ALGORITMOS GENÉTICOS PARA A FORMAÇÃO DE EQUIPES HETEROGÊNEAS EM TURMAS UNIVERSITÁRIAS

Trabalho de Conclusão de Curso apresentado ao Curso de Graduação em Sistemas de Informação do Centro de Ensino Superior do Seridó da Universidade Federal do Rio Grande do Norte, como requisito parcial à obtenção do grau de bacharel em Sistemas de Informação.

Orientador: Prof. Dr. Flavius da Luz e Gorgônio

Co-Orientadora: Profa. Me. Huliane Me-deiros da Silva

CAICÓ – RN 2017

(3)

Silva, Yuri Kelvin Nascimento da.

A utilização de Algoritmos Genéticos para a formação de equipes heterogêneas em turmas universitárias / Yuri Kelvin Nascimento da Silva. - Caicó, 2017.

76 f.: il.

Monografia (Graduação) - Universidade Federal do Rio Grande do Norte, Centro de Ensino Superior do Seridó, Departamento de Computação e Tecnologia, Bacharelado em Sistemas de Informação. Orientador: Prof. Dr. Flavius da Luz e Gorgônio.

Coorientador: Profa. Me. Huliane Medeiros da Silva.

1. Otimização combinatória - Monografia. 2. Algoritmos Genéticos Monografia. 3. Formação de equipes heterogêneas -Monografia. I. Gorgônio, Flavius da Luz e. II. Silva, Huliane Medeiros da. III. Título.

RN/UF/BS - Caicó CDU 004.023

Catalogação de Publicação na Fonte. UFRN - Biblioteca Setorial Profª. Maria Lúcia da Costa Bezerra - - CERES--Caicó

(4)

Vocês são a determinação das minhas conquis-tas.

(5)

Aos meus pais, Leomar Clemente da Silva e Sandra Zenaide Cordeiro do Nascimento, pelo amor, apoio, educação, confiança e persistência em lutar pela realização dos meus objetivos e sonhos. Vocês são a base e o alicerce da minha vida. Serei eternamente grato por tudo.

À minha companheira, Jahtiã Cristal Rodrigues do Carmo, por sempre estar ao meu lado nas conquistas e nas dificuldades. Obrigado por me apoiar e fortalecer com suas palavras, pelo seu amor, carinho, companheirismo e dedicação. Amo você.

À minha filha, Záira Rodrigues Nascimento, por ter me mostrado o sentido e a essência da vida, pelo amor puro, por me fortalecer cada dia mais. És o motivo de cada conquista, a minha razão de viver.

Aos meus amigos e amigas, em especial aos que estiveram presentes durante minha caminhada na graduação, por todos os momentos, principalmente o apoio e a confiança prestados. Vocês serão sempre lembrados.

Ao meu orientador, Prof. Dr. Flavius da Luz e Gorgônio, por todas as oportunidades, ensinamen-tos e conhecimenensinamen-tos. Obrigado pela confiança e por acreditar no meu potencial.

À minha co-orientadora, Profa. Me. Huliane Medeiros da Silva, e aos docentes, Profa. Dr. Tânia Cristina Meira Garciae Prof. Me. Fabrício Vale de Azevedo Guerra, pelas significantes contribuições para esta pesquisa.

Aos colegas do Laboratório de Inteligência Computacional Aplicada aos Negócios, pelos mo-mentos de convivência, pelas contribuições direta ou indiretamente prestadas a este trabalho. Aos colegas do curso de Bacharelado em Sistemas de Informação, por cada momento vivenciado, pelas amizades, apoios e conhecimentos. Agradeço especialmente aos alunos que contribuíram para o desenvolvimento deste trabalho.

(6)

done.”

(7)

A forma tradicional de aprendizagem por meio de equipes trata-se de um aspecto histórico pertinente à Educação. Entretanto, a dificuldade em distribuir os alunos de modo que favoreça o aprendizado entre os indivíduos ainda é um problema relativo a esta abordagem. Por outro lado, o avanço tecnológico e computacional possibilitou a criação de métodos e técnicas capazes de identificar resultados potenciais aos problemas nos quais são humanamente impossíveis de se solucionar. Por meio da utilização de meta-heurísticas, torna-se possível a exploração do espaço de busca a fim de se obter uma melhor configuração dos fatores que se aproximem do estado ótimo. Nesse contexto, o presente trabalho propõe uma solução algorítmica baseada em Algoritmos Genéticos para a otimização do processo de formação de equipes em domínio de competências, favorecendo a aprendizagem colaborativa por meio da troca de conhecimentos entre os indivíduos. Os experimentos realizados constataram que a estratégia proposta foi capaz de maximizar a heterogeneidade nas equipes, diferentemente dos métodos tradicionais comumente utilizados para a efetuação dos agrupamentos. Ainda, por meio da análise de variância, verificou-se que, de fato, o algoritmo proposto trata-se de uma técnica potencial para a garantia de soluções que sejam capazes de agrupar alunos com características heterogêneas, superando assim os métodos ainda empregados para este propósito.

Palavras-chave: Otimização combinatória. Algoritmos Genéticos. Formação de equipes heterogêneas.

(8)

The traditional way of learning through teams is a historical aspect pertinent to Education. However, the difficulty in distributing students in a way that favors learning among individuals is still a problem with this approach. On the other hand, technological and computational advancement has enabled the creation of methods and techniques capable of identifying potential results to the problems in which they are humanly impossible to solve. Through the use of metaheuristics, it is possible to explore the search space in order to obtain a better configuration of the factors that approach the optimal state. In this context, the present work proposes an algorithmic solution based on Genetic Algorithms to optimize the process of team formation in competences domain, favoring collaborative learning through the exchange of knowledge among individuals. The experiments realized that the proposed strategy was able to maximize the heterogeneity in the teams, unlike the traditional methods commonly used for clustering. Furthermore, through the analysis of variance, it was verified that, in fact, the proposed algorithm is a potential technique for guaranteeing solutions that are capable of grouping students with heterogeneous characteristics, thus overcoming the methods still employed for this purpose.

(9)

Figura 1 – Ilustração da execução de um AG . . . 29

Figura 2 – Diferentes representações cromossomiais . . . 31

Figura 3 – Ilustração da seleção pelo método da roleta . . . 33

Figura 4 – Ilustração do crossover de um ponto . . . 35

Figura 5 – Ilustração do crossover multipontos . . . 36

Figura 6 – Ilustração do crossover uniforme . . . 36

Figura 7 – Crossover com mapeamento em valores inteiros . . . 37

Figura 8 – Crossover de um ponto em valores inteiros . . . 37

Figura 9 – Ilustração da mutação binária . . . 38

Figura 10 – Ilustração da mutação por inversão aplicada a valores inteiros . . . 39

Figura 11 – Distribuição das probabilidades na roleta . . . 40

Figura 12 – Recombinação dos indivíduos selecionados . . . 41

Figura 13 – Ilustração da proposta do trabalho . . . 47

Figura 14 – Ilustração da representação cromossomial do AG proposto . . . 48

Figura 15 – Geração dos agrupamentos para o índice DB . . . 49

Figura 16 – Ilustração da execução do AG proposto . . . 49

Figura 17 – Ilustração da ferramenta utilizada para extrair os dados . . . 51

Figura 18 – Exemplo de base de dados com as notas dos alunos . . . 53

Figura 19 – Gráfico dos resultados para a turma de 2009 . . . 55

Figura 20 – Gráfico dos resultados para a turma de 2010 . . . 56

Figura 21 – Gráfico dos resultados para a turma de 2011 . . . 58

Figura 22 – Gráfico dos resultados para a turma de 2012 . . . 59

Figura 23 – Gráfico dos resultados para a turma de 2013 . . . 60

Figura 24 – Gráfico dos resultados para a turma de 2014 . . . 62

Figura 25 – Gráfico dos resultados para a turma de 2015 . . . 63

Figura 26 – Gráfico geral dos resultados dos experimentos por turma . . . 64

Figura 27 – Gráfico ilustrativo da estatística de teste F . . . 66

(10)

Tabela 1 – Combinações possíveis de divisão de alunos em equipes . . . 20

Tabela 2 – Resultados dos experimentos para a turma de 2009 . . . 54

Tabela 3 – Equipes formadas para a turma de 2009 . . . 55

Tabela 4 – Resultados dos experimentos para a turma de 2010 . . . 56

Tabela 5 – Equipes formadas para a turma de 2010 . . . 57

Tabela 6 – Resultados dos experimentos para a turma de 2011 . . . 57

Tabela 7 – Equipes formadas para a turma de 2011 . . . 57

Tabela 8 – Resultados dos experimentos para a turma de 2012 . . . 59

Tabela 9 – Equipes formadas para a turma de 2012 . . . 59

Tabela 10 – Resultados dos experimentos para a turma de 2013 . . . 60

Tabela 11 – Equipes formadas para a turma de 2013 . . . 61

Tabela 12 – Resultados dos experimentos para a turma de 2014 . . . 61

Tabela 13 – Equipes formadas para a turma de 2014 . . . 61

Tabela 14 – Resultados dos experimentos para a turma de 2015 . . . 63

Tabela 15 – Equipes formadas para a turma de 2015 . . . 63

Tabela 16 – Resultados gerais dos experimentos por turma . . . 64

(11)

1 INTRODUÇÃO . . . 11 1.1 CONTEXTUALIZAÇÃO E PROBLEMA . . . 12 1.2 OBJETIVOS . . . 13 1.2.1 Objetivo Geral . . . 13 1.2.2 Objetivos Específicos . . . 13 1.3 DELIMITAÇÃO DO ESTUDO . . . 13 1.4 JUSTIFICATIVA . . . 14 1.5 APRESENTAÇÃO DO TRABALHO . . . 15 2 FUNDAMENTAÇÃO TEÓRICA . . . 17 2.1 A APRENDIZAGEM EM EQUIPE . . . 17

2.2 MINERAÇÃO DE DADOS EDUCACIONAIS . . . 21

2.3 TÉCNICAS DE OTIMIZAÇÃO COMBINATÓRIA . . . 23

2.4 ALGORITMOS GENÉTICOS . . . 25 2.4.1 História e definição . . . 25 2.4.2 Características . . . 26 2.4.3 Esboço do algoritmo . . . 28 2.4.4 Estrutura . . . 30 2.4.4.1 Representação cromossomial . . . 30 2.4.4.2 População inicial . . . 31 2.4.4.3 Função de avaliação . . . 32

2.4.4.4 Seleção dos pais . . . 32

2.4.4.5 Operadores genéticos . . . 34

2.4.4.6 Módulo de população . . . 38

2.4.4.7 Exemplo manual simples . . . 39

2.5 SIMILARIDADE E DISSIMILARIDADE: CONCEITOS E MÉTRICAS . . 41

2.6 TRABALHOS RELACIONADOS . . . 43

3 METODOLOGIA PROPOSTA . . . 47

3.1 ARQUITETURA DO TRABALHO . . . 47

3.2 PARÂMETROS DE CONFIGURAÇÃO DO ALGORITMO . . . 50

3.3 MATERIAIS E MÉTODOS . . . 50

(12)

4.1 EXPERIMENTO 1 - TURMA 2009 . . . 54 4.2 EXPERIMENTO 2 - TURMA 2010 . . . 55 4.3 EXPERIMENTO 3 - TURMA 2011 . . . 57 4.4 EXPERIMENTO 4 - TURMA 2012 . . . 58 4.5 EXPERIMENTO 5 - TURMA 2013 . . . 59 4.6 EXPERIMENTO 6 - TURMA 2014 . . . 61 4.7 EXPERIMENTO 7 - TURMA 2015 . . . 62

4.8 ANÁLISE GERAL DOS RESULTADOS . . . 63

4.9 VALIDAÇÃO DA ESTRATÉGIA PROPOSTA . . . 65

4.10 CONCLUSÕES E TRABALHOS FUTUROS . . . 68

(13)

1 INTRODUÇÃO

A maneira como a Educação iniciou seu processo de transmissão e compartilhamento de conhecimentos entre professores e alunos evoluiu bastante ao longo dos anos. Em um âmbito histórico, por volta do século XVI, a estrutura de organização dos alunos costumeiramente utilizada nos dias atuais passaria a ser melhor definida. Até então, o modo no qual as pessoas mais jovens de qualquer grupo social eram integradas na coletividade dava-se através de processos, em geral, individuais, ora por parte dos pais, em casa ou no campo, ora por parte dos mestres e artesãos, nas oficinas (ZABALA, 1998).

O modelo em questão era caracterizado por grandes grupos de alunos de um mesmo sexo e idade, localizados em uma mesma sala de aula e instruídos por um professor/tutor. Contudo, ao longo dos anos, outras formas de organização surgem e rompem com o, até então, modelo único: grupos fixos e dinâmicos, equipes de trabalho, oficinas, entre outros. Ainda, é nesta mesma época que os grupos passam a ser divididos – homogêneos e heterogêneos – e a heterogeneidade já persiste como um fator na aprendizagem (ZABALA, 1998).

De acordo com Johnson e Johnson (2013), um grupo, ou uma equipe, é constituído por um agrupamento de indivíduos que se unem com um propósito/objetivo comum. As pessoas se agrupam para alcançar objetivos que não conseguiriam por si próprios, ou que seriam mais difíceis de obter de modo isolado. Ainda, os autores acrescentam que as equipes são formadas por dois ou mais indivíduos interdependentes que interagem e influenciam uns com os outros, estruturados por um conjunto de papéis e normas, a fim de satisfazer algumas necessidades pessoais por meio da associação conjunta. É comum encontrar na literatura diferentes designações para os termos grupo e equipe, entretanto, por questões de praticidade, ao longo do trabalho ambos os termos irão ser empregados referenciando-se ao agrupamento de indivíduos com objetivos e finalidades acadêmicas.

Os métodos utilizados para efetuar formação de equipes tratam-se de fatores que influenciam no modo ao qual ocorrem as interações entre os integrantes. Apesar dos benefícios inerentes à prática da troca de conhecimentos entre indivíduos com diferentes perfis acadêmicos, a dificuldade em organizar as equipes da forma mais heterogênea possível torna-se um empecilho para com a sua utilização (SILVA; SILVA; GORGÔNIO, 2012; SILVA, 2013). Segundo os autores, a formação de equipes demasiadamente homogêneas e de tamanho não-padronizado, acarretada por uma distribuição inadequada dos alunos em equipes, assim como a complexidade em distribuir os alunos em equipes ideais, dificulta a troca de conhecimento como também o

(14)

aprendizado dos integrantes.

Mediante esses aspectos, o processo combinatório de equipes heterogêneas pode ser otimizado através de técnicas baseadas em Inteligência Artificial. A IA é uma subárea da Ciência da Computação que se dedica às tarefas complexas e humanamente árduas, tais como atividades que envolvem otimização combinatória, que se aplicam às mais diversas áreas do conhecimento humano, inclusive à Educação. Essas abordagens dispõem de algoritmos heurísticos como mecanismos para minimizar a enorme quantidade de combinações em meio aos estados possíveis no espaço de busca, podendo se obter uma solução aceitável ao problema (LUGER, 2008).

Desse modo, identificou-se a necessidade de utilizar uma técnica computacional capaz de realizar a divisão dos alunos em equipes. Através desta, busca-se manter a maior heterogeneidade entre os indivíduos, favorecendo a aprendizagem colaborativa acadêmica a partir do compartilhamento de conhecimento e aprendizado pelas equipes, contribuindo assim para a redução do problema da complexidade de agrupamento utilizando algoritmos de otimização.

1.1 CONTEXTUALIZAÇÃO E PROBLEMA

São diversos os fatores nos quais a aprendizagem em equipe auxilia no desenvol-vimento cognitivo por meio da sua prática. A aptidão para solucionar problemas, planejar, tomar decisões relevantes, detectar e reconhecer sugestões pertinentes, adquirir conhecimentos através de relacionamentos, bem como atentar-se para informações importantes são exemplos de aspectos desenvolvidos por meio da aprendizagem em equipe (COOKE et al., 2000). Para tal, Salas et al. (1992) caracterizam uma equipe como sendo:

“um conjunto distinto de duas ou mais pessoas que interagem dinamicamente, interdependentemente e adaptativamente para cumprir uma meta, objetivo ou missão importantes, onde cada uma possui papéis ou funções específicas a desempenhar, e que existe por tempo limitado”

Baseado em uma abordagem colaborativa, é através deste método de aprendizagem que “os alu-nos constroem coletivamente seu conhecimento por meio de uma troca constante de informações, de pontos de vista, de questionamentos, de resoluções de questões, de avaliações” (TORRES; ALCANTARA; IRALA, 2004). Ainda, a inter-relação entre os diferentes perfis, habilidades, competências e conhecimentos são compartilhados de tal forma que o objetivo de aprendizagem seja atingido.

A grande complexidade do processo de formação de equipes heterogêneas e a carência de ferramentas de agrupamentos para tal, são obstáculos na utilização desse método. Em Silva (2013), uma estratégia baseada em técnicas de análise de agrupamentos foi capaz de

(15)

gerar equipes heterogêneas apresentando resultados superiores à outros métodos (seção 2.1). No entanto, supõe-se que outras possibilidades de combinações não verificadas naquele trabalho poderiam ter garantido melhores resultados e heterogeneidade às equipes.

Assim, surge o seguinte problema: é possível otimizar o processo de formação de equipes através do uso de algoritmos evolucionários, de modo a potencializar a heterogenei-dade entre os integrantes de cada equipe? Com base nisso, este trabalho visa desenvolver uma solução baseada em Algoritmos Genéticos (AGs) que otimize o processo de formação de equipes, buscando manter a máxima heterogeneidade entre os indivíduos, a fim de favore-cer o compartilhamento de conhecimentos no âmbito acadêmico por meio da aprendizagem colaborativa.

1.2 OBJETIVOS

1.2.1 Objetivo Geral

Desenvolver uma solução algorítmica, baseada no uso de AGs, que otimize o pro-cesso de formação de equipes em turmas universitárias buscando a máxima heterogeneidade, visando contribuir para a aprendizagem colaborativa acadêmica por meio do compartilhamento de conhecimento interdisciplinar.

1.2.2 Objetivos Específicos

i. Analisar métodos existentes aplicados à formação de equipes;

ii. Definir uma representação cromossômica para retratar equipes acadêmicas e uma estratégia de mensuração da heterogeneidade das equipes;

iii. Desenvolver uma solução baseada em AGs para otimizar a formação de equipes heterogê-neas;

iv. Interpretar os resultados apresentados pelo algoritmo proposto, comparando-o com outros métodos de agrupamento através de índices de similaridade e testes estatísticos.

1.3 DELIMITAÇÃO DO ESTUDO

É sabido que cada professor possui práticas de ensino próprias, desde softwares para apresentações do conteúdo em dispositivos de multimídia à conteúdos escritos ao quadro, onde a utilização de tais métodos é livre e variável a cada um deles, assim sendo também para as

(16)

estratégias de formação de equipes. Comumentemente, as equipes são formadas por meio da utilização de algum critério de aleatoriedade; a partir de afinidades entre os alunos; pela definição de líderes para montar cada equipe (SILVA, 2013), sendo que tais abordagens não garantem um fator heterogêneo entre as equipes, muito menos o maior grau de heterogeneidade possível entre os alunos.

Entretanto, se considerarmos diferentes alunos em diferentes níveis de formação escolar, podemos ter diversos parâmetros de seleção que favoreçam a heterogeneidade. Assim sendo, o presente trabalho limitou-se em desenvolver uma solução baseada em AGs que otimize o processo de formação de equipes voltada apenas a alunos de ensino superior, mais especifica-mente, ao curso de Bacharelado em Sistemas de Informação da Universidade Federal do Rio Grande do Norte. Contudo, a delimitação adotada não restringe a aplicação da proposta somente ao curso descrito, possibilitando que a mesma seja empregada para outros cursos de graduação.

O critério de separação das equipes foi definido como o desempenho acadêmico dos alunos em componentes curriculares obrigatórios já cursados. Foram considerados alunos a partir do 5º semestre pois, neste período do curso, uma quantidade relevante de disciplinas já foram cursadas, obtendo-se um volume aceitável de dados para a execução do algoritmo. Logo, a partir destes, torna-se possível alocar alunos com perfis distintos em uma mesma equipe através da mensuração da heterogeneidade entre os mesmos.

1.4 JUSTIFICATIVA

Mediante o aprendizado em equipe de forma colaborativa, os alunos buscam obter resultados benéficos a si próprios, trabalhando em conjunto para maximizar o seu aprendizado. A colaboração motiva os alunos a desempenhar esforços para alcançar um maior desempenho, produtividade, nível de raciocínio e pensamento crítico; aumenta o espírito de equipe, a so-lidariedade e a valorização da diversidade, mantendo relações positivas, e; melhora a saúde mental dos alunos, influenciando de forma positiva no desenvolvimento social, na autoestima e na capacidade de enfrentar desafios (JOHNSON; JOHNSON; HOLUBEC, 1999).

Segundo Pérez (2007), o emprego da aprendizagem colaborativa no âmbito acadê-mico ajuda a melhorar a aprendizagem, permite o conflito de diferentes pontos de vista e opiniões, auxilia na revalorização das perspectivas próprias de cada indivíduo e facilita o intercâmbio de conhecimentos, habilidades e experiências dos alunos uns com os outros. Silva e Leal (2005) apresentam que o trabalho em equipe vem sendo bastante utilizado por docentes de instituições

(17)

de ensino superior a fim de dinamizar o ensino e promover a interação entre os alunos. As autoras complementam que, por meio das equipes, trabalhos são efetuados para construir conceitos, compreender modelos teóricos, realizar revisão bibliográfica, e fazer relações da teoria com a prática.

Entretanto, embora a aprendizagem colaborativa forneça proveitosos aspectos aos indivíduos, o processo de formação das equipes – principalmente heterogêneas – é extremamente complexo (melhor descrito na seção 2.1). A fim de sanar a dificuldade do processo de formação de equipes, os AGs (detalhados na seção 2.4) apresentam-se como uma técnica viável na exploração por soluções, buscando manter a máxima heterogeneidade nas equipes.

Segundo Lima (2006), os AGs são uma técnica potencial de otimização aplicada a inúmeros problemas de busca de soluções ótimas, ou quase-ótimas, que opera sobre um conjunto de soluções. Ainda, o autor esclarece que esta operabilidade se dá pela realização da busca em diferentes áreas do espaço de soluções, alocando em cada área um número apropriado de possibilidades. Assim, o algoritmo irá “vasculhar” a maior quantidade possível de regiões no espaço de busca almejando obter a solução mais viável ao problema.

Diante dessas colocações, a necessidade de soluções computacionais que otimizem o processo de formação de equipes voltadas ao âmbito acadêmico, buscando manter a maior heterogeneidade entre os alunos, visando um maior fator de aprendizagem por meio da troca de conhecimentos distintos, são os motivos pelos quais justifica-se a realização do presente trabalho.

1.5 APRESENTAÇÃO DO TRABALHO

Este documento encontra-se estruturado em quatro capítulos: Introdução, Funda-mentação Teórica, Metodologia Proposta e Resultados e Discussões. Inicialmente, no Capítulo 1, são introduzidas noções e ideias gerais da pesquisa, precisamente no que diz respeito à contextualização e problema, objetivos, delimitação e justificativa do estudo.

O Capítulo 2 subdivide-se em seções de embasamento teórico da pesquisa. Neste, são enfatizados os benefícios pertinentes à prática da aprendizagem mediante equipes heterogêneas (2.1), os métodos aplicados à descoberta de informações relevantes em dados educacionais (2.2), assim como as técnicas computacionais destinadas à otimização de problemas combinatórios (2.3).

Seguidamente, são apresentados os aspectos intrínsecos aos AGs, partindo da história e definição, características e esboço do algoritmo até a explanação de cada componente da

(18)

estrutura e um exemplo manual de execução (2.4). A seção 2.5 destina-se à exposição dos conceitos e métricas de similaridade e dissimilaridade adotados para a separação dos indivíduos com perfis distintos nas equipes. Ao final, são apresentados os trabalhos relacionados encontrados na literatura, demonstrando assim a potencialidade e eficácia das meta-heurísticas (especialmente os AGs) para a otimização do processo de formação de equipes (2.6).

O Capítulo 3 discorre acerca do AG proposto neste trabalho. Em um primeiro mo-mento, são expostos os elementos pertencentes à arquitetura do algoritmo de modo a demonstrar a modelagem das condições necessárias à sua execução (3.1). Posteriormente, são ressaltados os parâmetros de configuração do AG adotados nos experimentos (3.2) seguidos dos materiais e métodos utilizados para a sua implementação e execução (3.3). A seção final evidência as etapas, ferramentas e restrições adotadas no pré-processamento dos dados em prol da criação das bases de dados para os experimentos (3.4).

Por fim, o Capítulo 4 discute os resultados obtidos para as turmas nas quais foram realizados os experimentos, validando-os com a aplicação de análise estatística. Em cada um desses, são apresentados os valores de heterogeneidade e a distribuição das equipes dada por cada abordagem. Além disso, as seções finais deste capítulo expõem as conclusões da pesquisa, bem como as sugestões de trabalhos futuros a serem integrados ao estudo.

(19)

2 FUNDAMENTAÇÃO TEÓRICA

2.1 A APRENDIZAGEM EM EQUIPE

Nos dias atuais, é imprescindível a utilização de equipes para a realização e solução de tarefas, atividades ou problemas. Nenhum indivíduo é capaz de atuar como uma unidade isolada, de ter acesso a todas as informações, bem como possuir tempo e habilidades cognitivas necessárias para realizar uma tarefa complexa, principalmente pela constante expansão das informações (COOKE et al., 2013). Ainda, segundo os autores, apesar do ambiente ser o mesmo para os membros de uma equipe, suas perspectivas são heterogêneas, isto é, cada indivíduo possui conhecimentos e habilidades distintos, tornando impossível para qualquer um assumir todas as perspectivas e possuir consciência completa da tarefa ou situação.

Diante desse contexto, o conceito de aprender em equipe de forma colaborativa pode ser definido como “o processo de construção do conhecimento decorrente da participação, do envolvimento e da contribuição ativa dos alunos na aprendizagem uns dos outros” (TORRES; AMARAL, 2011). O aumento da curva de aprendizagem dá-se pelas relações existentes entre os indivíduos, sendo efetivada pela troca de conhecimentos, pensamentos, habilidades e experiências divergentes mas que visam alcançar um objetivo comum. A aprendizagem colaborativa está firmada na ideia de um consenso entre membros para geração de conhecimento, aspecto que se constrói por meio de trabalho conjunto direto ou indireto – projetos, estudos de caso, resolução de problemas – por conversas ou um simples acordo (TORRES; ALCANTARA; IRALA, 2004).

É comum perceber a aplicação dessa metodologia de aprendizagem à diferentes tipos de equipes situadas em ambientes e graus de ensino distintos (BARBATO; CORRÊA; SOUZA, 2010; TORRES; AMARAL, 2011; TORRES; SIQUEIRA, 2013). No âmbito acadêmico, o emprego da aprendizagem colaborativa possibilita aos estudantes o cultivo de seus pensamentos críticos e a tolerância a outras opiniões, isso acontece por meio do incentivo em raciocinar através de problemas, onde ocorre a abertura às ideias de outros indivíduos e a estruturação de seus próprios pontos de vista (BERGOM et al., 2011).

As relações existentes em um cenário de colaboração concedem aos indivíduos o desenvolvimento de competências outrora não atingidas. A competência caracteriza-se como um conjunto de conhecimentos, habilidades e atitudes que justifica um alto desempenho, sendo frequentemente aplicada na prática de uma atividade/tarefa (FLEURY; FLEURY, 2001). O espírito colaborativo desempenhado na resolução de problemas influencia na construção de

(20)

competências relacionadas ao trabalho em equipe, especificamente nos quesitos de comunicação, relação interpessoal, cooperação e respeito mútuo (LEITE; ESTEVES, 2006). A junção desses fatores possibilitam o cumprimento dos objetivos propostos mediante o intercâmbio existente nas equipes, beneficiando assim a aprendizagem dos alunos.

Os níveis de desenvolvimento da aprendizagem podem ser avaliados através da utilização de ferramentas. Em Langer, Colton e Goff (2003), os autores apresentam uma ferramenta na qual o professor é capaz de analisar o trabalho dos alunos – qualquer dado ou evidência coletados que revelam informações sobre o aprendizado – com o propósito de melhorar a aprendizagem dos mesmos. Os professores juntam-se a uma equipe com a finalidade de interpretar e documentar o progresso dos alunos, de modo a refletir como os alunos aprendem. Ainda, quando essa análise é efetuada em uma mesma equipe de alunos durante um longo período de tempo, é possível fazer descobertas relacionadas ao modo como os alunos constroem o significado de conceitos e habilidades.

Uma das formas mais comuns de agrupar alunos em equipes é através da análise dos seus desempenhos (MACINTYRE; IRESON, 2002), onde alunos de habilidades específicas são postos em equipes homogêneas e alunos de habilidades mistas em equipes heterogêneas (GREGORY, 1984). Sukhnandan e Lee (1998), a partir de uma revisão de outros trabalhos, apresentam que uma das principais razões para utilizar agrupamento homogêneo é reduzir a propagação de habilidade dentro de uma classe ou grupo e facilitar o processo de ensino à turma como um todo. Por outro lado, as autoras indicam que um dos principais objetivos da utilização de agrupamentos heterogêneos foi o de melhorar a igualdade de oportunidades, adotando abordagens de ensino e aprendizagem que tentaram resolver as consequências sociais negativas dos agrupamentos homogêneos.

De acordo com Webb, Baxter e Thompson (1998), as equipes heterogêneas bene-ficiam alunos com menores habilidades, proporcionando-lhes recursos intelectuais de alunos de maiores habilidades. Ainda, evidências demonstram que alunos de alta capacidade obtém melhores benefícios trabalhando em equipes heterogêneas do que em equipes homogêneas ou individualmente, devido aos papéis desempenhados pelos professores que adotam equipes heterogêneas.

O processo de formação de equipes é dado por diversos mecanismos e fatores, muito embora sejam tratados apenas um pequeno conjunto desses. Usualmente, os métodos utilizados pelos professores causam predominância do fator homogêneo entre os membros (SILVA, 2013): a. Escolha mútua: as equipes são formadas pelos próprios alunos, respeitando um limite

(21)

mínimo e máximo de indivíduos definido pelo professor. Neste método, o aspecto da afinidade entre os membros é tido como a principal vantagem. Por outro lado, a desvan-tagem em utilizá-lo é dada pela formação de equipes com indivíduos de perfis bastante semelhantes;

b. Escolha aleatória: as equipes são agrupadas com base no fator de aleatoriedade, geralmente por sorteios. Mesmo que haja distribuições menos homogêneas que a escolha mútua, não é garantida uma divisão igualmente heterogênea entre as equipes devido à vasta gama de possibilidades de agrupar os indivíduos. Muitas vezes os alunos não possuem afinidades entre si, dificultando o entrosamento da equipe;

c. Escolha guiada pelo professor: neste método, o professor é o responsável pela formação das equipes. O mesmo procura balancear as equipes de modo a torná-las heterogêneas, dado o conhecimento prévio que possui acerca dos alunos e das preferências individu-ais de cada um deles na participação de uma equipe ou outra. No entanto, o mesmo problema combinacional é obtido neste método de escolha, assim como a homogenei-dade apresentada na consideração das preferências dos alunos, ocasionando em equipes desbalanceadas.

Ainda por Silva (2013), a homogeneidade caracterizada nos métodos apresentados ocorre pela má distribuição dos alunos nas equipes. A autora enfatiza que equipes que possuem esse tipo de característica tendem a reunir alunos com perfis bastante semelhantes, isto é, os indivíduos apresentam as mesmas competências e deficiências, tornando-se uma problemática no desempenho de certas atividades, visto que sempre haverá alguma dessas que nenhum indivíduo possuirá as habilidades necessárias para executá-la.

Por outro lado, o processo de realização dos agrupamentos de modo a garantir a heterogeneidade entre as equipes é um tanto quanto complexo. Partindo-se da Análise Com-binatória, a quantidade total de combinações possíveis pode ser obtida através do coeficiente binomial, sendo n a quantidade total de alunos e k o número de equipes a serem compostas com quantidades igualmente divididas, representado na Equação 2.1.

Cn,k= n! k!(n − k)!

(2.1)

Geralmente, as equipes podem ter tamanhos variáveis de alunos, isso faz com que o número de possibilidades seja ainda maior dadas as possíveis formas de particionar tal conjunto, sendo assim obtidas por meio do número de Stirling do segundo tipo apresentado na Equação

(22)

2.2, onde n é conjunto de alunos e k a quantidade de partições (COSTA, 1999; SILVA, 2013): s(k)n = n

k=1 1 k! i=k

i=0 (−1)k−iCk,iin (2.2)

No entanto, para fins práticos, os professores limitam a quantidade máxima de alunos por equipes, acarretando na exclusão do primeiro somatório da equação acima, gerando uma nova equação dada em 2.3, onde k é o número máximo de alunos por equipes e n a quantidade total de alunos: s(k)n = 1 k! i=k

i=0 (−1)k−iCk,iin (2.3)

Apesar de haver uma grande redução nas possibilidades por meio da limitação da quantidade de partições possíveis no conjunto, o número de combinações para equipes flexíveis ainda é extremamente grande e supera facilmente a quantidade obtida para os mesmo parâmetros em equipes de tamanho fixo. Para um melhor entendimento e visualização dessas colocações, a Tabela 1 apresenta a quantidade de combinações possíveis para as diferentes possibilidades de divisão de n alunos em k equipes.

Tabela 1 – Combinações possíveis de divisão de alunos em equipes Qtd. de alunos Qtd. de equipes No. de possibilidades em equipes fixas No. de possibilidades em equipes flexíveis 10 2 45 511 15 3 455 2375101 20 4 4845 4.5 x 1010 40 5 658009 7.5 x 1025 50 5 2118760 7.5 x 1032

Fonte – Adaptada de Silva (2013).

Em uma análise dos valores obtidos na Tabela 1, é facilmente perceptível a comple-xidade do processo de formação de equipes por meio das possíveis combinações existentes nas divisões em equipes fixas e flexíveis. Mesmo que o professor empenhe-se em manter o maior grau de heterogeneidade possível entre os indivíduos, varrer todo o conjunto de combinações possíveis por meio de métodos manuais ou de busca exaustiva torna este processo impossível de ser efetuado em um espaço de tempo aceitável e com boas soluções. Assim, a utilização de

(23)

AGs permite explorar um maior espaço de busca de modo a encontrar uma solução viável, que pode ser a solução ótima ou quase-ótima, para o problema e apresenta-se como uma possível alternativa para sanar essas dificuldades, mesmo que não encontre a melhor solução possível.

2.2 MINERAÇÃO DE DADOS EDUCACIONAIS

Com o crescente avanço tecnológico, os bancos de dados sofreram um aumento considerável na quantidade de dados, necessitando cada vez mais de técnicas que consigam gerar informação em meio a este cenário. De forma sintética, a mineração de dados trata-se de um processo capaz de extrair conhecimento a partir de uma grande massa de dados. Tan et al. (2006) afirmam que as técnicas de mineração de dados são implantadas com o propósito de vasculhar grandes bancos de dados a fim de encontrar padrões novos e úteis que poderiam permanecer desconhecidos. Segundo Witten et al. (2016), os dados são armazenados de forma eletrônica e a busca é automatizada pelo computador, de modo que hajam soluções de problemas por uma análise de dados já presentes nos bancos de dados.

Diversos setores e profissionais foram influenciados pela mineração de dados na busca de informações consistentes em meio à grande massa de dados, como os economistas, esta-tísticos, engenheiros de comunicação, empresas comerciais, mídias sociais na Internet, medicina e bioinformática, entre outros. No âmbito educacional, a mineração de dados educacionais ana-lisa os dados produzidos por qualquer tipo de sistema que apoie a aprendizagem ou a educação e, através do desenvolvimento, da pesquisa e da aplicação de métodos computacionais, detecta padrões em grandes coleções de dados para resolução de problemas educacionais (ROMERO; VENTURA, 2013).

É possível encontrar na literatura diversos trabalhos relacionados à mineração de dados educacionais. De acordo com Baker, Isotani e Carvalho (2011), os pioneiros na realização de trabalhos utilizando mineração de dados na educação no Brasil foram Brandão, Ramos e Tróccoli (2003) e Pimentel e Omar (2006), analisando os dados do programa nacional de informática na educação e os dados da avaliação de alunos, respectivamente. Em Dias et al. (2008), aplicaram-se técnicas de mineração de dados na obtenção de conhecimento relevante para se entender o perfil dos alunos na utilização do ambiente LabSQL, sendo possível analisar e adquirir conclusões acerca das ações praticadas pelos usuários atreladas ao seu desempenho e aprendizado, como os benefícios e dificuldades apresentados pelos alunos no uso de tal ambiente.

(24)

de aprendizagem (AVA) que busca identificar estudantes com características e comportamentos que podem levar à evasão ou reprovação, baseando-se em informações extraídas por processos de mineração de dados, dando suporte aos professores no acompanhamento das situações de aprendizagem dos alunos por meio de monitoramento de seus perfis e notificações sobre grupos de alunos que partilham de necessidades específicas. Neste mesmo contexto, Dekker, Pechenizkiy e Vleeshouwers (2009) realizaram um estudo de caso capaz de prever o motivo da desistência de estudantes de Engenharia Elétrica após o primeiro semestre de seus estudos, ou mesmo antes do seu início, por meio da aplicação de mineração de dados, apontando quais os fatores relevantes para este resultado.

No contexto de agrupamento de estudantes, Perera et al. (2009) aplicaram técnicas de agrupamento e mineração de padrão sequencial nos dados coletados de um ambiente de aprendizagem colaborativa online, sendo possível perceber padrões relevantes que demonstram a importância da interação em equipe. Os autores indicam diferentes resultados apresentados por alunos mais aptos e alunos menos aptos, ocasionado pelos perfis semelhantes dos alunos nas equipes. Ainda assim, os mesmos apontam que os facilitadores e os alunos podem ser conscien-tizados das limitações enfrentadas, incentivando uma melhor prática de grupo e experiência de ensino e aprendizagem.

Em Kinnebrew e Biswas (2011), os autores apresentam uma metodologia explo-ratória de mineração de dados para análise de comportamentos de aprendizagem por meio de traços de interações dos alunos. Os mesmos ampliaram a interpretação do método trabalhado, que identifica os comportamentos gerais de aprendizagem comuns a uma equipe de alunos, juntamente com uma técnica complementar para identificar padrões diferencialmente frequentes entre as equipes, obtendo eficácia na identificação e comparação de tendências adicionais nos comportamentos de aprendizagem em equipe por meio desta metodologia integrada.

No trabalho de Anaya e Boticario (2011), os autores utilizaram duas técnicas de mineração de dados para a modelagem da colaboração dos alunos com o intuito de fornecer aos mesmos informações importantes relacionadas à esta, incluindo uma avaliação do seu próprio processo de colaboração, onde foi possível obter avaliações positivas por meio de tais técnicas, destacando-se a análise de agrupamento. De acordo com Antonenko, Toy e Niederhauser (2012), a análise de agrupamento no contexto educacional ajuda os pesquisadores a desenvolver perfis com base na sequência de atividade do aluno, analisar o tempo gasto envolvido em uma determinada tarefa ou examinar recursos durante uma sessão de aprendizado. Neste trabalho, os mesmos utilizaram dois métodos de agrupamentos para analisar as características

(25)

do comportamento de aprendizagem dos alunos no envolvimento de resolução de problemas em um ambiente de aprendizagem online. Os autores apresentam que a principal vantagem dos agrupamentos para a análise de dados é o fornecimento de um perfil sem ambiguidade do comportamento de aprendizagem a partir das variáveis analisadas.

A análise de agrupamentos, ou clustering, consiste em um método para identificar grupos de objetos de modo que objetos em um mesmo agrupamento sejam bastante similares entre si e sejam bastante distintos de objetos alocados em agrupamentos diferentes (GAN; MA; WU, 2007). Tipicamente, as etapas de agrupamentos são caracterizadas por: i) definição do conjunto de dados, ii) pré-processamento e padronização dos dados, iii) identificação dos agrupamentos, iv) interpretação dos agrupamentos e v) conclusões (MIRKIN, 2005). Por meio da execução desse processo, é possível extrair informações e obter conclusões importantes acerca do objeto de estudo em questão.

A combinação de técnicas de análise de agrupamentos possibilita a obtenção de resultados favoráveis para o processo de formação de equipes heterogêneas (SILVA, 2013). Apesar de não garantir o maior grau de heterogeneidade possível entre as equipes, os métodos computacionais abordados em Silva demonstraram eficácia e eficiência para com a complexidade do problema combinatório em questão. Entretanto, perante o emprego de outras abordagens, soluções de maior potencialidade podem ser alcançadas, possibilitando uma melhor distribuição heterogênea nos agrupamentos. Tais fatores serão melhor compreendidos na seção seguinte.

2.3 TÉCNICAS DE OTIMIZAÇÃO COMBINATÓRIA

Essencialmente, os problemas de otimização de natureza combinatória são estabe-lecidos como problemas difíceis/intratáveis, isto significa a inexistência de uma abordagem algorítmica determinística (exata) que solucione-os de forma ótima em tempo razoável (HROM-KOVIC, 2004; BOUSSAÏD; LEPAGNOT; SIARRY, 2013). Diante desse contexto, os problemas de otimização, de um modo geral, são caracterizados pela busca de uma “melhor” configuração de um conjunto de variáveis para alcançar o objetivo proposto (BLUM; ROLI, 2003).

De acordo com Papadimitriou e Steiglitz (1982), os problemas de otimização com-binatória são categorizados como problemas cujas soluções estão codificadas com variáveis discretas (representadas por valores inteiros). Nesse aspecto, as soluções esperadas são tidas como um objeto de um conjunto finito ou infinitamente contável. Tipicamente, este objeto trata-se de um número inteiro, um subconjunto, uma permutação ou uma estrutura de grafo.

(26)

Formalmente, Ausiello et al. (1999) definem um problema de otimização combinató-ria por um quádruplo (I, f , m, g) onde:

1. I é um conjunto de instâncias;

2. f (x) é o conjunto de soluções viáveis, dado que x ∈ I;

3. m(x, y) é a função de medida definida por pares (x, y), onde x ∈ I e y ∈ f (x). Para cada par (x, y), m(x, y) provê um valor real positivo no qual é o valor da solução viável y;

4. g é a função objetivo a ser minimizada ou maximizada.

Assim sendo, dada uma instância x, denota-se por f∗(x) o conjunto das soluções ótimas de x, tal qual é o conjunto das soluções onde o valor é mínimo ou máximo. Logo, de forma mais precisa, para cada y∗(x) tal que y∗(x) ∈ f∗(x):

m(x, y∗(x)) = g{v | v = m(x, z) ∧ z ∈ f (x)} (2.4)

Em virtude da complexidade de obtenção dessas soluções ótimas no espaço de busca, diversos algoritmos foram desenvolvidos para este propósito (BLUM; ROLI, 2003). Segundo os autores, tais algoritmos são classificados como completos ou aproximados. Os algoritmos completos tratam-se de métodos capazes de atingir soluções ótimas em tempo limitado para um tamanho finito de instâncias. No entanto, estes algoritmos necessitam de um alto custo computacional, visto que as abordagens em problemas combinatórios assumem execuções em tempo não-polinomial. Do contrário, os algoritmos de aproximação são alternativas que sacrificam a garantia de soluções ótimas para a obtenção de boas soluções em uma quantidade de tempo significativamente reduzida.

Partindo desses conceitos, diversos trabalhos foram desenvolvidos por meio da utilização dos algoritmos de aproximação, assim definidos por meta-heurísticas (KHURI; BÄCK; HEITKÖTTER, 1994; GENDREAU; POTVIN, 2005; LIU; ZHONG; JIAO, 2010; BLUM et al., 2011; BOUSSAÏD; LEPAGNOT; SIARRY, 2013). De um modo geral, os autores conceituam as meta-heurísticas como algoritmos projetados para a resoluções de problemas de otimização sem a necessidade de se adaptarem profundamente a cada problema. Na busca por soluções aproximadas, as meta-heurísticas utilizam de processos baseados na natureza e componentes estocásticos (envolvendo variáveis randômicas), possuindo parâmetros que são adaptados de acordo com o problema em questão. Ainda, fatores como o processamento paralelo, exploration e exploitation (a busca por soluções em diferentes áreas e a identificação de soluções de alta

(27)

qualidade em uma determina área, respectivamente) são elementos cruciais no processo de busca desses algoritmos. Seguidamente, como exemplificação das meta-heurísticas, serão discutidos aspectos acerca dos AG, sendo estes a abordagem proposta neste trabalho.

2.4 ALGORITMOS GENÉTICOS

2.4.1 História e definição

Em meados dos anos de 1960 e 1970, o cientista e psicólogo John H. Holland descreveu e desenvolveu os conceitos, até então postulados, dos AGs, sendo o pioneiro na implementação deste método. Nos seus principais trabalhos sobre o assunto (HOLLAND, 1975; HOLLAND, 1992), o autor apresenta os AGs como sendo uma abstração do processo da evolução biológica e fornece um conjunto de teorias como mecanismo de adaptação através destes, isto é, a realização de modificações progressivas em estruturas (soluções candidatas ao problema) por meio de modificadores ou operadores estruturais para a ocorrência da adaptação entre os indivíduos. Ainda, em suas pesquisas, Holland reconheceu que a adaptação deve ser contínua e aberta, tornando-se improvável que os sistemas adaptativos sejam capazes de encontrar um estado de equilíbrio ou uma configuração final ótima (FORREST; MITCHELL, 2016).

O conceito de adaptação empregado nos AGs está fundamentado na teoria da evolu-ção das espécies. A seleevolu-ção natural, proposta por Darwin (1859), apresenta que os indivíduos mais aptos tendem a sobreviver em relação aos demais na competição por recursos vitais à sua sobrevivência. Por meio da ocorrência dessa seleção, os indivíduos de baixa capacidade possuem menor chance de sobreviver e, consequentemente, reproduzir, assim, as gerações seguintes desta espécie irão possuir em sua carga genética as boas características repassadas através da recombinação dos indivíduos mais aptos, ocasionando na propagação das boas aptidões.

Ainda, com o decorrer das gerações, a espécie pode adaptar-se ao ambiente de modo espontâneo, o que caracteriza o acontecimento de uma mutação em consequência das necessidades enfrentadas. Segundo Mitchell (1998), na computação, os mecanismos da evolução proporcionam o uso efetivo do paralelismo, beneficiando os problemas de busca por meio da exploração simultânea de diversas possibilidades diferentes, visto que muitos problemas computacionais envolvem a busca em um grande espaço de soluções.

Mediante esses conceitos, os AGs são definidos como um método heurístico baseado na sobrevivência do mais forte e foi descoberto como uma ferramenta útil para busca e otimização de problemas (SIVANANDAM; DEEPA, 2007). Ainda pelos autores, a ideia básica do AG é

(28)

encontrar a melhor solução em um conjunto de soluções específico utilizando dos operadores genéticos de seleção, recombinação e mutação nas populações, avaliando cada nova população gerada de modo que os indivíduos, isto é, as possíveis soluções estejam convergindo para o objetivo desejado. De acordo com Holland, a população trata-se de uma amostra de indivíduos a partir do espaço de todos os indivíduos possíveis e tende a ser direcionada às regiões com alta avaliação no espaço de busca (FORREST; MITCHELL, 2016), isto faz com que a solução obtida seja caracterizada como viável — ou quase-ótima — ao problema, pois o aspecto amostral das populações não abrange todo o espaço de soluções possíveis, podendo se ter melhores soluções em outros locais deste espaço.

Por ter como base o processo evolutivo, a estrutura dos AGs está firmada na genética dos seres, onde cada componente possui uma definição em termos computacionais (HOLLAND, 1992). Os cromossomos são representados por strings de bits correspondentes às soluções candidatas, no qual cada cromossomo é dado por um conjunto de genes (bits) distribuídos nas devidas posições (locus), sendo estes uma instância específica dos alelos (exemplo, 0 ou 1), formando uma estrutura genética denominada genótipo. Ainda, os parâmetros utilizados para a execução do AG são representados como o fenótipo, que trata das características observáveis do genótipo. Em resumo, o Quadro 1 apresenta a terminologia de cada componente biológico associados aos AGs.

Quadro 1 – Terminologia biológica utilizada nos AGs Linguagem biológica Representação no AG

Cromossomo String de bits, indivíduo Gene Bit, característica Alelo Valor (e.g., binário, real, inteiro)

Locus Posição

Genótipo Estrutura

Fenótipo Parâmetros

Fonte – adaptado de Linden (2012)

2.4.2 Características

A natureza dos AGs está fundamentada no fator de aleatoriedade presente em diversas etapas de sua estrutura. Os AGs são algoritmos estocásticos baseados em eventos probabilísticos e não se caracterizam como uma técnica determinística, logo, a partir de uma mesma população inicial e do mesmo conjunto de parâmetros, diferentes soluções podem ser obtidas a cada execução realizada (LINDEN, 2012). Outro aspecto importante é a robustez do algoritmo,

(29)

estando relacionada à capacidade de executar de forma consistente e relevante uma ampla gama de problemas, isto faz com que os AGs possam ser aplicados à qualquer tipo de problema por não haver nenhum requisito específico à sua aplicação (SIVANANDAM; DEEPA, 2007).

Em comparação com os demais métodos de otimização e busca, os AGs possuem quatro principais diferenças que os tornam mais eficazes e apropriados à solução de problemas complexos (BODENHOFER, 2003):

a. Os AGs trabalham com uma codificação do conjunto de parâmetros, e não com os parâme-tros propriamente ditos. No mundo real, a reprodução e adaptação são realizadas a nível do código genético, portanto os AGs não operam com os valores próprios mas sim com versões codificadas destes (strings);

b. Os AGs realizam a busca a partir de um conjunto de populações de pontos (strings), não apenas um único ponto. Por meio disso, o algoritmo poderá recombinar diferentes soluções para obter os melhores indivíduos, aumentando as chances de alcançar o máximo global (ou mínimo) e, consequentemente, reduzindo os riscos de parar sob máximos locais. c. Os AGs não utilizam informação auxiliar sobre o valor da função objetivo, como derivadas,

isso faz com que os mesmos possam ser aplicados a qualquer problema de otimização contínua ou discreta. Especificar uma função de decodificação significativa é a única coisa a ser feita.

d. Os AGs utilizam operadores de transição probabilístico, enquanto outros métodos utilizam operadores de transição determinísticos. O principal diferencial é a forma como uma nova geração é calculada, prevalecendo o aspecto da aleatoriedade.

Segundo Michalewicz (1996), a caracterização de um AG, bem como qualquer programa evolutivo, é dada por cinco componentes básicos que cada um deles deve possuir:

a. uma representação genética para soluções potenciais ao problema. Definir uma representa-ção adequada é um ponto crucial para o algoritmo. Por meio dela, será gerada a popularepresenta-ção que será submetida aos processos evolutivos do AG, logo, a representação necessita estar bem estruturada para atingir a solução ideal ao problema.

b. uma maneira de se criar uma população inicial de potenciais soluções. Os cromossomos, representados como as soluções potenciais, necessitam estar de acordo com a representação genética. Soluções inviáveis ao problema devem ser descartadas pois não irão influenciar no objetivo do algoritmo.

c. uma função de avaliação que desempenhe o papel do ambiente, avaliando as soluções em termos de sua “aptidão”. Esta função será terá a responsabilidade de avaliar os indivíduos

(30)

em termos do objetivo, onde os melhores indivíduos terão melhores avaliações e maiores chances de serem escolhidos, e vice-versa.

d. operadores genéticos que alteram a composição dos filhos. A utilização dos operadores permite que o AG consiga gerar filhos mais aptos de geração para geração, de modo que as populações sejam compostas por indivíduos (mais) viáveis ao objetivo.

e. valores para os parâmetros que o algoritmo utiliza (tamanho da população, quantidade de gerações ou tempo de execução, probabilidade de aplicação dos operadores, etc.). Diferentes valores dos parâmetros sempre irão ocasionar em diferentes resultados. O melhoramento das soluções só será identificado por meio de uma análise dos experimentos com diferentes parâmetros a cada execução.

Como qualquer método computacional, os AGs possuem vantagens mas também limitações. Dentre suas principais vantagens destacam-se o paralelismo, a facilidade em manipu-lar grandes espaços de busca, a capacidade de encontrar a solução global, a resistência a ficarem presos em soluções ótimas locais e a competência em ser empregados a uma grande variedade de problemas de otimização. Por outro lado, algumas de suas limitações são definir uma repre-sentação para o problema, a dificuldade de incorporar informações específicas do problema e a escolha dos parâmetros adequados para sua execução, como o tamanho da população, taxa de cruzamento e mutação, e o método de seleção (SIVANANDAM; DEEPA, 2007).

Embora os AGs apresentem certas limitações, percebe-se, por meio dos aspectos ilustrados, que a utilização dos mesmos aplicados à problemas e ambientes complexos é uma estratégia que pode garantir bons resultados pelas características pertinentes a este método. O seu fator de generalidade, assim como a complexidade do processo de agrupamento das equipes, permite que o mesmo possa ser aplicado sem empecilhos no âmbito educacional e garante um ambiente totalmente imersivo à sua utilização, respectivamente.

2.4.3 Esboço do algoritmo

Como mecanismo para se obter um melhor entendimento do funcionamento dos AGs, alguns autores apresentam uma abstração simplificada do seu processo a fim de torná-lo mais instrutivo (SRINIVAS; PATNAIK, 1994; MITCHELL, 1998; HUDSON; COHEN, 1999; REEVES, 2002; LAROSE, 2006). As etapas da abstração do AG são dadas pela estrutura apresentada a seguir, ilustrada na Figura 1:

(31)

Figura 1 – Ilustração da execução de um AG

Fonte – Elaborada pelo autor.

a execução de um AG. A estrutura apresentada é genérica, assim podendo ser implementada em diversas linguagens de programação e utilizada para resolução de variados problemas.

Algoritmo 1: Pseudocódigo de um AG início T ← 0 inicializaPopulacao(PT) repita avaliaPopulacao(PT) Pi← selecionaPais(PT) Pj ← cruzamento&mutacao(Pi) avaliaPopulacao(Pj) PT + 1← selecaoMelhores(PT, Pj) T ← T + 1

até atingir a condição de parada T; fim

(32)

2.4.4 Estrutura

Na literatura, a representação básica dos AGs é denominada de AG Simples — do inglês, Simple Genetic Algorithm — (SRINIVAS; PATNAIK, 1994). Sua estrutura está emba-sada em uma população de strings binárias, parâmetros de controle, uma função de avaliação, operadores genéticos, um mecanismo de seleção e outro mecanismo para codificar as soluções como strings binárias. No entanto, certos problemas necessitam de outras formas de estrutu-ração desses componentes. Os tópicos seguintes apresentam uma revisão acerca das variadas estruturações aplicadas à cada etapa do AG.

2.4.4.1 Representação cromossomial

A primeira decisão crucial a ser tomada na aplicação de um AG é a definição do genótipo do cromossomo. A representação a ser utilizada no cromossomo poderá variar de acordo com a natureza do problema. Em geral, a codificação de strings de bits — um vetor contendo 0s e 1s, por exemplo, [0 1 1 0] — mais conhecida como representação binária, é o método mais utilizado devido sua simplicidade e rastreabilidade. É nesta estrutura fundamental onde as operações e teorias convencionais dos AGs estão desenvolvidas e as diversas aplicações estão embasadas (MAN; TANG; KWONG, 1999).

Entretanto, alguns empecilhos são postos à utilização da representação binária. Uma faixa fixa de bits é alocada para os genes do cromossomo atendendo a um determinado intervalo de valores. Se os valores não forem uma potência de dois, ocorrerá redundância entre os cromossomos e, além disso, poderá ser preciso utilizar uma quantidade maior de bits para abranger determinados valores, acarretando em uma possível geração de populações com soluções inviáveis. Ainda, outro problema é o denominado penhascos de Hamming, onde valores vizinhos possuem uma divergência binária, muitas vezes, em todos os genes, necessitando de uma alteração em todos os bits para que seja possível atingir um valor próximo — exemplo, os vizinhos inteiros 3 e 4, representados por [0 1 1] e [1 0 0] respectivamente, possuem uma divergência de três bits —. Como meio de minimizar esses problemas, representações utilizando valores inteiros e reais surgiram, sendo bastante sugeridas para aplicações de grande complexidade, particularmente pela facilidade na definição de operadores específicos ao problema (SILVA; FALCÃO, 2008).

(33)

2.4.4.2 População inicial

A geração da população inicial está fundamentada em dois aspectos importantes: o tamanho da população e o método pelo qual os indivíduos serão formados. Através das abordagens teóricas que estudam e buscam um tamanho ideal para a população, a realização de testes empíricos verificou que populações contendo 30 indivíduos são bastante adequadas em muitos casos, sendo possível obter bom desempenho mesmo fazendo uso da representação binária (REEVES, 2002). No entanto, se o tamanho da população for muito pequeno, o algoritmo poderá convergir rapidamente para uma solução situada em um máximo local, por outro lado, poderá fazer uso de uma grande quantidade de recursos computacionais e ter um alto tempo de espera caso o tamanho da população seja muito grande (KANTARDZIC, 2011). Segundo Sivanandam e Deepa (2007), o tamanho tipicamente empregado para uma população é de 100 indivíduos, podendo ser variado de acordo com os fatores apresentados anteriormente. A Figura 2 apresenta exemplos de populações com diferentes representações cromossomiais.

Figura 2 – Diferentes representações cromossomiais

Fonte – Elaborada pelo autor.

Tratando-se do modo no qual os indivíduos são gerados na inicialização da população, a estratégia comumentemente empregada é bastante simples e eficaz. Os genes são inicializados aleatoriamente de modo a compor cada cromossomo da população. Embora esta seja uma técnica frequentemente empregada, outro método possibilita o povoamento da população inicial com boas soluções conhecidas. Por meio de uma técnica heurística, inclui-se uma solução de alta qualidade na população, fazendo com que o AG encontre melhores soluções mais rapidamente do que o método aleatório, entretanto, é possível que o algoritmo convirja prematuramente para

(34)

uma solução pobre (REEVES, 2002; KANTARDZIC, 2011).

De acordo com Linden (2012), a escolha aleatória, por se tratar de um método randômico, não caracteriza que a população será composta de soluções com baixo fitness. Segundo o autor, a aleatoriedade permite gerar uma boa distribuição das soluções no espaço de busca e, através da utilização eficaz do operador de mutação, garante uma boa exploração de todo este espaço.

2.4.4.3 Função de avaliação

Nos AGs, a determinação da aptidão/qualidade de um indivíduo, isto é, uma solução candidata, é efetuada pela função de avaliação. A ideia parte do princípio da seleção natural que postula que os indivíduos que são mais adaptados ao meio sobreviverão e reproduzirão sua prole. Uma vez que o problema é definido, a função de avaliação será responsável por avaliar e indicar o quão viável o indivíduo está à solução do problema (HUDSON; COHEN, 1999). Por meio dela, os indivíduos recebem uma pontuação que será utilizada como critério fundamental na seleção dos cromossomos para geração da nova população, tal que os indivíduos com maiores avaliações terão mais chances de serem escolhidos (MITCHELL, 1998).

A definição de uma função de avaliação apropriada é primordial para uma operação correta do AG (SILVA; FALCÃO, 2008). Segundo Linden (2012), a função de avaliação deverá embutir todo o conhecimento que se possui acerca do problema, tanto as restrições quanto os objetivos de qualidade, isto fará com que o algoritmo torne-se mais robusto e as avaliações das soluções candidatas sejam mais precisas. Ainda, o autor apresenta que o resultado obtido por meio desta função trata-se de um valor numérico que reflete o quão bem os parâmetros representados no cromossomo resolvem o problema, ou seja, a função de avaliação utiliza dos genes dispostos no cromossomo para atribuir um valor representando a métrica de qualidade da solução candidata. Uma exemplificação da função de avaliação é apresentada na execução manual do AG presente na seção 2.4.4.7.

2.4.4.4 Seleção dos pais

O mecanismo de seleção natural prevê que indivíduos mais aptos são mais capa-zes de gerar filhos do que indivíduos inferiores, sem excluir a probabilidade destes também reproduzirem. Este princípio é a base da seleção dos pais nos AGs. A etapa de seleção é responsável pela escolha dos pares de cromossomos que irão se reproduzir a fim de gerar os

(35)

filhos da nova geração. O método usualmente empregado para realizar a escolha desses pares em meio a população é chamado de método da roleta e é bastante empregado em grande parte das aplicações (SRINIVAS; PATNAIK, 1994; COLEY, 1999; MAN; TANG; KWONG, 1999; BODENHOFER, 2003; KANTARDZIC, 2011).

Segundo os autores, os indivíduos são selecionados a partir da probabilidade pro-porcional ao seu fitness, representada por uma determinada fatia na roleta. A obtenção das probabilidades de cada indivíduo para a divisão da roleta é dada na Equação 2.5, onde i repre-senta o indivíduo, pia sua probabilidade, fio resultado da sua avaliação, e o denominador a soma

das avaliações dos indivíduos. Após esta etapa, o próximo passo é selecionar os cromossomos que irão formar a nova população. O processo de seleção é aleatório, ou seja, um valor entre 0 e 1 é sorteado de modo que seja escolhido o indivíduo que possuir a fatia da roleta no intervalo em que esteja o valor sorteado (conforme exemplo hipotético apresentado na Figura 3). Por ser um aspecto probabilístico, indivíduos que possuam um alto fitness poderão ser escolhidos com maior frequência do que indivíduos com menor fitness devido ocuparem uma maior fatia na roleta.

pi=

fi

∑nk=1fk

(2.5)

Figura 3 – Ilustração da seleção pelo método da roleta

Fonte – Elaborada pelo autor.

Existem outros métodos aplicados à seleção que também são frequentemente utili-zados, como é o caso da seleção por torneios. Neste método, os indivíduos são selecionados

(36)

aleatoriamente para dar início ao torneio, isto é, uma competição entre si fazendo comparações da aptidão a fim de escolher o indivíduo com maior fitness para ser o pai. A seleção necessita de um tamanho especificando quantos indivíduos da população irão participar do torneio. Entretanto, este número precisa ser escolhido de maneira cautelosa. Caso a quantidade de indivíduos no torneio seja alta, a probabilidade de que os melhores indivíduos da população sejam selecionados também é alta, isso faz com que o algoritmo perca a diversidade genética. Por outro lado, uma quantidade baixa de indivíduos no torneio acarretará na diminuição do progresso do algoritmo devido à pressão de seleção reduzida (JACOBSON, 2015).

Vale ressaltar que a escolha do método de seleção, assim como outros componentes do AG, irá variar de acordo com as particularidades de cada problema. Não existe um método ideal, mas sim uma diversidade de componentes que podem ser utilizados e testados por meio de experimentos a fim de se obter resultados cada vez mais próximos do ótimo.

2.4.4.5 Operadores genéticos

Após a etapa de seleção dos pais, é necessário que ocorra a reprodução dos indivíduos escolhidos para geração da nova população do algoritmo. Na execução da reprodução, o material genético de dois pais é combinado através de um corte aleatório nos cromossomos, gerando novos filhos através da junção de cada parte das cargas genéticas dos pais, igualmente ao funcionamento no mundo real (BODENHOFER, 2003).

O mecanismo responsável pelo processo apresentado é denominado recombinação (crossover). De acordo com Reeves (2002), o crossover é simplesmente uma substituição dos alelos de um dos pais pelos alelos correspondentes do outro. Em sua forma mais simples (CO-LEY, 1999), denominado crossover de um ponto, empregado frequentemente em cromossomos que utilizam a representação binária, um ponto de corte é escolhido aleatoriamente ao longo do cromossomo — valor inteiro entre 1 e n-1, sendo n a quantidade total de genes do cromossomo — dividindo-o em duas partes, no qual realiza-se a troca da segunda parte do cromossomo entre os indivíduos, ocasionando na geração dos filhos (conforme ilustração apresentada na Figura 4). No entanto, em algumas situações, a aplicação dessa representação do operador prejudica o desempenho do algoritmo. Certas vezes torna-se necessário manter determinados esquemas no cromossomo para se preservar boas soluções durantes as reproduções, assim, a utilização do crossover de um ponto apresenta-se como um método inviável devido o rompimento que causa ao esquema, resultando na perda das informações. Com o propósito de solucionar

(37)

Figura 4 – Ilustração do crossover de um ponto

Fonte – Elaborada pelo autor.

esse problema e o intuito de tornar o crossover mais robusto, outras variações do operador foram desenvolvidas, sendo elas o crossover multiponto e o crossover uniforme (MAN; TANG; KWONG, 1999).

De acordo com autores, o funcionamento do crossover multiponto consiste na seleção aleatória de um conjunto de pontos de corte — dois ou mais — efetuando-se a divisão dos cromossomos nos pontos sorteados, dessa forma, os filhos serão formados por meio da recombinação alternada dos segmentos gerados pelos cortes exercidos nos cromossomos dos pais (conforme ilustração apresentada na Figura 5). Para o outro operador de recombinação alternativo, o crossover uniforme, a estratégia utilizada dá-se de maneira diferente (LAROSE, 2006). Ao primeiro filho, atribui-se aleatoriamente a cada gene a probabilidade de 50% da ocorrência do gene de um pai ou de outro, logo, ao final da geração deste filho, os genes do segundo filho serão o inverso do primeiro (conforme ilustração apresentada na Figura 6). Uma vantagem deste operador é que os genes são herdados independentes das posições em que se encontram, pois não há realização de cortes no cromossomo. Ainda, o autor apresenta outros tipos de crossover voltados à aplicação em representações com valores reais baseando-se na execução de operações aritméticas.

Contudo, tais métodos apresentados para o operador de cruzamento não são apli-cáveis às representações cromossômicas inteiras e reais. A recombinação das partes de dois cromossomos pais pode acarretar na repetição de elementos nos genes dos filhos, tornando a solução inviável ao problema – supondo que o cromossomo seja composto por números inteiros que representam indivíduos, é totalmente incapaz que um mesmo indivíduo esteja em uma ou mais equipes ao mesmo tempo –. Para isso, um mapeamento com os valores inteiros é feito para que não hajam repetições no cromossomo, tornando-o uma solução viável a partir da

(38)

Figura 5 – Ilustração do crossover multipontos

Fonte – Elaborada pelo autor.

recombinação de dois pais (ZHENG et al., 2016). O processo descrito está ilustrado na Figura 7.

Figura 6 – Ilustração do crossover uniforme

Fonte – Elaborada pelo autor.

Em Ciptayani, Dewi e Sentana (2016), outra formulação do operador de crossover para representações com valores inteiros é apresentada, ilustrada na Figura 8 e exemplificada a seguir. Supondo dois cromossomos com nove genes, onde cada gene possui um valor inteiro que representa um indivíduo na base de dados. Um ponto de corte é escolhido aleatoriamente para que as partes de cada cromossomo sejam combinadas a fim de gerar os novos filhos. Para cada pai, a primeira parte do cromossomo – ou seja, desde o primeiro locus até o locus respectivo ao ponto de corte – é mantida e a segunda parte é formada a partir da sequência em que está representada os valores no outro pai. Assim, dois filhos são gerados sem que as soluções sejam inviáveis ao problema.

(39)

Figura 7 – Crossover com mapeamento em valores inteiros

Fonte – Adaptada de Zheng et al. (2016).

Figura 8 – Crossover de um ponto em valores inteiros

Fonte – Adaptada de Ciptayani, Dewi e Sentana (2016).

Mitchell (1998) apresenta que, na visão comum da comunidade, o crossover é o principal mecanismo de inovação e variação nos AGs, entretanto, apenas sua utilização poderá convergir os pontos para soluções situadas em máximos locais. Para isso, o operador de mutação atua como deslocador dos pontos no espaço de maneira que as buscas sejam realizadas em outros locais, tornando-se possível atingir a solução global do problema.

O funcionamento do operador de mutação, particularmente na representação binária, é simples e eficaz para o seu propósito (REEVES, 2002): um gene é escolhido aleatoriamente e o valor do alelo é alterado, isto é, o número será alterado para 0 ou 1 de acordo com o valor que esteja alocado no gene sorteado (Figura 9). Contudo, assim como o operador de crossover, a escolha da técnica de mutação apropriada depende do modo no qual está definida a representação

(40)

cromossomial (BODENHOFER, 2003). Man, Tang e Kwong (1999) apresentam uma alternativa usualmente adotada para as representações que utilizam valores inteiros e reais: dois pontos do cromossomo – ou dois genes – são escolhidos aleatoriamente e uma inversão é aplicada nos valores dispostos no intervalo formado, prevalecendo a viabilidade da solução ao problema (Figura 10).

Figura 9 – Ilustração da mutação binária

Fonte – Elaborada pelo autor.

Por fim, Eiben e Smith (2003) afirmam que o papel desempenhado pelo operador de crossover está associado à exploração do espaço de busca, descobrindo novas regiões através da combinação de duas áreas. Por outro lado, o operador de mutação é caracterizado como um mecanismo de explotação, isto é, permite visitar áreas próximas aos pais, buscando por soluções em espaços de buscas não atingidos pelo crossover. A combinação de ambos permite trabalhar com boas informações presentes nos pais e explorar regiões vizinhas a estes indivíduos, visando obter soluções cada vez melhores.

2.4.4.6 Módulo de população

O módulo de população é o mecanismo responsável pelo controle da população (LINDEN, 2012). Em sua aplicação, seguindo a ideia de um ambiente limitado de recursos, o autor assume que a população não poderá crescer visto que o AG é executado em um ambiente com tais características (um computador possui, de forma limitada, poder de processamento e memória, o que acarreta em certas restrições). Entretanto, o mesmo apresenta outros métodos mais eficazes e produtivos para realizar tal processo, como uma menor quantidade de geração de

Referências

Documentos relacionados

O efetivo pagamento da(s) RECEITA(S) FIXA(S) estará condicionado ao início da operação comercial da(s) USINA(S), devendo os recursos financeiros associados a este

Considerando a importância do assunto, a variabilidade existente nas características físicas e a ausência de dados na literatura especializada referente a

da quem praticasse tais assaltos às igrejas e mosteiros ou outros bens da Igreja, 29 medida que foi igualmente ineficaz, como decorre das deliberações tomadas por D. João I, quan-

(2013 B) avaliaram a microbiota bucal de oito pacientes submetidos à radioterapia na região de cabeça e pescoço através de pirosequenciamento e observaram alterações na

Assim sendo, a. tendência assumida pela pós - graduação em co- municação nos anos 60 contribuiu muito menos para melhorar e.. Ora, a comunicação de massa , após a Segunda Guerra

• Quando o navegador não tem suporte ao Javascript, para que conteúdo não seja exibido na forma textual, o script deve vir entre as tags de comentário do HTML. <script Language

[r]

A revisão realizada por ERDMAN (1988a) mostrou que, nos dezessete experimentos em que a silagem de milho foi a única fonte de volumoso oferecida a vacas leiteiras no início