• No se han encontrado resultados

la opinión de la sociedad civil sobre el desarrollo humano y el empoderamiento

un programa de investigación

6.6 la opinión de la sociedad civil sobre el desarrollo humano y el empoderamiento

The matching engine will compare the request with each available advertisement and depending on the suitability of the advertisement to satisfy the request, a score will be assigned. Depending on the score received by each advertisement, the advertisements can be ranked so that the resource seeker will know the order in which he should consider the available resources. As discussed in section 4.4.1, the resource request will described the characteristics or attributes that should be met by a potential resource in order for the request to be satisfied; it will consist of a number of individual requirements along with their priority values. The presence of any mandatory requirements that must be fully satisfied by any potential match will also be indicated by using the appropriate priority value as mentioned in 4.4.1.

The high-level algorithm for the matching process is illustrated in Section 4.4.3.1. During the matching process, the available resource will be checked to see if each mandatory individual requirement (RD) is satisfied in the advertisement description. If all the mandatory requirement(s) are met, then the advertisement will be evaluated through approximate matching.

In approximate matching, the available resources should be evaluated according to how well it satisfies each individual requirement specified in a request; i.e. the matching engine should quantify the extent to which each individual requirement description (RD) is satisfied by the resource advertisement. For this, the matching engine will check how similar the advertisement is with respect to each non-mandatory requirement (RD) specified in the request; the similarity will be determined depending on the semantic deviation of the expected value in request and the available value in advertisement for the same requirement, and a score will be assigned accordingly (Scorei).

Each characteristic specified in the request (riR) can be a named concept(CR) or an existential restriction (∃p.CR). If it is a named concept, similarity will be compared between the corresponding concepts in request and advertisement (Similarity(CR, CA)).

If it is an existential restriction, the corresponding existential restrictions (restrictions having equivalent or sub properties) will be found in the advertisement (∃p.CA) and the similarity will be compared between the corresponding concepts in request and advertisement. If it is a composite concept the similarity will be judged recursively. The score(Scorei) for each individual characteristic in the request will be assigned depending on this similarity.

The degree of similarity between concepts will be determined depending on the type of concept or attribute involved; determination of similarity between concepts has been discussed in detail in Section 4.4.2.

A score (Scorei) is assigned for each individual requirement (RD) specified in the re-quest. The score for the advertisement (match score) will be determined by using the weighted average of these individual scores (the weight will be the corresponding priority value of each individual requirement).

M atchScore =n

i=1wi.Scorei÷n

i=1wi

where wiand Scoreiis the priority value and the score of the sub-requirement RDi. The overall score for the advertisement provides an indication of how good the advertisement is in satisfying the given request. The score for an advertisement will in turn be used as the basis for ranking; the highest score will receive the highest rank and so on.

An example walk-through to illustrate the application of the matching solution in a pervasive scenario, is presented in Section 5.3.

4.4.3.1 Algorithm

function M atch(Request, Advert)

for each Mandatory Requirement (RD) in Request do

{Check if Advert fully satisfies the requirement description (RD)}

if ¬(Advert RD) then Return 0

end if end for

{if all mandatory requirements are met proceed to approximate matching}

M atchScore = 0

for Each Non mandatory Individual Requirement (RDi) in Request do get the priorityValue (wi) corresponding to RDi

Scorei = ApproxM atch(RDi, Advert)

M atchScore = M atchScore + (wi∗ Scorei)

else if If R is an atomic concept or a Data Range then

{i.e. it is not defined by any Necessary and Sufficient conditions that indicates a class definition}

if A is an atomic concept or a Data Range then

{Judge similarity between R and A, depending on whether they are Type1, Type2 or Type3}

f inalScore = similarityScore(R, A) else

for each named concept Ai in A do subScore = similarityScore(R, Ai)

{Get maximum subScore as the finalScore}

f inalScore = maximum subScore end for

end if else

for each necessary and sufficient (N&S) condition in R (ri) do {quantify the extent to which each (ri ) is satisfied by A} if (ri) is a named concept (CR ) then

for each named concept in advertisement (CA) do subScore = ApproxM atch(CR, CA)

Get maximum subScore as the score for (ri ) end for

else if it is an existential restriction then

{Find corresponding restriction(s) in the advertisement}

for each existential restriction in advertisement that has either an equivalent property or a sub property do

{Match the corresponding concepts or datatype values and restrictions}

subScore = ApproxM atch(CR, CA)

Get maximum subScore as the score for (ri) end for

f inalScore = f inalScore + subScore end if

end for

f inalScore = f inalScore/number of N &S conditions end if

Return f inalScore

4.5 Discussion

This chapter presented the proposed approach for semantic matching, which provides a pragmatic solution to match resource requests and advertisements. The approach provides a ranking mechanism, which will order the available resource advertisements according to their suitability to satisfy the given request.

The description of a request consists of a number of individual requirements. Each indi-vidual requirement specifies a characteristic or a constraint that should be satisfied by a potential advertisement. During the matching process, an advertisement is evaluated according to how well it satisfies each of the individual requirements in a request. De-pending on this evaluation, each advertisement is assigned a match score which in turn will be used as the basis for ranking or ordering them according to their suitability. The individual requirements occurring in a request are categorised into three types (Type-1, Type-2 or Type-3), depending on the type of property or concept they involve. The ex-tent to which an advertisement can satisfy a given individual requirement is then judged depending on the type or category of requirement into which it falls.

This matching approach has a number of desirable properties, which are:

• Ranking of matches: The ranked list of matches provides the resource seeker with a useful aid in understanding the appropriateness of the advertisements and the order in which they should consider the potential matches.

• Approximate matching: The individual requirements of a request are categorised into three types depending on the concept or property it involves. This allows the matcher to employ the appropriate function to judge the similarity and suitability within the requirements, during the matching process.

• Consideration of priorities on the individual requirements and mandatory ments: This allows different weights or priorities to be associated with the require-ments of a request and to specify whether any of the requirerequire-ments are mandatory.

Considering these priorities and mandatory requirements in the matching process, allows the matcher to return results that agrees better with the resource seeker’s context.

The proposed matching approach provides an effective approximating criterion while not being limited or specific to any particular domain as opposed to rule based matching approaches such as that proposed in [128]. That is, it could be generally applied to any domain where the resources are described as restrictions over the properties applicable.

Some concerns that could arise regarding the proposed matching approach, are discussed in the following sections.