예제 #1
0
def testEquiSignificanceMajorityOutrankingDigraph():
    print('*---- test equi-significance majority outranking digraphs ---*')
    t = FullRandomPerformanceTableau(numberOfActions=7, numberOfCriteria=13)
    g = EquiSignificanceMajorityOutrankingDigraph(t)
    print(g.computeWeightPreorder())
    g.showRelationTable()
    gr = RobustOutrankingDigraph(t)
    gr.showRelationTable()
예제 #2
0
def testPolarisedOutrankingDigraph():
    print('==>> Testing PolarisedOutrankingDigraph instantiation')
    t = FullRandomPerformanceTableau()
    g = BipolarOutrankingDigraph(t)
    print(g.valuationdomain)
    ch = PolarisedOutrankingDigraph(g,
                                    level=50,
                                    AlphaCut=False,
                                    KeepValues=True)
    ch.showAll()
    ch.showStatistics()
예제 #3
0
def testFullRandomPerformanceTableau():
    print('==>> Testing Full Random Performance Tableau instantiation')
    t = FullRandomPerformanceTableau(numberOfActions=10,
                                     numberOfCriteria=7,
                                     seed=100)
    t.showAll()
    print(t)
    print(
        t.computeWeightedAveragePerformances(isNormalized=True,
                                             lowValue=0.0,
                                             highValue=20.0))
    t = FullRandomPerformanceTableau(weightScale=(1, 10),
                                     commonMode=('triangular', 30, 0.5),
                                     seed=None)
    t.showStatistics()
    t = FullRandomPerformanceTableau(weightScale=(1, 10),
                                     commonScale=(0.0, 50),
                                     commonMode=('beta', None, None),
                                     seed=None)
    t.showStatistics()
예제 #4
0
def testFullRandomOutrankingDigraph():
    print('*==>> testing full random outranking Digraphs ----*')
    t = FullRandomPerformanceTableau()
    #t = RandomCBPerformanceTableau()
    t.showAll()
    g = BipolarOutrankingDigraph(t)
    g.showCriteria()
    g.showPerformanceTableau()
    g.showEvaluationStatistics()
    ## g.showStatistics()
    g.showVetos(realVetosOnly=True)
    print('criteria significance concentration: ',
          g.computeWeightsConcentrationIndex())
예제 #5
0
def testPerformanceTableauStatistics():
    print('*==>> performanceTableau statistics ---------*')
    t = FullRandomPerformanceTableau(commonScale=(0.0, 100.0),
                                     numberOfCriteria=10,
                                     numberOfActions=10,
                                     commonMode=('triangular', 30.0, 0.7))
    t.showStatistics()
    print(
        t.computeNormalizedDiffEvaluations(lowValue=0.0,
                                           highValue=100.0,
                                           withOutput=True,
                                           Debug=True))
    t = RandomCBPerformanceTableau()
    t.showStatistics()
    t.showEvaluationStatistics()
예제 #6
0
def testRobustoutranking():
    print('*==>> robust outranking ------------------*')
    t0 = FullRandomPerformanceTableau(numberOfActions=7, numberOfCriteria=5)
    t0.saveXMCDA2('testXMLRubis')
    t = XMCDA2PerformanceTableau('testXMLRubis')
    g = BipolarOutrankingDigraph(t)
    g.showRelationTable()
    go = OrdinalOutrankingDigraph(t)
    go.showRelationTable()
    gu = UnanimousOutrankingDigraph(t)
    gu.showRelationTable()
    gc = BipolarOutrankingDigraph(t)
    gc.showRelationTable()
    gor = OldRobustOutrankingDigraph(t)
    gor.showRelationTable()
예제 #7
0
def testForcedBestSingleChoice():
    print('*==>> testing forced best single choice  ----*')
    t = FullRandomPerformanceTableau(numberOfActions=15)
    g = BipolarOutrankingDigraph(t)
    g.showRubyChoice()
    print(g.forcedBestSingleChoice())