1. An adaptive computing engine comprising: a plurality of computational matrices, at least one of the computational matrices comprising a plurality of heterogeneous computational elements, at least two of which each perform an arithmetic operation and each having components in a fixed architecture with fixed connections between the components; and an interconnection network coupling the plurality of computational matrices to each other, the interconnection network for transmitting data between the plurality of computational matrices, and for transmitting configuration information to at least one of the plurality of computational matrices, the configuration information for configuring the at least one of the plurality of computational matrices to perform a first function and for reconfiguring the at least one of the plurality of computational matrices to perform a second function.