Uploaded image for project: 'GPII - Global Public Inclusive Infrastructure'
  1. GPII - Global Public Inclusive Infrastructure
  2. GPII-1742 Extend the canopy match maker to cover all matching needs and requirements (Umbrella)
  3. GPII-4

Implement "canopy" matchmaker algorithm using lexicographic ordering to decide on optimal solution set for a profile

    XMLWordPrintable

    Details

      Description

      The current matchmaker implementation is just a stub. After filtering based on platform and available versions, it just picks the first suitable solutions to return to the user in a particular situation.

      We should implement a "proof of concept" matchmaker plugin, currently codenamed the "canopy" matchmaker, which uses a properly fine-grained algorithm which trades off specificity of meeting a users' needs against coverage of those needs by the smallest number of solutions.

      This will use a form of "lexicographic ordering" on vectors of suitability measures, similar to that used for settling predecence amongst competing CSS rules. This has been proven over time to be an effective and reasonably intelligible scheme for resolving conflicts between communities in "producer and consumer" relationships without the need to introduce logical/procedural constructs. In the CSS world these are end users and various levels of designers - for solutions/matchmakers similarly these communities consist of end users and various levels of integrators/solution providers.

      This kind of rule is illustrated entertainingly and perspicuously at http://www.stuffandnonsense.co.uk/archives/css_specificity_wars.html - "Sith Lord specificity rules"

        Attachments

          Activity

            People

            Assignee:
            amb26 Antranig Basman
            Reporter:
            amb26 Antranig Basman
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: