OdorWorld
Odor World is a simple 2d virtual world for modeling agents that move and interact in simple ways, primarily via simulated smell. To get a sense of how this world works try Open Workspace File > 3ObjectDetector.zip. Or try Pursuer.zip. Rudimentary speech can also be modeled. To get a sense for this check out the Bischof.zip simulation. In each case run the simulation, move objects around by dragging them, and when the simulation is stopped, double click on objects to see and modify their properties.
Though simple in principle, the way smell (or sensation more generally) is modeled in Odor World has a lot of details. To get started understanding how sensors and effectors work see the couplings overview page. To get a sense of how smell sensors work see the objects and smell sources page.