Fuzzy Cognitive Maps

Fuzzy Cognitive Maps are a description and calculus model formalized by
Bart Kosko in 1986.
They are oriented digraphs with weight and feedback. Each FCM node
represents a fuzzy set manifesting at some degree. So they can be
defined "causal concepts" and they can model events, actions, values
and goals. Weighted edges between two nodes sign the existence of a
"causal fuzzy rule" between them. The sign (+ or -) over an edge from
one node to another specify the type of causality: excitatory or
inhibitory. FCMs have some very interesting features:
1) They link, in a very natural way, the common sense knowledge of an
expert with the geometry of the possible states space produced by the
2) They give a "causal description" of a virtual world.
3) They are near to well known numerical method to find eigenvalues and
so strongly optimizable in computational terms.
4) They integrate without any difficulties with fuzzy logic due to their

Informally FCM operates like a non linear system evolving toward an
attractor or fixed point in which it sets down. The system generates
vectors starting from an initial one using a step by step recursive
formula like C(i+1) = S( C(i) * E ), where E is the FCM matrix
describing the causal links, C(i) is the state vector at iteration i
and S is a non linear function used to inject the vector produced into
a real [0,1] interval. When an FCM finds a fixed point its output can
be interpreted as a projection of a future state in the current virtual
world with the last known parameters configuration stated in the
initial vector (i.e. C(0)).

AKIRA's contains a standalone FCM lib based on MTL and ITL. This lib
implements standard FCM representation and calculus plus special
operators to transform the basic model into an equivalent linear model. The LFCM (Linear Fuzzy Cognitive Maps) model is
a theory achievement that grants the FCM with a linear transformation
that preserve the majority of FCM semantic overwhelming the limitations
imposed by the non linearity of the original model. In this way
through LFCM is possible to backward chain to a possible original
state deriving the current known one. The computational complexity of
LFCM is also strongly reduced in respect of FCM due to the missing of
the S non linear function.

The great thing about these technologies is the way they can be combined
together to obtain a soft computing modelling method able to
characterize very complex details of the behaviour of a single AKIRA's
Daemon. The AKIRA MACRO LANGUAGE abstracts at a higher level the
language needed to describe those behaviours leaving the programmers a
great expressivity power even if with limited tech skills or poor A.I.