Implementação de Algoritmo Genético - Problema da mochila - Python

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ก.ค. 2024
  • Link do Relatório: docs.google.com/document/d/1e...
    Link do Código: github.com/FredericoBender/Al...
    00:00 Apresentação e o problema
    00:53 Código Principal / Main
    02:56 Função Evolve
    03:36 Fitness
    05:14 Reprodução + Seleção Roleta
    08:47 Mutação
    10:21 Execução demonstrativa
    13:05 Fim

ความคิดเห็น • 30

  • @brayanmota1371
    @brayanmota1371 2 ปีที่แล้ว +4

    Eu? Nem tava sabendo que tava fazendo esse trabalho

  • @jeefersonpereira7985
    @jeefersonpereira7985 3 ปีที่แล้ว +1

    Excelente trabalho. Parabéns

  • @marianaalvesdesousa3351
    @marianaalvesdesousa3351 3 ปีที่แล้ว +1

    Belo código, obrigada pela explicação

  • @gizelerodrigues9638
    @gizelerodrigues9638 3 ปีที่แล้ว +1

    Muito bom o trabalho, parabéns

  • @ginichimaru1511
    @ginichimaru1511 3 ปีที่แล้ว +2

    Adorei esse video. Eu não sei nada de pyton mas mesmo assim entendi tudo. Muito bom!

  • @HollwegX
    @HollwegX 2 ปีที่แล้ว +1

    Bacana, Frederico! Estou trabalhando na otimização de ganhos de controladores adaptativos atualmente e estou testando GA e Particle Swarm com Matlab.
    Teu algoritmo e teu relatório ajudaram meu entendimento do funcionamento prático do GA.
    Obrigado!

    • @MarcusViniciusET
      @MarcusViniciusET ปีที่แล้ว

      Quais resultados obteve amigo?o enxame performou?

    • @HollwegX
      @HollwegX ปีที่แล้ว

      @@MarcusViniciusET Sim, cara, funcionou bem. Usei para fazer um self-tunning de controladores adaptativos diretos. Como estudo de caso, apliquei no controlador da minha tese de doutorado. O resultado foi bem bom... Ficou com melhor performance do que a solução inicial de parâmetros que eu havia regulado empiricamente. :)
      O artigo está em revisão na Elsevier Control Engineering Practice.

    • @MarcusViniciusET
      @MarcusViniciusET ปีที่แล้ว

      @@HollwegX mas como vc fez identificação do modelo? Ou vc aplicou direto da planta pra medir a performance? Ou foi tudo em ambiente de simulação?

    • @HollwegX
      @HollwegX ปีที่แล้ว

      @@MarcusViniciusET salve Marcus. O modelo matemático da planta eu já tinha em Matlab. Então, apliquei o PSO para achar os valores iniciais que melhor sintonizassem meu controlador... Uma vez que o controlador é adaptativo, espera-se que os parâmetros sejam atualizados a cada iteração até a convergência (regime permanente).
      Fiz tudo em Matlab e obtive os parâmetros otimizados, com esses parâmetros fui pro PSIM no modelo físico do conversor e depois para a bancada tirar resultados experimentais. Uma vez que os modelos físico - elétrico - matemático são compatíveis, funcionou bem experimentalmente sem nenhum ajuste.

    • @MarcusViniciusET
      @MarcusViniciusET ปีที่แล้ว

      @@HollwegX Estou com um desafio de encontrar o Função de transferência mais representativa do meu processo com AG, mas é difícil descobrir a melhor função fitness... Nem achei anda na literatura, somente AG para os ganhos do controlador já com modelo de planta definidos!

  • @Fingervini
    @Fingervini 3 ปีที่แล้ว +2

    Muito bom.

  • @leovc97
    @leovc97 2 ปีที่แล้ว +1

    Obrigado cara, to a dias procurando algum vídeo sobre esse problema e o teu foi o mais simples de entender que eu achei até agora. Só uma pergunta, você disse aos 7:00 que esse trecho do código serve pra evitar o elitismo no código. Mas se eu quiser que o código tenha elitismo, é só remover essa parte ou tem alguma outra alteração necessária?

    • @fredericobender4776
      @fredericobender4776  2 ปีที่แล้ว +1

      isso, é só apagar linhas 37 e 38 com o if condicional :)

  • @UberlanTorres
    @UberlanTorres ปีที่แล้ว

    Ficou top seu trabalho, mas poderia mostrar os filhos que sofreram mutação separados!!!

  • @playerpirulito
    @playerpirulito 3 ปีที่แล้ว +1

    É possível implementar em PHP ou JAVA?

  • @MarcusViniciusET
    @MarcusViniciusET ปีที่แล้ว

    Como que coloca o terminal do CS code a direita? kkk

  • @raynnermenezeslopes8951
    @raynnermenezeslopes8951 2 ปีที่แล้ว

    Estou iniciando nesse ramo. Estou usando o spyder. Não consigo rodar. Ele não acha o pacote genetic2020. Já procurei e não acho para instalar. Tem alguma dica?

    • @fredericobender4776
      @fredericobender4776  2 ปีที่แล้ว +1

      Link da pasta com arquivo tá na descrição

    • @raynnermenezeslopes8951
      @raynnermenezeslopes8951 2 ปีที่แล้ว

      @@fredericobender4776 Rodou. Obrigado. Teu código vai me ajudar bastante

  • @MarcusViniciusET
    @MarcusViniciusET ปีที่แล้ว

    Opa! Vc poderia ter usado alguma biblioteca de algoritmo genético? Pq não optou por usar?

    • @fred_tecnologia
      @fred_tecnologia ปีที่แล้ว

      Era pra uma matéria da faculdade, o intuito era entender como esse tipo de algoritmo funciona

    • @MarcusViniciusET
      @MarcusViniciusET ปีที่แล้ว

      @@fred_tecnologia Qual biblioteca vc recomenda pra facilitar e otimizar o código? Ou pra um problema atual, relacionado a ganhos controladores PID, vc recomenda utilizar a construção do algoritmo modulando por funções?

    • @fred_tecnologia
      @fred_tecnologia ปีที่แล้ว

      @@MarcusViniciusET nunca trabalhei com isso usando algoritmos em python, infelizmente não sei te dizer

    • @joaovictorf.r.s.1570
      @joaovictorf.r.s.1570 ปีที่แล้ว

      @@MarcusViniciusET bbt deap

  • @jayrecords9353
    @jayrecords9353 2 ปีที่แล้ว

    Possible utlizar com NFT?

  • @gilblax8764
    @gilblax8764 ปีที่แล้ว

    Eu não entendi nada. Mas achei demais