def __init__(self, graph_matrix, alpha, eps):
number_oscillators = len(graph_matrix)<EOL>super().__init__(number_oscillators)<EOL>self._states = [<NUM_LIT:0>] * self._num_osc<EOL>for i in range(<NUM_LIT:0>, self._num_osc):<EOL><INDENT>self._states[i] = <NUM_LIT:1> - (<NUM_LIT:2> / self._num_osc) * i<EOL><DEDENT>self._outputs = [-<NUM_LIT:1>] * self._num_osc<EOL>self._outputs_buffer = [-<NUM_LIT:1>] * self._num_osc<EOL>self._time_contant = <NUM_LIT:1><EOL>self._weight = []<EOL>for row in range(<NUM_LIT:0>, self._num_osc):<EOL><INDENT>self._weight.append([<NUM_LIT:0>] * self._num_osc)<EOL>for col in range(<NUM_LIT:0>, self._num_osc):<EOL><INDENT>if (row != col):<EOL><INDENT>self._weight[row][col] = -alpha * (graph_matrix[row][col]) / sum(graph_matrix[row])<EOL><DEDENT>else:<EOL><INDENT>self._weight[row][col] = -alpha - eps<EOL><DEDENT><DEDENT><DEDENT>
!
        @brief Constructor of hysteresis oscillatory network for graph coloring.

        @param[in] graph_matrix (list): Matrix representation of a graph.
        @param[in] alpha (double): Positive constant (affect weight between two oscillators w[i][j]).
        @param[in] eps (double): Positive constant (affect feedback to itself (i = j) of each oscillator w[i][j] = -alpha - eps).