1. A multi-component model engineering system comprising: a library of model components each comprising a function for describing the behavior of a sub-set of the state variables of a multi-component dynamical system, and having at least one parameter; a data access engine arranged to access empirical data measured from the dynamical system, the data being accessed from a plurality of different datasets; an inference engine arranged to learn one or more of the parameters of specified ones of the model components and to learn a probability distribution for each parameter which represents a degree of uncertainty of the parameter; a model-data association engine arranged to link a plurality of specified model components from the library of model components to form a multi-component model and to associate each model component with parameters to be learnt, with data from at least one of the datasets the model-data association engine also being arranged to pass the specified model components to the inference engine in a format suitable for use by the inference engine to learn the parameters and probability distributions of the specified model components using the data associated with the specified model components.