Say you have 3 algorithms, A B and C. You want to present a comparison of A B and C based on:
- Precompute overhead (say tree building etc that occurs prior to runtime)
- Runtime speed (say query response time)
The problem is, however, A B and C each have their own unique set of parameters that will dictate the quality of the results.
- A has 3 parameters x, xx and xxx
- B has 1 parameter y
- C has 2 parameters z and zz
If A has it's parameter x increased from 10 to 50, say, then A's precompute overhead doubles, and A's runtime speed is halved.
If B has it's parameter y increased from 0 to 0.001 say, it's precompute time stays the same but it's runtime speed becomes 1/3 of it's former speed.
So each algorithm has it's own set of quirks and behaves differently, depending on how you set each algorithm's parameters.
But we are interested in comparing A B and C based on the two categories (precompute and runtime) listed above!
How can you compare algorithms A B and C?