# A Multi-Objective Harmony Search Algorithm for Sustainable Design of Floating Settlements +
## 2 Problem Definition
### Optimization Model  
As mentioned before, we have three design goals, accessibility, wind protection, and visibility, subject to the constraints of suitable water depth and intersection resolution. Our decision variables (i.e., chromosome) are given as \(\mathit{h}x,\mathit{hy},\mathit{mx},\mathit{my},\mathit{yx},\mathit{yy}, \mathit{px},\mathit{py}\), which are the coordinates corresponding to one of the following functions: housing, yacht marina, yacht club, and public area. In our model, we determine the overall accessibility of the public space from all other modules as in Equations (1)-(3) and the proximity between the yacht club and the yacht marina as in Equation (4). These accessibility measures in terms of distances are given as follows:  
\[\mathit{db_{h,p}} =\sqrt{\left|\mathit{h}x-\mathit{px}\right|^{2}+\left|\mathit{ l}y-\mathit{py}\right|^{2}} \tag{1}\] \[\mathit{db_{y,p}} =\sqrt{\left|\mathit{yx}-\mathit{px}\right|^{2}+\left|\mathit{ yy}-\mathit{py}\right|^{2}} \tag{2}\]\[db_{m,p} =\sqrt{\left|mx-px\right|^{2}+\left|my-py\right|^{2}} \tag{3}\] \[db_{m,y} =\sqrt{\left|mx-yx\right|^{2}+\left|my-yy\right|^{2}} \tag{4}\]  
Minimum and maximum distances are desired to be between 300 m and 1500 m. The following formulas are used to determine the accessibility:  
\[\max(0,\min\left(1,\frac{current\ value-max}{min-max}\right)) \tag{5}\]  
\[d_{1} =\max(0,\min\left(1,\frac{db_{h,p}-1500}{300-1500}\right)) \tag{6}\] \[d_{2} =\max(0,\min\left(1,\frac{db_{y,p}-1500}{300-1500}\right))\] (7) \[d_{3} =\max(0,\min\left(1,\frac{db_{m,p}-1500}{300-1500}\right))\] (8) \[d_{4} =\max(0,\min\left(1,\frac{db_{m,y}-2000}{500-2000}\right)) \tag{9}\]  
\[Maximize\ z_{1} =\ \min(\frac{1}{d_{1}},\frac{1}{d_{2}},\frac{1}{d_{3}},\frac{1}{ d_{4}}) \tag{10}\]  
As the second objective, wind protection needs to be maximized for living spaces, such as housing spaces and a yacht marina. Through on-site inspection, we have determined that the area is characterized by a dominant wind coming from the northeast or southeast. For this reason, close offshore islands should protect other islands close to the coastline, and vice versa. Protected regions are determined as secluded areas between each pair of islands. Thus, it is desirable to locate the sensitive functions, namely housing and a yacht marina, near these protected regions. For instance, in Figure 2, housing is close to the protected regions, but the yacht marina is not close enough. To achieve this objective in the model, the distances between desired functions and the protected regions are first calculated by Equations (11) and (12). Then Equation (13) provides the maximization of wind protection as follows:  
\[\mathit{db_{y,p}} =\sqrt{\left|\mathit{yx}-\mathit{px}\right|^{2}+\left|\mathit{ yy}-\mathit{py}\right|^{2}} \tag{2}\]0 \[\mathit{db_{y,p}} =\sqrt{\left|\mathit{yx}-\mathit{px}\right|^{2}+\left|\mathit{ yy}-\mathit{py}\right|^{2}} \tag{2}\]1  
\[\mathit{db_{y,p}} =\sqrt{\left|\mathit{yx}-\mathit{px}\right|^{2}+\left|\mathit{ yy}-\mathit{py}\right|^{2}} \tag{2}\]2 Top view of the project region to illustrate protected regions [7]. \[\mathit{db_{y,p}} =\sqrt{\left|\mathit{yx}-\mathit{px}\right|^{2}+\left|\mathit{ yy}-\mathit{py}\right|^{2}} \tag{2}\]3  
The last objective is the maximization of visibility to the functions. Since the yacht club and yacht marina are commercial functions, they should be made noticeable. There is frequent sailing of cruise ships near the location in question, which attracts a lot of tourists to the region. Objective function calculation begins with establishing visual trajectories between the cruise-ship passing line and the desired functions in the parametric model as illustrated in \[\mathit{db_{y,p}} =\sqrt{\left|\mathit{yx}-\mathit{px}\right|^{2}+\left|\mathit{ yy}-\mathit{py}\right|^{2}} \tag{2}\]4 If the trajectories intersect with the close offshore islands, it is concluded that the function is not visible from the particular point.