Skip to content

Commit

Permalink
Updated PEP8 compliance
Browse files Browse the repository at this point in the history
Co-authored-by: Greshma Shaji <[email protected]>
Co-authored-by: Marvin Erdmann <[email protected]>
  • Loading branch information
3 people authored Feb 14, 2025
1 parent 5522bd5 commit bbbd4ec
Show file tree
Hide file tree
Showing 189 changed files with 1,371 additions and 936 deletions.
400 changes: 200 additions & 200 deletions .settings/module_db.json

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ Example run (you need to check at least one option with an ``X`` for the checkbo
SCP
GenerativeModeling
2024-10-09 15:05:52,610 [INFO] Import module modules.applications.optimization.TSP.TSP
2024-10-09 15:05:52,610 [INFO] Import module modules.applications.optimization.tsp.tsp
[?] (Option for TSP) How many nodes does you graph need?:
> [X] 3
[ ] 4
Expand All @@ -154,13 +154,13 @@ Example run (you need to check at least one option with an ``X`` for the checkbo
[ ] ReverseGreedyClassicalTSP
[ ] RandomTSP
2024-10-09 15:06:20,897 [INFO] Import module modules.solvers.GreedyClassicalTSP
2024-10-09 15:06:20,897 [INFO] Import module modules.solvers.greedy_classical_tsp
2024-10-09 15:06:20,933 [INFO] Skipping asking for submodule, since only 1 option (Local) is available.
2024-10-09 15:06:20,933 [INFO] Import module modules.devices.Local
2024-10-09 15:06:20,946 [INFO] Submodule configuration finished
[?] How many repetitions do you want?: 1P
2024-10-09 15:07:11,573 [INFO] Import module modules.applications.optimization.TSP.TSP
2024-10-09 15:07:11,573 [INFO] Import module modules.solvers.GreedyClassicalTSP
2024-10-09 15:07:11,573 [INFO] Import module modules.applications.optimization.tsp.tsp
2024-10-09 15:07:11,573 [INFO] Import module modules.solvers.greedy_classical_tsp
2024-10-09 15:07:11,574 [INFO] Import module modules.devices.Local
2024-10-09 15:07:12,194 [INFO] [INFO] Created Benchmark run directory /Users/user1/quark/benchmark_runs/tsp-2024-10-09-15-07-11
2024-10-09 15:07:12,194 [INFO] Codebase is based on revision 1d9d17aad7ddff623ff51f62ca3ec2756621c345 and has no uncommitted changes
Expand Down
4 changes: 2 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@

autosummary_generate = True # Turn on sphinx.ext.autosummary
autosummary_mock_imports = [
'modules.applications.optimization.PVC.createReferenceGraph',
'modules.applications.optimization.TSP.createReferenceGraph'
'modules.applications.optimization.pvc.createReferenceGraph',
'modules.applications.optimization.tsp.createReferenceGraph'
]
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
Expand Down
12 changes: 6 additions & 6 deletions docs/tutorial.rst
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ Example run (You need to check at least one option with an ``X`` for the checkbo
SCP
GenerativeModeling
2024-10-09 15:05:52,610 [INFO] Import module modules.applications.optimization.TSP.TSP
2024-10-09 15:05:52,610 [INFO] Import module modules.applications.optimization.tsp.tsp
[?] (Option for TSP) How many nodes does you graph need?:
> [X] 3
[ ] 4
Expand All @@ -200,13 +200,13 @@ Example run (You need to check at least one option with an ``X`` for the checkbo
[ ] ReverseGreedyClassicalTSP
[ ] RandomTSP
2024-10-09 15:06:20,897 [INFO] Import module modules.solvers.GreedyClassicalTSP
2024-10-09 15:06:20,897 [INFO] Import module modules.solvers.greedy_classical_tsp
2024-10-09 15:06:20,933 [INFO] Skipping asking for submodule, since only 1 option (Local) is available.
2024-10-09 15:06:20,933 [INFO] Import module modules.devices.Local
2024-10-09 15:06:20,946 [INFO] Submodule configuration finished
[?] How many repetitions do you want?: 1P
2024-10-09 15:07:11,573 [INFO] Import module modules.applications.optimization.TSP.TSP
2024-10-09 15:07:11,573 [INFO] Import module modules.solvers.GreedyClassicalTSP
2024-10-09 15:07:11,573 [INFO] Import module modules.applications.optimization.tsp.tsp
2024-10-09 15:07:11,573 [INFO] Import module modules.solvers.greedy_classical_tsp
2024-10-09 15:07:11,574 [INFO] Import module modules.devices.Local
2024-10-09 15:07:12,194 [INFO] [INFO] Created Benchmark run directory /Users/user1/quark/benchmark_runs/tsp-2024-10-09-15-07-11
2024-10-09 15:07:12,194 [INFO] Codebase is based on revision 1d9d17aad7ddff623ff51f62ca3ec2756621c345 and has no uncommitted changes
Expand Down Expand Up @@ -359,12 +359,12 @@ An example for this would be:
[
{
"name": "TSP",
"module": "modules.applications.optimization.TSP.TSP",
"module": "modules.applications.optimization.tsp.tsp",
"dir": "src",
"submodules": [
{
"name": "GreedyClassicalTSP",
"module": "modules.solvers.GreedyClassicalTSP",
"module": "modules.solvers.greedy_classical_tsp",
"submodules": []
}
]
Expand Down
8 changes: 4 additions & 4 deletions src/BenchmarkManager.py → src/benchmark_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@

import numpy as np

from BenchmarkRecord import BenchmarkRecord, BenchmarkRecordStored
from ConfigManager import ConfigManager
from modules.Core import Core
from Plotter import Plotter
from config_manager import ConfigManager
from benchmark_record import BenchmarkRecord, BenchmarkRecordStored
from plotter import Plotter
from modules.core import Core
from utils import get_git_revision
from utils_mpi import get_comm

Expand Down
2 changes: 1 addition & 1 deletion src/BenchmarkRecord.py → src/benchmark_record.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
from copy import deepcopy
from typing import final

from Metrics import Metrics
from metrics import Metrics


class BenchmarkRecord:
Expand Down
10 changes: 5 additions & 5 deletions src/ConfigManager.py → src/config_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,14 @@
import networkx as nx
import numpy as np
import yaml
from typing_extensions import NotRequired, Self, TypedDict
from typing_extensions import TypedDict, NotRequired, Self

from modules.applications import Application
from modules.Core import Core
from modules.core import Core
from modules.applications.application import Application
from utils import _get_instance_with_sub_options, checkbox


class ConfigModule(TypedDict): # pylint: disable=R0903
class ConfigModule(TypedDict):
"""
Each instance consists of the name of the module, its config, and a list of its configured submodules, which are
ConfigModule instances themselves. It can also contain the instance of the class associated to this module,
Expand All @@ -40,7 +40,7 @@ class ConfigModule(TypedDict): # pylint: disable=R0903
instance: NotRequired[Core]


class BenchmarkConfig(TypedDict): # pylint: disable=R0903
class BenchmarkConfig(TypedDict):
"""
Each instance consists of a ConfigModule associated with the application at the first level and the number of
repetitions of the benchmark.
Expand Down
6 changes: 3 additions & 3 deletions src/demo/instruction_demo.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import logging

from BenchmarkManager import Instruction
from modules.applications.Application import Application
from modules.Core import Core
from benchmark_manager import Instruction
from modules.core import Core
from modules.applications.application import Application


class InstructionDemo(Application):
Expand Down
64 changes: 32 additions & 32 deletions src/Installer.py → src/installer.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,19 @@
# See the License for the specific language governing permissions and
# limitations under the License.

import inspect
import json
import logging
import json
import os
import time
from pathlib import Path
import inspect

import inquirer
import yaml
from packaging import version
import inquirer

from modules.Core import Core
from utils import _get_instance_with_sub_options, checkbox, get_git_revision
from modules.core import Core
from utils import _get_instance_with_sub_options, get_git_revision, checkbox


class Installer:
Expand All @@ -40,14 +40,14 @@ def __init__(self):
self.python_version = "3.12.7"
self.pip_version = "23.0"
self.default_app_modules = [
{"name": "PVC", "class": "PVC", "module": "modules.applications.optimization.PVC.PVC"},
{"name": "SAT", "class": "SAT", "module": "modules.applications.optimization.SAT.SAT"},
{"name": "TSP", "class": "TSP", "module": "modules.applications.optimization.TSP.TSP"},
{"name": "ACL", "class": "ACL", "module": "modules.applications.optimization.ACL.ACL"},
{"name": "MIS", "class": "MIS", "module": "modules.applications.optimization.MIS.MIS"},
{"name": "SCP", "class": "SCP", "module": "modules.applications.optimization.SCP.SCP"},
{"name": "PVC", "class": "PVC", "module": "modules.applications.optimization.pvc.pvc"},
{"name": "SAT", "class": "SAT", "module": "modules.applications.optimization.sat.sat"},
{"name": "TSP", "class": "TSP", "module": "modules.applications.optimization.tsp.tsp"},
{"name": "ACL", "class": "ACL", "module": "modules.applications.optimization.acl.acl"},
{"name": "MIS", "class": "MIS", "module": "modules.applications.optimization.mis.mis"},
{"name": "SCP", "class": "SCP", "module": "modules.applications.optimization.scp.scp"},
{"name": "GenerativeModeling", "class": "GenerativeModeling",
"module": "modules.applications.qml.generative_modeling.GenerativeModeling"}
"module": "modules.applications.qml.generative_modeling.generative_modeling"}
]

self.core_requirements = [
Expand Down Expand Up @@ -96,26 +96,26 @@ def configure(self, env_name="default") -> None:
self.save_env(module_db, env_name)

requirements = self.collect_requirements(module_db["modules"])
# activate_requirements = checkbox("requirements", "Should we create an package file, if yes for "
# "which package manager?",
# ["Conda", "PIP", "Print it here"])["requirements"]

# if "Conda" in activate_requirements:
# self.create_conda_file(requirements, env_name)
# if "PIP" in activate_requirements:
self.create_req_file(requirements, env_name)
# if "Print it here" in activate_requirements:
# logging.info("Please install:")
# for p, v in requirements.items():
# logging.info(f" - {p}{': ' + v[0] if v else ''}")

# activate_answer = inquirer.prompt([
# inquirer.List("activate",
# message="Do you want to activate the QUARK module environment?",
# choices=["Yes", "No"])])["activate"]

# if activate_answer == "Yes":
self.set_active_env(env_name)
activate_requirements = checkbox("requirements", "Should we create an package file, if yes for "
"which package manager?",
["Conda", "PIP", "Print it here"])["requirements"]

if "Conda" in activate_requirements:
self.create_conda_file(requirements, env_name)
if "PIP" in activate_requirements:
self.create_req_file(requirements, env_name)
if "Print it here" in activate_requirements:
logging.info("Please install:")
for p, v in requirements.items():
logging.info(f" - {p}{': ' + v[0] if v else ''}")

activate_answer = inquirer.prompt([
inquirer.List("activate",
message="Do you want to activate the QUARK module environment?",
choices=["Yes", "No"])])["activate"]

if activate_answer == "Yes":
self.set_active_env(env_name)

def check_for_configs(self) -> list:
"""
Expand Down
12 changes: 6 additions & 6 deletions src/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

import yaml

from Installer import Installer
from installer import Installer
from utils import _expand_paths
from utils_mpi import MPIFileHandler, MPIStreamHandler, get_comm

Expand Down Expand Up @@ -97,8 +97,8 @@ def start_benchmark_run(config_file: str = None, store_dir: str = None,

benchmark_config = json.loads(benchmark_config["config"])

from BenchmarkManager import BenchmarkManager # pylint: disable=C0415
from ConfigManager import ConfigManager # pylint: disable=C0415
from benchmark_manager import BenchmarkManager # pylint: disable=C0415
from config_manager import ConfigManager # pylint: disable=C0415

config_manager = ConfigManager()
config_manager.set_config(benchmark_config)
Expand Down Expand Up @@ -147,15 +147,15 @@ def handle_benchmark_run(args: argparse.Namespace) -> None:
:param args: Namespace with the arguments given by the user
"""
from BenchmarkManager import BenchmarkManager # pylint: disable=C0415
from Plotter import Plotter # pylint: disable=C0415
from benchmark_manager import BenchmarkManager # pylint: disable=C0415
from plotter import Plotter # pylint: disable=C0415

benchmark_manager = BenchmarkManager(fail_fast=args.failfast)

if args.summarize:
benchmark_manager.summarize_results(args.summarize)
else:
from ConfigManager import ConfigManager # pylint: disable=C0415
from config_manager import ConfigManager # pylint: disable=C0415
config_manager = ConfigManager()
if args.modules:
logging.info(f"Load application modules configuration from {args.modules}")
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@
# limitations under the License.

from abc import ABC, abstractmethod

from modules.Core import Core
from modules.core import Core


class Application(Core, ABC):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@
# limitations under the License.

from abc import ABC, abstractmethod

from modules.Core import Core
from modules.core import Core


class Mapping(Core, ABC):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,17 @@
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.

import logging
import os
import logging
from typing import TypedDict

import numpy as np
import pandas as pd
import numpy as np
import pulp

from modules.applications.Application import Core
from modules.applications.optimization.Optimization import Optimization
from utils import end_time_measurement, start_time_measurement
from modules.applications.application import Core
from modules.applications.optimization.optimization import Optimization
from utils import start_time_measurement, end_time_measurement


class ACL(Optimization):
Expand Down Expand Up @@ -84,12 +84,10 @@ def get_default_submodule(self, option: str) -> Core:
:raises NotImplementedError: If the option is not recognized
"""
if option == "MIPsolverACL":
from modules.solvers.MIPsolverACL import \
MIPaclp # pylint: disable=C0415
from modules.solvers.mip_solver_acl import MIPaclp # pylint: disable=C0415
return MIPaclp()
elif option == "QUBO":
from modules.applications.optimization.ACL.mappings.QUBO import \
Qubo # pylint: disable=C0415
from modules.applications.optimization.acl.mappings.qubo import Qubo # pylint: disable=C0415
return Qubo()
else:
raise NotImplementedError(f"Submodule Option {option} not implemented")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@
from qiskit_optimization import QuadraticProgram
from qiskit_optimization.converters import QuadraticProgramToQubo

from modules.applications.Mapping import Mapping
from modules.Core import Core
from utils import end_time_measurement, start_time_measurement
from modules.applications.mapping import Mapping
from modules.core import Core
from utils import start_time_measurement, end_time_measurement


class Ising(Mapping):
Expand Down Expand Up @@ -200,10 +200,10 @@ def get_default_submodule(self, option: str) -> Core:
:raises NotImplementedError: If the option is not recognized
"""
if option == "QAOA":
from modules.solvers.QAOA import QAOA # pylint: disable=C0415
from modules.solvers.qaoa import QAOA # pylint: disable=C0415
return QAOA()
elif option == "QiskitQAOA":
from modules.solvers.QiskitQAOA import QiskitQAOA # pylint: disable=C0415
from modules.solvers.qiskit_qaoa import QiskitQAOA # pylint: disable=C0415
return QiskitQAOA()
else:
raise NotImplementedError(f"Solver Option {option} not implemented")
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,19 @@
# See the License for the specific language governing permissions and
# limitations under the License.

import logging
import re
from typing import TypedDict
import re
import logging

import numpy as np
from qiskit_optimization import QuadraticProgram
from qiskit_optimization.converters import (InequalityToEquality,
IntegerToBinary,
LinearEqualityToPenalty)
from qiskit_optimization.converters import (
InequalityToEquality, IntegerToBinary,
LinearEqualityToPenalty
)

from modules.applications.Mapping import Core, Mapping
from utils import end_time_measurement, start_time_measurement
from modules.applications.mapping import Mapping, Core
from utils import start_time_measurement, end_time_measurement

# TODO Large chunks of this code is duplicated in ACL.mappings.ISING -> unify

Expand Down Expand Up @@ -268,7 +269,7 @@ def get_default_submodule(self, option: str) -> Core:
:raises NotImplementedError: If the option is not recognized
"""
if option == "Annealer":
from modules.solvers.Annealer import Annealer # pylint: disable=C0415
from modules.solvers.annealer import Annealer # pylint: disable=C0415
return Annealer()
else:
raise NotImplementedError(f"Solver Option {option} not implemented")
Loading

0 comments on commit bbbd4ec

Please sign in to comment.