Home > Mateda2.0 > ScriptsMateda > OptimizationScripts > EBNA_MultiObj_SAT.m

# EBNA_MultiObj_SAT

## PURPOSE

% EXAMPLE 2: MULTIO-OBJECTIVE MAXSAT

## SYNOPSIS

This is a script file.

## DESCRIPTION

    % EXAMPLE 2: MULTIO-OBJECTIVE MAXSAT
    Bayesian network based EDA  for multi-objective 3-SAT
    For details on the EDA application to the multi-objective 3-SAT problem, see (Santana_et_al:2009)

## CROSS-REFERENCE INFORMATION

This function calls:

- RunEDA [AllStat,Cache]=RunEDA(PopSize,n,F,Card,cache,edaparams)
- LoadRandom3SAT [Formulas] = loadSAT(n, mum_i)

This function is called by:

## SOURCE CODE

    0001 %% EXAMPLE 2: MULTIO-OBJECTIVE MAXSAT
    0002 %Bayesian network based EDA  for multi-objective 3-SAT
    0003 %For details on the EDA application to the multi-objective 3-SAT problem, see (Santana_et_al:2009)
    0004
    0005 PopSize = 1000; n = 20;
    0006 cache  = [0,0,1,1,1];
    0007 Card = 2*ones(1, n);
    0008 maxgen = 15;
    0009
    0010 global Formulas;
    0011 Formulas = LoadRandom3SAT(n, 1, Formulas);
    0012 Formulas = LoadRandom3SAT(n, 2, Formulas);
    0013 Formulas = LoadRandom3SAT(n, 3, Formulas);
    0014 F = 'EvaluateSAT'; % 3-SAT function
    0015 selparams(1:2) = {0.5,'ParetoRank_ordering'};
    0016 BN_params(1:6) = {'k2',3,0.05,'pearson','bayesian','no'};
    0017 edaparams{1} = {'stop_cond_method','max_gen',{maxgen}};
    0018 edaparams{2} = {'learning_method','LearnBN',BN_params};
    0019 edaparams{3} = {'selection_method','truncation_selection',selparams};
    0020 edaparams{4} = {'replacement_method','best_elitism',{'ParetoRank_ordering'}};
    0021 % Launch EDA
    0022 [AllStat,Cache]=RunEDA(PopSize,n,F,Card,cache,edaparams)