AI::subclust - A module to implement substractive clustering algorithm.


    use AI::subclust;

    my @Data  = [[qw/0.3 0.5/],[qw/0.3 0.6/],[qw/0.6 0.8/],[qw/0.02 0.6/]];
    my @bound = [[qw/0 0/],[qw/1 1/]];
    my $subC = new AI::subclust(-data=>@Data,-bounds=>@bound);

    my ($CLU,$S) = $subC->calculate();


This module implements a substractive clustering algorithm.


The module has the following public methods:


This is the constructor. It have to be defined only -data paramater obligatorily any other has an default value.

$subC = new subclust( -data => @Data, -bounds => @bounds, -ra => 0.5, -rb => 0.6, -acceptLimit => 0.5, -vervose => 0, );


Input data array.


Scale array. It is a 2xN dimension array. Use default valueas @max and @min arrays calculated from @Data


Radio of the hypercube selected for each cluster. Use default value as 0.5


Radio of rejection for each cluster. Use default value as 0.6


Minimal value of Potencial required to be center of cluster. Use default value as 0.5


Vevose mode. 1 activated or 0 desactivated. Use default value as 0


This method is used to calculate substractive algorithm. Just call method in this way

($CLU,$S) = $subC->calculate();

Method retrieve two array references, following with above example: $CLU represent an cluster position array reference $S represent sigma value array reference of each variable (Matlab style).


Copyright 2004, Jorge Courett. All rights reserved. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Please send me any comments to:

1 POD Error

The following errors were encountered while parsing the POD:

Around line 161:

=over should be: '=over' or '=over positive_number'