Cartesian Genetic Programming (CGP) is a type of Genetic Programming based on a program in a form of a directed graph. It also belongs to the methods of Symbolic Regression allowing to receive the optimal mathematical expression for a problem. Nowadays it becomes possible to use computers very effectively for symbolic regression calculations. CGP was developed by Julian Miller in 1999-2000. It represents a program for decoding a genotype (string of integers) into the phenotype (graph). The nodes of that graph contain references to functions from a function table, which could contain arithmetic, logical operations and/or user-defined functions. The inputs of those functions are connected to the node inputs, which itself could be connected to a node output or a graph input. As a result, it's possible to construct several mathematical expressions for the outputs and calculate them for the given inputs. This CGP implementation use point mutation to form new mathematical expressions. Steady-state genetic algorithm is chosen as a search engine. Solution solving the control system synthesis problem is presented in a form of the Pareto set, which contains a set of satisfactory control functions. Nonlinear Duffing oscillator is taken as a dynamic object. © 2017 The Authors.