Larry Geng, Erick Tian, Sean Yang - all TJHSST class of 2019
The companies here at HackTJ inspired us to integrate chatbots, machine learning, and a political focus into a final, functional product. We wanted to create something that facilitates discussion between ideologically opposed people across today's partisan boundaries.
What it does
Our app functions as a discussion chatroom, where people of different political ideologies can engage in insightful conversations. These users can also interact with artificial intelligence that moderates the chat rooms by conversing with simulated bots of differing political ideologies. Another bot is also responsible for determining the user's position on the political spectrum between liberal and conservative, based on a percentage.
How we built it
We used Android Studio to create the user interface and chatroom, and we also incorporated Google Firebase into the project by documenting activity on the database. We used a neural network to optimize bot responses based on data from Reddit posts of individuals with certain ideologies, and we created another neural network to determine political ideology based on more Reddit posts and electoral speeches.
Challenges we ran into
During our project, we faced several debugging issues. Mainly, we faced issues working across computing languages, applying our neural networks to multiple chat rooms, and adapting to when the TJ Director terminal was down. We overcame these issues eventually, having sent information to Firebase from different languages and making the most of our time when the director wasn't working.
Accomplishments that we're proud of
While creating our project, we were able to learn about implementing Android Studio to multiple users and implementing machine learning in a practical way. We also learned how to merge separate programming platforms into one database under Firebase.
What we learned
A great portion of this project allowed us to realize the importance of debugging and we also learned how to problem solve by adapting to situations creatively. This is how we were able to implement a conversational user interface, an android application, a database together to create a working application that functionally implemented all of these resources.
What's next for PoliChat
Although we were able to make great progress in the last 24 hours on PoliChat, there are still many more features we'd like to implement in the future. For example, one of our original goals was to create a platform for one-on-one chat matching based on political ideology, however we were only able to match users to a certain political ideology. Additionally, the data that we used wasn't the most recent, and given more time, we could have trained our network better to model human interaction in light of current events.