Re: How long would it take for a novice to be able to progra
Posted: Tue Sep 29, 2015 10:54 pm
I came up with the same idea half a year ago: to write a strong tsumego solver and use it in sites like goproblems. At that moment I estimated the task as "rougly two days of work to implement a basic depth-first search and another day to make it handle ko fights" and I had good reasons to think so: I had exceptionally solid math, computer science and programming background. Today, after half a year of study, I have only realized that this task at the edge of my mental ability (I made the "wtf? this stone's disappeared!" -> KGS 1 dan path in 8 months) and I'm barely able to comprehend algorithms that are necessary to write a decent (not a top notch, just decent) tsumego solver. This is just to give you an idea how hard this task is 
I highly recommend to not spend time on learning any programming language at the moment - that's the simplest and the least significant part of the task. Learn how search on graphs work: start with basic best-first and depth-first search algorithms and advance to the lamda depth-first proof-number search that handles repetitions (lambda df-pn(r)). Read the Kishi's PhD thesis about tsumego solvers and the Martin Muller's paper about lambda df-pn(r):
http://www.is.titech.ac.jp/~kishi//pdf_ ... thesis.pdf
www.ijcai.org/papers07/Papers/IJCAI07-387.pdf
I also recommend to take a look at machine learning / neural networks. Even if you don't find it directly applicable to the tsumego solvers, it will let you look at existing problems at an entirely new angle:
arxiv.org/abs/1412.3409
en.wikipedia.org/wiki/Backpropagation
I highly recommend to not spend time on learning any programming language at the moment - that's the simplest and the least significant part of the task. Learn how search on graphs work: start with basic best-first and depth-first search algorithms and advance to the lamda depth-first proof-number search that handles repetitions (lambda df-pn(r)). Read the Kishi's PhD thesis about tsumego solvers and the Martin Muller's paper about lambda df-pn(r):
http://www.is.titech.ac.jp/~kishi//pdf_ ... thesis.pdf
www.ijcai.org/papers07/Papers/IJCAI07-387.pdf
I also recommend to take a look at machine learning / neural networks. Even if you don't find it directly applicable to the tsumego solvers, it will let you look at existing problems at an entirely new angle:
arxiv.org/abs/1412.3409
en.wikipedia.org/wiki/Backpropagation