Flow in Artificial Intelligence

Problem Formulation

The psychological condition of flow has been linked to optimizing cognitive performance in humans (Csikszentmihalyi, 1990). People experiencing the condition of flow appear to be fully engaged in their task, and their cognitive faculties and attention are fully focused on the task. In order for this to happen, there has to be a match between the task complexity and the individual’s abilities. Tasks that are too simple or too complex for the individual cause other psychological states such as boredom or anxiety. Reaching the condition of flow has been linked to a number of benefits, including higher productivity and happiness. Hence, flow appears to optimize the application of cognitive abilities in humans. Thus, it is of interest to model flow mathematically as well as to consider whether giving artificial cognitive agents an ability to sense flow and the desire to maximize flow can optimize their performance too.

Our Contributions

We first defined the degree of flow as the quality of the match between the agent’s cognitive skills and the cognitive complexity of its current task. In a hierarchy of increasingly more complex and rewarding tasks, taking on the task of a matching complexity allows the agent to maximize its performance. It also consequently maximizes the degree of flow the agent will experience. We took advantage of this connection and make our agents explicitly aware of the degree of flow they are experiencing. Maximizing the readings from such a “flow meter” improves the agent’s ability to explore the environment and find problems of matching complexity. Thus, maximizing the degree of flow becomes a guide to maximizing the agent’s performance in the environment. We implemented these ideas by extending the standard value iteration learning method with planning and real-time operation and empirically demonstrate that flow-maximizing agents tend to collect more reward from the environment