Products & servicesTechnologyCompanyInvestor relationsResource libraryNews
Contact us
Resource library
    Resource library home
    Developer resources
    Applications
    Lessons
    Benchmarking
      Dirac-3S Benchmarking
      Max Clique
      Planted
        Dirac-3S Planted Benchmarking
        Hexaly Planted Benchmarking
        PGD Planted Benchmarking
      QPLIB
    Research and publications
    Support

Couldn’t find what you are looking for? Reach out to technical support.

Contact support
Privacy PolicyCookie PolicyTerms of UseForward Looking StatementsAccessibility Statement
Terms and Conditions of SaleEnd User License Agreement

© 2018-2026 Quantum Computing Inc.

Download

Hexaly Planted Benchmarking

Import libraries

In [ ]:

  • import time
  • import numpy as np
  • import hexaly.optimizer
  • import os

Set up Hexaly solver

In [2]:

  • def hexaly_solver(Q,c,sum_constraint, time_limit= 1800):
  • n = len(np.squeeze(c))
  • def external_xTQx(x):
  • return x @ Q @ x
  • def external_2Qx(x):
  • return 2 * Q @ x
  • with hexaly.optimizer.HexalyOptimizer() as optimizer:
  • model = optimizer.model
  • x = [model.float(0.0,100.0) for _ in range(n)]
  • linear_term = model.sum(c[i]*x[i] for i in range(n))
  • xTQx_func = model.create_double_external_function(external_xTQx, external_2Qx)
  • objective = linear_term + xTQx_func(x)
  • model.constraint(model.sum(x) == sum_constraint)
  • model.minimize(objective)
  • model.close()
  • optimizer.param.time_limit = time_limit
  • print("Starting Hexaly solver...")
  • optimizer.solve()
  • solution = [x[i].value for i in range(n)]
  • objective_val = objective.value
  • print(f"Status: {optimizer.solution.status}")
  • return solution, objective_val

load data file

In [3]:

  • def loadQ(path, n):
  • tri = np.load(path, mmap_mode="r")
  • Q = np.empty((n,n), dtype=tri.dtype)
  • iu = np.triu_indices(n)
  • Q[iu] = tri
  • Q.T[iu] = tri
  • return Q

Solve with hexaly

In [4]:

  • # Instance details
  • optimal_energy = 12000
  • sum_constraint = 100
  • num_var = 2000
  • k = 44
  • ub =10
  • seed =100
  • name = f"STQP_n_{num_var}_k_{k}_R_{sum_constraint}_seed_{seed}_ub_{ub}"
  • instance_path = os.path.join(f"Instances/{name}.npy")
  • c = np.zeros(num_var)
  • try:
  • Q= loadQ(instance_path,num_var)
  • print("loaded file sucessfully.")
  • except FileNotFoundError:
  • print(f"File {instance_path} does not exist.")

Out [ ]:

loaded file sucessfully.

In [5]:

  • # solver parameters
  • time_limit = 600

In [6]:

  • # solve with Hexaly
  • hexaly_start = time.time()
  • hex_sol_list, hex_obj = hexaly_solver(Q,c,sum_constraint,time_limit)
  • hexaly_end = time.time()
  • hex_sol = np.array(hex_sol_list)
  • hex_indices = np.where(hex_sol>1e-6)[0]
  • print(f"Number of non-zero nodes found by Hexaly:{len(hex_indices)}")
  • print(f"Eenergy value obtained by Hexaly:{hex_obj}")
  • print(f"Time taken by Hexaly:{hexaly_end- hexaly_start}")

Out [ ]:

Preprocess model 100%Starting Hexaly solver...
Push initial solution 100%
Model:  expressions = 4009, decisions = 2000, constraints = 1, objectives = 1
Param:  time limit = 600 sec, no iteration limit

[objective direction ]:     minimize

[  0 sec,       0 itr]: No feasible solution found (infeas = 1)
[  1 sec,       0 itr]: No feasible solution found (infeas = 1)
[  2 sec,     218 itr]:      22859.4
[ optimality gap     ]:      100.00%
[  3 sec,    1294 itr]:      15956.2
[  4 sec,    1519 itr]:      15811.3
[  5 sec,    1796 itr]:      15811.1
[  6 sec,    2012 itr]:        15811
[  7 sec,    2012 itr]:        15811
[  8 sec,    2464 itr]:      15810.6
[  9 sec,    2623 itr]:      15810.3
[ 10 sec,    2623 itr]:      15810.3
[ 11 sec,    2893 itr]:      15810.2
[ 12 sec,    3103 itr]:        15810
[ optimality gap     ]:      100.00%
[ 13 sec,    3431 itr]:      15809.6
[ 14 sec,    3431 itr]:      15809.6
[ 15 sec,    3588 itr]:      15809.3
[ 16 sec,    4014 itr]:      15809.1
[ 17 sec,    4166 itr]:      15808.9
[ 18 sec,    4267 itr]:      15808.6
[ 19 sec,    4450 itr]:      15808.4
[ 20 sec,    4633 itr]:      15808.1
[ 21 sec,    4812 itr]:        15808
[ 22 sec,    4812 itr]:        15808
[ optimality gap     ]:      100.00%
[ 23 sec,    5185 itr]:      12986.9
[ 24 sec,    5185 itr]:      12986.9
[ 25 sec,    5304 itr]:      12986.9
[ 26 sec,    5603 itr]:      12986.9
[ 27 sec,    5724 itr]:      12986.9
[ 28 sec,    5724 itr]:      12986.9
[ 29 sec,    5875 itr]:      12986.9
[ 30 sec,    5963 itr]:      12986.9
[ 31 sec,    6083 itr]:      12986.9
[ 32 sec,    6192 itr]:      12986.9
[ optimality gap     ]:      100.00%
[ 33 sec,    6448 itr]:      12986.9
[ 34 sec,    6448 itr]:      12986.9
[ 35 sec,    6572 itr]:      12986.9
[ 36 sec,    6657 itr]:      12986.9
[ 37 sec,    6743 itr]:      12986.9
[ 38 sec,    6872 itr]:      12986.9
[ 39 sec,    6986 itr]:      12986.9
[ 40 sec,    7238 itr]:      12986.9
[ 41 sec,    7238 itr]:      12986.9
[ 42 sec,    7355 itr]:      12986.9
[ optimality gap     ]:      100.00%
[ 43 sec,    7456 itr]:      12986.9
[ 44 sec,    7551 itr]:      12986.9
[ 45 sec,    7648 itr]:      12986.9
[ 46 sec,    7781 itr]:      12986.9
[ 47 sec,    7920 itr]:      12986.9
[ 48 sec,    8049 itr]:      12986.9
[ 49 sec,    8158 itr]:      12986.9
[ 50 sec,    8324 itr]:      12986.9
[ 51 sec,    8416 itr]:      12986.9
[ 52 sec,    8504 itr]:      12986.9
[ optimality gap     ]:      100.00%
[ 53 sec,    8504 itr]:      12986.9
[ 54 sec,    8623 itr]:      12986.9
[ 55 sec,    8687 itr]:      12986.9
[ 56 sec,    8863 itr]:      12986.9
[ 57 sec,    8863 itr]:      12986.9
[ 58 sec,    8983 itr]:      12986.9
[ 59 sec,    9092 itr]:      12986.9
[ 60 sec,    9217 itr]:      12986.9
[ 61 sec,    9300 itr]:      12986.9
[ 62 sec,    9395 itr]:      12986.9
[ optimality gap     ]:      100.00%
[ 63 sec,    9520 itr]:      12986.9
[ 64 sec,    9746 itr]:      12986.9
[ 65 sec,    9746 itr]:      12986.9
[ 66 sec,    9884 itr]:      12986.9
[ 67 sec,   10083 itr]:      12986.9
[ 68 sec,   10083 itr]:      12986.9
[ 69 sec,   10169 itr]:      12986.9
[ 70 sec,   10405 itr]:      12986.9
[ 71 sec,   10504 itr]:      12986.9
[ 72 sec,   10504 itr]:      12986.9
[ optimality gap     ]:      100.00%
[ 73 sec,   10616 itr]:      12986.9
[ 74 sec,   10721 itr]:      12986.9
[ 75 sec,   10974 itr]:      12986.9
[ 76 sec,   10974 itr]:      12986.9
[ 77 sec,   11203 itr]:      12986.9
[ 78 sec,   11321 itr]:      12986.9
[ 79 sec,   11321 itr]:      12986.9
[ 80 sec,   11561 itr]:      12986.9
[ 81 sec,   11663 itr]:      12986.9
[ 82 sec,   11663 itr]:      12986.9
[ optimality gap     ]:      100.00%
[ 83 sec,   11829 itr]:      12986.9
[ 84 sec,   11901 itr]:      12986.9
[ 85 sec,   11999 itr]:      12986.9
[ 86 sec,   11999 itr]:      12986.9
[ 87 sec,   12175 itr]:      12986.9
[ 88 sec,   12315 itr]:      12986.9
[ 89 sec,   12419 itr]:      12986.9
[ 90 sec,   12419 itr]:      12986.9
[ 91 sec,   12492 itr]:      12986.9
[ 92 sec,   12626 itr]:      12986.9
[ optimality gap     ]:      100.00%
[ 93 sec,   12626 itr]:      12986.9
[ 94 sec,   12720 itr]:      12986.9
[ 95 sec,   12775 itr]:      12986.9
[ 96 sec,   12987 itr]:      12986.9
[ 97 sec,   12987 itr]:      12986.9
[ 98 sec,   13177 itr]:      12986.9
[ 99 sec,   13177 itr]:      12986.9
[100 sec,   13341 itr]:      12986.9
[101 sec,   13435 itr]:      12986.9
[102 sec,   13537 itr]:      12986.9
[ optimality gap     ]:      100.00%
[103 sec,   13537 itr]:      12986.9
[104 sec,   13735 itr]:      12986.9
[105 sec,   13861 itr]:      12986.9
[106 sec,   13965 itr]:      12986.9
[107 sec,   13965 itr]:      12986.9
[108 sec,   14185 itr]:      12938.7
[109 sec,   14271 itr]:      12938.7
[110 sec,   14383 itr]:      12938.7
[111 sec,   14504 itr]:      12938.7
[112 sec,   14624 itr]:      12938.7
[ optimality gap     ]:      100.00%
[113 sec,   14699 itr]:      12938.7
[114 sec,   14805 itr]:      12938.7
[115 sec,   14885 itr]:      12938.7
[116 sec,   14885 itr]:      12938.7
[117 sec,   15127 itr]:      12938.7
[118 sec,   15191 itr]:      12938.7
[119 sec,   15191 itr]:      12938.7
[120 sec,   15413 itr]:      12938.7
[121 sec,   15537 itr]:      12938.7
[122 sec,   15537 itr]:      12938.7
[ optimality gap     ]:      100.00%
[123 sec,   15646 itr]:      12938.7
[124 sec,   15932 itr]:      12938.7
[125 sec,   16026 itr]:      12938.7
[126 sec,   16114 itr]:        12855
[127 sec,   16208 itr]:        12855
[128 sec,   16304 itr]:        12855
[129 sec,   16416 itr]:        12855
[130 sec,   16556 itr]:        12855
[131 sec,   16556 itr]:        12855
[132 sec,   16765 itr]:        12855
[ optimality gap     ]:      100.00%
[133 sec,   16765 itr]:        12855
[134 sec,   17033 itr]:        12000
[135 sec,   17146 itr]:        12000
[136 sec,   17278 itr]:        12000
[137 sec,   17436 itr]:        12000
[138 sec,   17567 itr]:        12000
[139 sec,   17690 itr]:        12000
[140 sec,   17690 itr]:        12000
[141 sec,   17802 itr]:        12000
[142 sec,   17891 itr]:        12000
[ optimality gap     ]:      100.00%
[143 sec,   18078 itr]:        12000
[144 sec,   18203 itr]:        12000
[145 sec,   18203 itr]:        12000
[146 sec,   18465 itr]:        12000
[147 sec,   18465 itr]:        12000
[148 sec,   18570 itr]:        12000
[149 sec,   18682 itr]:        12000
[150 sec,   18921 itr]:        12000
[151 sec,   18921 itr]:        12000
[152 sec,   19137 itr]:        12000
[ optimality gap     ]:      100.00%
[153 sec,   19137 itr]:        12000
[154 sec,   19385 itr]:        12000
[155 sec,   19525 itr]:        12000
[156 sec,   19525 itr]:        12000
[157 sec,   19628 itr]:        12000
[158 sec,   19717 itr]:        12000
[159 sec,   19970 itr]:        12000
[160 sec,   20066 itr]:        12000
[161 sec,   20218 itr]:        12000
[162 sec,   20218 itr]:        12000
[ optimality gap     ]:      100.00%
[163 sec,   20346 itr]:        12000
[164 sec,   20488 itr]:        12000
[165 sec,   20557 itr]:        12000
[166 sec,   20789 itr]:        12000
[167 sec,   20789 itr]:        12000
[168 sec,   20883 itr]:        12000
[169 sec,   20981 itr]:        12000
[170 sec,   21233 itr]:        12000
[171 sec,   21405 itr]:        12000
[172 sec,   21560 itr]:        12000
[ optimality gap     ]:      100.00%
[173 sec,   21640 itr]:        12000
[174 sec,   21640 itr]:        12000
[175 sec,   21988 itr]:        12000
[176 sec,   22091 itr]:        12000
[177 sec,   22091 itr]:        12000
[178 sec,   22226 itr]:        12000
[179 sec,   22430 itr]:        12000
[180 sec,   22556 itr]:        12000
[181 sec,   22556 itr]:        12000
[182 sec,   22647 itr]:        12000
[ optimality gap     ]:      100.00%
[183 sec,   22895 itr]:        12000
[184 sec,   22895 itr]:        12000
[185 sec,   23109 itr]:        12000
[186 sec,   23109 itr]:        12000
[187 sec,   23388 itr]:        12000
[188 sec,   23550 itr]:        12000
[189 sec,   23694 itr]:        12000
[190 sec,   23870 itr]:        12000
[191 sec,   23990 itr]:        12000
[192 sec,   23990 itr]:        12000
[ optimality gap     ]:      100.00%
[193 sec,   24115 itr]:        12000
[194 sec,   24263 itr]:        12000
[195 sec,   24393 itr]:        12000
[196 sec,   24577 itr]:        12000
[197 sec,   24684 itr]:        12000
[198 sec,   24684 itr]:        12000
[199 sec,   24894 itr]:        12000
[200 sec,   24894 itr]:        12000
[201 sec,   25140 itr]:        12000
[202 sec,   25265 itr]:        12000
[ optimality gap     ]:      100.00%
[203 sec,   25265 itr]:        12000
[204 sec,   25356 itr]:        12000
[205 sec,   25665 itr]:        12000
[206 sec,   25665 itr]:        12000
[207 sec,   25851 itr]:        12000
[208 sec,   26105 itr]:        12000
[209 sec,   26105 itr]:        12000
[210 sec,   26428 itr]:        12000
[211 sec,   26428 itr]:        12000
[212 sec,   26695 itr]:        12000
[ optimality gap     ]:      100.00%
[213 sec,   26695 itr]:        12000
[214 sec,   26855 itr]:        12000
[215 sec,   27019 itr]:        12000
[216 sec,   27208 itr]:        12000
[217 sec,   27339 itr]:        12000
[218 sec,   27600 itr]:        12000
[219 sec,   27716 itr]:        12000
[220 sec,   27716 itr]:        12000
[221 sec,   27943 itr]:        12000
[222 sec,   27943 itr]:        12000
[ optimality gap     ]:      100.00%
[223 sec,   28088 itr]:        12000
[224 sec,   28291 itr]:        12000
[225 sec,   28419 itr]:        12000
[226 sec,   28419 itr]:        12000
[227 sec,   28657 itr]:        12000
[228 sec,   28791 itr]:        12000
[229 sec,   28915 itr]:        12000
[230 sec,   28915 itr]:        12000
[231 sec,   29250 itr]:        12000
[232 sec,   29415 itr]:        12000
[ optimality gap     ]:      100.00%
[233 sec,   29546 itr]:        12000
[234 sec,   29649 itr]:        12000
[235 sec,   29649 itr]:        12000
[236 sec,   29898 itr]:        12000
[237 sec,   30023 itr]:        12000
[238 sec,   30023 itr]:        12000
[239 sec,   30098 itr]:        12000
[240 sec,   30263 itr]:        12000
[241 sec,   30492 itr]:        12000
[242 sec,   30642 itr]:        12000
[ optimality gap     ]:      100.00%
[243 sec,   30787 itr]:        12000
[244 sec,   30787 itr]:        12000
[245 sec,   30902 itr]:        12000
[246 sec,   31110 itr]:        12000
[247 sec,   31221 itr]:        12000
[248 sec,   31383 itr]:        12000
[249 sec,   31519 itr]:        12000
[250 sec,   31653 itr]:        12000
[251 sec,   31810 itr]:        12000
[252 sec,   31810 itr]:        12000
[ optimality gap     ]:      100.00%
[253 sec,   32131 itr]:        12000
[254 sec,   32268 itr]:        12000
[255 sec,   32420 itr]:        12000
[256 sec,   32420 itr]:        12000
[257 sec,   32703 itr]:        12000
[258 sec,   32703 itr]:        12000
[259 sec,   32822 itr]:        12000
[260 sec,   33087 itr]:        12000
[261 sec,   33227 itr]:        12000
[262 sec,   33357 itr]:        12000
[ optimality gap     ]:      100.00%
[263 sec,   33550 itr]:        12000
[264 sec,   33550 itr]:        12000
[265 sec,   33899 itr]:        12000
[266 sec,   33899 itr]:        12000
[267 sec,   34043 itr]:        12000
[268 sec,   34286 itr]:        12000
[269 sec,   34286 itr]:        12000
[270 sec,   34458 itr]:        12000
[271 sec,   34705 itr]:        12000
[272 sec,   34705 itr]:        12000
[ optimality gap     ]:      100.00%
[273 sec,   34969 itr]:        12000
[274 sec,   35127 itr]:        12000
[275 sec,   35273 itr]:        12000
[276 sec,   35273 itr]:        12000
[277 sec,   35561 itr]:        12000
[278 sec,   35561 itr]:        12000
[279 sec,   35824 itr]:        12000
[280 sec,   35979 itr]:        12000
[281 sec,   36114 itr]:        12000
[282 sec,   36287 itr]:        12000
[ optimality gap     ]:      100.00%
[283 sec,   36287 itr]:        12000
[284 sec,   36444 itr]:        12000
[285 sec,   36540 itr]:        12000
[286 sec,   36761 itr]:        12000
[287 sec,   36888 itr]:        12000
[288 sec,   37034 itr]:        12000
[289 sec,   37195 itr]:        12000
[290 sec,   37195 itr]:        12000
[291 sec,   37339 itr]:        12000
[292 sec,   37454 itr]:        12000
[ optimality gap     ]:      100.00%
[293 sec,   37727 itr]:        12000
[294 sec,   37871 itr]:        12000
[295 sec,   38003 itr]:        12000
[296 sec,   38003 itr]:        12000
[297 sec,   38232 itr]:        12000
[298 sec,   38342 itr]:        12000
[299 sec,   38342 itr]:        12000
[300 sec,   38455 itr]:        12000
[301 sec,   38738 itr]:        12000
[302 sec,   38886 itr]:        12000
[ optimality gap     ]:      100.00%
[303 sec,   39016 itr]:        12000
[304 sec,   39165 itr]:        12000
[305 sec,   39165 itr]:        12000
[306 sec,   39399 itr]:        12000
[307 sec,   39514 itr]:        12000
[308 sec,   39639 itr]:        12000
[309 sec,   39639 itr]:        12000
[310 sec,   39714 itr]:        12000
[311 sec,   39997 itr]:        12000
[312 sec,   39997 itr]:        12000
[ optimality gap     ]:      100.00%
[313 sec,   40261 itr]:        12000
[314 sec,   40421 itr]:        12000
[315 sec,   40567 itr]:        12000
[316 sec,   40742 itr]:        12000
[317 sec,   40742 itr]:        12000
[318 sec,   41012 itr]:        12000
[319 sec,   41248 itr]:        12000
[320 sec,   41466 itr]:        12000
[321 sec,   41650 itr]:        12000
[322 sec,   41852 itr]:        12000
[ optimality gap     ]:      100.00%
[323 sec,   41852 itr]:        12000
[324 sec,   42027 itr]:        12000
[325 sec,   42323 itr]:        12000
[326 sec,   42441 itr]:        12000
[327 sec,   42614 itr]:        12000
[328 sec,   42614 itr]:        12000
[329 sec,   42782 itr]:        12000
[330 sec,   43009 itr]:        12000
[331 sec,   43152 itr]:        12000
[332 sec,   43274 itr]:        12000
[ optimality gap     ]:      100.00%
[333 sec,   43421 itr]:        12000
[334 sec,   43421 itr]:        12000
[335 sec,   43695 itr]:        12000
[336 sec,   43809 itr]:        12000
[337 sec,   43943 itr]:        12000
[338 sec,   44083 itr]:        12000
[339 sec,   44083 itr]:        12000
[340 sec,   44358 itr]:        12000
[341 sec,   44520 itr]:        12000
[342 sec,   44622 itr]:        12000
[ optimality gap     ]:      100.00%
[343 sec,   44622 itr]:        12000
[344 sec,   44888 itr]:        12000
[345 sec,   45047 itr]:        12000
[346 sec,   45215 itr]:        12000
[347 sec,   45215 itr]:        12000
[348 sec,   45492 itr]:        12000
[349 sec,   45492 itr]:        12000
[350 sec,   45746 itr]:        12000
[351 sec,   45899 itr]:        12000
[352 sec,   45987 itr]:        12000
[ optimality gap     ]:      100.00%
[353 sec,   46065 itr]:        12000
[354 sec,   46206 itr]:        12000
[355 sec,   46206 itr]:        12000
[356 sec,   46339 itr]:        12000
[357 sec,   46667 itr]:        12000
[358 sec,   46814 itr]:        12000
[359 sec,   46814 itr]:        12000
[360 sec,   47042 itr]:        12000
[361 sec,   47164 itr]:        12000
[362 sec,   47290 itr]:        12000
[ optimality gap     ]:      100.00%
[363 sec,   47415 itr]:        12000
[364 sec,   47548 itr]:        12000
[365 sec,   47724 itr]:        12000
[366 sec,   47896 itr]:        12000
[367 sec,   47896 itr]:        12000
[368 sec,   48152 itr]:        12000
[369 sec,   48279 itr]:        12000
[370 sec,   48401 itr]:        12000
[371 sec,   48401 itr]:        12000
[372 sec,   48688 itr]:        12000
[ optimality gap     ]:      100.00%
[373 sec,   48846 itr]:        12000
[374 sec,   48998 itr]:        12000
[375 sec,   49156 itr]:        12000
[376 sec,   49156 itr]:        12000
[377 sec,   49312 itr]:        12000
[378 sec,   49474 itr]:        12000
[379 sec,   49474 itr]:        12000
[380 sec,   49602 itr]:        12000
[381 sec,   49746 itr]:        12000
[382 sec,   49874 itr]:        12000
[ optimality gap     ]:      100.00%
[383 sec,   50040 itr]:        12000
[384 sec,   50040 itr]:        12000
[385 sec,   50212 itr]:        12000
[386 sec,   50519 itr]:        12000
[387 sec,   50604 itr]:        12000
[388 sec,   50749 itr]:        12000
[389 sec,   50749 itr]:        12000
[390 sec,   50958 itr]:        12000
[391 sec,   51139 itr]:        12000
[392 sec,   51285 itr]:        12000
[ optimality gap     ]:      100.00%
[393 sec,   51468 itr]:        12000
[394 sec,   51468 itr]:        12000
[395 sec,   51725 itr]:        12000
[396 sec,   51943 itr]:        12000
[397 sec,   51943 itr]:        12000
[398 sec,   52149 itr]:        12000
[399 sec,   52149 itr]:        12000
[400 sec,   52264 itr]:        12000
[401 sec,   52484 itr]:        12000
[402 sec,   52484 itr]:        12000
[ optimality gap     ]:      100.00%
[403 sec,   52768 itr]:        12000
[404 sec,   52865 itr]:        12000
[405 sec,   52865 itr]:        12000
[406 sec,   53065 itr]:        12000
[407 sec,   53195 itr]:        12000
[408 sec,   53195 itr]:        12000
[409 sec,   53340 itr]:        12000
[410 sec,   53577 itr]:        12000
[411 sec,   53577 itr]:        12000
[412 sec,   53682 itr]:        12000
[ optimality gap     ]:      100.00%
[413 sec,   53886 itr]:        12000
[414 sec,   53886 itr]:        12000
[415 sec,   54157 itr]:        12000
[416 sec,   54351 itr]:        12000
[417 sec,   54485 itr]:        12000
[418 sec,   54485 itr]:        12000
[419 sec,   54834 itr]:        12000
[420 sec,   54950 itr]:        12000
[421 sec,   54950 itr]:        12000
[422 sec,   55177 itr]:        12000
[ optimality gap     ]:      100.00%
[423 sec,   55356 itr]:        12000
[424 sec,   55356 itr]:        12000
[425 sec,   55490 itr]:        12000
[426 sec,   55645 itr]:        12000
[427 sec,   55718 itr]:        12000
[428 sec,   55744 itr]:        12000
[429 sec,   55827 itr]:        12000
[430 sec,   55827 itr]:        12000
[431 sec,   55941 itr]:        12000
[432 sec,   55941 itr]:        12000
[ optimality gap     ]:      100.00%
[433 sec,   56090 itr]:        12000
[434 sec,   56142 itr]:        12000
[435 sec,   56234 itr]:        12000
[436 sec,   56234 itr]:        12000
[437 sec,   56338 itr]:        12000
[438 sec,   56418 itr]:        12000
[439 sec,   56527 itr]:        12000
[440 sec,   56617 itr]:        12000
[441 sec,   56686 itr]:        12000
[442 sec,   56765 itr]:        12000
[ optimality gap     ]:      100.00%
[443 sec,   56825 itr]:        12000
[444 sec,   56876 itr]:        12000
[445 sec,   56961 itr]:        12000
[446 sec,   57023 itr]:        12000
[447 sec,   57091 itr]:        12000
[448 sec,   57217 itr]:        12000
[449 sec,   57315 itr]:        12000
[450 sec,   57375 itr]:        12000
[451 sec,   57422 itr]:        12000
[452 sec,   57474 itr]:        12000
[ optimality gap     ]:      100.00%
[453 sec,   57474 itr]:        12000
[454 sec,   57599 itr]:        12000
[455 sec,   57599 itr]:        12000
[456 sec,   57731 itr]:        12000
[457 sec,   57785 itr]:        12000
[458 sec,   57868 itr]:        12000
[459 sec,   57930 itr]:        12000
[460 sec,   57930 itr]:        12000
[461 sec,   58056 itr]:        12000
[462 sec,   58120 itr]:        12000
[ optimality gap     ]:      100.00%
[463 sec,   58188 itr]:        12000
[464 sec,   58263 itr]:        12000
[465 sec,   58351 itr]:        12000
[466 sec,   58393 itr]:        12000
[467 sec,   58393 itr]:        12000
[468 sec,   58575 itr]:        12000
[469 sec,   58645 itr]:        12000
[470 sec,   58726 itr]:        12000
[471 sec,   58726 itr]:        12000
[472 sec,   58861 itr]:        12000
[ optimality gap     ]:      100.00%
[473 sec,   58929 itr]:        12000
[474 sec,   59058 itr]:        12000
[475 sec,   59133 itr]:        12000
[476 sec,   59243 itr]:        12000
[477 sec,   59314 itr]:        12000
[478 sec,   59314 itr]:        12000
[479 sec,   59433 itr]:        12000
[480 sec,   59433 itr]:        12000
[481 sec,   59593 itr]:        12000
[482 sec,   59690 itr]:        12000
[ optimality gap     ]:      100.00%
[483 sec,   59690 itr]:        12000
[484 sec,   59796 itr]:        12000
[485 sec,   59796 itr]:        12000
[486 sec,   59932 itr]:        12000
[487 sec,   60037 itr]:        12000
[488 sec,   60126 itr]:        12000
[489 sec,   60190 itr]:        12000
[490 sec,   60190 itr]:        12000
[491 sec,   60386 itr]:        12000
[492 sec,   60386 itr]:        12000
[ optimality gap     ]:      100.00%
[493 sec,   60542 itr]:        12000
[494 sec,   60616 itr]:        12000
[495 sec,   60719 itr]:        12000
[496 sec,   60719 itr]:        12000
[497 sec,   60896 itr]:        12000
[498 sec,   60973 itr]:        12000
[499 sec,   61030 itr]:        12000
[500 sec,   61030 itr]:        12000
[501 sec,   61126 itr]:        12000
[502 sec,   61270 itr]:        12000
[ optimality gap     ]:      100.00%
[503 sec,   61270 itr]:        12000
[504 sec,   61403 itr]:        12000
[505 sec,   61475 itr]:        12000
[506 sec,   61475 itr]:        12000
[507 sec,   61563 itr]:        12000
[508 sec,   61685 itr]:        12000
[509 sec,   61685 itr]:        12000
[510 sec,   61820 itr]:        12000
[511 sec,   61890 itr]:        12000
[512 sec,   61890 itr]:        12000
[ optimality gap     ]:      100.00%
[513 sec,   62008 itr]:        12000
[514 sec,   62043 itr]:        12000
[515 sec,   62129 itr]:        12000
[516 sec,   62331 itr]:        12000
[517 sec,   62452 itr]:        12000
[518 sec,   62525 itr]:        12000
[519 sec,   62648 itr]:        12000
[520 sec,   62772 itr]:        12000
[521 sec,   62846 itr]:        12000
[522 sec,   62846 itr]:        12000
[ optimality gap     ]:      100.00%
[523 sec,   62973 itr]:        12000
[524 sec,   63072 itr]:        12000
[525 sec,   63153 itr]:        12000
[526 sec,   63223 itr]:        12000
[527 sec,   63266 itr]:        12000
[528 sec,   63266 itr]:        12000
[529 sec,   63393 itr]:        12000
[530 sec,   63445 itr]:        12000
[531 sec,   63537 itr]:        12000
[532 sec,   63537 itr]:        12000
[ optimality gap     ]:      100.00%
[533 sec,   63702 itr]:        12000
[534 sec,   63780 itr]:        12000
[535 sec,   63876 itr]:        12000
[536 sec,   63962 itr]:        12000
[537 sec,   64035 itr]:        12000
[538 sec,   64035 itr]:        12000
[539 sec,   64139 itr]:        12000
[540 sec,   64315 itr]:        12000
[541 sec,   64315 itr]:        12000
[542 sec,   64499 itr]:        12000
[ optimality gap     ]:      100.00%
[543 sec,   64499 itr]:        12000
[544 sec,   64606 itr]:        12000
[545 sec,   64697 itr]:        12000
[546 sec,   64768 itr]:        12000
[547 sec,   64843 itr]:        12000
[548 sec,   64906 itr]:        12000
[549 sec,   64960 itr]:        12000
[550 sec,   65056 itr]:        12000
[551 sec,   65149 itr]:        12000
[552 sec,   65249 itr]:        12000
[ optimality gap     ]:      100.00%
[553 sec,   65249 itr]:        12000
[554 sec,   65410 itr]:        12000
[555 sec,   65490 itr]:        12000
[556 sec,   65490 itr]:        12000
[557 sec,   65674 itr]:        12000
[558 sec,   65762 itr]:        12000
[559 sec,   65835 itr]:        12000
[560 sec,   65936 itr]:        12000
[561 sec,   66032 itr]:        12000
[562 sec,   66106 itr]:        12000
[ optimality gap     ]:      100.00%
[563 sec,   66195 itr]:        12000
[564 sec,   66195 itr]:        12000
[565 sec,   66257 itr]:        12000
[566 sec,   66402 itr]:        12000
[567 sec,   66497 itr]:        12000
[568 sec,   66497 itr]:        12000
[569 sec,   66652 itr]:        12000
[570 sec,   66739 itr]:        12000
[571 sec,   66817 itr]:        12000
[572 sec,   66893 itr]:        12000
[ optimality gap     ]:      100.00%
[573 sec,   66934 itr]:        12000
[574 sec,   67008 itr]:        12000
[575 sec,   67099 itr]:        12000
[576 sec,   67166 itr]:        12000
[577 sec,   67261 itr]:        12000
[578 sec,   67261 itr]:        12000
[579 sec,   67541 itr]:        12000
[580 sec,   67660 itr]:        12000
[581 sec,   67856 itr]:        12000
[582 sec,   67978 itr]:        12000
[ optimality gap     ]:      100.00%
[583 sec,   68102 itr]:        12000
[584 sec,   68276 itr]:        12000
[585 sec,   68276 itr]:        12000
[586 sec,   68413 itr]:        12000
[587 sec,   68580 itr]:        12000
[588 sec,   68704 itr]:        12000
[589 sec,   69119 itr]:        12000
[590 sec,   69284 itr]:        12000
[591 sec,   69509 itr]:        12000
[592 sec,   69715 itr]:        12000
[ optimality gap     ]:      100.00%
[593 sec,   69715 itr]:        12000
[594 sec,   70098 itr]:        12000
[595 sec,   70270 itr]:        12000
[596 sec,   70270 itr]:        12000
[597 sec,   70413 itr]:        12000
[598 sec,   70722 itr]:        12000
[599 sec,   70722 itr]:        12000
[600 sec,   71091 itr]:        12000
[600 sec,   71091 itr]:        12000
[ optimality gap     ]:      100.00%

71091 iterations performed in 600 seconds

Feasible solution: 
  obj    =        12000
  gap    =      100.00%
  bounds =         -inf
Status: HxSolutionStatus.FEASIBLE
Number of non-zero nodes found by Hexaly:44
Eenergy value obtained by Hexaly:12000.020820610489
Time taken by Hexaly:599.5881824493408

In [7]:

  • # compute relative gap
  • tol = 1e-7
  • abs_gap = hex_obj-optimal_energy
  • relative_gap = (round(abs_gap,6)*100)/round(optimal_energy,6)

In [8]:

  • # print result
  • if abs_gap>tol:
  • print(f"Hexaly solution is not optimal")
  • print(f"Absolute Gap:{abs_gap}")
  • print(f"Relative Gap(%):{abs(relative_gap)}")
  • else:
  • print(f"Optimal solution found:{hex_obj}.")

Out [ ]:

Hexaly solution is not optimal
Absolute Gap:0.020820610488954117
Relative Gap(%):0.00017350833333333333
Previous page
Next page

Content

  • Hexaly Planted Benchmarking
  • Import libraries
  • Set up Hexaly solver
  • load data file
  • Solve with hexaly