LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Tic Tac Toe Coding Challenge

First results against the random player :
win:90% loose:2.5% draw 7.5%

I think I'm using a strategy quite different from Christian's.
Chilly Charly    (aka CC)
0 Kudos
Message 31 of 183
(3,757 Views)
CC
Is you entry trying to loose or trying to win here? 😉
0 Kudos
Message 32 of 183
(3,753 Views)
I think we need some new terms isntead of "win" and "lose" - with one "o" by the way.

How about "Fulfilled" "Unfulfilled" and "draw".  I reckon we can all agree on the meaning of "draw".

What do you think?

Shane.
Using LV 6.1 and 8.2.1 on W2k (SP4) and WXP (SP2)
0 Kudos
Message 33 of 183
(3,748 Views)

altenbach a écrit: ...Is you entry trying to loose or trying to win here?


According to the challenge rules, I win when I lose... 😉

"Slightly" improved :
win: 98% lose: 0% draw: 2%

I think that time will be the ultimate discriminating variable.

Shane, thanks for the correction. I don't like the fulfilled or unfulfilled stuff, but you are right, better terms would have been better 😉

Message Edité par chilly charly le 05-02-2006 08:35 AM

Chilly Charly    (aka CC)
0 Kudos
Message 34 of 183
(3,749 Views)

Neat challenge!  However, looking at some people's results vs. the random player makes me wonder if having each opponent pair play only 2 matches is really enough.  If either player uses a non-deterministic algorithm, I'd think you'd need to run many matches to more accurately determine whether one's a better loser than the other.

I've got an algorithm in mind that's conceptually pretty simple, but which is liable to give an equal rating to several possible "next plays".  In such cases, I'd just pick randomly from the otherwise-equal possibilities.  If there's a subtle flaw or subtle advantage in this approach when playing against a deterministic algorithm, it's highly unlikely to show up in just 2 matches...

I also wonder about the scoring.  It sure seems that most decent competitors will almost always play to a draw.  Let's just suppose there ends up being 20 entries that always draw against each other, and never "lose" to anyone by making their own 4-in-a-row.   Their "win" total will then come from the weaker competition, and the contest is mostly determined by matches with the weaker players rather than matches with stronger players.  Sorta like having the NBA championship determined by who had the best record against the Knicks.

I'd kinda like to see more than one champion category.  Easy for me to say since I don't have to perform the matchups or evaluations...

1. Simple scoring system (similar or same as original), tiebreaker based on some kind of efficiency metric that considers code size, memory used, execution speed, whatever else.

2. Raw strength - each player matches up >100x with each other player.  Result should be more statistically significant.  Tiebreaker -- ?

3. Generalized algorithm -- based on results facing off against other generalized players for a variety of NxN board sizes.  (Still based on ending game at first 4-in-a-row).

Finally, since the coding challenge is categorized under "Code Sharing", shouldn't we also have an open-source stage of competition?  Or maybe we can just do it voluntarily in the forum?  I'd like to think of the official contest as the closed-source stage.  Immediately after that, it'd be cool for participants with good / unique approaches to describe their algorithms and post code.  Then the goal is to produce an open source player that beats the original contest winner.

-Kevin P.

ALERT! LabVIEW's subscription-only policy came to an end (finally!). Unfortunately, pricing favors the captured and committed over new adopters -- so tread carefully.
Message 35 of 183
(3,683 Views)
Are we allowed to refine our vi up until July 14th? ie: re-submit a vi until the closing date of the contest?
Message 36 of 183
(3,680 Views)
You can submit as many entries as you want, within reason of course.  I will probably number them to keep them separate.  This gives you the opportunity to submit a few variations based on different strategies, as well as improve previous strategies.  Just don't send me twenty different versions with very minor tweaks, please.
 
Bruce
Bruce Ammons
Ammons Engineering
0 Kudos
Message 37 of 183
(3,676 Views)
Kevin, you raise some interesting points.  I didn't expect the possibility of different outcomes from the same players.  Perhaps I will put a loop in so each match is played 100 times as you suggested.  The scoring system is designed to be automatic, so I don't have to set up every match.  Another possibility is running each player against the random player a million times or so to see how they do.  Then we could have a tie breaker for all the ones that win or draw 100% of the time.
 
I considered using a different size board as a tie breaker, but that makes the original problem much more complex if you have to be able to play any NxN grid instead of just a 4x4 grid.  I would be open to using a different tie breaker if we could reach a general consensus on what it should be.
 
I really like the idea of an open-source version after the official competition is over.  I would even be able to work on that one, since I can't compete in my own contest.  I won't complain if people chose to share their strategies during the competition, although that is likely to hurt their own entry.
 
One of my concerns is that I want this competition to be something that any LabVIEW programmer could do well at.  I think with a little work, many people could come up with a decent player.  I don't want to limit it to the expert programmers only.
 
Let's see how the competition progresses before we start trying to change the rules.
 
Bruce
Bruce Ammons
Ammons Engineering
Message 38 of 183
(3,684 Views)
I thought we needed a better opponent than Bruce random player.
So here is my first unofficial submission. Don't expect too much from it  : it's slow and can be beaten often. But it never loses a game against the random player and doesn't always react in the same way. So I believe it's a fair partner.
I hope you will have some fun with it. Please post your score, comments and publish your own better opponent as soon as possible...
 
Chilly Charly    (aka CC)
Message 39 of 183
(3,682 Views)
CC.
 
Could you post them with a passworded diagram (instead of removed diagram). I cannot open them in LabVIEW 8.0 where I develop.
0 Kudos
Message 40 of 183
(3,674 Views)