class documentation

class TestMOArchiving3obj(unittest.TestCase):

View In Hierarchy

Undocumented

Method test_add test if the add_points function works correctly
Method test_contributing_hypervolume Test the contributing_hypervolume function first for a simple case, and then compare it to the 2obj version, with one objective set to 0
Method test_copy_DLNode Test the copy function of the DLNode class
Method test_copy_MOArchive Test the copy function of the MOArchive3obj class
Method test_distance_to_hypervolume_area Test the distance_to_hypervolume_area function first for a case where the reference point is not set, then for points in and outside the hypervolume area
Method test_distance_to_pareto_front_compare_2obj Test the distance_to_pareto_front function by comparing it to the 2obj version
Method test_distance_to_pareto_front_simple Test the distance_to_pareto_front function by comparing it to hand calculated values
Method test_dominates Test the dominates function
Method test_dominators Test the dominators function
Method test_get_non_dominated_points Test the get_non_dominated_points function: - check if the number of points is correct - check if the points are non-dominated and in the [0, 1] range
Method test_hypervolume test the hypervolume calculation, by comparing to the result of original implementation in C
Method test_hypervolume_after_add Calculate the hypervolume of the archive after adding points and compare it to the hypervolume obtained by adding the points to a new archive
Method test_hypervolume_easy test the hypervolume calculation for a simple case
Method test_hypervolume_improvement Test the hypervolume_improvement function first for a simple case, and then compare it to the 2obj version, with one objective set to 0
Method test_hypervolume_plus test the hypervolume_plus indicator
Method test_in_domain test if the in_domain function works correctly
Method test_infos_dominated test if the infos about dominated points are removed
Method test_infos_non_dominated test if the infos are stored correctly - if the points are non dominated, the infos should be the same
Method test_length Test that the length of the archive is correct after adding and removing points
Method test_lexsort Test the lexsort function, by comparing it to the output of the numpy implementation
Method test_remove Test the remove function, by comparing the archive with 100 points added and then 50 removed, to the with only the other 50 points added
def test_add(self):

test if the add_points function works correctly

def test_contributing_hypervolume(self):

Test the contributing_hypervolume function first for a simple case, and then compare it to the 2obj version, with one objective set to 0

def test_copy_DLNode(self):

Test the copy function of the DLNode class

def test_copy_MOArchive(self):

Test the copy function of the MOArchive3obj class

def test_distance_to_hypervolume_area(self):

Test the distance_to_hypervolume_area function first for a case where the reference point is not set, then for points in and outside the hypervolume area

def test_distance_to_pareto_front_compare_2obj(self):

Test the distance_to_pareto_front function by comparing it to the 2obj version

def test_distance_to_pareto_front_simple(self):

Test the distance_to_pareto_front function by comparing it to hand calculated values

def test_dominates(self):

Test the dominates function

def test_dominators(self):

Test the dominators function

def test_get_non_dominated_points(self):

Test the get_non_dominated_points function: - check if the number of points is correct - check if the points are non-dominated and in the [0, 1] range

def test_hypervolume(self):

test the hypervolume calculation, by comparing to the result of original implementation in C

def test_hypervolume_after_add(self):

Calculate the hypervolume of the archive after adding points and compare it to the hypervolume obtained by adding the points to a new archive

def test_hypervolume_easy(self):

test the hypervolume calculation for a simple case

def test_hypervolume_improvement(self):

Test the hypervolume_improvement function first for a simple case, and then compare it to the 2obj version, with one objective set to 0

def test_hypervolume_plus(self):

test the hypervolume_plus indicator

def test_in_domain(self):

test if the in_domain function works correctly

def test_infos_dominated(self):

test if the infos about dominated points are removed

def test_infos_non_dominated(self):

test if the infos are stored correctly - if the points are non dominated, the infos should be the same

def test_length(self):

Test that the length of the archive is correct after adding and removing points

def test_lexsort(self):

Test the lexsort function, by comparing it to the output of the numpy implementation

def test_remove(self, n_points=100, n_points_remove=50):

Test the remove function, by comparing the archive with 100 points added and then 50 removed, to the with only the other 50 points added