src.environment.problem.SOO.CEC2013LSGO.cec2013lsgo_dataset

Problem Difficulty Classification

Difficulty Mode

Training Set

Testing Set

easy

1, 2, 3, 4, 5, 6, 7, 8, 9

10, 11, 12, 13, 14, 15

difficult

7, 8, 9, 10, 11, 12, 13, 14, 15

1, 2, 3, 4, 5, 6

Note: Functions 7, 8, 9 appear in both easy and difficult categories. When difficulty is ‘all’, both sets contain all problems (1-15).

Module Contents

Classes

CEC2013LSGO_Dataset

Introduction

CEC2013LSGO proposes 15 large-scale benchmark problems to represent a wider range of realworld large-scale optimization problems.

API

class src.environment.problem.SOO.CEC2013LSGO.cec2013lsgo_dataset.CEC2013LSGO_Dataset(data, batch_size=1)[source]

Bases: torch.utils.data.Dataset

Introduction

CEC2013LSGO proposes 15 large-scale benchmark problems to represent a wider range of realworld large-scale optimization problems.

Original paper

Benchmark functions for the CEC 2013 special session and competition on large-scale global optimization.” gene 7.33 (2013): 8.

Official Implementation

CEC2013LSGO

License

GPL-3.0

Problem Suite Composition

CEC2013LSGO contains four major categories of large-scale problems:

  1. Fully-separable functions (F1-F3)

  2. Two types of partially separable functions:

    1. Partially separable functions with a set of non-separable subcomponents and one fully-separable subcomponents (F4-F7)

    2. Partially separable functions with only a set of non-separable subcomponents and no fullyseparable subcomponent (F8-F11)

  3. Two types of overlapping functions:

    1. Overlapping functions with conforming subcomponents (F12-F13)

    2. Overlapping functions with conflicting subcomponents (F14)

  4. Fully-nonseparable functions (F15)

Initialization

static get_datasets(version='numpy', train_batch_size=1, test_batch_size=1, difficulty=None, user_train_list=None, user_test_list=None)[source]

Introduction

Generates training and testing datasets for the CEC2013 LSGO benchmark suite based on specified difficulty or user-defined function lists.

Args:

  • version (str, optional): Specifies the implementation version to use for function instances. Accepts ‘numpy’ or any other string for alternative (e.g., ‘torch’). Defaults to ‘numpy’.

  • train_batch_size (int, optional): Batch size for the training dataset. Defaults to 1.

  • test_batch_size (int, optional): Batch size for the testing dataset. Defaults to 1.

  • difficulty (str, optional): Difficulty level for dataset split. Accepts ‘easy’, ‘difficult’, ‘all’, or None. If None, user_train_list and user_test_list must be provided.

  • user_train_list (list of int, optional): List of function IDs to include in the training set. Used if difficulty is None.

  • user_test_list (list of int, optional): List of function IDs to include in the testing set. Used if difficulty is None.

Returns:

  • tuple: A tuple containing two CEC2013LSGO_Dataset objects:

    • The first is the training dataset.

    • The second is the testing dataset.

Raises:

  • ValueError: If neither difficulty nor both user_train_list and user_test_list are provided.

  • ValueError: If an invalid difficulty value is specified.

__getitem__(item)[source]
__len__()[source]
__add__(other: src.environment.problem.SOO.CEC2013LSGO.cec2013lsgo_dataset.CEC2013LSGO_Dataset)[source]
shuffle()[source]