예제 #1
0
파일: run2.py 프로젝트: mosconi/inf2980
        assert False, "opcao desconhecida"

if len(sys.argv)==1:
    sys.exit("precisa passar a instancia")

for argv in sys.argv[1:]:
    _ls_runs=0
    _ils_runs=0

    print " ----- "
    print "instancia: %s" % argv    
    _instance = Instance(argv,"bz2")

    _instance.load()

    size = _instance.size()
    
    hcost = _instance.hipotetical_cost()

    for i in xrange(size -1): permutations.append(Permutation(size,[i, i+1]))
    shakes = []
    k= int(floor(size/4))
    if _debug>0: print "size: %d; k: %d; 4*k: %d" % (size, k, 4*k)
    for s in range(k):
        p ={}
        p1={}
        p2={}
        p3={}
        p4={}
        p1_2={}
        p1_3={}
예제 #2
0
파일: run.py 프로젝트: mosconi/inf2980
from instance import Instance
from permutation import Permutation
import sys

if len(sys.argv)!=2:
    sys.exit("precisa passar a instancia")
instance = Instance(sys.argv[1],"bz2")

instance.load()

size = instance.size()

permutations = {}
for i in range(size-1):
    n= "( %04u %04u )" % (i,i+1)
    permutations[n]=Permutation(size, [i, i+1])
    n= "( %04u %04u )" % (i,i+2)
    permutations[n]=Permutation(size, [i, i+1])
    n= "( %04u %04u )" % (i,i+3)
    permutations[n]=Permutation(size, [i, i+1])

#caso especial de swap consecutivo (wrap)
#n= "( %04u %04u )" % (size-1,0)
#permutations[n]=permutation(size, [size-1, 0])

id=Permutation(size)
shakes1={}
for i in range(size/4):
    s = int(size/4)
    n= "( %04u %04u %04u %04u )" % (i, i+2*s, i+s, i+3*s)
    shakes1[n]=Permutation(size,   [i, i+2*s, i+s, i+3*s])