Example #1
0
def main(argv):
  asUnDir = False
  oneGraph = False
  
  if(len(argv) < 2):
    sys.exit("usage: python lp.py [-d] <file1> ... <fileN>")

  if(len(argv) == 2):
    if argv[1] == "-d":
      sys.exit("no input.")
    oneGraph = True

  if(len(argv) == 3 and argv[1] == "-d"):
    asUnDir = True
    oneGraph = True

  if(len(argv) > 3 and argv[1] == "-d"):
    asUnDir = True
  if(oneGraph):
    if(asUnDir):
      Graph = snap.LoadEdgeList(snap.PNGraph, argv[2], 0, 1)
      snap.MakeUnDir(Graph)
    else:
      Graph = snap.LoadEdgeList(snap.PUNGraph, argv[1], 0, 1)
    printSingleGraph(Graph)
  else:
    Graphs = []
    if(asUnDir):
      for file in argv[2:]:
        g = snap.LoadEdgeList(snap.PNGraph, file, 0, 1)
        snap.MakeUnDir(g)
        Graphs.append(g)
    else:
      for file in argv[1:]:
        Graphs.append(snap.LoadEdgeList(snap.PUNGraph, file, 0, 1))
    printMoreGraphs(Graphs)


  dense = cplex.Cplex("dense.lp")
  os.remove("dense.lp")
  alg = dense.parameters.lpmethod.values
  dense.parameters.lpmethod.set(alg.barrier)
# include the below line to not do the crossover and get a close
# but not exact solution that can be extracted with filterLpSolution
  dense.parameters.barrier.crossover.set(-1)
  startTime = time.clock()
  #dense.parameters.lpmethod.set(5) # sifting algorithm
  dense.solve()
  printResults.save(dense)  
  print("time taken: " + str(time.clock()-startTime))
  print "The solution is", dense.solution.get_status_string()
  print "Density:", dense.solution.get_objective_value()
Example #2
0
def main(argv):
    asUnDir = False
    oneGraph = False

    if (len(argv) < 2):
        sys.exit("usage: python lp.py [-d] <file1> ... <fileN>")

    if (len(argv) == 2):
        if argv[1] == "-d":
            sys.exit("no input.")
        oneGraph = True

    if (len(argv) == 3 and argv[1] == "-d"):
        asUnDir = True
        oneGraph = True

    if (len(argv) > 3 and argv[1] == "-d"):
        asUnDir = True
    if (oneGraph):
        if (asUnDir):
            Graph = snap.LoadEdgeList(snap.PNGraph, argv[2], 0, 1)
            snap.MakeUnDir(Graph)
        else:
            Graph = snap.LoadEdgeList(snap.PUNGraph, argv[1], 0, 1)
        printSingleGraph(Graph)
    else:
        Graphs = []
        if (asUnDir):
            for file in argv[2:]:
                g = snap.LoadEdgeList(snap.PNGraph, file, 0, 1)
                snap.MakeUnDir(g)
                Graphs.append(g)
        else:
            for file in argv[1:]:
                Graphs.append(snap.LoadEdgeList(snap.PUNGraph, file, 0, 1))
        printMoreGraphs(Graphs)

    dense = cplex.Cplex("dense.lp")
    os.remove("dense.lp")
    alg = dense.parameters.lpmethod.values
    dense.parameters.lpmethod.set(alg.barrier)
    # include the below line to not do the crossover and get a close
    # but not exact solution that can be extracted with filterLpSolution
    dense.parameters.barrier.crossover.set(-1)
    startTime = time.clock()
    #dense.parameters.lpmethod.set(5) # sifting algorithm
    dense.solve()
    printResults.save(dense)
    print("time taken: " + str(time.clock() - startTime))
    print "The solution is", dense.solution.get_status_string()
    print "Density:", dense.solution.get_objective_value()
Example #3
0
dense0 = cplex.Cplex("dense.lp")
#dense0.set_results_stream(None)
alg = dense0.parameters.lpmethod.values
dense0.parameters.lpmethod.set(alg.barrier)
dense0.parameters.barrier.crossover.set(-1)
start_time0 = dense0.get_time()
dense0.solve()
end_time0 = dense0.get_time()

iter0_time = end_time0 - start_time0

prev_t    = dense0.solution.get_values(0)
prev_xijm = dense0.solution.get_values(range(1,len(xijm)+1))
prev_val  = dense0.solution.get_objective_value()
printResults.save(dense0)
print "time taken: " + str(iter0_time)
sys.exit()
print "Iteration 0 ("+str(iter0_time)+" sec.): " + str(prev_val)

# initial value of all lamdas are -1.
lamda = [-1]*len(Graphs)

times = []
times.append(iter0_time)
usedNodes = preprocessGreedy.simplePreprocessing(Graphs)
(nodes, LB) = DCSGreedy.getDCS_Greedy(Graphs,usedNodes)
scalar = 1.0
dense = cplex.Cplex("dense.lp")
j = 0
while(j<5):