Self learning assignment