In robotics, it is a common problem that for a given task many algorithms are available. For a particular environmental context and some computational constraints some algorithms will perform better and others will perform worse. Consequently, a robot, evolving in a real world environment where both the context and the constraints change in real time, should be able to select in real time algorithms that will provide it with the most accurate world description as well as will allow it to extract the currently most vital information and artifacts. In this paper we propose a machine learning based approach for the real-time selection of computational resources (algorithms) based on both the high level objectives of the robot as well as on the low level environmental requirements (image quality, etc.). The learning mechanism described is using a Genetic Algorithm and the learning method is based on supervised learning; an initial set of algorithms with input data is provided as examples that are used for learning.