Updated: Jan 27
Research at HDILab
The overall goal of the lab is to create an agent with human-level intelligence.
We are working towards this goal based on the observation that for the development of HLAI, we need both a sufficient environment and capability for an agent.
Environment: To create an environment that is sufficient for adult level intelligence is an intractable task. So to make things tractable, we are focussing on building an environment similar to what 1 year old infants experience. The environment is a 2 bhk house that has a baby character - an embodied and situated agent, a caretaker character such as mother who will interact and take care of the agent.
Capability: Before we are able to design the capability for human level intelligence, we first need to have a working definition of it.
Definition of Human level Intelligence:
From the paper "Universal Intelligence: A measure of Machine Intelligence" intelligence is defined as an agent's ability to achieve goals in a wide range of environments"
We differentiate human-level intelligence with this definition in the lab
"An agent has human-level artificial intelligence if there exists a sequence of symbols (a symbolic description) for every feasible experience, such that the agent can update the behavior policy equally, whether it goes through the sequence of sensory inputs and actions or it receives only the corresponding symbolic description."
What this translates into is that the agent is able to update its behavior policy towards an event either directly by experiencing it through its senses or indirectly by receiving a description about the experience.
Research at HDILab - Plan
At the lab, we have decided to split this body of research into three sub-parts
Currently the division of work is such that Rubel ,my lab mate, develops the environment to include as many training scenarios as possible. Mazharul, my other lab mate, is studying different model architectures to build an architecture that is best suited to deploy in this environment. I work on designing evaluations to test for the acquisition of certain developmental milestones in the agent, taking inspiration from the methods used in developmental psychology.
One of the biggest challenges we come across when building Human-Level AI to be able to find a test which is both tractable and sufficient. Majority of the existing tests fall under either of the two ends of the spectrum. On one side we have tests such as the Kitchen test, Turing test, AI preschool test. They test for an agents success across a wide range of tasks. On the other side, we have tests that evaluate an agent's ability to win at a game such as Go, Atari, ability to navigate an environment, classify objects etc.
The limitation is that tests such as the Kitchen test, Turing test etc are too complex for existing models and assume an understanding of natural language. We do not yet have an understanding of how to design models that can learn and understand natural language at that level for these tests to be meaningful. These limitations make the tests intractable because they are too complicated and sufficient because they test for general intelligence.
The limitation with tests on this side of the spectrum is that they test for very specific and necessary aspects of human intelligence but they are not sufficient tests for evaluation of human-level intelligence.
Another limitation that I found applies to both sets of tests is that, they do not provide a means to evaluate progressive intelligence, I.e, they do not provide any developmental milestones.
To have a test that is both sufficient and tractable, the lab proposed a test called LAT- language acquisition test. The LAT tests
"Given a proper environment, if an agent with an empty set of language can acquire a nonempty set of the language, the agent has the capability for HLAI."
To provide a concrete example, if I encounter en electric wire for the first time, I can either touch it or leave it alone. One way to learn is by by experience, ie when I touch it, I got a slight shock and change my behavior policy so as to not touch it again. What we are saying here is that, hearing someone tell me" don't touch it, it will give you a painful experience" should bring about the same change in my behavior policy towards the electric wire as directly experiencing it.
However, LAT is the final stage of testing for human intelligence. The problem is that since HLAI both dependent on both capability and environment, if an agent fails LAT, we do not have means to ascribe the failure to either the environment or the capability. ie we do not know if the environment is not sufficient or the agent is lacking in capability.
My current work and research serves as way to address this drawback. My work involves creating simple tests suitable for curriculum development, which can act as milestone to evaluate the development of intelligence in the agent.
To identify tests such as these, I found developmental psychology to be the best source. Developmental psychology is a field concerning cognitive development in humans. It mainly dealt with infant cognitive development and later expanded into other stages of cognitive development.
We benefit especially from well-established developmental milestones and evaluation paradigms such as habituation-dishabituation which invloves first getting accustomed to a stimulus to the point of ignoring it and paying attention to it again because something has changed about it, VOE where you react to a stimulus because its behavior is on violation of your expectations etc which can be applied to non-verbal agents. We are specifically focussing on non-verbal agents as the focus in SEDRo is to build experiences for an infant model.
More specifically, my work involves identifying stages of development in infants, identifying skills attained at each stage of development and employing evaluation metrics and methods from developmental psychology and applying them to robotics.
Example - An experiment from Unity perception as example
As part applying developmental psychology tests to robotics, I identified Unity perception as one of the early milestones of development. The skill refers to the ability to perceive a partially occluded object as a unified whole, across a spatial gap imposed by an occluder. I've implemented a few experiments to evaluate the presence of this skill in an agent. One of the reasons for choosing this skills as the first skills to test is to have a relatively easy milestone to develop a model. Here is a representation of one of the experiments as an example.
The experiment happens in three parts. The first part represented by the first picture shows the agent being tested for any visual preference to either of the stimuli presented - a stationary rod and a moving rod. Once the absence of visual preference is established, the second part of the experiment ie the second picture shows the habituation phase, where the agent habituates ie perceives the rod as a unified rod or a 2 rods because it is partially hidden based on his capabilities. The third picture shows the agent being tested to see if It possess the skill of Unity perception. With the assumption that the agent will spend more time looking at something new than familiar, novelty preference, we can conclude that the agent has unity perception if the agent focusses more on the broken rod and vice-versa.
Sample output presented to the user
Here is a sample output that we will presenting to the user when they run the experiment. This slide shows the sample output for the visual preference aspect, ie the first part of the experiment.
Other skills that can be evaluated
Apart from Unity perception, other early skills that I have identified to build evaluations for are Object permanence, containment, solidity, unchangeableness, continuity.
I will continue to focus on identifying skills and milestones to develop evaluations for, work on creating training scenarios for experiments. For example, for the concept of containment, which indicates that an object continues to remain in the container that it falls into, I can programmatically generate play scenarios involving the caretaker and the baby agent, dropping different toys, items into containers and moving the containers. I also plan to search for a baseline model that I can apply to these experiments to generate results.
There are many aspects of human infant experience. My contribution would be to identify aspects that are essential for the development of HLAI.
Infants learn by imitation and feedback from caregivers. We cannot program the mother character to give appropriate responses for every event - that it itself would be human level intelligence. To overcome this hurdle and create social interaction, we have to approximate learning experiences in such a way as to represent them in a computations program. This will be another potential contribution.
The novelty of my work is that I draw inspiration from the evaluation techniques presented in developmental psychology. The impact of my work will be the automatic developmental evaluation of non-verbal agents.