Many time-dependent partial differential equations have solutions which evolve to have features with small length scales. Examples are blow-up singularities and interfaces. To compute such features accurately it is essential to use some form of adaptive method which resolves fine length and time scales without being prohibitively expensive to implement. In this paper we will describe an r-adaptive method (based on moving mesh partial differential equations) which moves mesh points into regions where the solution is developing singular behaviour. The method exploits natural symmetries which are often present in partial differential equations describing physical phenomena. These symmetries give an insight into the scalings (of solution, space and time) associated with a developing singularity, and guide the adaptive procedure. In this paper the theory behind these methods will be developed and then applied to a number of physical problems which have (blow-up type) singularities linked to symmetries of the underlying PDEs. The paper is meant to be a practical guide towards solving such problems adaptively and contains an example of a Matlab code for resolving the singular behaviour of the semi-linear heat equation.