abstract: Self-avoiding polygons are simple closed curves embedded in a regular lattice. They belong to a family of objects, known collectively as lattice animals, that lie at the heart of lattice models of polymers, magnets and other phenomena. This large family of discrete structures has been a source of combinatorial problems for over 50 years and many basic questions remain stubbornly unsolved. For example, the simple enumerative question - "How many self-avoiding polygons are there of length n?" is currently best answered by an algorithm that requires exponential time and memory. The question of counting polygons on the cubic lattice is enriched by topology - self-avoiding polygons have well defined knot types. The exact computation of the number of polygons of length n and fixed knot type K is extremely difficult - indeed the current best algorithms can barely touch the first knotted polygons. In this talk I will discuss a different approach to the problem. Instead of of exact methods, we have used an approximate enumeration method - which we call the GAS algorithm. This is a generalisation of the famous Rosenbluth method for sampling self-avoiding walks. Using this algorithm we have estimated the number of polygons of different lengths and knot types on three different cubic lattices. These give direct evidence that the asymptotic growth of the number of polygons of a fixed knot type K is simply related to the growth of the number of unknotted polygons and the number of prime components in K. We have also studied the relative frequencies of different knots - for example, the ratio of the number of trefoils to the number of figure-eights. We see strong evidence that these ratios are universal suggesting that a very long closed curve is about 27 times more likely to be a trefoil than a figure-eight.