src.environment.problem.MOO.MOO_synthetic.wfg_torch¶
Module Contents¶
Classes¶
Introduction¶A PyTorch version of the WFG test suite for multi-objective optimization problems. |
|
Functions¶
Introduction¶Generates a set of uniformly distributed reference points (weight vectors) for a given number of objectives. This function is typically used in multi-objective optimization algorithms such as NSGA-III and RVEA, where reference points are required to guide the selection process. |
|
Introduction¶Find the indices of non-dominated solutions in a population. A solution is said to be non-dominated if no other solution in the population dominates it. This function performs a pairwise comparison between all solutions. |
|
API¶
- src.environment.problem.MOO.MOO_synthetic.wfg_torch.crtup(n_obj, n_ref_points=1000)[source]¶
Introduction¶
Generates a set of uniformly distributed reference points (weight vectors) for a given number of objectives. This function is typically used in multi-objective optimization algorithms such as NSGA-III and RVEA, where reference points are required to guide the selection process.
Args:¶
n_obj (int): Number of objectives (i.e., the dimensionality of the reference points).
n_ref_points (int): Approximate number of desired reference points (default: 1000).
Returns:¶
W (np.ndarray): A 2D array of shape (n_comb, n_obj) representing the generated reference vectors.
n_comb (int): Actual number of generated reference vectors.
- src.environment.problem.MOO.MOO_synthetic.wfg_torch.find_non_dominated_indices(Point)[source]¶
Introduction¶
Find the indices of non-dominated solutions in a population.
A solution is said to be non-dominated if no other solution in the population dominates it. This function performs a pairwise comparison between all solutions.
Args:¶
Point (np.ndarray): A 2D array of shape (n_points, n_objectives), where each row represents the objective values of a solution.
Returns:¶
non_dominated_indices (np.ndarray): Indices of the non-dominated solutions.
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.basic_problem.Basic_Problem_TorchIntroduction¶
A PyTorch version of the WFG test suite for multi-objective optimization problems.
Initialization
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG1_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG2_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG3_Torch(n_var, n_obj, k=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG4_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG5_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG6_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG7_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG8_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- class src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG9_Torch(n_var, n_obj, k=None, l=None, **kwargs)[source]¶
Bases:
src.environment.problem.MOO.MOO_synthetic.wfg_torch.WFG_Torch
- src.environment.problem.MOO.MOO_synthetic.wfg_torch._transformation_shift_linear(value, shift=0.35)[source]¶
- src.environment.problem.MOO.MOO_synthetic.wfg_torch._transformation_shift_deceptive(y, A=0.35, B=0.005, C=0.05)[source]¶
- src.environment.problem.MOO.MOO_synthetic.wfg_torch._transformation_shift_multi_modal(y, A, B, C)[source]¶
- src.environment.problem.MOO.MOO_synthetic.wfg_torch._transformation_param_dependent(y, y_deg, A=0.98 / 49.98, B=0.02, C=50.0)[source]¶
- src.environment.problem.MOO.MOO_synthetic.wfg_torch._transformation_param_deceptive(y, A=0.35, B=0.001, C=0.05)[source]¶