Ejemplo n.º 1
0
 def setUp(self):
     super().setUp()
     self.seed = 8123179
     aqua_globals.random_seed = self.seed
     self.num_nodes = 5
     self.w = random_graph(self.num_nodes, edge_prob=0.5)
     self.qubit_op, self.offset = stable_set.get_operator(self.w)
Ejemplo n.º 2
0
 def setUp(self):
     super().setUp()
     self.seed = 100
     aqua_globals.random_seed = self.seed
     self.num_nodes = 3
     self.w = random_graph(self.num_nodes, edge_prob=0.8, weight_range=10)
     self.qubit_op, self.offset = vertex_cover.get_operator(self.w)
Ejemplo n.º 3
0
 def setUp(self):
     super().setUp()
     self.k = 5  # K means the size of the clique
     self.seed = 100
     aqua_globals.random_seed = self.seed
     self.num_nodes = 5
     self.w = random_graph(self.num_nodes, edge_prob=0.8, weight_range=10)
     self.qubit_op, self.offset = clique.get_operator(self.w, self.k)
Ejemplo n.º 4
0
def create_qiskit_circuit(num_nodes: int,
                          params: List[float],
                          edge_prob=0.8,
                          weight_range=10) -> qiskit.QuantumCircuit:
    # print(locals())
    np.random.seed(123)
    w = random_graph(num_nodes, edge_prob=edge_prob, weight_range=weight_range)
    qubit_op, offset = vertex_cover.get_operator(w)
    qaoa = QAOA(qubit_op, p=int(len(params) / 2))
    return qaoa.var_form.construct_circuit(params)
Ejemplo n.º 5
0
 def setUp(self):
     super().setUp()
     aqua_globals.random_seed = 8123179
     self.w = random_graph(4, edge_prob=0.5, weight_range=10)
     self.qubit_op, self.offset = max_cut.get_operator(self.w)
Ejemplo n.º 6
0
from qiskit.optimization.applications.ising import graph_partition
from qiskit.optimization.applications.ising.common import random_graph, sample_most_likely
from qiskit.aqua import aqua_globals
from qiskit.aqua.algorithms import QAOA
from qiskit.aqua.components.optimizers import COBYLA
from qiskit.circuit.library import TwoLocal
from qiskit.compiler import transpile, assemble

if len(sys.argv) != 3:
    print("Usage: %s <num-qubits> <method>" % sys.argv[0])
    sys.exit(1)


num_nodes = int(sys.argv[1])
method = sys.argv[2]  # statevector_gpu or statevector
w = random_graph(num_nodes, edge_prob=0.8, weight_range=10, seed=48)
# print(w)

G = nx.from_numpy_matrix(w)
layout = nx.random_layout(G, seed=10)
# colors = ['r', 'g', 'b', 'y']
# nx.draw(G, layout, node_color=colors)
# labels = nx.get_edge_attributes(G, 'weight')
# nx.draw_networkx_edge_labels(G, pos=layout, edge_labels=labels)


def brute_force():
    # use the brute-force way to generate the oracle
    def bitfield(n, L):
        result = np.binary_repr(n, L)
        return [int(digit) for digit in result]  # [2:] to chop off the "0b" part
Ejemplo n.º 7
0
 def setUp(self):
     super().setUp()
     aqua_globals.random_seed = 100
     self.num_nodes = 4
     self.w = random_graph(self.num_nodes, edge_prob=0.8, weight_range=10)
     self.qubit_op, self.offset = graph_partition.get_operator(self.w)