Yes you can . You can find your rival at the Pokemon League and you can only battle him on the weekdays only. (HOPE THIS HELPS!) :)
You can rebattle your Rival as many times as you want on Mondays and Wednesdays at the Pokemon League above the stairs inside.
not always but yes you can.