def main(): logger.set_logger() log = logger.get_logger(__name__) # n = 50 # x, y = make_points(n) n, x, y = read_hokkaido() graph = make_euclidean_graph(n, x, y) solution = make_problem_and_solve(graph, n) plot_graph(solution, x, y)
def main(): logger.set_logger() log = logger.get_logger(__name__) n = 10 p = 0.4 edges = make_edges(n, p) problem = make_problem(n, edges) solve_with_log.exec(problem, False, 100) log.debug(f"by enumeration: {solution_by_enumeration(n, edges)}") log.debug(F"edges:{edges}")
def main(): logger.set_logger() log = logger.get_logger(__name__) instance = make_simple_instance() stock, production, setup = make_variables(instance) problem = make_problem(instance, stock, production, setup) solve_with_log.exec(problem) for i in range(5): log.debug( f"{pulp.value(production[0, i])},{pulp.value(stock[0, i])},{pulp.value(setup[0, i])}" )
def main(): logger.set_logger() log = logger.get_logger(__name__) n = 40 x, y = make_points(n) graph = to_directed_graph(make_euclidean_graph(n, x, y)) problem_loose = make_problem_by_loose_constraint(graph, n) problem_tight = make_problem_by_tight_constraint(graph, n) solution = solve(problem_loose, graph) plot_graph(solution, x, y) solution = solve(problem_tight, graph) plot_graph(solution, x, y)
def main(): logger.set_logger() log = logger.get_logger(__name__) bin_capacity, items = read_from_text(0) # bin_capacity, items = make_instance() # initial_solution = make_solution_by_greedy(bin_capacity, items) initial_solution = make_simple_solution(bin_capacity, items) solutions_str = "\n".join([f"{row}" for row in initial_solution]) log.debug(f"=========initial_solution=========\n{solutions_str}") problem = make_problem_with_initial_solution(bin_capacity, items, initial_solution) # problem = make_problem(bin_capacity, items) solve_with_log.exec(problem, True, 300)
def main(): logger.set_logger() log = logger.get_logger(__name__) instance = read_instance('PSP_100_1.psp') stock, production, last_production, setup = make_variables(instance) problem = make_problem(instance, stock, production, last_production, setup) solve_with_log.exec(problem) for t in range(instance.n_terms): for p in range(instance.n_products): if pulp.value(production[p, t]) == 1: log.info(f"product:{t}:{p}") if pulp.value(last_production[p, t]) == 1: log.info(f"last_production:{t}:{p}") if pulp.value(stock[p, t]) >= 1: log.info(f"stock:{t}:{p}:{pulp.value(stock[p, t])}") for p, q in itertools.product(range(instance.n_products), range(instance.n_products)): if pulp.value(setup[p, q, t]) == 1: log.info(f"setup:{t}:{p}->{q}")
import os import errno from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager # 待機用 from selenium.webdriver.support.ui import WebDriverWait from selenium.common.exceptions import TimeoutException, UnexpectedAlertPresentException from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By from selenium.webdriver.common.alert import Alert # ロガーの設定 from common.logger import set_logger logger = set_logger(__name__) # web要素へのアクション ACTION_TYPE_CLICK = 1 ACTION_TYPE_GET_URL = 2 class Driver(Singleton): """ウェブドライバーを操作するクラス""" def __init__(self, headless_flg): # 既にドライバーを作成済みの場合、事前に閉じる if hasattr(self, 'driver'): self.driver.quit() #chromeドライバーの読込
def main(): logger.set_logger() log = logger.get_logger(__name__) n, edges = read_instance("queen5_5.col") opt = binary_seach(n, edges) log.debug(f"opt:{opt}")
for i, j in itertools.product(range(instance.n_customers), range(instance.n_facilities)): problem.addConstraint(x[i, j] >= 0, name=f"x_positive_{i}_{j}") for i in range(instance.n_customers): problem.addConstraint(pulp.lpSum( [x[i, j] for j in range(instance.n_facilities)]) >= instance.demands[i], name=f"customer_demands_positive_{i}") problem.addConstraint(pulp.lpSum( [x[i, j] for j in range(instance.n_facilities)]) <= instance.demands[i], name=f"customer_demands_negative_{i}") for j in range(instance.n_facilities): problem.addConstraint( pulp.lpSum([x[i, j] for i in range(instance.n_customers) ]) <= y[j] * instance.capacity[j], name=f"capacity_{j}") return problem def main(): instance = read_instance(os.path.join(instance_dir, "cap42.txt")) problem = make_problem(instance) solve_with_log.exec(problem, False, 300) if __name__ == "__main__": logger.set_logger() main()
def main(): logger.set_logger() log = logger.get_logger(__name__) a = range(-5, 6) problem = make_problem(target_func, a)