• Nenhum resultado encontrado

2. PON Planning

2.4 Heuristic Methods

Constraint (2.13) was already introduced in (2.11). Constraint (2.14) ensures the connections to do not exceed the capacity of the array of splitters placed there, and that capacity is set by (2.15) where F is the maximum number of splitters supported at location . Constraint (2.16) sets the correct number of line cards, while constraint (2.17) says that the number of PONs is the total sum of second-stage splitters in the network divided by the ratio of those splitters (since the variable is integer the inequality ensures the result from the division is rounded up). Constraint (2.18) forces I to zero if is zero (i.e. there are no splitters at ). Finally, constraint (2.19) acts as a way to make sure I is above zero if also is, but divided by 9P so I in any circunstance. Otherwise, the problem would not be feasible.

The concentration of ONTs was described in the same way as the concentration of splitters was.

However, while in the splitter case we added an extra set of binary variables that reflect the existence of a single Cabinet/Junction Box between the OLT and the splitters, this was not the case for the ONTs. A similar strategy could be employed, by creating another set of binary variables that were equal to 1 whenever the corresponding U .. However this would imply creating an additional ? variables which burdened the problem with too much complexity, rendering it unable to solve even medium sized scenarios. Under our assumptions, though, the cost of laying fibre is proportional to the number of fibres themselves, since most of the time spent in labour is splicing, conditioning and testing fibres. The element we are discarding here is the cost of the NAP, which is usually a small box inside the building where all the fibre connections are available to make the drop connections when required. Since there is only one per building in any case, it did not seem logical to needlessly add complexity to the program just to reflect the cost differences in installing bigger or smaller NAPs.

The results for this model show that, for scenarios with concentrated ONTs (dense urban), networks below 10 000 ONTs and 40 possible Junction Boxes are optimized in less than 4 hours.

2.4.1 ADD Heuristic

The ADD Heuristic was already mentioned in the context of the TAP. In fact, TAP is the basis for this procedure. We’ve seen that TAP is a simplification of the CLP, where the concentrators are fixed and their connection costs to the CO ignored. The problem reduces to allocating terminals to concentrators while obeying their capacity restrictions. If TAP was executed for all possible combinations of concentrators in the scenario, one would obtain the optimal solution for the original problem. However, this would imply solving (2.6) 2M times which is still unpractical. The ADD Heuristic proposes starting with an initial solution where all terminals are connected to a single concentrator (typically connected directly to the CO which has infinite capacity to ensure a feasible solution). This solution produces a given cost 9. Next, TAP is executed for all combinations of the CO and one of the other concentrators and the best cost among these is recorded. The concentrator which produced the best cost is added to the final solution. The process is repeated, this time running the TAP for all combinations of the CO, the concentrator added, and all the other V concentrators. Again, the one (if any) that produces the greatest saving in cost is added to the final set. The process is then repeated with the set for the remaining V W concentrators and so forth. The algorithm stops when adding a concentrator does not ensure savings in the total network cost. Figure 2.9 shows the flowchart of the procedure, with the associated logic to prevent the final solution from including the CO.

Figure 2.9 - ADD heuristic flowchart.

Naturally, this procedure is not optimal. One of the main problems is that the algorithm does not allow already added concentrators to be discarded. Let us consider the example of Figure 2.10, where three possible concentrators are available to connect two large clusters of terminals and an isolated terminal in between. Suppose the algorithm first added concentrator A because it minimized the average connection costs, and then added concentrator B because there were savings when connecting the leftmost cluster, thus reaching the configuration of a). Then, the algorithm adds concentrator C because the savings in connecting the leftmost cluster through it compensate the cost of the new concentrator, and we reach the situation depicted in b), which indeed reduced the cost. However, an ever cheaper configuration could be found in c), if A was discarded and the middle terminal connected to B.

Figure 2.10 - Drawback of ADD.

An improvement can be made by post-processing the solution and checking, for concentrators with few connections, if re-allocating those connections and dropping the concentrators brings savings in total cost.

Following the algorithm’s flow, it can be seen that it tends to be the most efficient, the lower the

“optimal” number of concentrators is. TAP is executed D V B D V WB times until no savings are obtained in adding another concentrator. If after F concentrators there is no improvement, the number of runs is ? F. Additionally, the running time for TAP grows with the number of considered concentrators, so the iterations with FX are the most time-consuming. The algorithm offers the most gain when used in

a scenario with a large number of possible locations for concentrators (a problem that is very hard to solve for the ILP) but where the best solutions use a low number of concentrators (F Y ). As we will see next, the number of PONs is usually minimized to the least possible given the number of ONTs.

Therefore, it is possible to have a good idea of the optimal number of concentrators beforehand and understand where ADD is most useful.

If, on the other hand, the costs are link-dominated, meaning the program tends to minimize the fibre regardless of the number of PONs, a complementary strategy named DROP can be used. DROP progressively releases concentrators after starting with an initial solution with all concentrators in use.

When the release of a concentrator offers no more savings, the procedure stops. This is obviously most useful in the opposite scenarios to the described above, where the optimal number of concentrators is thought to be close to the total number of locations considered.

2.4.2 LP Relaxation

A common method for achieving good sub-optimal results in problems where the ILP model is too complex is the so called LP Relaxation. The method consists in taking advantage of the fact that the LP solution (with real variables) of the corresponding problem is obtained much more quickly than in the ILP case [28]. In fact, the Branch & Bound procedure used by many ILP solvers is based on successively solving the LP model with some set of fixed variables. The LP solution acts as a lower bound for all the feasible solutions in the solution tree originated by fixing a particular set of variables. If that bound is higher than an already found solution, the whole tree can be discarded and depth search into it can be avoided.

The intuition behind this method lies on the notion that the LP solution has a fair probability of being close to the ILP solution, at least in certain aspects. This has particular application in binary-variable problems such as the one developed here, where variables denote the existence of certain parameters.

As an example, in our model, let’s assume the LP solution says that a given .Z while [ .. In abstract terms, this can be interpreted as more likely “belonging” to than it does to . Then it makes sense to re-solve the LP this time forcing , by setting that equality as a restriction in the problem.

This is the basis of this procedure. Initially for our case, variables closer to the unit in each iteration were set to 1 in the next one. The procedure stops when a feasible integer solution was found by the LP model.

The method can be modified to allow the alterations made to the original problem. Specifically, when considering splitter or ONT co-location, the variables cease to be just binary. The obvious modification is to fix in each run the variable that yields the least error when rounding up to the nearest integer. It should be noted that rounding down was not considered at first when the variables were between 0 and 1. This was because setting variables to zero often led to making the problem unfeasible in the following iterations (most of the time by not having enough remaining splitter capacity in the

scenario). Later, the lowest rounding error (up or down) was considered for all variables greater than 1, but this was empirically determined to present worse results than only rounding up, so the final version only rounds variables up. Figure 2.11 shows the flowchart of the process.

Figure 2.11 - Flowchart of LP Relaxation.