new implementation of the perception model