Algoritmos Genéticos em Java

Construa passo a passo um algoritmo genético aplicado no cenário de transporte de produtos! Descubra quais produtos devem ou não ser carregados no caminhão para maximizar o lucro (5h10min)
Última atualização: 18 de janeiro de 2021
Seu Estado
Não Inscrito
Preço
Assinantes

O que você aprenderá

  • Aprenda na teoria e na prática os principais conceitos sobre os algoritmos genéticos, tais como: indivíduo, população, crossover/reprodução, mutação, função de avaliação/fitness e seleção de indivíduos
  • Implemente um algoritmo genético passo a passo em Java para resolver um problema real de transporte de mercadorias
  • Visualize as soluções do algoritmo genético utilizando gráficos
  • Utilize o algoritmo genético integrado com uma base de dados no MySql

Requisitos

  • É recomendado conhecimento sobre lógica de programação, principalmente estruturas condicionais e de repetição
  • Conhecimentos básicos em Java são desejáveis, embora seja possível acompanhar o curso sem saber essa linguagem com profundidade
  • Noções sobre orientação a objetos são necessárias, principalmente conceitos como classe, objeto, atributo e método
  • Não são necessários conhecimentos prévios sobre Inteligência ArtificialNão são necessários conhecimentos prévios sobre banco de dados

Descrição

Os algoritmos genéticos são uma importante área da Inteligência Artificial que são responsáveis pela resolução de problemas complexos, tendo como base encontrar soluções para problemas de otimização e busca. Existem várias aplicações práticas deste tipo de algoritmo, as quais podem ser aplicadas na resolução de problemas em cenários comerciais do dia a dia. Um exemplo clássico é a resolução do problema de choque de horários de professores em uma escola, no qual existem diversas combinações de horários e aulas e o objetivo é construir a grade de horário dinamicamente de acordo com a quantidade de aulas e a disponibilidade de cada professor. Outros exemplos são: empresas de telecomunicações podem projetar novas redes óticas, transportadoras podem planejar melhor a rota de entrega de mercadorias, investidores podem  escolher os melhores investimentos; dentre várias outras.

Baseado nisso, neste curso você vai aprender na teoria e principalmente na prática como desenvolver do zero um algoritmo genético aplicado em um cenário real de uma transportadora. Neste contexto, nós seremos consultores de uma empresa de transporte que possui vários produtos a serem transportados, porém, a empresa possui somente um caminhão disponível e com espaço limitado de armazenamento. Nosso objetivo será desenvolver um algoritmo que consiga gerar a melhor combinação dos produtos que devem ser transportados, levando em consideração o fato de que a transportadora que ganhar o máximo de dinheiro possível com o frete e ocupando o espaço disponível no caminhão.

Esse tipo de algoritmo é baseado em encontrar soluções cada vez melhores a partir da evolução das gerações anteriores, sendo fundamentado nos processos naturais de evolução. E para chegar em nosso objetivo, você vai aprender os principais conceitos sobre essa técnica de inteligência artificial, tais como: população, indivíduo, crossover/reprodução e mutação. Ao final do curso, você terá um algoritmo genético completo que conseguirá resolver o problema da transportadora, o qual pode ser aplicado para outros cenários comerciais. Utilizaremos a linguagem Java para a programação das funções e desenvolveremos tudo passo a passo e com muitos detalhes, para que você tenha uma visão bem clara e didática de como esses algoritmos conseguem resolver problemas reais do cotidiano. Além disso, teremos um bônus no qual você vai aprender como criar uma tabela de produtos no MySql e aplicar nosso algoritmo utilizando os dados de uma base de dados, o que pode facilitar a adaptação do código para utilização em ambientes comerciais. Por fim, este material pode ser considerado de nível iniciante para quem está entrando tanto na área de Inteligência Artificial quanto na área de algoritmos genéticos. Porém, caso você seja de nível mais avançado, este curso poderá servir como uma ótima fonte de consulta e revisão dos conceitos

Para quem é este curso

  • Pessoas interessadas em Inteligência Artificial
  • Pessoas interessadas em resolver problemas reais utilizando algoritmos genéticos

Avaliações e Comentários

4.8
Avaliação média
29 Avaliações
5
23
4
5
3
1
2
0
1
0
Qual foi a sua experiência com esse curso? Conte para nós!
Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 1 mês atrás
por Elvis Martins Nicolau

Achei bem interessante o tópico abordado e a aplicação.

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 5 meses atrás
por Gustavo Marques Riposati Pereira

Grata surpresa com este curso que apesar de curto oferece muito conhecimento, parabéns ao instrutor o único ponto negativo que poderia melhorar seria o som que é muito baixo

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 6 meses atrás
por Filipe do Couto Castro

Bom curso introdutório.

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 12 meses atrás
por Thiago segantini nogueira

Curso muito bom

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 1 ano atrás
por Ilram Ferreira Lima

Um curso muito bom, o professor explica o assunto muito bem, recomendo a todos.

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 1 ano atrás
por Luciano de Paula

Objetivo, simples e claro.

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 1 ano atrás
por Hallef Bruno

Professor entendi do assunto porem é preciso melhorar o programação no sentido de separa os arquivos, por mais que a escrita do código não seja muito grande, mas é dificultoso entender o que cada inner class está fazendo.

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 2 anos atrás
por Nildo Bueno Corrêia Filho

Curso muito bom, embora eu achei que poderia explanar mais sobre a biblioteca jgap fazer uma abordagem maior comentar seus principais métodos e suas potencialidades no uso para bioinformática mas enfim. Não que isso não tenha sido feito, mas foi feito meio que corrido e aplicado a outro proposito o que também é muito válido. Resumo geral, o curso é fantástico estou muito satisfeito recomendo a todos, o tutor domina muito bem o tema das aulas, domina com maestria a linguagem java, então é isso.

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 2 anos atrás
por Charles Silva

O curso foi bom, acho que na parte inicial poderia ter sido estruturado em classes separadas não precisando expor o conteúdo como foi numa classe só. Senti falta de exemplificação de mais de 1 forma da função de seleção, ficando então só o comentário do autor do curso sobre a existência disto na biblioteca JGAP. Enfim, tenho outros pontos menores mas que em nada desabonam o curso, que como introdução ao assunto é bom.

Profile photo ofcomentarios_udemy Comentário extraído do curso na Udemy
Publicado 2 anos atrás
por Fernando Pereira

Adorei!

Mostrar mais avaliações
Qual foi a sua experiência com esse curso? Conte para nós!