When developing a prototype, it becomes necessary to find a compromise between its simplicity of development and convincing viewers that the approach works. This chapter describes a variant of this tradeoff for the AGI prototype based on the previously described solutions: AGI engineering.
The convincing demonstration of the approach requires implementing the prototype of those requirements, without which an intelligent system cannot be qualified as AGI.
The main requirement is the ability to autonomously and permanently learn, using one's own experience of actions, starting with a minimum amount of predetermined knowledge about the environment; as a rule, specialized intelligent systems referred to as narrow AI do not have this ability.
The detailing of this requirement implies the ability to find cause-and-effect relationships, detect previously unknown objects in the functioning environment, and thus create new concepts. Of course, the AGI prototype must demonstrate the ability to intelligently change goal-oriented behavior depending on the prevailing situation.
The environment in which the prototype operates must be pretty general. This means that it must be dynamic; that is, other active agents must act in the environment along with the presence of static objects. Finally, the environment should be continuous with a smooth change in time of the parameters describing the situation.
The AGI system should use active sensing, managing the process of collecting information about the situation in the environment and demonstrating the ability to control attention rationally.
Modern requirements for practically applicable intelligent systems imply the possibility of introspection of the system, providing explainability of actions and the possibility of correcting the system's behavior. Therefore, the prototype must have a human-machine interface (HMI) capable of communicating in a formal language comfortable enough for human use.
The mission performed by the prototype, on the one hand, should not be trivial; on the other hand, the actions of the tested prototype should be easily interpretable so that a non-professional can assess the degree of rationality/adequacy of activity.
It is possible to use the natural environment and the embodied prototype, but replicating the system and experimenting, in this case, is associated with practical difficulties and is very expensive, so this option was rejected as unacceptable at the initial stage - although it can be beneficial in the following steps.
The prototype and virtual environment should be lightweight enough to be used on a typical modern desktop/notebook.
What is not necessary for a prototype? From our point of view, there is no need for realistic visualization of the virtual environment and detailed physical modeling of three-dimensional objects of the environment. Consuming a lot of computational resources, such models remain, in fact, primitive (not very realistic) if the previous requirement is followed. Clarity of the situation and the process can be provided by two-dimensional visualization in the style of a dynamic map/scheme.
A variant of the test environment and mission that satisfies the listed conditions can be a virtual robot-porter (robot-sherpa) in a crowded environment, following its master; it is required to avoid collisions with people and stationary objects, keeping the distance within an acceptable range.
For simplicity, objects can be modeled with circles of different diameters in an infinite two-dimensional space. In addition to size, objects have one more quantitative parameter perceived by the robot's sensors (for example, color). The trajectories of moving obstacles, the host object, and the coordinates of motionless obstacles are generated randomly. For simplicity of modeling the environment, collisions of moving objects with each other and collisions of moving objects with static obstacles are ignored, in contrast to collisions of the controlled robot with any objects. A clash of a robot with another object will stop the robot, and if such object moves, it will also stop.
Moving objects can form a composite object - a pair in which the distance between objects is constant; the robot should avoid walking between the elements of such a compound object.
The virtual robot is equipped with the following sensors:
A sensor that detects a collision with something or the crossing the gap between the elements of a composite object.
The spatial testing sensor reports the coordinates and parameters of each of the objects within the sector of view, the distance to which is less than the "horizon of visibility"; the orientation of the tested sector defined in the command/request.
The position sensor reports orientation and position of the robot on request.
The sensor of the master position, reporting coordinates (including at a distance exceeding the horizon of visibility).
Virtual actuators correspond to the widely used tank steering chassis, in which movement and turns are carried out by separately controlling the left and right wheels (or tracks).
The average speed of the wheels determines the speed of movement, and the difference in their velocities determines the rate of turning left/right. The command parameters are acceleration for each wheel; zero acceleration corresponds to moving at a constant speed in a straight line, in a circle, or rotating in place. The specified accelerations remain constant until the following command, except when the velocity reaches the maximum allowable value: the acceleration is set to zero, and the velocity stops changing.
The essential aspect of AGI is how much preloaded (congenital) knowledge is required for the system to be able to autonomously learn to act rationally. In the described variant, congenital knowledge includes the following information:
Description of attributes used in messages/data received from sensors.
Definition of atomic functions-relations between attributes used in finding composite objects (see Structures discovering)
Sensors description
Actuators description
The mission of the system is determined by the parameters of the motivation module, which determine the criterion function for assessing the situation, taking into account the negative impact of collisions, the positive effect of the case when the distance to the master is within the acceptable range of values and the negative impact of going beyond.
In the process of "life," the system must acting autonomously and demonstrate the following abilities:
Learn to predict collisions by detecting a causal relationship between the distance to the object and the signal from the collision sensor
Recognize existence unknown previously composite objects and create new concepts that define their
Learn to predict collisions with composite objects
Learn to move while avoiding collisions
Learn to follow the master, avoiding collisions and keeping the distance to him, if possible, within the given limits.
The degree of complexity of the mission can be changed by changing the average number of objects in the visibility zone, the complexity of the trajectories of the objects, and the speed of their movement.
Technologically, the prototype should include components of the environment model, AGI module, and a real-time situation visualization system. The situation visualization system should separately display the situation in the environment and its internal representation, allowing the process to be assessed by comparing one with the other. The operator can pause the simulation process and use the pause for introspection of the accumulated information.
In the following paper, Barto et al. described a rather interesting test environment that could be used for an AGI prototype. I thought you might be interested.
Barto, A. G., Singh, S, and Chentanez, N. 2004. Intrinsically Motivated Learning of Hierarchical Collections of Skills. in Proceedings of the 3rd International Conference on Developmental Learning (ICDL ’04)., LaJolla, CA, 112–119.
It is at: http://all.cs.umass.edu/pubs/2004/barto_sc_ICDL04.pdf