Last month, I, EEGor, took part in the Brain-Computer Interface Designers Hackathon (BR41N.IO), the opening event of the IEEE Systems, Man and Cybernetics Conference in Bari, Italy. Brain-Computer Interfaces (BCIs) are a class of technologies designed to translate brain activity into machine actions to assist (currently in clinical trials) as well as (one day) enhance human beings. BCIs are receiving more and more media attention, most recently with the launch of Elon Musk’s newest company, Neuralink which aims to set up a two-way communication channel between man and machine using a tiny chip embedded in the brain. With the further aim of one-day perhaps making our wildest transhumanist dreams come true…
Until that time however, we mere mortals will have to make do with wearing funny caps with noisy electrodes glued onto but not inside our heads.
And make do our competition team did!
Each participating team in the BR41N.IO competition was given a Unicorn EEG headset (pictured below) and 24 hours to design and (hopefully) test a BCI application of their choosing. Our team, team Unibrowser (logo below), consisting of two current (IEEEGor, Moritz Moeller) and one former Oxford student (Michael Golden), along with the very helpful Li Wei from Tongji University (a late addition), embarked on a simple quest. Our mission: To answer the age old question,
“Where should I go on my vacation?”
![](https://i0.wp.com/www.blopig.com/blog/wp-content/uploads/2019/11/unimoritz.png?resize=625%2C452&ssl=1)
Right: Unibrowser is watching you…
OK, not exactly but it could be used as such. The real goal of Unibrowser is to find answers to ‘navigation-type’ questions by narrowing down a list of possible options through a direct line of questioning. Questions like, What should I watch on Netflix?, What country would I like to visit? or the even more reasonable, What country am I thinking of?, are useful in that they provide a tractable problem with a finite (though possibly quite large) number of possible solutions. The second question is even better as a test case in that there is a definitive answer.
Answering this question from the would-be user’s mental input alone is not an easy task and requires solving of a number of sub-problems.
1. How do we take into account user preference in a way that feels natural and keeps the user engaged?
Though we briefly considered having the user look at a map of the world for 15 minutes while recording their neuro-electrical activity, we decided to turn our data collection process into a game, similar to 20 questions, in which users respond to increasingly specific YES/NO questions. The goal of Unibrowser is then to find the ‘correct’ solution, your choice country, in as few steps us possible.
Unibrowser’s UI also has the added feature of providing an updating list of ‘most likely’ countries while re-colouring the world map according to your (the user’s) answers.
![](https://i0.wp.com/www.blopig.com/blog/wp-content/uploads/2019/11/EEGor-at-Bari.jpeg?resize=625%2C416&ssl=1)
2. How does Unibrowser interpret input from users?
The usual way in which EEG-based BCIs interprets input from users is by associating a mental action by the user with a change of the electrical activity at the electrodes. These Event Related Potentials (ERPs) are noisy. Luckily this problem has been mostly solved by companies such as g.tec, the creators of the Unicorn headset.
Unluckily we decided to solve this problem from scratch using raw electrical signal from the Unicorn’s Python API….
3. Where does Unibrowser’s metadata related to countries come from?
The CIA World Factbook is a freely available resource that can be downloaded in full in HTML/XML format. It contains data on all of the world’s countries and a few international and national territories such as Aruba and Antarctica. Data was then painstakingly extracted using patience and a lot of string manipulation.
We also used a few handcrafted questions with answers shockingly un-tracked by the CIA including, “Has your country ever competed in Eurovision?”
![](https://i0.wp.com/www.blopig.com/blog/wp-content/uploads/2019/11/taj.png?resize=625%2C670&ssl=1)
4. How does Unibrowser pick questions to ask the user and make ‘country’ guesses?
Unibrowser uses a Bayesian update scheme with ‘soft’ update probabilities to that take into account human and label error when updating the system’s belief across all countries (a probability distribution over countries). The system then uses a one-step look ahead algorithm to choose a further question that would maximally decrease the belief entropy. The target design for Unibrowser would be to inform these updates with input from multiple users, finding estimates for user uncertainty regarding country facts (e.g. not everyone knows that Tajikistan borders China…but of course they should).
Having solved all (or most) of these problems it was a simple matter of presenting our work and future design goals to the judges.
But wait! Seven other teams were also competing, including an all women’s team from Iran (who was interviewed by a national news team), their BCI application was to control a drone using ERPs, interfacing with g.tec’s Unicorn Speller to input movement commands in 3D! Other teams merged computer vision and BCI technology to program robots to receive input from both neural and visual signals.
There were many prizes (including for these impressive teams), however team Unibrowser did emerge as winners of the IEEE BR41N.IO Hackathon (pictured below)! IEEGOR even won a brain (pictured below)!
![](https://i0.wp.com/www.blopig.com/blog/wp-content/uploads/2019/11/Prize-giving.jpeg?resize=625%2C416&ssl=1)