Linearization of Basic Non-linear Operators

Given a non-linear operator and a region , we want to find linear constraints to approximate the non-linear operator, which is in the following form:

Specifically, given a gbound region $l_x \le x \le u_x, l_y \le y \le u_y, l_d \le y - 𝛽 x \le u_d$, we want to find linear constraints to approximate the non-linear operator , and for any and some in the gbound region.

Linearization Objective

Different strategies can be used to find the linear constraints. Here we consider the following two objectives:

  1. Minimum norm of the bounds: .
  2. Minimum norm of the bounds: .

For me, the minimum bounds makes more sense because it minimizes the total area between the upper and lower bounds. In the overall algorithm, the bound will be used to restrict different directions, e.g., we may want the minimum and maximum values of in bound propagation. The minimum bounds have the ability to guarantee the average case.

At the same time, the minimum bounds are easier to compute. To do this, we need the convex (concave) envelope of the non-linear operator, which is the tightest convex (concave) function that upper (lower) bounds the non-linear operator, defined as follows:

Then we have the formulas for the minimum bounds:

where is the center of .

Therefore, in the following sections, we will use the minimum bounds as the linearization objective, and we will compute the convex (concave) envelope of the non-linear operator to obtain the linear constraints.

See DeepPoly for more details about the minimum bounds.

Linearization Process

Before we go into the details of the linearization of specific non-linear operators, we first need to normalize the gbound to ensure that all bounds are tight. For example, for the gbound of , we can compute the minimum and maximum values of in the gbound region, which are $\min\left(u_y, 𝛽 u_x + u_d\right)$ and $\max\left(l_x, 𝛽 l_x + l_d\right)$ , respectively. Then we can update the gbound of correspondingly.

Even after this, gbound area is still too complex for fast computation, thus we will try to further relax the gbound area to a parallelogram area. Obviously, there are 3 ways to relax the gbound area to a parallelogram area, which are 1) , 2) $l_x \le x \le u_x, l_d \le y - 𝛽 x \le u_d$ and 3) $l_y \le y \le u_y, l_d \le y - 𝛽 x \le u_d$.

We choose the parrallelogram area based on these:

  1. For and , we will choose the parallelogram area of .
  2. For the convex envelope of , we choose area 2) $l_x \le x \le u_x, l_d \le y - 𝛽 x \le u_d$.
  3. For the concave envelope of , we choose area 3) $l_y \le y \le u_y, l_d \le y - 𝛽 x \le u_d$.

We do this for simplicity and fast computation, since , case 2 and case 3 are symmetric for computation. It simplifies our algorithm.

Selecting

The selection of $𝛼$ is important for the tightness of the bounds. Normally, we will select $𝛼$ based on the range of on gbound. We will discuss the selection of 𝛼 for each of the operators.