Can you outline what is necessary to implement a dragonfly GA algorithm?