Discovery of data models using genetic programming