below, i tried to modify your original example a bit to make it more complex and then lay it out like the algorithm summary does. in terms of modifications, i added a lot more IDs at various levels, including some new disagreements (beetles, narrow-waisted wasps), as well as a branch disagreement (at typical sawflies):
i think the adjusted figures in columns G and I are the hardest parts to do technically, and there are probably a few different ways ways to implement the calculation of G in particular. (the numbers i used above are based on a more complex potential implementation.)
(i’m not trying to demonstrate any particular algorithm here. i’m just showing how many more components i think you would need to keep track of in this kind of calculation.)
relying on the existing maverick calculation is one way to go about getting the adjusted value in column G, but you’d still need a way to get the adjusted value in column I, i think. so i don’t think you can just recalculate needs ID observations with a maverick ID, although maybe you could recalculate based on a set of needs ID with any disagreement.
i think “optimization” can mean many different things, depending on your priorities. i tend to think the existing algorithm is fairly well-optimized for speed (technically) and for user understanding (few parts to keep track of).
i think when you’re dealing with algorithms like this, i think “logical”, like “optimization”, again just depends on priorities. because your example is relatively complex, honestly, i don’t think all users would have a set expectation for what the end result should be. i bet many would just follow the existing logic of the current algorithm to decide what the output should be.
…
anyway, as i noted before, i think, given your priorities, there is some merit to thinking about an alternative algorithm like you’re suggesting. that said, from my perspective, it seems to me like your use case is valid but relatively niche. so i personally don’t see a clear case that the existing algorithm needs to be changed.
