We propose two algorithms for elliptic boundary value problems in shape optimization. With the finite element method, the optimization problem is replaced by a discrete variational problem. We give rules and use them to decide which elements are to be reserved. Those rules are determined by the optimization; as a result, we get the optimal design in shape. Numerical examples are provided to show the effectiveness of our algorithms.

1. Introduction

With numerous applications in structural engineering and fluid mechanics, shape optimization has received much more attention in recent years [15]. Typical problems are to find optimal shapes that minimize or maximize some design objectives with certain PDE and geometry constraints. The essential difficulty for such problems is that the optimal shape or topology is unknown a priori. Many different numerical methods are used to solve this type of problems. The classical method of shape sensitivity analysis has been studied in [6, 7]. One drawback of this method is its computational effort due to remeshing.

The most recent topology approach is the homogenization method [8]. A relaxed formulation of the original shape optimization problem should be introduced. Then, penalization techniques are needed to remove composite designs in the final shape. The method is very promising in that it is nearly independent on the initial guess for design. Moreover, it has a rigorous mathematical result of the existence of the solution. However, this method can be applied to limited areas and particular objective functions.

Level set methods are popular for solving shape optimization problems (see [5, 913]). Level set method first proposed by Osher and Sethian [14] is a versatile tool when dealing with problems requiring tracing interfaces separating a domain into subregions. For details of the method and its wide applications, we refer to the monograph [15] and the survey [16]. Level set methods can easily handle certain types of shape and topological changes, such as merging, splitting, and developing sharp corners, which can be done by the evolution of the level set function. Therefore, level set methods can naturally be applied to solve shape and topology optimization problems. Its cost is moderate since the shape is captured on a fixed Eulerian mesh. However, by its nature, the obtained level set function decreases the number of connected components of resulting geometrical domains during the optimization process. Besides, the convergence to the optimal geometrical domain is slow due to the necessary reinitialization process.

In this paper, we propose a novel method for a class of linear elliptic problems in shape optimization. The main difference from other methods is that we perform optimization in each element, which means that we deal with this problem in a discrete formula. First, let us introduce the model problem. Let be a bounded domain of with a boundary . Let also be a subset of and satisfy . For any open set , we denote by the number of connected components of and we consider the set of admissible domains: For any , , the boundary of can be denoted by with . The boundary receives Neumann boundary conditions, while we have Dirichlet conditions on . We illustrate the details in Figure 1.

Now, let us consider the following elliptic boundary value problem:where and is the unit outwards normal vector to . Our goal is to optimize the shape of domain which maximizes a given cost functional depending on the domain and the solution . Here, we consider the energy functional: and let us introduce the regularized shape functional: with defined by , which is the Lebesgue measure of in . Constant are positive and allow us to take into account the area. Then, for any fixed integer , the shape optimization problem is the following:

Since the exterior boundary of is fixed once for all and equals , the domains satisfying (5) are actually determined by their moving boundaries .

Our algorithm comes from greedy algorithm. A greedy algorithm might also be called a “single-minded” algorithm or an algorithm that gobbles up all of its favorites first. It may not completely solve the problem or if it produces a solution, it may not be the very best one, but it is one way of approaching the problem and sometimes yields very good results. It is well known that greedy algorithms are usually used in discrete mathematics, for example, the salesman problem, graph coloring problem, and other NP-complete problems [17]. And a few papers have reported that the greedy algorithms can also work well for combinatorial optimization problems [18, 19]. In this paper, we propose numerical algorithms based on the greedy algorithm. In one step of our algorithm, we compute the shape functional in each element to find some elements according to the given rules. Then, we throw those elements away (they may come back at some next step). The sum of remain elements is just the domain that is the approximation of our problem.

We will propose two types of algorithms in the next section and present some numerical results in Section 3.

2. Algorithms

In [20], the authors proved that there exists a domain satisfying problem (5). They obtain this result when they apply the results from [21, 22] to this problem with a few changes. Here, the results are listed and the details can be found in [20].

Theorem 1. Let be a sequence of open sets such that the number of connected components of is uniformly bounded. If converges in the sense of the Hausdorff metric to , then the solution of the Neumann problemconverges to the solution of problem (6) on if and only if .

Theorem 2. For any , problem (5) admits at least one solution .

For the sake of convenience, we choose . Let be a partition of the domain into rectangular elements of mesh size . Then, we define the bilinear finite element space by We take as finite element space of problem (2); then, we can get the following variational formulation: find such thatIf we change domain into element , there is no such type of equation set up since the function does not vanish on boundary of each element. In the element , we obtain a measurement:Now, we use the greedy strategy: we drop the element , in which . Accordingly, we can rewrite the shape functional as the sum of each element; namely, where is the area of the element . In our quadrilateral mesh case, . In this way, we can propose an iterative algorithm; in each step, we seek and throw away the element whose value of shape functional is the minimum. Since each time we throw away only one element, which is very small compared to the whole domain, this algorithm can increase the shape functional in general. We list the algorithm as in Algorithm 1.

(1) = 0.
(2) Compute the solution of (8) with domain , .
  For = 1 : Nelement
  Find no marked elements, and compute their shape functional
    , and the sum of shape functional
  Find the minimum of and mark the element.
(3) = + 1, Go to Step  2.

Here, “” and “” denote the iteration of the algorithm and the value of shape functional on domain , respectively. We denote by “” the number of finite elements of domain . “” represents the sum of elements that are thrown away in the preceding iterations. When , we solve (8) with the domain , because we have no marked elements at first. And this is our initial case. From results of the numerical examples (in Section 3), we can see that Algorithm 1 can obtain an optimal domain. Because we throw away one element in each iteration, the convergence is very slow. And the number of iterations gets growth when the mesh size is refined. What is more, it is difficult to get the conditions for stopping the iterations. Therefore, we make some changes in Algorithm 1. At each iteration, we throw away several elements to accelerate convergence. But the optimal number of elements that should be thrown away is not known a priori. Sometimes we may throw away some elements which should be left. Therefore, we should design a process to get such elements back. That is our algorithm (Algorithm 2).

(1) = 0.
(2) Compute the solution of (8) with domain , .
  For = 1 : Nelement
     Compute ;
     Find no marked elements and compute their sum of shape functional
    Yes: mark;
    No: remove the mark.
(3) = + 1, Go to Step  2.

The parameter controls how much elements will be thrown away in each step. The optimum of is different for different problems. According to this algorithm, in each step, we discard not only one element but a batch of elements in general. Furthermore, the elements which are thrown away maybe come back in some next step. In Figure 2, there are three elements and is the element and we keep it to ; the other two elements are thrown away. In the next step, after solving the equation , will be changed and therefore the value of shape functional in element is changed. Thus, if this value does not satisfy the rule that we set up should be back. This procedure is necessary for our algorithm.

Both of Algorithms 1 and 2 are simple and easy for coding. In the next section, we will see Algorithm 2 enjoys fast convergence for shape optimization problems.

3. Numerical Examples

In this section, we present some numerical tests for our algorithms. As mentioned above, we choose and use bilinear finite element space as our space. We start with the entire domain in all examples. In order to make numerical comparisons, we use numerical examples in [20]. The data of the first example are

First, we apply Algorithm 1 to this example and let . We denote by with green the optimal domain obtained in this example. The value of shape functional in is . The results are shown in Figure 3. We find that Algorithm 1 requires many iterations and converges very slowly. Besides, there are some oscillations in iterative process. These two flaws are unfavorable for a good algorithm. In the following, let us see the effects of Algorithm 2. Note that Algorithm 2 involves choice of a parameter . Considering the little dependence on , we choose some for a relatively large and adjust it for a small . Numerical results are shown in Figure 4.

In [20], in order to make comparisons with the level set method with topological derivatives, conventional level set method was used to solve the model problem. In that case, the Hamilton-Jacobi equation is solved on a grid. At last, the level set method converges to a local maximum . The value obtained by using Algorithm 2 is better than . Our method is simple and enjoys fast convergence, although the final functional value 0.282319 by the level set method with topological derivatives is a little better than ours.

The second example tests the choice of with . Thus, we get two groups of figures, Figures 5 and 6. When is large, from Figure 6, we see the oscillation exists. This phenomenon is caused by the increase of parameters, which also appears in [20]. Our visible result is similar as that in [20].

4. Conclusion

Based on the greedy idea, we have presented two interesting and promising algorithms for solving the linear elliptic problems in shape optimization. Our algorithms are simple but effective for the model problem. Algorithm 2 is especially efficient compared with the level set method. We will try to apply our method to other shape and topology problems involving geometry and topology in the future.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.


Dai Xiaoxia’s research was partially supported by the Natural Science Foundation of Zhejiang Province of China under Grants LQ12A01012 and LQ13A010006.