fonction generative améliorée