import tensorflow as tf

        num_layers = len(weights) + 1
        
        H = 2.0*(X - self.lb)/(self.ub - self.lb) - 1.0
        for l in range(0,num_layers-2):
            W1, W2 = weights[l]
            b = biases[l]
            H1 = tf.add(tf.matmul(H, W1), b)
            H2 = tf.matmul(H, W2)
            H = tf.tanh(tf.add(H1 * H2, H1))
        W1, W2 = weights[-1]
        b = biases[-1]
        H1 = tf.add(tf.matmul(H, W1), b)
        H2 = tf.matmul(H, W2)
        Y = tf.add(H1 * H2, H1)
