A Computational Model Of Memetic Evolution: Optimizing Collective Intelligence