Home > Mateda2.0 > knowledge_extraction > Pareto-approximations > ComputeC_Metric.m

# ComputeC_Metric

## PURPOSE

[CA,CB] = ComputeC_Metric(PopA,PopB)

## SYNOPSIS

function[CA,CB] = ComputeC_Metric(PopA,PopB)

## DESCRIPTION

     [CA,CB] = ComputeC_Metric(PopA,PopB)
     ComputeC_Metric: Computes the C metric between two Pareto set
     approximations
     INPUTS
     PopA: First population, Each row corresponds to a vector
     PopB: Second population, Each row corresponds to a vector
     OUTPUTS
     CA: C(A,B) Proportion of vectors in PopB which are dominated by at leat
     one vector in PopA
     CB: C(B,A)

     Last version 2/26/2009. Roberto Santana (roberto.santana@ehu.es)

## CROSS-REFERENCE INFORMATION

This function calls:

- FindParetoSet [Index]=FindParetoSet(Pop,FunVal)

This function is called by:

## SOURCE CODE

    0001 function[CA,CB] = ComputeC_Metric(PopA,PopB)
    0002 % [CA,CB] = ComputeC_Metric(PopA,PopB)
    0003 % ComputeC_Metric: Computes the C metric between two Pareto set
    0004 % approximations
    0005 % INPUTS
    0006 % PopA: First population, Each row corresponds to a vector
    0007 % PopB: Second population, Each row corresponds to a vector
    0008 % OUTPUTS
    0009 % CA: C(A,B) Proportion of vectors in PopB which are dominated by at leat
    0010 % one vector in PopA
    0011 % CB: C(B,A)
    0012 %
    0013 % Last version 2/26/2009. Roberto Santana (roberto.santana@ehu.es)
    0014
    0015  psizeA = size(PopA,1);
    0016  psizeB = size(PopB,1);
    0017
    0018  Index = FindParetoSet([PopA;PopB],[PopA;PopB]);
    0019  CA = (psizeB-sum(Index>psizeA))/psizeB;
    0020
    0021   Index = FindParetoSet([PopB;PopA],[PopB;PopA]);
    0022  CB = (psizeA-sum(Index>psizeB))/psizeA;
    0023