Simulating Personality and Emotion in AI Agents through Individual-Based Modelling
Simulating Personality and Emotion in AI Agents through Individual-Based Modelling
This is a 2D simulation that was created for my Final Year Project at the University of Staffordshire. Made entirely in C++.
The agents within this simulation complete actions and receive emotional responses from this and other stimuli, which affects their overall emotional state and influences future actions. Each agent has 6 randomised traits that modify the personality of the agent, which in turn alters the intensity of certain emotions (the effects of this can be seen in the bottom table). This means some agents may feel certain emotions much more strongly than others. When an agent has a dominant emotion, they will change to the relevant colour shown in the pie chart.
Each agent has hunger, thirst, and social needs which the agent must fulfil. The lowest need becomes the next goal for the agent to complete.
Every agent can be clicked on to display all needs, emotion values, personality values, and completed actions of the selected agent and can be viewed in the side-bar (you may need to scroll down).
When an agent completes an action, the emotional response is visually represented via an emote displayed in a speech bubble above the agent:
Emotion | Icon shown |
---|---|
Surprise | |
Anticipation | |
Disgust | |
Joy | |
Anger | |
Fear | |
Trust | |
Sadness |
The traits and personality effects can be seen here:
Factors | High Score Traits | Low Score Traits | Effect On Emotion As Factor Increases |
Openness | Creative Curious Complex | Uncreative Conventional Narrow-minded | -Surprise +Trust +Joy -Fear -Anticipation -Sadness -Disgust |
Conscientiousness | Reliable Careful Self-disciplined | Disorganised Undependable Negligent | +Sadness -Anger +Anticipation |
Extraversion | Sociable Friendly Talkative | Introverted Quiet Reserved | +Trust +Joy +Sadness -Anticipation |
Agreeableness | Sympathetic Forgiving Courteous | Critical Rude Harsh | +Joy +Surprise +Trust -Anticipation -Disgust |
Neuroticism | Nervous Insecure Worrying | Calm Relaxed Secure | +Anger +Surprise -Trust +Disgust +Fear -Joy +Anticipation +Sadness |
High Score traits will elicit the effects shown on the table. Low score traits will elicit the opposite response.
For the full breakdown of the project, read my portfolio post here.
Updated | 4 hours ago |
Published | 1 day ago |
Status | Prototype |
Category | Other |
Platforms | HTML5 |
Author | Kacey Halstead |
Genre | Simulation |
Made with | SDL, Piskel |
Tags | 2D |
Average session | A few minutes |
Languages | English |
Inputs | Mouse |
Accessibility | One button |
Leave a comment
Log in with itch.io to leave a comment.