Не съм постгресен човек, но ... бих опитал
Movie.connection.execute "select setseed(0.5)"
Movie.where(...).order('random()').page(params[:page]).per_page(15)
По отношение на Array#shuffle
без да взема семена, той използва Kernel.rand
така че можете да го поставите чрез Kernel.srand