I have a machine learning algorithm that is supposed to help users get a particular number closer to their goal. My issue is that I need to determine an efficiency metric for the current iteration of the algorithm but have been having a rough time so far. I suspect at this point im grossly overthinking things or just on the wrong path altogether.

**Question**: Users apply an algorithm which should get their average position closer to their goal. The data below shows the initial starting position for each user, the goal they want to get to, and the final position. How effective was this version of the algorithm at getting users to their goal?

**Data (first 3 records only)**:

User A:

- starting_position: 1000

- goal_position: 800

- final_position: 850

User B:

- starting_position: 100

- goal_position: 50

- final_position: 40

User C:

- starting_position: 500

- goal_position: 600

- final_position: 610

**What have I done so far**:

- attempted to find the absolute difference between the starting and goal, then absolute difference from goal and final, then subtract the second difference from the first to find how much the algorithm got each user closer to their goal but then my math falls apart when I try combining together into a single metric

- attempted to find actual_change/theoretical_change for each user but then I end up with some users like user B seeing a 110% efficiency rating when this isnt accurate because overshooting the goal doesnt mean it was "extra effective", being 10 under goal is just as bad as being 10 over goal in this scenario, so the tool should still be less than 100% effective since it didnt actually get the user to their goal and it missed

- attempted both methods mentioned above (plus others) where I normalize the datasets with min/max methods and mean/std methods since the final value should be a percentage and I figured that scaling the values down would be more accurate so that the user(s) operating on extreme high/low ends of the range dont skew the effectiveness result

Any help would be greatly appreciated!!! If there is any additional information/insight I can provide please let me know!

Cheers,

Dave