diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000000000000000000000000000000000000..a6344aac8c09253b3b630fb776ae94478aa0275b --- /dev/null +++ b/.gitattributes @@ -0,0 +1,35 @@ +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text +*.ftz filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.h5 filter=lfs diff=lfs merge=lfs -text +*.joblib filter=lfs diff=lfs merge=lfs -text +*.lfs.* filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.onnx filter=lfs diff=lfs merge=lfs -text +*.ot filter=lfs diff=lfs merge=lfs -text +*.parquet filter=lfs diff=lfs merge=lfs -text +*.pb filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text +saved_model/**/* filter=lfs diff=lfs merge=lfs -text +*.tar.* filter=lfs diff=lfs merge=lfs -text +*.tar filter=lfs diff=lfs merge=lfs -text +*.tflite filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..102ab4d50c113f238af17e236dd6de64dbe5de85 --- /dev/null +++ b/README.md @@ -0,0 +1,108 @@ +--- +license: apache-2.0 +--- + +![hf-banner-ai-transpiler_linear-functions](https://cdn-uploads.huggingface.co/production/uploads/64b7001445f3511db2f6aa5b/VJV29bWXra2KnMCWcZ1D4.png) + +# Linear Function Quantum Synthesis Circuit Models + +## Introduction +This repository hosts models for linear function synthesis in quantum circuits trained with RL techniques. The models are specialized for different topologies up to 10 qubits. + +A linear function over n qubits is an n×n binary transformation on X/Z operators (the reversible linear part of a Clifford). Implementing it means finding CX/SWAP-based circuits whose action matches that binary map. [More information about Linear Funtion circuits](https://quantum.cloud.ibm.com/docs/en/api/qiskit/qiskit.circuit.library.LinearFunction) + +For each model, there is the environment configs (`.json`) and the trained policy weights (`.safetensors`). + + +## Scope +- Linear-function synthesis models. +- Each model is tied to a specific qubit count and topology; use the matching pair for your target device/layout. To discover the specific topology for each model see the `gateset` property in the model's config. + +## Contents +- `linear_function_*.json`: model configs for a given qubit count/topology. +- Matching `.safetensors` files: trained policies for each JSON (same filename stem). + + +## Training + +Training data is entirely synthetic and generated internally at IBM Quantum using custom reinforcement learning environments built on [Qiskit-Gym](https://github.com/AI4quantum/qiskit-gym). + +**Data Collection:** Target operators are generated by sampling random linear-reversible circuits with CNOT gates consistent with the target coupling map. The number of gates scales with the difficulty, which increase when the model learns to solve circuits at that difficulty. No external datasets or third-party circuit repositories are used. + +**PII:** No personal or sensitive data is present or used in any phase of training, as all data is synthetic and generated algorithmically. + +**Infrastructure:** We train the models using IBM's Cognitive Computing Cluster (CCC) using NVIDIA A100 40GB GPUs. The cluster provides a scalable and efficient infrastructure for training. + + +## Usage example + +Here we provide a code snippet to synthesis a random 10qL linear function. In addition to the model we use the `qiskit-gym` ([repo](https://github.com/AI4quantum/qiskit-gym)) and `twisteRL` ([repo](https://github.com/AI4quantum/twisteRL)) libraries, as well as `qiskit`. You can install all needed libraries running `pip install qiskit-gym` in your python virutal environment. + +```python +from qiskit_gym.rl import RLSynthesis + +from twisterl.utils import pull_hub_algorithm + +from qiskit.circuit.library import LinearFunction +from qiskit.synthesis.linear.linear_matrix_utils import random_invertible_binary_matrix + +local_path = pull_hub_algorithm( + repo_id="Qiskit/ai-transpiler_linear-functions", + model_path="./models", + revision="main", + validate=True +) + +if not local_path: + raise ValueError("Failed to download model from hub") + +num_qubits = 10 +matrix = random_invertible_binary_matrix(num_qubits, seed=42) +input_lf = LinearFunction(matrix) +rls = RLSynthesis.from_config_json(f"{local_path}/linear_function_10qL.json", f"{local_path}/linear_function_10qL.safetensors") +qc_lf_output = rls.synth(input_lf, num_searches=10, num_mcts_searches=0, deterministic=False) +print(qc_lf_output) +``` + + +## Models + +Below is the list of available models with qubit counts and topologies: + +| Model | Qubits | Topology | +| --- | --- | --- | +| [`linear_function_2qL`](model_data/linear_function_2qL.md) | 2 | L | +| [`linear_function_3qL`](model_data/linear_function_3qL.md) | 3 | L | +| [`linear_function_4qL`](model_data/linear_function_4qL.md) | 4 | L | +| [`linear_function_4qY`](model_data/linear_function_4qY.md) | 4 | Y | +| [`linear_function_5qL`](model_data/linear_function_5qL.md) | 5 | L | +| [`linear_function_5qT`](model_data/linear_function_5qT.md) | 5 | T | +| [`linear_function_6qL`](model_data/linear_function_6qL.md) | 6 | L | +| [`linear_function_6qT`](model_data/linear_function_6qT.md) | 6 | T | +| [`linear_function_6qY`](model_data/linear_function_6qY.md) | 6 | Y | +| [`linear_function_7qF`](model_data/linear_function_7qF.md) | 7 | F | +| [`linear_function_7qH`](model_data/linear_function_7qH.md) | 7 | H | +| [`linear_function_7qL`](model_data/linear_function_7qL.md) | 7 | L | +| [`linear_function_7qT`](model_data/linear_function_7qT.md) | 7 | T | +| [`linear_function_7qY`](model_data/linear_function_7qY.md) | 7 | Y | +| [`linear_function_8qF`](model_data/linear_function_8qF.md) | 8 | F | +| [`linear_function_8qJ`](model_data/linear_function_8qJ.md) | 8 | J | +| [`linear_function_8qL`](model_data/linear_function_8qL.md) | 8 | L | +| [`linear_function_8qT1`](model_data/linear_function_8qT1.md) | 8 | T1 | +| [`linear_function_8qT2`](model_data/linear_function_8qT2.md) | 8 | T2 | +| [`linear_function_8qY`](model_data/linear_function_8qY.md) | 8 | Y | +| [`linear_function_9qF1`](model_data/linear_function_9qF1.md) | 9 | F1 | +| [`linear_function_9qF2`](model_data/linear_function_9qF2.md) | 9 | F2 | +| [`linear_function_9qH1`](model_data/linear_function_9qH1.md) | 9 | H1 | +| [`linear_function_9qH2`](model_data/linear_function_9qH2.md) | 9 | H2 | +| [`linear_function_9qH3`](model_data/linear_function_9qH3.md) | 9 | H3 | +| [`linear_function_9qJ`](model_data/linear_function_9qJ.md) | 9 | J | +| [`linear_function_9qL`](model_data/linear_function_9qL.md) | 9 | L | +| [`linear_function_9qT1`](model_data/linear_function_9qT1.md) | 9 | T1 | +| [`linear_function_9qT2`](model_data/linear_function_9qT2.md) | 9 | T2 | +| [`linear_function_9qY`](model_data/linear_function_9qY.md) | 9 | Y | +| [`linear_function_10qL`](model_data/linear_function_10qL.md) | 10 | L | + + +## Acknowledgements +The authors acknowledge the IBM Research CCC Service for providing resources that have contributed to the production or processing of the data contained within this data collection. \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000000000000000000000000000000000000..67854d1a7d14aaff134dfe6ae6d5cfce238d1f45 --- /dev/null +++ b/config.json @@ -0,0 +1,14 @@ +{ + "model_type": "reinforcement_learning", + "task": "quantum_circuit_synthesis", + "problem_type": "linear_function_synthesis", + "framework": "qiskit-gym", + "license": "apache-2.0", + "tags": ["quantum-computing", "reinforcement-learning", "circuit-synthesis", "qiskit", "quantum-transpilation", "linear-function-synthesis"], + "paper": { + "title": "Practical and efficient quantum circuit synthesis and transpiling with reinforcement learning", + "authors": ["Kremer, D.", "Villar, V.", "Paik, H.", "Duran, I.", "Faro, I.", "Cruz-Benito, J."], + "arxiv": "2405.13196", + "year": 2024 + } +} \ No newline at end of file diff --git a/linear_function_10qL.json b/linear_function_10qL.json new file mode 100644 index 0000000000000000000000000000000000000000..bb16c41e5ea632135c70d54362a18dba7b34485a --- /dev/null +++ b/linear_function_10qL.json @@ -0,0 +1,198 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 10, + "difficulty": 1024, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ], + [ + "CX", + [ + 8, + 9 + ] + ], + [ + "CX", + [ + 9, + 8 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.1, + "n_layers_cnots": 0.05, + "n_layers": 0.05, + "n_gates": 0.1 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_10qL.safetensors b/linear_function_10qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..79cfda8fd72c4be0713f22039883ed63885b993e --- /dev/null +++ b/linear_function_10qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e559506bc70cb7f6523504243107bacd3eab62030920549985e0b4490a89aa4e +size 752324 diff --git a/linear_function_2qL.json b/linear_function_2qL.json new file mode 100644 index 0000000000000000000000000000000000000000..8980f65df0701390095abf68f19d98e2c7fbf8e7 --- /dev/null +++ b/linear_function_2qL.json @@ -0,0 +1,86 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 2, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ] + ], + "depth_slope": 2, + "max_depth": 128, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 256, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_2qL.safetensors b/linear_function_2qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..b9069ecc0e9467b227f322ce0a9b28701b3cc272 --- /dev/null +++ b/linear_function_2qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a887a968b9a3c8df8e4c3608901abea320ae5bd0ecd340bef324b16e68f72ba0 +size 539260 diff --git a/linear_function_3qL.json b/linear_function_3qL.json new file mode 100644 index 0000000000000000000000000000000000000000..accbc3e05c65227c1291ed1a3c2b5b61cd04bf37 --- /dev/null +++ b/linear_function_3qL.json @@ -0,0 +1,100 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 3, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ] + ], + "depth_slope": 2, + "max_depth": 128, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 256, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_3qL.safetensors b/linear_function_3qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..c3d34914732df719ac864e62b68ad52f72b6259c --- /dev/null +++ b/linear_function_3qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2889afd849a7da4e0b01f3e5b1bb7cc206784202d2dbfa07020e190ace7bfa96 +size 551556 diff --git a/linear_function_4qL.json b/linear_function_4qL.json new file mode 100644 index 0000000000000000000000000000000000000000..3d7e86d325b0136ad17fac3b9e75e14f1ac0ab17 --- /dev/null +++ b/linear_function_4qL.json @@ -0,0 +1,114 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 4, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 0, + 3 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 0 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ] + ], + "depth_slope": 2, + "max_depth": 128, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 256, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_4qL.safetensors b/linear_function_4qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..6a40a3f67d24741f015a75d936323a24900886b8 --- /dev/null +++ b/linear_function_4qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:171b540a6c0060dc74395491afde4631516e5f2169dd00fae54736037e500f4f +size 567948 diff --git a/linear_function_4qY.json b/linear_function_4qY.json new file mode 100644 index 0000000000000000000000000000000000000000..6f746911f491af9bc396a613c4bebe46721a6e32 --- /dev/null +++ b/linear_function_4qY.json @@ -0,0 +1,114 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 4, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 3 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 0 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ] + ], + "depth_slope": 2, + "max_depth": 128, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 256, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_4qY.safetensors b/linear_function_4qY.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..a5eaac13d83c2d2f6c72a72d40710958eeab04ff --- /dev/null +++ b/linear_function_4qY.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8cb13d7c38e282fe129a1d837a374e0cf01e676fdf6a6b013aa2d11ad5df305 +size 567948 diff --git a/linear_function_5qL.json b/linear_function_5qL.json new file mode 100644 index 0000000000000000000000000000000000000000..fb20cbed300638d0ca162a16f20606c8781a2ccf --- /dev/null +++ b/linear_function_5qL.json @@ -0,0 +1,128 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 5, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ] + ], + "depth_slope": 2, + "max_depth": 128, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 256, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_5qL.safetensors b/linear_function_5qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..ded42601bca9f093b23f06d7aad645013d8d2026 --- /dev/null +++ b/linear_function_5qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03ec15fac122616f8d43d707af4b7adfe800bb58281f56f628e3cc6bc3c58972 +size 588436 diff --git a/linear_function_5qT.json b/linear_function_5qT.json new file mode 100644 index 0000000000000000000000000000000000000000..571cd5c94c6e1a8f028a80f17f67d99641391500 --- /dev/null +++ b/linear_function_5qT.json @@ -0,0 +1,128 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 5, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ] + ], + "depth_slope": 2, + "max_depth": 128, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 256, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_5qT.safetensors b/linear_function_5qT.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..c32b491ae2dfa17d02c34c3f1a6f65cb10bef1cf --- /dev/null +++ b/linear_function_5qT.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26ac5ca65b91c0442ca1e30e2f1270bbf2490b74fef32317bc78eea7d002a583 +size 588436 diff --git a/linear_function_6qL.json b/linear_function_6qL.json new file mode 100644 index 0000000000000000000000000000000000000000..fbb93133b9f20a6bd416634e37cc53534b3066b2 --- /dev/null +++ b/linear_function_6qL.json @@ -0,0 +1,142 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 6, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_6qL.safetensors b/linear_function_6qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..e076d745bba92bf3a7d48e1246154eadd8c19af0 --- /dev/null +++ b/linear_function_6qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b841f05b6489e7a44d45bfa643df096eb516e3bac001325a1ffc093033f108a5 +size 613028 diff --git a/linear_function_6qT.json b/linear_function_6qT.json new file mode 100644 index 0000000000000000000000000000000000000000..c6f30f9d9299f5f457da7828b206a27c483f67c3 --- /dev/null +++ b/linear_function_6qT.json @@ -0,0 +1,142 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 6, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_6qT.safetensors b/linear_function_6qT.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..f29b1ce2abf993488f42d8a28bc162bf52c35b0a --- /dev/null +++ b/linear_function_6qT.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:085fcb02ab416a1009b066229df858be88262c59b7dab1effb21b52c01e98fa2 +size 613028 diff --git a/linear_function_6qY.json b/linear_function_6qY.json new file mode 100644 index 0000000000000000000000000000000000000000..4fbf334b208fe9899e91830564d7c876753482ba --- /dev/null +++ b/linear_function_6qY.json @@ -0,0 +1,142 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 6, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_6qY.safetensors b/linear_function_6qY.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..7b7fb6f19518842b3ea2a36b90369a9f4ccb5ccb --- /dev/null +++ b/linear_function_6qY.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45576b41263c6931e4238ed3ea03c1e9cd5f4e16275b008f48ed9807a5bfe903 +size 613028 diff --git a/linear_function_7qF.json b/linear_function_7qF.json new file mode 100644 index 0000000000000000000000000000000000000000..f072b1ecdbb995f8fbc5de300112803d36238c93 --- /dev/null +++ b/linear_function_7qF.json @@ -0,0 +1,156 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 7, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_7qF.safetensors b/linear_function_7qF.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..6a5e4de38ccafdaa8053398116b2e493789ada69 --- /dev/null +++ b/linear_function_7qF.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e79bbecbab1c66ef1c6456140a32589362857aeb56cff3df9999e5bb7a71e95f +size 641708 diff --git a/linear_function_7qH.json b/linear_function_7qH.json new file mode 100644 index 0000000000000000000000000000000000000000..dce2609406176829bb0256ef1217b29474ab22da --- /dev/null +++ b/linear_function_7qH.json @@ -0,0 +1,156 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 7, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 4, + 6 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 6, + 4 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_7qH.safetensors b/linear_function_7qH.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..364773569a86f40af28a8c72d0c19de602ea0725 --- /dev/null +++ b/linear_function_7qH.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ef82a76f243309557b9678060d26c8629204e7706873b840d3e61068085c8a9 +size 641708 diff --git a/linear_function_7qL.json b/linear_function_7qL.json new file mode 100644 index 0000000000000000000000000000000000000000..e7d69721f1fef44985eb4c6e2693a8e8c328907a --- /dev/null +++ b/linear_function_7qL.json @@ -0,0 +1,156 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 7, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 6 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 3 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_7qL.safetensors b/linear_function_7qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..e7cfd9c7fdb8451106d91030a528c5f719235d53 --- /dev/null +++ b/linear_function_7qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f287665ea48dc31c6e6205a9adf13f1304140b4b578a09684787ec246314c62e +size 641708 diff --git a/linear_function_7qT.json b/linear_function_7qT.json new file mode 100644 index 0000000000000000000000000000000000000000..4866409217f8d86e2687cf4749dd6ddcac905053 --- /dev/null +++ b/linear_function_7qT.json @@ -0,0 +1,156 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 7, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_7qT.safetensors b/linear_function_7qT.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..169990e25380b054b044b99add4c9abfc0ad89df --- /dev/null +++ b/linear_function_7qT.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f663d35da85f873afd0412b401a99068d05f07af547e883c89dde39ac8078dc +size 641708 diff --git a/linear_function_7qY.json b/linear_function_7qY.json new file mode 100644 index 0000000000000000000000000000000000000000..48e38aa374da2ec1355bc86d79ffde9ca723ee58 --- /dev/null +++ b/linear_function_7qY.json @@ -0,0 +1,156 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 7, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 2, + 5 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 5, + 2 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_7qY.safetensors b/linear_function_7qY.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..0e944647fa496ae51899048ccb63b40c352bdbe3 --- /dev/null +++ b/linear_function_7qY.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71de5af50f3e947469e3ec94b3842c238d74e1ba504d17202d7c550b99e849dc +size 641708 diff --git a/linear_function_8qF.json b/linear_function_8qF.json new file mode 100644 index 0000000000000000000000000000000000000000..a63db0bac750be91acb536a5c2abba20d1f995ea --- /dev/null +++ b/linear_function_8qF.json @@ -0,0 +1,170 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 8, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_8qF.safetensors b/linear_function_8qF.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..a7aea39194f9d7fc435754e3109fbea64ef34bf5 --- /dev/null +++ b/linear_function_8qF.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84c8eedcd0511bb869738aa874790a4feb9fad0412d8bcbceddf5b0efd71be24 +size 674484 diff --git a/linear_function_8qJ.json b/linear_function_8qJ.json new file mode 100644 index 0000000000000000000000000000000000000000..bfda27fda41e57faf679f52ef0acf056641512f6 --- /dev/null +++ b/linear_function_8qJ.json @@ -0,0 +1,170 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 8, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 4, + 6 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 6, + 4 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_8qJ.safetensors b/linear_function_8qJ.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..ed3b22c0c783b93959af4c5ed7a7c6d7a01c9322 --- /dev/null +++ b/linear_function_8qJ.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:530489587bdf5830da0894f11fa41319d12c9068654e6985a08af6474bc6976b +size 674484 diff --git a/linear_function_8qL.json b/linear_function_8qL.json new file mode 100644 index 0000000000000000000000000000000000000000..e699627f37ee70e6be0891c78e3ec719875a0b18 --- /dev/null +++ b/linear_function_8qL.json @@ -0,0 +1,170 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 8, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 5 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 3 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ] + ], + "depth_slope": 2, + "max_depth": 256, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 512, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_8qL.safetensors b/linear_function_8qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..9ab96c4e9dfb57145d7f6dbc6f5c2ff46a2d8dfb --- /dev/null +++ b/linear_function_8qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00d1174450d4206bacd61eaf81338913040a042fcab050f3acacc1ee4de69074 +size 674484 diff --git a/linear_function_8qT1.json b/linear_function_8qT1.json new file mode 100644 index 0000000000000000000000000000000000000000..1d282e3bbcece285d1d466ceaa6865e0e4eff8c4 --- /dev/null +++ b/linear_function_8qT1.json @@ -0,0 +1,170 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 8, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 5 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 3 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_8qT1.safetensors b/linear_function_8qT1.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..693b72f4f07b414bf04a277b25049235b885c12e --- /dev/null +++ b/linear_function_8qT1.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93a5a030b43018ea6abdb90ef45a54a03345e07397924be8bab9edb1e0ce0c83 +size 674484 diff --git a/linear_function_8qT2.json b/linear_function_8qT2.json new file mode 100644 index 0000000000000000000000000000000000000000..4e558fd5ba71043cca756cc04b052052810d0bf5 --- /dev/null +++ b/linear_function_8qT2.json @@ -0,0 +1,170 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 8, + "difficulty": 1024, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 3, + 6 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 6, + 3 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.05, + "n_layers_cnots": 0.05, + "n_layers": 0.05, + "n_gates": 0.05 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} diff --git a/linear_function_8qT2.safetensors b/linear_function_8qT2.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..0eec7915422e7c8c4c994c565384393e4a182dfe --- /dev/null +++ b/linear_function_8qT2.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1406279b3dd5a29e6475b0c23860e2a97948245c27db26854f6958b3d65cb88b +size 674484 diff --git a/linear_function_8qY.json b/linear_function_8qY.json new file mode 100644 index 0000000000000000000000000000000000000000..d703606f085190be4d778f219fa27c659b8b8abe --- /dev/null +++ b/linear_function_8qY.json @@ -0,0 +1,170 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 8, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 6 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 3 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_8qY.safetensors b/linear_function_8qY.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..8f2319700f78841efecc577a3841a048e3b034a9 --- /dev/null +++ b/linear_function_8qY.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b39f56e015898a58a9a0a5c4d5c36fce83f5872a46e1b09ee470f32548fef50f +size 674484 diff --git a/linear_function_9qF1.json b/linear_function_9qF1.json new file mode 100644 index 0000000000000000000000000000000000000000..36202a4b56af5a02b30981f2ac66c6e73393badd --- /dev/null +++ b/linear_function_9qF1.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 5 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 3 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qF1.safetensors b/linear_function_9qF1.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..4637b976971d491dcc66e038d5970496a4773a83 --- /dev/null +++ b/linear_function_9qF1.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f23669102b162c2a2d35eaa580744b760198de8bd375d7ca6c3e2a1b6cd986c9 +size 711356 diff --git a/linear_function_9qF2.json b/linear_function_9qF2.json new file mode 100644 index 0000000000000000000000000000000000000000..dc01a97e3bec725a4b2f65e87b81f716fcd29712 --- /dev/null +++ b/linear_function_9qF2.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 5 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 3 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 5, + 8 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ], + [ + "CX", + [ + 8, + 5 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qF2.safetensors b/linear_function_9qF2.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..bd22ad7b111e75d1eadf9f3a16a7313aedc4bdf8 --- /dev/null +++ b/linear_function_9qF2.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:484e6e360286933e0846774cc9e0fc40d224a7f51c30d365edf066bce2ce6377 +size 711356 diff --git a/linear_function_9qH1.json b/linear_function_9qH1.json new file mode 100644 index 0000000000000000000000000000000000000000..2542089b4034b87c162469746fccc6f3fee3752b --- /dev/null +++ b/linear_function_9qH1.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 5 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 3 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qH1.safetensors b/linear_function_9qH1.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..9cd5cd752f2f54442e41a017f6c0c7cb7a3798fa --- /dev/null +++ b/linear_function_9qH1.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63d8b9d20b7ce2bd1eeeaf9e02dee4597f3bbe0bcff54f625401024e880575db +size 711356 diff --git a/linear_function_9qH2.json b/linear_function_9qH2.json new file mode 100644 index 0000000000000000000000000000000000000000..e6407d9a97a0573a4b3dc6696c35b6b9edfd56b4 --- /dev/null +++ b/linear_function_9qH2.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 5, + 7 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 7, + 5 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qH2.safetensors b/linear_function_9qH2.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..b080c8891cb4900502c1fc87e218c6e2417f83af --- /dev/null +++ b/linear_function_9qH2.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd20e12a498bda585f0e9130c310fe9d66b3b902ce1ea2ce57d11fa1f90a1af9 +size 711356 diff --git a/linear_function_9qH3.json b/linear_function_9qH3.json new file mode 100644 index 0000000000000000000000000000000000000000..319ae31b9fb9b37fa36e6e37203fc204c64c1ace --- /dev/null +++ b/linear_function_9qH3.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 4 + ] + ], + [ + "CX", + [ + 4, + 3 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qH3.safetensors b/linear_function_9qH3.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..f0fd2217701ca065b4e2e8f4070f1af1f8e03809 --- /dev/null +++ b/linear_function_9qH3.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ba7fb5eab16c2561378a39a3c286b491bb067df8b9e749c02fc2338c4905b96 +size 711356 diff --git a/linear_function_9qJ.json b/linear_function_9qJ.json new file mode 100644 index 0000000000000000000000000000000000000000..9025d1d59ae8ab3d905e5fc5cba0d46abeddf015 --- /dev/null +++ b/linear_function_9qJ.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 3, + 5 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 3 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 5, + 8 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ], + [ + "CX", + [ + 8, + 5 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qJ.safetensors b/linear_function_9qJ.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..19aa99454a02850b657e60529f9c5374c86cd3e6 --- /dev/null +++ b/linear_function_9qJ.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bd4fd04ff5cbc29af7fd4e9c3615f3e541f02ed512e98e9062b2d7334e95f99 +size 711356 diff --git a/linear_function_9qL.json b/linear_function_9qL.json new file mode 100644 index 0000000000000000000000000000000000000000..92b3f6b81400bc694ea75ba07ec356a58eff5d1d --- /dev/null +++ b/linear_function_9qL.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 4 + ] + ], + [ + "CX", + [ + 2, + 3 + ] + ], + [ + "CX", + [ + 2, + 5 + ] + ], + [ + "CX", + [ + 3, + 2 + ] + ], + [ + "CX", + [ + 4, + 1 + ] + ], + [ + "CX", + [ + 4, + 6 + ] + ], + [ + "CX", + [ + 5, + 2 + ] + ], + [ + "CX", + [ + 5, + 8 + ] + ], + [ + "CX", + [ + 6, + 4 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 5 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qL.safetensors b/linear_function_9qL.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..e77e155fa5f4c6ae546140f0227a5a57be10a606 --- /dev/null +++ b/linear_function_9qL.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebad7f104b6c6656d0f8ddc110180998e642936d3eb8eae4a3b06333ddeb02bc +size 711356 diff --git a/linear_function_9qT1.json b/linear_function_9qT1.json new file mode 100644 index 0000000000000000000000000000000000000000..e298e59e9a92310466aa6f4ef9ff7372d88895dc --- /dev/null +++ b/linear_function_9qT1.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 5 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 6 + ] + ], + [ + "CX", + [ + 5, + 3 + ] + ], + [ + "CX", + [ + 5, + 8 + ] + ], + [ + "CX", + [ + 6, + 4 + ] + ], + [ + "CX", + [ + 6, + 7 + ] + ], + [ + "CX", + [ + 7, + 6 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 5 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qT1.safetensors b/linear_function_9qT1.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..157c8a2c46aabaec3e555742184b0b7ddafc80e8 --- /dev/null +++ b/linear_function_9qT1.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51a9ed92d925e94c8e4757264f188bf1a55e8fc8072fedd78be9fd86fbbf6f80 +size 711356 diff --git a/linear_function_9qT2.json b/linear_function_9qT2.json new file mode 100644 index 0000000000000000000000000000000000000000..541894a747c88eb883025a159380c899d841df05 --- /dev/null +++ b/linear_function_9qT2.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 2 + ] + ], + [ + "CX", + [ + 1, + 3 + ] + ], + [ + "CX", + [ + 2, + 0 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 1 + ] + ], + [ + "CX", + [ + 3, + 6 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 3 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qT2.safetensors b/linear_function_9qT2.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..53b336742e7b6e90dad24ccdd2330e4afa32edc8 --- /dev/null +++ b/linear_function_9qT2.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e96c4fc66d4d1623dfc8675dfca43392d6ecaa7936bbe2d6e889540227cdb9af +size 711356 diff --git a/linear_function_9qY.json b/linear_function_9qY.json new file mode 100644 index 0000000000000000000000000000000000000000..fc483b2a72d2c3c934557d2fd3074f68787264a8 --- /dev/null +++ b/linear_function_9qY.json @@ -0,0 +1,184 @@ +{ + "env_cls": "qiskit_gym.envs.synthesis.LinearFunctionEnv", + "env": { + "num_qubits": 9, + "difficulty": 1, + "gateset": [ + [ + "CX", + [ + 0, + 1 + ] + ], + [ + "CX", + [ + 1, + 0 + ] + ], + [ + "CX", + [ + 1, + 2 + ] + ], + [ + "CX", + [ + 2, + 1 + ] + ], + [ + "CX", + [ + 2, + 4 + ] + ], + [ + "CX", + [ + 3, + 6 + ] + ], + [ + "CX", + [ + 4, + 2 + ] + ], + [ + "CX", + [ + 4, + 5 + ] + ], + [ + "CX", + [ + 4, + 7 + ] + ], + [ + "CX", + [ + 5, + 4 + ] + ], + [ + "CX", + [ + 5, + 6 + ] + ], + [ + "CX", + [ + 6, + 3 + ] + ], + [ + "CX", + [ + 6, + 5 + ] + ], + [ + "CX", + [ + 7, + 4 + ] + ], + [ + "CX", + [ + 7, + 8 + ] + ], + [ + "CX", + [ + 8, + 7 + ] + ] + ], + "depth_slope": 2, + "max_depth": 512, + "metrics_weights": { + "n_cnots": 0.01, + "n_layers_cnots": 0.01, + "n_layers": 0.01, + "n_gates": 0.01 + } + }, + "policy_cls": "twisterl.nn.BasicPolicy", + "policy": { + "embedding_size": 512, + "common_layers": [ + 256 + ], + "policy_layers": [], + "value_layers": [] + }, + "algorithm_cls": "twisterl.rl.PPO", + "algorithm": { + "collecting": { + "num_cores": 32, + "num_episodes": 1024, + "lambda": 0.995, + "gamma": 0.995 + }, + "training": { + "num_epochs": 10, + "vf_coef": 0.8, + "ent_coef": 0.01, + "clip_ratio": 0.1, + "normalize_advantage": false + }, + "learning": { + "diff_threshold": 0.85, + "diff_max": 1024, + "diff_metric": "ppo_deterministic" + }, + "optimizer": { + "lr": 0.0003 + }, + "evals": { + "ppo_deterministic": { + "num_episodes": 100, + "deterministic": true, + "num_searches": 1, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + }, + "ppo_10": { + "num_episodes": 100, + "deterministic": false, + "num_searches": 10, + "num_mcts_searches": 0, + "num_cores": 32, + "C": 1.41 + } + }, + "logging": { + "log_freq": 1, + "checkpoint_freq": 10 + } + } +} \ No newline at end of file diff --git a/linear_function_9qY.safetensors b/linear_function_9qY.safetensors new file mode 100644 index 0000000000000000000000000000000000000000..818ea5231945ed3d64a1459fe4f73ca4dcce09fa --- /dev/null +++ b/linear_function_9qY.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1beab2d49125562ae518168542b6d1a28053f1eac7bb84a8ef3114c651014bd +size 711356 diff --git a/model_data/images/linear_function_10qL_topology.svg b/model_data/images/linear_function_10qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..117357482cc32a4c2ba9a1322d88207e065c0501 --- /dev/null +++ b/model_data/images/linear_function_10qL_topology.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + +9 + \ No newline at end of file diff --git a/model_data/images/linear_function_2qL_topology.svg b/model_data/images/linear_function_2qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..8a883e4b52adeff044c16b32e3d4250f8034f9db --- /dev/null +++ b/model_data/images/linear_function_2qL_topology.svg @@ -0,0 +1,8 @@ + + + + +0 + +1 + \ No newline at end of file diff --git a/model_data/images/linear_function_3qL_topology.svg b/model_data/images/linear_function_3qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..3f0c8a99e14decd7120c97804e9c5b0220abe5df --- /dev/null +++ b/model_data/images/linear_function_3qL_topology.svg @@ -0,0 +1,11 @@ + + + + + +0 + +1 + +2 + \ No newline at end of file diff --git a/model_data/images/linear_function_4qL_topology.svg b/model_data/images/linear_function_4qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..94bdccfd239ecb765f28082a166cbff64e17f41a --- /dev/null +++ b/model_data/images/linear_function_4qL_topology.svg @@ -0,0 +1,14 @@ + + + + + + +0 + +1 + +2 + +3 + \ No newline at end of file diff --git a/model_data/images/linear_function_4qY_topology.svg b/model_data/images/linear_function_4qY_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..04205d2dbdeb108359319e4aed2111eeddca8a09 --- /dev/null +++ b/model_data/images/linear_function_4qY_topology.svg @@ -0,0 +1,14 @@ + + + + + + +0 + +1 + +2 + +3 + \ No newline at end of file diff --git a/model_data/images/linear_function_5qL_topology.svg b/model_data/images/linear_function_5qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..e962b820e4f145cdea8a65feac66adfd1de6a949 --- /dev/null +++ b/model_data/images/linear_function_5qL_topology.svg @@ -0,0 +1,17 @@ + + + + + + + +0 + +1 + +2 + +3 + +4 + \ No newline at end of file diff --git a/model_data/images/linear_function_5qT_topology.svg b/model_data/images/linear_function_5qT_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..c66c2f448533a2ae854c1593d72130f68ea482b5 --- /dev/null +++ b/model_data/images/linear_function_5qT_topology.svg @@ -0,0 +1,17 @@ + + + + + + + +0 + +1 + +2 + +3 + +4 + \ No newline at end of file diff --git a/model_data/images/linear_function_6qL_topology.svg b/model_data/images/linear_function_6qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..ea0c73ad148a499ec1cb4b186c4e4ed0e6fb39f5 --- /dev/null +++ b/model_data/images/linear_function_6qL_topology.svg @@ -0,0 +1,20 @@ + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + \ No newline at end of file diff --git a/model_data/images/linear_function_6qT_topology.svg b/model_data/images/linear_function_6qT_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..0b55cfe1629d26290892978e26f9b22425094750 --- /dev/null +++ b/model_data/images/linear_function_6qT_topology.svg @@ -0,0 +1,20 @@ + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + \ No newline at end of file diff --git a/model_data/images/linear_function_6qY_topology.svg b/model_data/images/linear_function_6qY_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..6093a4c99afb09fbf40a86e62709a10352389b91 --- /dev/null +++ b/model_data/images/linear_function_6qY_topology.svg @@ -0,0 +1,20 @@ + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + \ No newline at end of file diff --git a/model_data/images/linear_function_7qF_topology.svg b/model_data/images/linear_function_7qF_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..31d5b5c78677ad59983a482ce6165ade9c85e65b --- /dev/null +++ b/model_data/images/linear_function_7qF_topology.svg @@ -0,0 +1,23 @@ + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + \ No newline at end of file diff --git a/model_data/images/linear_function_7qH_topology.svg b/model_data/images/linear_function_7qH_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..a95be17385adceea72dfe84f90ead0d107ea46bf --- /dev/null +++ b/model_data/images/linear_function_7qH_topology.svg @@ -0,0 +1,23 @@ + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + \ No newline at end of file diff --git a/model_data/images/linear_function_7qL_topology.svg b/model_data/images/linear_function_7qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..155c6ccb5a1bb57ece5a747455b88ba2084c50ca --- /dev/null +++ b/model_data/images/linear_function_7qL_topology.svg @@ -0,0 +1,23 @@ + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + \ No newline at end of file diff --git a/model_data/images/linear_function_7qT_topology.svg b/model_data/images/linear_function_7qT_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..cead79c6575084fa6f89fd6e4cb834328a9ca2b2 --- /dev/null +++ b/model_data/images/linear_function_7qT_topology.svg @@ -0,0 +1,23 @@ + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + \ No newline at end of file diff --git a/model_data/images/linear_function_7qY_topology.svg b/model_data/images/linear_function_7qY_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..adb7a4b45fd71387c52cda2189719b4799bcbbed --- /dev/null +++ b/model_data/images/linear_function_7qY_topology.svg @@ -0,0 +1,23 @@ + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + \ No newline at end of file diff --git a/model_data/images/linear_function_8qF_topology.svg b/model_data/images/linear_function_8qF_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..a9476c622dd2488c66066cd8c241d82455759c5c --- /dev/null +++ b/model_data/images/linear_function_8qF_topology.svg @@ -0,0 +1,26 @@ + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + \ No newline at end of file diff --git a/model_data/images/linear_function_8qJ_topology.svg b/model_data/images/linear_function_8qJ_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..17a1e60702a430cdf0ccfb0b2b1d0524adcc6282 --- /dev/null +++ b/model_data/images/linear_function_8qJ_topology.svg @@ -0,0 +1,26 @@ + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + \ No newline at end of file diff --git a/model_data/images/linear_function_8qL_topology.svg b/model_data/images/linear_function_8qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..a9caaf34c0f593ed12690f12cc63ff94782827d1 --- /dev/null +++ b/model_data/images/linear_function_8qL_topology.svg @@ -0,0 +1,26 @@ + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + \ No newline at end of file diff --git a/model_data/images/linear_function_8qT1_topology.svg b/model_data/images/linear_function_8qT1_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..bdc7d43ee23781f3774d3decad0ab80afb262384 --- /dev/null +++ b/model_data/images/linear_function_8qT1_topology.svg @@ -0,0 +1,26 @@ + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + \ No newline at end of file diff --git a/model_data/images/linear_function_8qT2_topology.svg b/model_data/images/linear_function_8qT2_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..1962c3ebcc0f517a969cd8790b65dc8bb41738a3 --- /dev/null +++ b/model_data/images/linear_function_8qT2_topology.svg @@ -0,0 +1,26 @@ + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + \ No newline at end of file diff --git a/model_data/images/linear_function_8qY_topology.svg b/model_data/images/linear_function_8qY_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..e06dd3a296916948a4989dd83157abb0ef71badb --- /dev/null +++ b/model_data/images/linear_function_8qY_topology.svg @@ -0,0 +1,26 @@ + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qF1_topology.svg b/model_data/images/linear_function_9qF1_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..31c39e408fb03686e88a523c76d89e2a69581c8f --- /dev/null +++ b/model_data/images/linear_function_9qF1_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qF2_topology.svg b/model_data/images/linear_function_9qF2_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..8d5d069a9670a5347b5bf35bb42161c04ec9e21a --- /dev/null +++ b/model_data/images/linear_function_9qF2_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qH1_topology.svg b/model_data/images/linear_function_9qH1_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..8afb7da89ade0d95f4f14a91ae204b8b0e38ced1 --- /dev/null +++ b/model_data/images/linear_function_9qH1_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qH2_topology.svg b/model_data/images/linear_function_9qH2_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..176f8c514ec72f2dc5480c92dd80c22266e7143c --- /dev/null +++ b/model_data/images/linear_function_9qH2_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qH3_topology.svg b/model_data/images/linear_function_9qH3_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..c9988927de323a20cf1c93b471f3cfaa8545667d --- /dev/null +++ b/model_data/images/linear_function_9qH3_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qJ_topology.svg b/model_data/images/linear_function_9qJ_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..f420dcbcd6a7c9aaa9488a6cc3bb4100c42f80be --- /dev/null +++ b/model_data/images/linear_function_9qJ_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qL_topology.svg b/model_data/images/linear_function_9qL_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..8649f5102605a4cc1fa625ac307b95c7d0850430 --- /dev/null +++ b/model_data/images/linear_function_9qL_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qT1_topology.svg b/model_data/images/linear_function_9qT1_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..358e57d754afa08696badf435c5ab1b1f586734e --- /dev/null +++ b/model_data/images/linear_function_9qT1_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qT2_topology.svg b/model_data/images/linear_function_9qT2_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..9517c247120e483c982943da383e59ee1e9be655 --- /dev/null +++ b/model_data/images/linear_function_9qT2_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/images/linear_function_9qY_topology.svg b/model_data/images/linear_function_9qY_topology.svg new file mode 100644 index 0000000000000000000000000000000000000000..795e8b0d5dfd167ae39f4d3f826c5cdd986b6720 --- /dev/null +++ b/model_data/images/linear_function_9qY_topology.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + +0 + +1 + +2 + +3 + +4 + +5 + +6 + +7 + +8 + \ No newline at end of file diff --git a/model_data/linear_function_10qL.md b/model_data/linear_function_10qL.md new file mode 100644 index 0000000000000000000000000000000000000000..4fc9353e7a53e295ccb98aaecfdc750a050b4e2e --- /dev/null +++ b/model_data/linear_function_10qL.md @@ -0,0 +1,13 @@ +# linear_function_10qL + +- Qubits: 10 +- Topology: L +- Config: `linear_function_10qL.json` +- Weights: `linear_function_10qL.safetensors` + +![Topology](images/linear_function_10qL_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6], [6, 7], [7, 8], [8, 9]] +``` diff --git a/model_data/linear_function_2qL.md b/model_data/linear_function_2qL.md new file mode 100644 index 0000000000000000000000000000000000000000..5294b3fc275360d68dcf1fdeda3c05e45c1d3d8e --- /dev/null +++ b/model_data/linear_function_2qL.md @@ -0,0 +1,13 @@ +# linear_function_2qL + +- Qubits: 2 +- Topology: L +- Config: `linear_function_2qL.json` +- Weights: `linear_function_2qL.safetensors` + +![Topology](images/linear_function_2qL_topology.svg) + +Coupling map: +```python +[[0, 1]] +``` diff --git a/model_data/linear_function_3qL.md b/model_data/linear_function_3qL.md new file mode 100644 index 0000000000000000000000000000000000000000..dbe522254267a038dbb00f2b7d3ee1775dcb52a7 --- /dev/null +++ b/model_data/linear_function_3qL.md @@ -0,0 +1,13 @@ +# linear_function_3qL + +- Qubits: 3 +- Topology: L +- Config: `linear_function_3qL.json` +- Weights: `linear_function_3qL.safetensors` + +![Topology](images/linear_function_3qL_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2]] +``` diff --git a/model_data/linear_function_4qL.md b/model_data/linear_function_4qL.md new file mode 100644 index 0000000000000000000000000000000000000000..8a322fc03adb740b4c943350a9ae29d1b6d93528 --- /dev/null +++ b/model_data/linear_function_4qL.md @@ -0,0 +1,13 @@ +# linear_function_4qL + +- Qubits: 4 +- Topology: L +- Config: `linear_function_4qL.json` +- Weights: `linear_function_4qL.safetensors` + +![Topology](images/linear_function_4qL_topology.svg) + +Coupling map: +```python +[[0, 1], [0, 3], [2, 3]] +``` diff --git a/model_data/linear_function_4qY.md b/model_data/linear_function_4qY.md new file mode 100644 index 0000000000000000000000000000000000000000..d375f22433def882e5dbd7ef805a9aa12fd1bb4b --- /dev/null +++ b/model_data/linear_function_4qY.md @@ -0,0 +1,13 @@ +# linear_function_4qY + +- Qubits: 4 +- Topology: Y +- Config: `linear_function_4qY.json` +- Weights: `linear_function_4qY.safetensors` + +![Topology](images/linear_function_4qY_topology.svg) + +Coupling map: +```python +[[0, 3], [1, 3], [2, 3]] +``` diff --git a/model_data/linear_function_5qL.md b/model_data/linear_function_5qL.md new file mode 100644 index 0000000000000000000000000000000000000000..9609d24150457cb2b6bd59846ff27349e19a2c81 --- /dev/null +++ b/model_data/linear_function_5qL.md @@ -0,0 +1,13 @@ +# linear_function_5qL + +- Qubits: 5 +- Topology: L +- Config: `linear_function_5qL.json` +- Weights: `linear_function_5qL.safetensors` + +![Topology](images/linear_function_5qL_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 3], [3, 4]] +``` diff --git a/model_data/linear_function_5qT.md b/model_data/linear_function_5qT.md new file mode 100644 index 0000000000000000000000000000000000000000..80dc7ebeab084195c5ea363b2221cef5f50ea7cd --- /dev/null +++ b/model_data/linear_function_5qT.md @@ -0,0 +1,13 @@ +# linear_function_5qT + +- Qubits: 5 +- Topology: T +- Config: `linear_function_5qT.json` +- Weights: `linear_function_5qT.safetensors` + +![Topology](images/linear_function_5qT_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 4]] +``` diff --git a/model_data/linear_function_6qL.md b/model_data/linear_function_6qL.md new file mode 100644 index 0000000000000000000000000000000000000000..b2a86aa7c8991de7b60b9f5969ecd7659371d6de --- /dev/null +++ b/model_data/linear_function_6qL.md @@ -0,0 +1,13 @@ +# linear_function_6qL + +- Qubits: 6 +- Topology: L +- Config: `linear_function_6qL.json` +- Weights: `linear_function_6qL.safetensors` + +![Topology](images/linear_function_6qL_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 3], [3, 4], [4, 5]] +``` diff --git a/model_data/linear_function_6qT.md b/model_data/linear_function_6qT.md new file mode 100644 index 0000000000000000000000000000000000000000..08df49ee57aa59750c8e0e2980f4d4dd85a941bd --- /dev/null +++ b/model_data/linear_function_6qT.md @@ -0,0 +1,13 @@ +# linear_function_6qT + +- Qubits: 6 +- Topology: T +- Config: `linear_function_6qT.json` +- Weights: `linear_function_6qT.safetensors` + +![Topology](images/linear_function_6qT_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 4], [4, 5]] +``` diff --git a/model_data/linear_function_6qY.md b/model_data/linear_function_6qY.md new file mode 100644 index 0000000000000000000000000000000000000000..6df9c158177e14c5f63d302aeff0bddf11989953 --- /dev/null +++ b/model_data/linear_function_6qY.md @@ -0,0 +1,13 @@ +# linear_function_6qY + +- Qubits: 6 +- Topology: Y +- Config: `linear_function_6qY.json` +- Weights: `linear_function_6qY.safetensors` + +![Topology](images/linear_function_6qY_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 3], [2, 3], [3, 4], [4, 5]] +``` diff --git a/model_data/linear_function_7qF.md b/model_data/linear_function_7qF.md new file mode 100644 index 0000000000000000000000000000000000000000..6bae87d23e431785a86064d97204985605ee9a24 --- /dev/null +++ b/model_data/linear_function_7qF.md @@ -0,0 +1,13 @@ +# linear_function_7qF + +- Qubits: 7 +- Topology: F +- Config: `linear_function_7qF.json` +- Weights: `linear_function_7qF.safetensors` + +![Topology](images/linear_function_7qF_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 3], [2, 3], [3, 4], [4, 5], [5, 6]] +``` diff --git a/model_data/linear_function_7qH.md b/model_data/linear_function_7qH.md new file mode 100644 index 0000000000000000000000000000000000000000..ffeb207f0afd15fc3e827fd587f4e6a7a82e63aa --- /dev/null +++ b/model_data/linear_function_7qH.md @@ -0,0 +1,13 @@ +# linear_function_7qH + +- Qubits: 7 +- Topology: H +- Config: `linear_function_7qH.json` +- Weights: `linear_function_7qH.safetensors` + +![Topology](images/linear_function_7qH_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 4], [4, 5], [4, 6]] +``` diff --git a/model_data/linear_function_7qL.md b/model_data/linear_function_7qL.md new file mode 100644 index 0000000000000000000000000000000000000000..a4685e7280e94ff294ac0e69a8201e4c888a7cc1 --- /dev/null +++ b/model_data/linear_function_7qL.md @@ -0,0 +1,13 @@ +# linear_function_7qL + +- Qubits: 7 +- Topology: L +- Config: `linear_function_7qL.json` +- Weights: `linear_function_7qL.safetensors` + +![Topology](images/linear_function_7qL_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 4], [3, 6], [4, 5], [5, 6]] +``` diff --git a/model_data/linear_function_7qT.md b/model_data/linear_function_7qT.md new file mode 100644 index 0000000000000000000000000000000000000000..2e96dd17791470898d4fd8a2a22f2ae7f2062e6c --- /dev/null +++ b/model_data/linear_function_7qT.md @@ -0,0 +1,13 @@ +# linear_function_7qT + +- Qubits: 7 +- Topology: T +- Config: `linear_function_7qT.json` +- Weights: `linear_function_7qT.safetensors` + +![Topology](images/linear_function_7qT_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 4], [4, 5], [5, 6]] +``` diff --git a/model_data/linear_function_7qY.md b/model_data/linear_function_7qY.md new file mode 100644 index 0000000000000000000000000000000000000000..2c64d415bf54ae8c4066abb55327ec1f17ff43bd --- /dev/null +++ b/model_data/linear_function_7qY.md @@ -0,0 +1,13 @@ +# linear_function_7qY + +- Qubits: 7 +- Topology: Y +- Config: `linear_function_7qY.json` +- Weights: `linear_function_7qY.safetensors` + +![Topology](images/linear_function_7qY_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 3], [2, 5], [3, 4], [5, 6]] +``` diff --git a/model_data/linear_function_8qF.md b/model_data/linear_function_8qF.md new file mode 100644 index 0000000000000000000000000000000000000000..88cfde418b6003562140e850bd87b0359ae6e47f --- /dev/null +++ b/model_data/linear_function_8qF.md @@ -0,0 +1,13 @@ +# linear_function_8qF + +- Qubits: 8 +- Topology: F +- Config: `linear_function_8qF.json` +- Weights: `linear_function_8qF.safetensors` + +![Topology](images/linear_function_8qF_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 3], [2, 3], [3, 4], [4, 5], [5, 6], [6, 7]] +``` diff --git a/model_data/linear_function_8qJ.md b/model_data/linear_function_8qJ.md new file mode 100644 index 0000000000000000000000000000000000000000..7620e3da17e995bb39c330e8643b41383b501613 --- /dev/null +++ b/model_data/linear_function_8qJ.md @@ -0,0 +1,13 @@ +# linear_function_8qJ + +- Qubits: 8 +- Topology: J +- Config: `linear_function_8qJ.json` +- Weights: `linear_function_8qJ.safetensors` + +![Topology](images/linear_function_8qJ_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 4], [4, 5], [4, 6], [6, 7]] +``` diff --git a/model_data/linear_function_8qL.md b/model_data/linear_function_8qL.md new file mode 100644 index 0000000000000000000000000000000000000000..f5400f6370422e8046c3cb381e509ed30889bedc --- /dev/null +++ b/model_data/linear_function_8qL.md @@ -0,0 +1,13 @@ +# linear_function_8qL + +- Qubits: 8 +- Topology: L +- Config: `linear_function_8qL.json` +- Weights: `linear_function_8qL.safetensors` + +![Topology](images/linear_function_8qL_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 3], [2, 4], [3, 5], [4, 7], [5, 6], [6, 7]] +``` diff --git a/model_data/linear_function_8qT1.md b/model_data/linear_function_8qT1.md new file mode 100644 index 0000000000000000000000000000000000000000..5ee750b8a517e2b4ccc6a9f5b4d0fc8e21cf4972 --- /dev/null +++ b/model_data/linear_function_8qT1.md @@ -0,0 +1,13 @@ +# linear_function_8qT1 + +- Qubits: 8 +- Topology: T1 +- Config: `linear_function_8qT1.json` +- Weights: `linear_function_8qT1.safetensors` + +![Topology](images/linear_function_8qT1_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 5], [4, 7], [5, 6], [6, 7]] +``` diff --git a/model_data/linear_function_8qT2.md b/model_data/linear_function_8qT2.md new file mode 100644 index 0000000000000000000000000000000000000000..d83360793177167b67a6f979ffbbcc8d1355c41a --- /dev/null +++ b/model_data/linear_function_8qT2.md @@ -0,0 +1,13 @@ +# linear_function_8qT2 + +- Qubits: 8 +- Topology: T2 +- Config: `linear_function_8qT2.json` +- Weights: `linear_function_8qT2.safetensors` + +![Topology](images/linear_function_8qT2_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 3], [3, 4], [3, 6], [4, 5], [6, 7]] +``` diff --git a/model_data/linear_function_8qY.md b/model_data/linear_function_8qY.md new file mode 100644 index 0000000000000000000000000000000000000000..8eb3dea1f777f43a0f28b06f567dace525c7fd7e --- /dev/null +++ b/model_data/linear_function_8qY.md @@ -0,0 +1,13 @@ +# linear_function_8qY + +- Qubits: 8 +- Topology: Y +- Config: `linear_function_8qY.json` +- Weights: `linear_function_8qY.safetensors` + +![Topology](images/linear_function_8qY_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 4], [3, 6], [4, 5], [4, 7], [5, 6]] +``` diff --git a/model_data/linear_function_9qF1.md b/model_data/linear_function_9qF1.md new file mode 100644 index 0000000000000000000000000000000000000000..90ae7f699afee875a0c578183551cd4cd7b05d72 --- /dev/null +++ b/model_data/linear_function_9qF1.md @@ -0,0 +1,13 @@ +# linear_function_9qF1 + +- Qubits: 9 +- Topology: F1 +- Config: `linear_function_9qF1.json` +- Weights: `linear_function_9qF1.safetensors` + +![Topology](images/linear_function_9qF1_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 3], [2, 4], [3, 5], [4, 7], [5, 6], [6, 7], [7, 8]] +``` diff --git a/model_data/linear_function_9qF2.md b/model_data/linear_function_9qF2.md new file mode 100644 index 0000000000000000000000000000000000000000..5bec31bc03db3cf91fe97cb2dc7abc015a25f3b2 --- /dev/null +++ b/model_data/linear_function_9qF2.md @@ -0,0 +1,13 @@ +# linear_function_9qF2 + +- Qubits: 9 +- Topology: F2 +- Config: `linear_function_9qF2.json` +- Weights: `linear_function_9qF2.safetensors` + +![Topology](images/linear_function_9qF2_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 3], [2, 4], [3, 5], [4, 7], [5, 6], [5, 8], [6, 7]] +``` diff --git a/model_data/linear_function_9qH1.md b/model_data/linear_function_9qH1.md new file mode 100644 index 0000000000000000000000000000000000000000..56a41637c752b30a6be3fb247f93b5e34aa48128 --- /dev/null +++ b/model_data/linear_function_9qH1.md @@ -0,0 +1,13 @@ +# linear_function_9qH1 + +- Qubits: 9 +- Topology: H1 +- Config: `linear_function_9qH1.json` +- Weights: `linear_function_9qH1.safetensors` + +![Topology](images/linear_function_9qH1_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 5], [4, 7], [5, 6], [6, 7], [7, 8]] +``` diff --git a/model_data/linear_function_9qH2.md b/model_data/linear_function_9qH2.md new file mode 100644 index 0000000000000000000000000000000000000000..bc9dfa2ac9264efb3441f511f477b981b6092bef --- /dev/null +++ b/model_data/linear_function_9qH2.md @@ -0,0 +1,13 @@ +# linear_function_9qH2 + +- Qubits: 9 +- Topology: H2 +- Config: `linear_function_9qH2.json` +- Weights: `linear_function_9qH2.safetensors` + +![Topology](images/linear_function_9qH2_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 3], [2, 3], [3, 4], [4, 5], [5, 6], [5, 7], [7, 8]] +``` diff --git a/model_data/linear_function_9qH3.md b/model_data/linear_function_9qH3.md new file mode 100644 index 0000000000000000000000000000000000000000..4a8fc045a94d870e21c878b7bf615c28d2c86f6e --- /dev/null +++ b/model_data/linear_function_9qH3.md @@ -0,0 +1,13 @@ +# linear_function_9qH3 + +- Qubits: 9 +- Topology: H3 +- Config: `linear_function_9qH3.json` +- Weights: `linear_function_9qH3.safetensors` + +![Topology](images/linear_function_9qH3_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 4], [4, 5], [4, 7], [5, 6], [7, 8]] +``` diff --git a/model_data/linear_function_9qJ.md b/model_data/linear_function_9qJ.md new file mode 100644 index 0000000000000000000000000000000000000000..c217f9040b512367d762aa48eb4409f6be558ab7 --- /dev/null +++ b/model_data/linear_function_9qJ.md @@ -0,0 +1,13 @@ +# linear_function_9qJ + +- Qubits: 9 +- Topology: J +- Config: `linear_function_9qJ.json` +- Weights: `linear_function_9qJ.safetensors` + +![Topology](images/linear_function_9qJ_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 3], [3, 5], [4, 7], [5, 6], [5, 8], [6, 7]] +``` diff --git a/model_data/linear_function_9qL.md b/model_data/linear_function_9qL.md new file mode 100644 index 0000000000000000000000000000000000000000..8838f450e4e548ee4325c9fee61e44e38ebae735 --- /dev/null +++ b/model_data/linear_function_9qL.md @@ -0,0 +1,13 @@ +# linear_function_9qL + +- Qubits: 9 +- Topology: L +- Config: `linear_function_9qL.json` +- Weights: `linear_function_9qL.safetensors` + +![Topology](images/linear_function_9qL_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 4], [2, 3], [2, 5], [4, 6], [5, 8], [6, 7], [7, 8]] +``` diff --git a/model_data/linear_function_9qT1.md b/model_data/linear_function_9qT1.md new file mode 100644 index 0000000000000000000000000000000000000000..96961dec22a2f47023606ecaa1cdf99f8ca154ae --- /dev/null +++ b/model_data/linear_function_9qT1.md @@ -0,0 +1,13 @@ +# linear_function_9qT1 + +- Qubits: 9 +- Topology: T1 +- Config: `linear_function_9qT1.json` +- Weights: `linear_function_9qT1.safetensors` + +![Topology](images/linear_function_9qT1_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 2], [2, 4], [3, 5], [4, 6], [5, 8], [6, 7], [7, 8]] +``` diff --git a/model_data/linear_function_9qT2.md b/model_data/linear_function_9qT2.md new file mode 100644 index 0000000000000000000000000000000000000000..6e908bf97c9575cbad45c8b43b274f86005032c0 --- /dev/null +++ b/model_data/linear_function_9qT2.md @@ -0,0 +1,13 @@ +# linear_function_9qT2 + +- Qubits: 9 +- Topology: T2 +- Config: `linear_function_9qT2.json` +- Weights: `linear_function_9qT2.safetensors` + +![Topology](images/linear_function_9qT2_topology.svg) + +Coupling map: +```python +[[0, 2], [1, 3], [2, 4], [3, 6], [4, 5], [4, 7], [5, 6], [7, 8]] +``` diff --git a/model_data/linear_function_9qY.md b/model_data/linear_function_9qY.md new file mode 100644 index 0000000000000000000000000000000000000000..a46e1a3f4da55de1ff75287ede4574b65b8c7218 --- /dev/null +++ b/model_data/linear_function_9qY.md @@ -0,0 +1,13 @@ +# linear_function_9qY + +- Qubits: 9 +- Topology: Y +- Config: `linear_function_9qY.json` +- Weights: `linear_function_9qY.safetensors` + +![Topology](images/linear_function_9qY_topology.svg) + +Coupling map: +```python +[[0, 1], [1, 2], [2, 4], [3, 6], [4, 5], [4, 7], [5, 6], [7, 8]] +```