- This topic has 1 reply, 2 voices, and was last updated 1 year, 2 months ago by .
Viewing 2 posts - 1 through 2 (of 2 total)
Viewing 2 posts - 1 through 2 (of 2 total)
- You must be logged in to reply to this topic.
Home › Forums › Fórum Algoritmos de Inteligência Artificial Bioinspirados › Dúvida sobre o código em Python (função “def nova_particula(p,pop)”
Olá!
No instante t=6m33s do vídeo “Atualização da posição de cada partícula”, foi dito que a posição atual é transferida para a posição anterior, conforme mostra a imagem abaixo:

No entanto, na função “def nova_particula(p,pop)“, apresentada no vídeo “Parte 7 – nova posição e nova partícula” no instante 1m13s, a posição anterior da nova partícula está igual a própria posição anterior, ou seja, o valor da posição anterior não está sendo alterado. Para que fique correto, acredito que o código em Python deveria utilizar o índice 1, conforme mostrado abaixo:
#Código original
def nova_particula(p,pop):
nova_p = [np.array(p[0]),nova_posicao(p,pop),nova_velocidade(p,pop)]
return nova_p
#Acredito que o correto seria:
def nova_particula(p,pop):
nova_p = [np.array(p[1]),nova_posicao(p,pop),nova_velocidade(p,pop)]
return nova_p
Veja que o conteúdo da posição 1 será transferido para a posição 0. Da maneira como está no código original, a posição 0 (velocidade anterior) não está sendo alterada.
Vocês poderiam avaliar essa dúvida, por favor?
Obrigado!
Bom dia Bruno! De fato, a posição da particula nova está invertida. Mas vou dar mais uma olhada na parte anterior do codigo pra ver se não seria isso mesmo