In this paper , a supervised energy disaggregation method is proposed. The appliances that are monitored, are modelled by multi-state finite state machines. Each state of an appliance is described by exactly one vector of power consumptions from a carefully designed set of such vectors (called atoms), that comprise a dictionary. The latter is constructed during a training phase, where it is assumed that individual power consumption signals are available. A clustering algorithm is applied on overlapping patches extracted from the training signals to select a fixed number of representatives, i.e., the atoms of the dictionary. Moreover , in the training phase, an appropriate state transition probabilities matrix is constructed. During the operation phase, where the actual disaggregation task is performed, a trellis, with a reduced number of transitions, is used for the acquisition of the disaggregated power consumption signals per appliance. Numerical results, using the REDD dataset, are provided, in order to demonstrate the effectiveness of the proposed method. I.