Life In 19x19
http://prod.lifein19x19.com/

New go engine i am developing.
http://prod.lifein19x19.com/viewtopic.php?f=18&t=3310
Page 1 of 1

Author:  oso [ Fri Feb 25, 2011 7:20 pm ]
Post subject:  New go engine i am developing.

Hello. This is my first post on the forums. I am developing a computer go engine, mostly as a hobby, with a unique algorithm for analysis of the board.

The algorithm, essentially, relies on treating columns and rows of the board as separate objects. And the board is percieved by the computer as two separate arrays of length 9.

A move is counted as essentially a division between one row of one object. In addition, there is an additional variable to determine different colors between divisions.

The analysis of the board is essentially an additive process, with only the distance between the ne divided columns having to be recalculated with each move, while state of the rest of the data structures don't have to be reassesed.

In addition, liberties are counted as rows are divided, and subtracted on each side for every row or column of length zero(which indicates that two stones are adjacent), I scale the algorith of counting liberties for groups of dividedx rows, ad keep a hash table of the adjacent length 0 row and columns. Those that, upon an update, would reach 0 liberties, are considerex dead.

I estimate the program's strength to be about 9kyu or so. I am still in the development stage, and I may look to combine a monte carlo algorithm with the main routines as well.

Thank you for reading!

Author:  EdLee [ Fri Feb 25, 2011 8:17 pm ]
Post subject: 

Nice. Will it ever be available as a robot program to play on KGS? :)

Author:  oso [ Fri Feb 25, 2011 9:59 pm ]
Post subject:  Re: New go engine i am developing.

Perhaps. I am not certain which server to test it on.

Author:  Gilles [ Sat Feb 26, 2011 4:26 am ]
Post subject:  Re: New go engine i am developing.

Intriguing working. Do you plan to make it available on download? GTP interface?

Author:  rubin427 [ Sat Feb 26, 2011 7:40 am ]
Post subject:  Re: New go engine i am developing.

Or, if you can post a game record, that would also be interesting.

Author:  oso [ Sat Feb 26, 2011 11:55 am ]
Post subject:  Re: New go engine i am developing.

Constant internet access is a problem. For testing purposes it might be on kgs once a month. Eventually It will be available for download. But let's not get ahead of ourselves.

I just rewrote the liberty assessment function and integrated it into the copy constructor for the row and column class. I am also working on something special. Gotta go.

Author:  oso [ Sun Feb 27, 2011 6:20 pm ]
Post subject:  Re: New go engine i am developing.

Sorry for Double Posting.

Updates:

Today I did some major restructring of the program. I folded the row and col objects into a single class that has access to a new data structure that will now hold positional data and color data for stones. Stones have been given their own data structures as well.

I also added an additional variable that holds an array of rows much the same as the column and row objects do, only the array is ordered by the sequence of moves. This has proved to speed up searches by a factor of thirty.

Also, am in the process of refining an algorithm that, essentially, treats the number of objects in a division as a pointer to the stone class. This allows me to update the relative thickness of a row or column of stones somewhat efficiently. There are--some small details of implementation that need to be worked out.

Things that still need to be done:

I need to write the functions for tactical divisions and liberty counting.

Also need to bind the code for relevancy and tenuki thresholding into the classes.

Need to write the user interfaces, bind the gtp protocols in, and a whole bunch of other stuff.

I'll keep you guys posted.

Estimated time to completion: 2 months.

Page 1 of 1 All times are UTC - 8 hours [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/