Complement Coding


  1. Download File #1

Software Description

Complement Coding takes as input a vector of feature values, each with an associated lower and upper limit used for normalization. It normalizes each feature value and calculates its complement.

Coded By

Sai Gaddam


Carpenter, G.A. , Grossberg, S. , Rosen, D.B., Fuzzy ART: Fast stable learning and categorization of analog patterns by an adaptive resonance system, Neural Networks, 4, 759-771. (1991).


Adaptive Resonance Theory (ART) and ARTMAP networks employ a preprocessing step called complement coding, which models the nervous systemís ubiquitous computational design known as opponent processing (Hurvich & Jameson, 1957). Balancing an entity against its opponent, as in agonist-antagonist muscle pairs, allows a system to act upon relative quantities, even as absolute magnitudes may vary unpredictably. In ART systems, complement coding (Carpenter, Grossberg, & Rosen, 1991) is analogous to retinal ON-cells and OFF-cells (Schiller, 1982). When the learning system is presented with a set of feature values, complement coding doubles the number of input components, presenting to the network both the original feature vector a and its complement.

Code Description

The file contains the Complement Coding Matlab code plus associated documentation and GUI files. To run the code, unzip the files, run Matlab, and type "compgui" at the Matlab prompt.

Operating System

linux, Windows

Programming Language(s)



Public domain software


Contact Us