Don’t you still have to correctly estimate the amount of work (time) to complete each task in your backlog?
You can apply all the “science” you want, but at the bottom of it all you have engineers holding up a card with a “4” on it when the scrum dude says “add date picker to the Foo widget.”
When I did this last, we incorporated size of epic instead and looked at number of tickets on average. You still have to break it down but you can take into account the number of added tickets given a large enough sample size.
You still need story point estimates on the previous items, or some reason to believe that previous stories were of similar size (which is also a form of estimate).
It’s running through simulations based on previous team behavior to give a range.