Felipe Marra

LinkedInGitHubLinkLinkEmailTwitter

 

About Me


I'm a student at the Federal University of Viçosa AI master's program.

My current interest is in language models.

I started learning programming before starting college, and all the technologies I've ever used were self-taught. I believe that being able to learn, propose projects, and make decisions on your own, are some of the best skills a software developer can have.

 

 

Experiences

(2024.1 - ) Music Generation for Videos

Music Generation for Videos Starter Pack: click here 

(2022.2 - 2023.2) Applying the Soar Cognitive Architecture in a Unity game

I'm sure that simulating emotions is important for creating realistic Virtual Humans - a field of study I was interested in. After reading some of The Cognitive Structure of Emotions - also known by computer scientists as the OCC model -, I had contact with the EMA model of emotions and discovered it was implemented in the Soar Cognitive Architecture

This project aimed to implement a Soar agent that could survive by itself in a Stardew Valley-like game. The motive at first was learning how to create an intelligent agent capable of switching between many different tasks according to the current context, and later, to implement a model of emotion inspired by EMA, to make the agent's decisions more human-like. This project was also a Scientific Initiation I proposed and my Graduation Thesis.

There is a simple demo of my integration between Soar and Unity in this repo (Soar is in C++ and Unity is in C#). The repo where the project itself is being developed is currently private, but one can check the demo videos listed below.


The agent gets items on the map inserted into its working memory. It detects the seeds and sends a command to move into their position. After food goes below 100% it starts the plant routine, digging the soil for the seeds it has, planting, and watering then for 3 days. It will collect the potatoes, and eat, then after food get below the food recovery the potatoes provide. 


(2022.1) Chatbots & State Machines

Why: A professor asked me if I wanted to enter a project about Virtual Humans in partnership with the administration course. It was about a chatbot to sell products.

How: First, I created a simple library in Dart (language) to deal with State Machines, which you can check in this repo. After that a Flutter (Dart front-end SDK) interface can be generated based on that state machine lib to generate a chatbot, the code can be found here.

     There was also the intention to turn this into a web service, where a user could create the state machine online and expose it in a URL in the form of a chatbot. The attempt involved me learning and teaching Fast API (Python backend) to some colleagues, and got documented here.

(2021) ML/NLP on Coursera & Twitter Sentiment Analyzer Bot

I studied some ML and NLP on Coursera and coded a Twitter sentiment analysis bot by using the sentiment analysis algorithm learned in the NLP course.  

Machine Learning Course: You can check the certification by accessing this link. Also the code I produced by studying it can be found here.

NLP Course: You can check the certification by accessing this link. Also, the chatbot code can be found here.