Other than Rest, there is just one way a Pokemon can put itself to sleep without needing to interact with another target: obedience. Though a disobedient Pokemon may eventually put itself to sleep, this is obviously a terrible strategy because you'd generally prefer your Pokemon to do something useful.
Aside from this, there are a few options that require the help of a second Pokemon:
- Any sleep-inducing move targeting your partner in a Double Battle
- Hitting a Pokemon with Effect Spore and getting the 11% roll
- Using a sleep-inducing move on a target with Synchronize
- Using a sleep-inducing status move on a target with Magic Bounce or Magic Coat
None of these are as consistent as Rest. If you really need to put your own Pokemon to sleep for some reason, Rest is the only serious option.
Sleep (Bulbapedia)