Go has proved itself a difficult skill for computers to acquire. Indeed no computer program has been produced capable of play above low amateur level. There are two main reasons for this.
Firstly Go has a huge branching factor. On average about 200 legal moves can be made each turn compared to anout 30 in chess. This means that the traditional brute force AI game playing approach of expanding a search tree (known as 'lookahead') becomes infeasible.
Secondly and perhaps more importantly it is very difficult to produce an efficient 'static evaluation' funtion to compute the value of board positions in Go for a particular player. The reason for this difficulty is that the stones on the Go board influence each other's calue in complex ways. The value of a particular stone to a player is derived from its relationships with the surrounding stones, not from itself.
It has been said that the architecture of current computers is suitable for Chess but Go is more suited to the architecture of the human brain. Evaluating Go positions is a highly intuitive, visual process which humans aquire easily but machines find difficult.