for forgetful functors, we can usually find their left adjoint as some "free objects", e.g. the forgetful functor: AbGp -> Set, its left adjoint sends a set to the "free ab. gp gen. by it". This happens even in some non-trivial cases. So my question is, why these happen? i.e. why that a functor forgets some structure (in certain cases) implies that they have a left adjoint? Thanks.



Why forgetful functors usually have LEFT adjoint?
Forgetful functors usually have a left adjoint because they usually preserve limits. For example, the underlying set of the direct product of two groups is the direct product of the underlying sets, and similarly for equalizers (that gives you all finite limits). 


However, functors that preserve limits don't have to have left adjoints, because once in a while what you want to do to construct a free object results in a proper class. An example is [complete lattices](http://en.wikipedia.org/wiki/Complete_lattice).
Freyd's [Adjoint Functor Theorem](http://en.wikipedia.org/wiki/Adjoint_functors) gives a necessary and sufficient condition for a limit-preserving functor to have a left adjoint. The proof and related results is discussed in section 1.9 of [Toposes, Triples and Theories](http://www.tac.mta.ca/tac/reprints/articles/12/tr12.pdf).


