Subscribe via Email

Wednesday, March 29, 2017

CS Games 2017

non-technical: suitable for any reader

Unfortunately we didn't place 1st 2nd or 3rd in any event, despite being quite confident with our participation in the AI event.

Our final rankings were:
Artificial Intelligence: 6th place (out of 27)
Sports: 8th place (out of 27)
Business (Dragons' Tank): 9th place (out of 27)

Regrettably UofM would win in "alcoholism" if it were an event... I don't drink; and I'm pretty very few other teams drank either seeing as our team not-so-subtly hijacked over a dozen bottles of wine from opponent tables.

Most of the banquet involved me walking around establishing public relations with our competitors. I congratulated all of the winners and apologized for some of our team raiding their table for booze. It was pretty funny, I can't deny that, but still...
More importantly than this, I wished to meet with members from successful teams to learn from their experiences. I was interested in what exactly it was that separated their success from our failure.

Insights From Others

I spoke especially with members from Windsor and Rochester.
From my discussions with these bright competitors, I have deduced that our loss of 1st 2nd and 3rd was primarily due to two reasons:

1: Inadequate Preparation
We should have done more focused preparation as other teams did, replicating the contest environment and refreshing ourselves by implementing all of the standard searches and structures likely involved in these contests.

2: Team coordination.
Coordination of robotic teams feels easier than with humans (ie my research) . I think our divide and conquer approach of having each of us implement separate solutions was a poor choice in hindsight.

The initial setup was fantastic, and everyone did an amazing job, but we had too much replicated work. What I mean, is that it was good to spend the first hour developing a strong test and development environment while 1 person focused mainly on problem development.

The mistake we made was after this hour... We each split apart and developed our own bots. Despite having more attempts and more clients to test in the long run, this approach amounts to each person repeating a lot of thinking and coding. I stayed up almost the whole night implementing a graph, where as another team mate implemented their own the next morning. Despite them being much better at coding than me, I believe we should have shared and developed 1 version together.

This would ensure we are on the same page conceptually and in implementation. When doing short and competitive programming competitions, moving forward, even if chaotically, seems better than spreading out in tons of directions and progressing slowly. It also ensures that we can point out each others mistakes. For example I originally used Manhatten distance as my heuristic... yet diagonal moves were allowed, thus a better heuristic (as used by first place team ) was the Euclidean distance. If we were all working on the same machine and watching the process I'm sure one of the team members would have pointed out my silly mistake. Likewise I could have pointed out mistakes on their implementation.

I'll think more on how team strategy can work for next year to ensure we maximise on everyone's unique skills and abilities while avoiding repeated work.

Overall for a first try, this was a very enjoyable experience. I met wonderful students and learned a lot from them. Despite me doing much better in research-contents, shorter contests such as the cs games provide an opportunity to develop team work skills, as participants must quickly establish their role and use their skills to deploy working solutions under tight time constraints.

Well, I'm back to research now! Writing this blog post on the plane ride back is the only way to fit it in my schedule.

Every time I look out and see these clouds I'm reminded that despite short term losses, I always gain valuable experience and insights through my travels.

No comments:

Post a Comment

Please feel free to give feedback/criticism, or other suggestions! (be gentle)

Subscribe to Updates via Email