4
$\begingroup$

I have a situation where we are given a set of objects each with a numeric score stating it's importance. Let's call them Level 1 (or L1) objects.

There is another set of objects that are similarly scored/ranked. Let's call them L2 (for level 2). Each L2 object belongs to exactly one parent (i.e. L1 object). Thus we have a tree where the root is just an empty node (L0), so to speak, parents at L1, their children at L2 and so on.

The question is what is a "correct" way of scaling the scores of the children as per their parents so that the sum of scores at each level is 1?

Approach currently used:

  1. Normalize L1 so that scores are between 0 and 1 and add up to 1
  2. Normalize the children of each node in L1 so that sum of children = 1 and then multiply (scale) by the parent's score.
  3. Repeat for every level

This however has an anomaly in that if a particular parent has only one child, then the score of that child is equal to that of the parent - which makes the resulting prioritization skewed. It seems the less children that a parent has the higher the child scores and conversely if there are more children each child gets a smaller score.

Is there a more "correct" way of handling hierarchical scaling/prioritization or do we just accept this as an anomaly of mathematics and 'ignore' outliers?

UPDATE: Clarification on what is meant by 'score is influenced by parent' - It implies that although the child levels can be scored/prioritized independent of their parents (i.e. by comparing with each other perhaps) the final score should be 'scaled by' (read influenced by) that of their parent.

  • Parent A $(5)$
    • child x $(2)$
    • child y $(3)$
    • child z $(6)$
  • Parent B $(8)$
    • child p $(6)$
    • child q $(4)$
    • child r $(3)$
    • child s $(5)$
  • ...and so on**

(The numbers in parenthesis are the scores of that item)

So all parents could be scored/prioritized independently and so their children and children's children (not shown). The scoring scheme needs to be such so as to prioritize these items in a mathematically correct manner. A simple scheme would be to multiply the score of each child by that of the parent (similar to solution shown above)

Context: This is a prioritization scheme for ordering groups and must also lend itself for ordering the children within the subgroups and so on. Items at a particular level i.e. all parents or all children in the above example are 'comparable' i.e. a comparing A and s make no sense but x and s does.

  • 0
    I was unable to find any suitable tags. Please feel free to retag the question with appropriate tags...2012-06-29
  • 1
    You're not happy if an only child has the same score as its parent, so I think you have to decide what you want the score of such a child to be - half the parent's score? some function depending on the level? or depending on the total number of objects on this level? Only you know what you do and what you don't consider acceptable. Once you can put that into words, we can do some mathematics.2012-06-29
  • 0
    @GerryMyerson - well my question is I don't want to have a function for each child score. I just want it to be *influenced* by the parent, that's it. It's just it *feels* anomalous...2012-06-29
  • 0
    Fine. But you still have to decide what feels anomalous, and what doesn't, before you can start to do any mathematics on it.2012-06-29
  • 0
    @GerryMyerson - don't really know if it indeed is. If folks claim it isn't I'll be confident and use this approach and leave it at that. I've made that point clear in the question. I just want to know if there is "another" way or "my" way 'correct' - mathematically speaking2012-06-29
  • 0
    Without specifying more about the context, it seems this question is answerable. Maybe it's correct, maybe it's not. All that's been described specifically is that each level sums to 1; that part is satisfied by the proposed method. The requirement that each level's nodes' score is "influenced" by their parent needs to be made more concrete (either with a specific definition or more context) for further progress on this question to be made.2012-07-11
  • 0
    @mhum - updated as requested. Please have a look2012-07-11
  • 0
    @PhD: you use "correct" twice in your description of the properties you want your scoring scheme to have. What does "correct" mean? Another way of wording this question: if I gave you a different scoring scheme from the one you proposed, what concrete things about it would enable you to determine that it was better.2012-07-16

3 Answers 3