With the purpose of providing coders with a platform to meet, collaborate and share ideas, we started Smart Bots Coding Challenge.

Being the first one of its kind, it was hard to understand what we could provide the participants that would make them think out of the rule-based basic algorithms. We wished that participants would rack up their brains to create some new algorithms and tweak their bots to let the competitiveness reflect on the leaderboard.

After brainstorming, we decided to hold learning sessions every weekend on different perspectives and different algorithms such as Monte Carlo Tree Search Algorithm, Reinforcement Learning, Genetic Algorithm and optimizing the algorithms. This was our take on giving the participants an idea that things can be done in different and more efficient ways too. The exposure to different algorithms with great speakers of the respective field indeed was very productive.

Monte Carlo Tree Search Session

Our very first learning session was all about implementing a Tic-Tac-Toe with the Monte Carlo Tree Search algorithm. The speaker for the session was our very own Chief Technical Officer, Mr Ranjan Shrestha.

Monte Carlo is a heuristic and probabilistic drive search algorithm that merges tree implementation with the principles of Machine Learning. The algorithm explores the strategies that prove the best and keeps exploring until it finds another strategy to beat the current best. It uses the Upper Confidence Bound (UCB) formula as the strategy in the selection process while traversing the tree starting from the root node.

Many participants showed up with a dedication to learn and implement the algorithm in their smart bots. Understanding the nodes and thinking about worst-case scenarios did make the participants think and rethink their codes.

Some serious discussion on MCTS!

We ended the session with a mind full of MCTS formula and a heart full of connecting with new individuals.

Reinforcement Learning Session

Our second session was just a step higher than the MCTS, Reinforcement Learning.

Reinforcement Learning is basically about learning from own mistakes. It is a machine learning technique that enables a bot to learn in an interactive environment by trial and error using feedback from its actions and experiences. The q-learning formula consists of old value, learned rate and learned value. With the concept of Reinforcement Learning, we were setting foot in the world of Artificial Intelligence.

Our guest speaker for the session was Mr Rojesh M. Shikhrakar, a Machine Learning Engineer and Manager of Academics at Fusemachines. His way of delivering the insights into the subject matter as complex as the Reinforcement Learning were simplified. He taught the participants and members at Bhoos as per how to implement Tic-Tac-Toe using Q-learning. The session was quite reflecting as it gave a lot of knowledge to train the bot to play the right move. Participants kept a close eye on the rewards while balancing the discount factors. This day was about learning from mistakes, finding better solutions, taking multiple short breaks and playing table tennis.

Our faces after a long day of understanding the vast Reinforcement Learning!

Genetic Algorithm Session

The genetic algorithm mimics the process of evolution such that the bot will grow selectively better over the generations. Exploring such basics of the Genetic Algorithm and building the simplest of games, Tic-Tac-Toe was the primary goal of the session.

The speaker for the Genetic Algorithm session was Mr Shreyansh Lodha, a Senior Software Engineer at Cedar Gate Technologies. He is also a Machine Learning and Data Science Trainer at Deerwalk. He engaged with participants and listened to their opinions as per what would be the best case to train the bots for Call Break Game too. A generation and generation of self-training the bots daily into the game seemed like a prime option.

Weeks and weeks of coding, finding bugs and coding again!

Algorithm Optimization Session

Our last and final session was about optimizing algorithms. It was a Q/A session where participants were free to ask questions from any of the above domains or other algorithms.

The speaker for the session was Mr Suresh Manandhar, CEO at Wiseyak, Chief Scientist at Frost Digital Ventures, Head of AI Research at Fusemachines, and former Director at Naamii AI Research and former Head of AI Research Group at the University of York, UK. His guidance undoubtedly made significant changes to the algorithms and mindset.

And at the end, we posed for a happy photo amidst an intense environment where everyone was preparing their best to win.

A picture that shows happiness after coming a long way from where we began!

Our journey from the very first session to the last was so much about interacting with participants, learning and playing with them, sharing laughs and traumatizing over bugs. All in all, it was quite a building and bonding experience.

P.S: What are we going to do for other weekends of life?