It is currently Wed Apr 24, 2024 10:48 pm

All times are UTC - 8 hours [ DST ]




Post new topic Reply to topic  [ 10 posts ] 
Author Message
Offline
 Post subject: help wanted for writing Meta- bot /
Post #1 Posted: Tue Aug 31, 2010 4:38 am 
Lives in gote

Posts: 350
Location: London UK
Liked others: 19
Was liked: 19
Rank: EGF 12kyu
DGS: willemien
Hello,

I am a bit addicted to 7x7 go and i think the only way aout of it is to write a program that plays better than me.

Also i am interested in Go rules.

So combining them i am sometimes puzzeling on how to write a Go-bot that can play to a higher level than the currently available bots, can use different rule sets.
I found some ways i think will do so.

The main tricks are
- make a big list of all positions that are probably good
- a way to deal with ko situations.
- clever way to deal with data.
- build is a light wait Gobot but let it play against other go bots and learn from them.

- reuse software from free sources. (Go gui and some other open source software)


But my main problem is I don't know JAVA (and JAVA doesn't like me)
(I do think the best language for this is Java, but am even open to discuss this)

I am looking for people who want to help me.
(probably you can use this as a phd project)

Ps i think lot of it is experimental so no garantee for succes given)

Please send me a PM if you are interested.

_________________
Promotor and Librarian of Sensei's Library

Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #2 Posted: Tue Aug 31, 2010 6:17 am 
Lives in sente

Posts: 1037
Liked others: 0
Was liked: 180
"I am a bit addicted to 7x7 go and i think the only way aout of it is to write a program that plays better than me."

I'll give you some advice (general).

a)The programs playing full board might need to be very different from those playing 9x9 but do you expect that to be true when going from 9x9 to 7x7?

In other words, which do you imagine would be easier, writing a program to play 7x7 go from scratch or modifying an existing program capable of playing well at 9x9? I wrote a programs totalling a few hundred thousands lines in my day but didn't type that many (lots of useful bits and pieces in my "library" to maybe be reused with slight modifications).

So it's where I would start, looking at existing (open) programs that can play 9x9 and seeing what would have to change to play 7x7.

b) Do not start by choosing a language of implementation. That choice should come much later in the design process when you know more about the sort of problem you are attacking. Some are better for some things than others. In this case the main benefit of something like Java would be "portability" but is that going to be a critical issue? Or will speed performance be the critical issue? (a strong go playing program tends to be a "crunch")

Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #3 Posted: Tue Aug 31, 2010 6:22 am 
Lives in gote
User avatar

Posts: 429
Location: Sweden
Liked others: 101
Was liked: 73
Rank: SDK
KGS: CarlJung
Mike Novack wrote:
I wrote a programs totalling a few hundred thousands lines in my day but didn't type that many (lots of useful bits and pieces in my "library" to maybe be reused with slight modifications).


Is this code publicly available somewhere?

_________________
FusekiLibrary, an opening library.
SGF converter tools: Wbaduk NGF to SGF | 440 go problems | Fuseki made easy | Tesuji made easy | Elementary training & Dan level testing | Dan Tutor Shortcut To Dan

Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #4 Posted: Tue Aug 31, 2010 9:43 am 
Lives in sente

Posts: 1037
Liked others: 0
Was liked: 180
No -- can't be. Although I wrote it would belong to the company for which I worked. One of the last things I did during my final months was to organize it (build an index) so it would be more useful to the younger programmers in the shop. You know, along the lines of here's "this" and these are the sort of things you might be able to do with it".

Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #5 Posted: Tue Aug 31, 2010 10:47 am 
Lives in gote

Posts: 350
Location: London UK
Liked others: 19
Was liked: 19
Rank: EGF 12kyu
DGS: willemien
Thanks for your reply

Mike Novack wrote:
Quote:
"I am a bit addicted to 7x7 go and i think the only way aout of it is to write a program that plays better than me."


I'll give you some advice (general).

a)The programs playing full board might need to be very different from those playing 9x9 but do you expect that to be true when going from 9x9 to 7x7?


I choose 7x7 as first (and maybe only) project for two main reasons.
- positions can be encoded in 2 longs (or in fact less)
- there are just (astronomicly) less positions.

Maybe in a later stage it can be rewritten for 9x9, but i guess you will run against aall kind of other problems then.

I think the end would be a program that has a gigantic openingsbook (openingsbook is a bit of a misnomer it is not just the opening it are full games)

The main difference between normal go bots and what i have in mind is that my idea is first of all the "openingsbook" can use different rulesets (normal go bots only know area scoring)
(if nescesary a different rulesets will lead to a different openingsbook)

I imagine that it is a learning system, (by playing many games against other go bots, itself, people, reading games ed.)





Mike Novack wrote:
In other words, which do you imagine would be easier, writing a program to play 7x7 go from scratch or modifying an existing program capable of playing well at 9x9? I wrote a programs totalling a few hundred thousands lines in my day but didn't type that many (lots of useful bits and pieces in my "library" to maybe be reused with slight modifications).

So it's where I would start, looking at existing (open) programs that can play 9x9 and seeing what would have to change to play 7x7.


That would be the easy way but won't address the problems that normal go bots have (almost all bots can play 7x7 but go astray in the details -
If we can get it working then other programs can play against it and maybe this show there problems.

Maybe it is more modifying gogui that it will do what i have in mind, but it is a big modification

Quote:
b) Do not start by choosing a language of implementation. That choice should come much later in the design process when you know more about the sort of problem you are attacking. Some are better for some things than others. In this case the main benefit of something like Java would be "portability" but is that going to be a critical issue? Or will speed performance be the critical issue? (a strong go playing program tends to be a "crunch")


The program (if working properly) hardly needs to crunch, if it is a difficult position it "should" be in its "openingsbook" and if not an weak player (what needs to be build in) should be able to find a good move.
a bigger problem is that the program must know when to pass. but that can be done by adding passes in the "openings"book.


I choose JAVA (above C++ # ed ) because it is more portable and safer (type proof, array checking ed) than the others.
Much of GoGui (open source) can be used (although i allready have problems understaning it)

_________________
Promotor and Librarian of Sensei's Library

Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #6 Posted: Tue Aug 31, 2010 10:57 am 
Lives in sente
User avatar

Posts: 761
Liked others: 152
Was liked: 204
Rank: the k-word
Quote:
...So combining them i am sometimes puzzeling on how to write a Go-bot that can play to a higher level than the currently available bots...

...I think the end would be a program that has a gigantic openingsbook...

...make a big list of all positions that are probably good...

...build is a light wait Gobot but let it play against other go bots and learn from them...

...But my main problem is I don't know JAVA...


Forgive me but I don't see a great future for your project. It's far beyond your current programming abilities or knowledge of Go AI techniques.

However, it seems 7x7 is already solved - do have a look at Erik van der Werf's thesis, http://erikvanderwerf.tengen.nl/pubdown ... erwerf.pdf

Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #7 Posted: Tue Aug 31, 2010 11:20 am 
Lives in gote

Posts: 350
Location: London UK
Liked others: 19
Was liked: 19
Rank: EGF 12kyu
DGS: willemien
palapiku wrote:

Forgive me but I don't see a great future for your project. It's far beyond your current programming abilities or knowledge of Go AI techniques.

However, it seems 7x7 is already solved - do have a look at Erik van der Werf's thesis, http://erikvanderwerf.tengen.nl/pubdown ... erwerf.pdf


7x7 is (as far as i know) not solved (the thesis only says that 5x5 and 6x6 are solved, but it is allready 5 years old)

Also if it was solved it would be under specific rulesets (probably area scoring) while i would like to be able to do it under other rulesets as well (but starting with area rules is probably a good idea)

(and also it would show that it was possible, this project could only be seen as a partial step towards it)

Because it is beyond my current programming abilities i am looking for cooperators.
But i do know something about AI (and willing to learn more)

I am restricting it to 7x7 because it is smaller than 9x9 and therefore more likely to be possible.

Quote:
..make a big list of all positions that are probably good...


Do you really want all the details here?

_________________
Promotor and Librarian of Sensei's Library


Last edited by willemien on Tue Aug 31, 2010 12:44 pm, edited 2 times in total.
Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #8 Posted: Tue Aug 31, 2010 12:32 pm 
Lives in gote
User avatar

Posts: 429
Location: Sweden
Liked others: 101
Was liked: 73
Rank: SDK
KGS: CarlJung
willemien wrote:
I choose 7x7 as first (and maybe only) project for two main reasons.
- positions can be encoded in 2 longs (or in fact less)


Hmm... wasn't there someone knowledgable that said something about early optimizations.. ? ;-)

Anyway, good luck.

_________________
FusekiLibrary, an opening library.
SGF converter tools: Wbaduk NGF to SGF | 440 go problems | Fuseki made easy | Tesuji made easy | Elementary training & Dan level testing | Dan Tutor Shortcut To Dan

Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #9 Posted: Tue Aug 31, 2010 1:48 pm 
Gosei

Posts: 1387
Liked others: 139
Was liked: 111
GD Posts: 209
KGS: Marcus316
CarlJung wrote:
willemien wrote:
I choose 7x7 as first (and maybe only) project for two main reasons.
- positions can be encoded in 2 longs (or in fact less)


Hmm... wasn't there someone knowledgable that said something about early optimizations.. ? ;-)

Anyway, good luck.


I believe the term you are looking for is "premature optimization".

Anyways, I wish you luck. Consider, maybe, using Java to run the interface, but choosing to do the calculation functions in whatever language or DSL seems most appropriate.

Might be a good way to learn how to integrate different languages to build complex systems. :D


This post by Marcus was liked by: CarlJung
Top
 Profile  
 
Offline
 Post subject: Re: help wanted for writing Meta- bot /
Post #10 Posted: Tue Aug 31, 2010 1:57 pm 
Lives with ko

Posts: 281
Location: France
Liked others: 69
Was liked: 25
Rank: yes
Marcus wrote:
Might be a good way to learn how to integrate different languages to build complex systems. :D

bah. GTP is the way to go in this particular case.

Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: RobertJasiek and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group