collapse

* Posts Recentes

bateria chumbo recuperar por dio123
[Ontem às 20:29]


Ferro de Engomar :) por jm_araujo
[10 de Outubro de 2020, 20:43]


Problema Som Portátil por almamater
[08 de Outubro de 2020, 11:50]


Lupa para soldar por almamater
[01 de Outubro de 2020, 11:22]


comparação string por dio123
[24 de Setembro de 2020, 22:20]


Fullstack - El Corte Inglés por TigPT
[23 de Setembro de 2020, 21:40]


Broca diabólica por Alfredo Garcia
[23 de Setembro de 2020, 19:22]


Flipper Zero por TigPT
[23 de Setembro de 2020, 13:47]


JSN-SR04T - Distânica por Njay
[22 de Setembro de 2020, 04:38]


Frequêncímetro 1GHz por dropes
[19 de Setembro de 2020, 23:29]

Autor Tópico: Injured robots learn to limp  (Lida 16862 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.697
  • Helpdesk do sitio
Re: Injured robots learn to limp
« Responder #15 em: 03 de Junho de 2015, 18:01 »
Pffffffffffffffffffffffffffffffffff.
Fazia isso com um arduino  8)
Avr fanboy

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 1.990
Re: Injured robots learn to limp
« Responder #16 em: 03 de Junho de 2015, 19:01 »
Segundo os autores:
"it chose this walking styles from thousands of walking styles programmed into it"

O que vou dizer é real e creio que se aplica a essa frase:

Um senhor vai num autocarro que entretanto pára para deixar entrar e sair passageiros
Como é a paragem do senhor, ele desce as escadas do autocarro, tropeça e espalha-se ao comprido
Ficam todos a olhar para ele com um olhar do tipo "coitadinho do senhor"
Ele levanta-se e diz em voz alta "Cada um sai como quer"

Moral da história, cada robot escolhe a forma como quer andar   ;D


Offline nvoltex

  • Mini Robot
  • *
  • Mensagens: 211
Re: Injured robots learn to limp
« Responder #17 em: 03 de Junho de 2015, 19:03 »
Um dos autores responde a esta questão na secção dos comentários:

"That is not correct (I am one of the authors). From our FAQ:  The robot is not simply picking a working gait from a small library of options. The map (or library) has over 13,000 behaviors. Yet the robot finds one that works after trying around 8 of them. Clearly, it is not testing them all. It is able to do this because the robot, like a scientist, carefully chooses which experiments to conduct to find an answer as quickly as possible (here, the answer the robot seeks is how to keep functioning despite its damage).The map of behaviors is not hand-designed: it is learned by the robot. The robot uses a computer simulation of itself to create this map ahead of time. These maps can be quite large. In our experiments with the six-legged robot, the map contained over 13,000 gaits. While generating that map is computationally intensive, it only has to be done once per robot design before the robots are deployed. Importantly, this map does not represent all possible behaviors the robot can make. The space of all possible behaviors that is searched to find these 13,000 high-performing behaviors is unimaginably vast. In fact, it contains 10^47 possible behaviors, which is about how many water molecules on the planet Earth! That would be too many for our robot scientist to search through once damaged. Instead, we search through this vast space ahead of time to find 13,000 high-performing gaits (via a new algorithm we invented called "MAP-Elites"). In short, whereas previous algorithms searched for needles in fields of haystacks, we gather the needles ahead of time, so we are searching through a pile of needles to find the right one."

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 1.990
Re: Injured robots learn to limp
« Responder #18 em: 03 de Junho de 2015, 19:13 »
Pffffffffffffffffffffffffffffffffff.
Fazia isso com um arduino  8)

"13.000 behaviors" acho que não te safavas com um arduino...
O mais estúpido disto tudo é que ele não necessita de ter 13.000 comportamentos diferentes,
só tem 6 patas, logo só existem 6^2 (36) variantes quanto à falha das patas para associar a uma forma de deslocação diferente.

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.753
Re: Injured robots learn to limp
« Responder #19 em: 03 de Junho de 2015, 19:24 »
Pffffffffffffffffffffffffffffffffff.
Fazia isso com um arduino  8)

"13.000 behaviors" acho que não te safavas com um arduino...
O mais estúpido disto tudo é que ele não necessita de ter 13.000 comportamentos diferentes,
só tem 6 patas, logo só existem 6^2 (36) variantes quanto à falha das patas para associar a uma forma de deslocação diferente.

Consegues com um arduino sim, essas variantes nao fazem muito sentido pois para cada pata tens varias distancias e velocidades.

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.697
  • Helpdesk do sitio
Re: Injured robots learn to limp
« Responder #20 em: 03 de Junho de 2015, 19:28 »
São sequências de movimentos, os servos são dinamixel(pelo menos parecem) logo falam todos serial, ligados sem série(Redundant department of redundancy lol), tecnicamente uma máquina de estados bem pensada e usas 2-3 bytes para cada movimento de todos os servos, bit-packing, quiçá RLE e enfia-se tudo na EEPROM.
Avr fanboy

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 1.990
Re: Injured robots learn to limp
« Responder #21 em: 03 de Junho de 2015, 20:58 »
Referi que não daria num arduino, programado normalmente, de acordo com as especificações descritas pelo @nvoltex retiradas de um comentário do youtube.
Desconheço a plataforma usada, mas dá a entender que aquilo tem um abuso de processamento.

Acredito que a rotina para mexer um bicho daqueles não tenha nada que se diga, é tudo à base de sequências e velocidade de cada uma delas, essas são as variáveis que devem ser alteradas caso alguma das 6 patas falhe.

Daí se conseguir colocar num array múltiplo de 36, os valores respectivos.
Este múltiplo corresponde à sequência do ciclo das temporização de cada servo assim como a velocidade.
Devo ter tropeçado por aqui algures mas é +- isso...

Por isso sim, um arduino daria se o código for escrito decentemente.