There are no common patterns that deal with "restarting" a game, because a game is so much more than a level that can be re-loaded with level_load. If that is your case you have to reset e.g. all your variables to the state they are at the beginning. Also, if your game is embedded into a menu structure, take this also into account.
Don't laugh at me

but making a level work is imho a piece of cake compared to making a full retail-like game of it and especially re-starting the game as a whole and/or in parts is an issue which can be quite a difficult task, sometimes.
So, please describe your problems and issues so that we can just point you into the right directions.