A data processing system processes data arrays that collectively describe
cyclic behavior of at least one variable in several entities in a
physical process. Each cycle comprises several time slots. An input
routine (2-4) receives multiple data arrays, each data array containing
multiple data items, each of which describes a variable of an entity in
one time slot. A magnitude-determination routine (2-6) determines a
specific magnitude parameter, such as average, volume or peak, for each
of the several entities. A scaling routine (2-8) scales the data arrays
between entities such that the specific magnitude parameters are
suppressed and only their shape is maintained. A training routine (2-10)
trains a clustering system with a first plurality of the scaled data
arrays, to determine a set of cluster centers. After training, a
clustering routine (2-12) applies a second plurality of the scaled data
arrays to the trained clustering system.