Example #1
0
def scriptList(listType,typeName,objectifs,chemin,d) :
    '''
    param listType  la liste de tous les chemin pour les datas d'un certain type
    param typeName  le nom de ce certain type 
    param objectifs les configurations d'objectifs
    param dossier   le chemin vers le dossier dans lequel seront rangé les resultats DOIT FINIR PAR UN '/'

    lance le script mais pour un seul type
    '''
    archiveL = [False]
    firstL = [True,False]
    for pathname in listType :
        fl = Flowshop.lecture(pathname)
        fl.type = typeName
        for config in objectifs :
            for first in firstL :
                for archive in archiveL :
                    for i in range(30) :
                        r.seed(i)
                        certif       = fl.certificatAlea()
                        #Simple
                        voisinSimple = simple.VoisinageSimple(certif)
                        cheminSimple = fl.genereFileName(i,config[0],config[1],config[2],config[3],first,archive,voisinSimple.giveName())
                        (resSimple,nbEval,time)    = fl.PLS([voisinSimple],archive=archive,best=(not first),first=first,trace=False,cmax=config[0],tsum=config[1],tmax=config[2],usum=config[3])
                        creeFichier(chemin+'/'+typeName+d[0]+'/'+cheminSimple,resSimple,nbEval,time)
                        # Shift
                        voisinGauche = gauche.VoisinageGauche(certif)
                        cheminGauche = fl.genereFileName(i,config[0],config[1],config[2],config[3],first,archive,voisinGauche.giveName())
                        (resGauche,nbEval,time)    = fl.PLS([voisinGauche],archive=archive,best=(not first),first=first,trace=False,cmax=config[0],tsum=config[1],tmax=config[2],usum=config[3])
                        creeFichier(chemin+'/'+typeName+d[1]+'/'+cheminGauche,resGauche,nbEval,time)
                        # Swap
                        voisinSwap = swap.VoisinageSwap(certif)
                        cheminSwap = fl.genereFileName(i,config[0],config[1],config[2],config[3],first,archive,voisinSwap.giveName())
                        (resSwap,nbEval,time)      = fl.PLS([voisinSwap],archive=archive,best=(not first),first=first,trace=False,cmax=config[0],tsum=config[1],tmax=config[2],usum=config[3])
                        creeFichier(chemin+'/'+typeName+d[2]+'/'+cheminSwap,resSwap,nbEval,time)
Example #2
0
File: Main.py Project: Grimnack/PJI
def testSimpleDataBest(pathname) :
    fl = Flowshop.lecture(pathname)
    voisinageSimple = []
    for i in range(10) :
        voisinageSimple.append(simple.VoisinageSimple(fl.certificatAlea()))
    fl.PLS(voisinageSimple, trace=True,first=False)
    for voisin in voisinageSimple :
        print(voisin.certificat.permutation)
Example #3
0
File: Main.py Project: Grimnack/PJI
def testLecture() :
    fl = Flowshop.lecture("data/data/bass/bass_5_9_1.dat")
    print(fl)
Example #4
0
File: Main.py Project: Grimnack/PJI
        voisinageSimple.append(simple.VoisinageSimple(fl.certificatAlea()))
    fl.PLS(voisinageSimple, True)
    for voisin in voisinageSimple :
        print(voisin.certificat.permutation)

def testSimpleDataBest(pathname) :
    fl = Flowshop.lecture(pathname)
    voisinageSimple = []
    for i in range(10) :
        voisinageSimple.append(simple.VoisinageSimple(fl.certificatAlea()))
    fl.PLS(voisinageSimple, trace=True,first=False)
    for voisin in voisinageSimple :
        print(voisin.certificat.permutation)

def tesGenereFileName(fl) :
    for i in range(10) :
        print(fl.genereFileName(i,True,True,True,True,True,'shift'))
        print(fl.genereFileName(i,False,False,True,True,True,'shift'))
        print(fl.genereFileName(i,False,False,False,False,True,'shift'))        

fl = Flowshop.lecture("data/data/bass/bass_10_10_5.dat")
certif = FlowshopCertificat.FlowshopCertificat([7, 8, 1, 5, 3, 4, 2, 0, 9, 6])
voisin = simple.VoisinageSimple(certif)
print(fl.PLS([voisin],archive=False,first=True,best=False,trace=True,cmax=True,tsum=True,tmax=False,usum=False))

# testSimpleDataBest("data/data/bass/bass_10_10_1.dat")
# testSimpleData("data/data/bass/bass_10_10_1.dat")
# testLecture()
# testOptimisationDirecteSimple(trace = True)
# testOptimisationDirecteGauche(trace = True)
# testDomine()