• Tidak ada hasil yang ditemukan

Concluding Remarks

OPTIMAL PRICING IN MARKETS WITH NON-CONVEX COSTS

4.7 Concluding Remarks

(a)Total payments as a function of flow capacity.

(b) Total uplifts as a function of flow capacity.

(c)Flow between two markets as a function of flow capacity.

Figure 4.7: An example of two connected markets with a constraint on the flow capacity.

of distributed optimization algorithms, but such approaches have not been possible in non-convex settings due to the lack of pricing rules with the desirable properties laid out in Section 4.2.2. It is now possible to explore whether EC prices can be used as the basis for distributed optimization algorithms in the non-convex setting.

4.A Supplement to Section 4.3.1

In this section, we formally prove the reduction of the optimization problem for the class of linear-plus-uplift functions to (4.6), and then show Propositions 18 and 19.

4.A.1 Reduction

Here, we show that for the class of linear-plus-uplift price functions𝑝(π‘žπ‘–;πœ†, 𝑒𝑖,π‘žΛ†π‘–)= πœ†π‘žπ‘– +𝑒𝑖1π‘žπ‘–=π‘žΛ†π‘–, one can assume Λ†π‘žβˆ—

𝑖 = π‘žβˆ—

𝑖 without loss of generality, and therefore the optimization problem (4.5) reduces to (4.6) for this class. The optimization problem (4.5) for price function 𝑝(π‘žπ‘–;πœ†, 𝑒𝑖,π‘žΛ†π‘–) =πœ†π‘žπ‘–+𝑒𝑖1π‘žπ‘–=π‘žΛ†π‘–,πœ†, 𝑒1, . . . , 𝑒𝑛 β‰₯ 0, is as follows

π‘βˆ—

uplift = min

π‘ž1,...,π‘žπ‘›

πœ†β‰₯0 𝑒1,...,𝑒𝑛β‰₯0

Λ† π‘ž1,...,π‘žΛ†π‘›

𝑛

Γ•

𝑖=1

(πœ†π‘žπ‘–+𝑒𝑖1π‘žπ‘–=π‘žΛ†π‘–) (4.25a)

s.t.

𝑛

Γ•

𝑖=1

π‘žπ‘– =𝑑 (4.25b)

πœ†π‘žπ‘–+𝑒𝑖1π‘žπ‘–=π‘žΛ†π‘– βˆ’π‘π‘–(π‘žπ‘–) β‰₯0, 𝑖 =1, . . . , 𝑛 (4.25c) πœ†π‘žπ‘–+𝑒𝑖1π‘žπ‘–=π‘žΛ†π‘– βˆ’π‘π‘–(π‘žπ‘–) β‰₯max

π‘ž0

π‘–β‰ π‘žπ‘–

πœ†π‘ž0

𝑖+𝑒𝑖1π‘žπ‘–0=π‘žΛ†π‘– βˆ’π‘π‘–(π‘ž0

𝑖), 𝑖=1, . . . , 𝑛 (4.25d) The following lemma shows that this optimization problem can be reduced to (4.6), and the optimal uplifts of (4.6) are no larger than those of (4.25).

Lemma 22. Given any solution(qβˆ—, πœ†βˆ—,uβˆ—,qΛ†βˆ—)to the optimization problem(4.25), (qβˆ—, πœ†βˆ—,𝒖,qβˆ—) is also a solution, where

𝑒

𝑖 =





ο£²



ο£³ π‘’βˆ—

𝑖, ifπ‘žΛ†βˆ—

𝑖 =π‘žβˆ—

𝑖

0, o.w.

.

Proof of Lemma 22. Let us first show the feasibility of (qβˆ—, πœ†βˆ—,𝒖,qβˆ—). For any𝑖 such that Λ†π‘žβˆ—

𝑖 β‰  π‘žβˆ—

𝑖, we have that πœ†βˆ—π‘žβˆ—

𝑖 βˆ’π‘π‘–(π‘žβˆ—

𝑖) β‰₯0 πœ†βˆ—π‘žβˆ—

𝑖 βˆ’π‘π‘–(π‘žβˆ—

𝑖) β‰₯ max

π‘ž0

π‘–β‰ π‘žβˆ—

𝑖

πœ†βˆ—π‘ž0

𝑖+π‘’βˆ—

𝑖1π‘ž0𝑖=π‘žΛ†βˆ—

𝑖

βˆ’π‘π‘–(π‘ž0

𝑖) β‰₯ max

π‘ž0

π‘–β‰ π‘žβˆ—

𝑖

πœ†βˆ—π‘ž0

π‘–βˆ’π‘π‘–(π‘ž0

𝑖), which implies

πœ†βˆ—π‘žβˆ—

𝑖 +π‘’βˆ—

𝑖1π‘žβˆ—π‘–=π‘žβˆ—

𝑖

βˆ’π‘π‘–(π‘žβˆ—

𝑖) β‰₯ 0 πœ†βˆ—π‘žβˆ—

𝑖 +π‘’βˆ—

𝑖1π‘žβˆ—π‘–=π‘žβˆ—

𝑖 βˆ’π‘π‘–(π‘žβˆ—

𝑖) β‰₯ max

π‘ž0

π‘–β‰ π‘žβˆ—

𝑖

πœ†βˆ—π‘ž0

𝑖+π‘’βˆ—

𝑖1π‘žπ‘–0=π‘žΛ†βˆ—

𝑖 βˆ’π‘π‘–(π‘ž0

𝑖),

becauseπ‘’βˆ—

𝑖 =0. Therefore (qβˆ—, πœ†βˆ—,𝒖,qβˆ—)is feasible.

The objective value of (qβˆ—, πœ†βˆ—,𝒖,qβˆ—)is

𝑛

Γ•

𝑖=1

(πœ†βˆ—π‘žβˆ—

𝑖 +𝑒

𝑖) = Γ•

𝑖: Λ†π‘žβˆ—

𝑖=π‘žβˆ—

𝑖

(πœ†βˆ—π‘žβˆ—

𝑖 +π‘’βˆ—

𝑖) + Γ•

𝑖: Λ†π‘žβˆ—

π‘–β‰ π‘žβˆ—

𝑖

πœ†βˆ—π‘žβˆ—

𝑖

=

𝑛

Γ•

𝑖=1

(πœ†βˆ—π‘žβˆ—

𝑖 +π‘’βˆ—

𝑖1π‘žβˆ—π‘–=π‘žΛ†βˆ—

𝑖

),

which is the same as that of (qβˆ—, πœ†βˆ—,uβˆ—,qΛ†βˆ—), and is therefore optimal.

Based on this lemma, the optimization problem (4.25) can be reduced to (4.6).

4.A.2 Closed-Form Solutions

Proof of Proposition 18. In the optimization problem (4.6), the order of variables in the minimizations does not matter, and further, for every fixedπ‘ž1, . . . , π‘žπ‘›andπœ†, the minimization over each𝑒𝑖can be done separately. Therefore, this program can be massaged into the following form

π‘βˆ—

uplift = min

π‘ž1,...,π‘žπ‘›

min

πœ†β‰₯0 𝑛

Γ•

𝑖=1

𝑔𝑖(π‘žπ‘–;πœ†)

!

(4.26a) s.t.

𝑛

Γ•

𝑖=1

π‘žπ‘–=𝑑 , (4.26b)

where

𝑔𝑖(π‘žπ‘–;πœ†) =min

𝑒𝑖β‰₯0

πœ†π‘žπ‘–+𝑒𝑖 (4.27a)

s.t. πœ†π‘žπ‘–+π‘’π‘–βˆ’π‘π‘–(π‘žπ‘–) β‰₯0, (4.27b) πœ†π‘žπ‘–+π‘’π‘–βˆ’π‘π‘–(π‘žπ‘–) β‰₯ max

π‘ž0

π‘–β‰ π‘žπ‘–

πœ†π‘ž0

π‘–βˆ’π‘π‘–(π‘ž0

𝑖). (4.27c) for all𝑖=1, . . . , 𝑛. Constraints (4.27b) and (4.27c) can be expressed as

πœ†π‘žπ‘–+𝑒𝑖 β‰₯ 𝑐𝑖(π‘žπ‘–), πœ†π‘žπ‘–+𝑒𝑖 β‰₯ 𝑐𝑖(π‘žπ‘–) +max

π‘ž0

π‘–β‰ π‘žπ‘–

πœ†π‘ž0

π‘–βˆ’π‘π‘–(π‘ž0

𝑖). It follows that

𝑔𝑖(π‘žπ‘–;πœ†) =πœ†π‘žπ‘–+π‘’βˆ—

𝑖 =𝑐𝑖(π‘žπ‘–) +max

0, max

π‘ž0

π‘–β‰ π‘žπ‘–

πœ†π‘ž0

π‘–βˆ’π‘π‘–(π‘ž0

𝑖)

.

which is, of course, a function ofπœ†andπ‘žπ‘–. Therefore, we have minπœ†β‰₯0

𝑛

Γ•

𝑖=1

𝑔𝑖(π‘žπ‘–;πœ†) =

𝑛

Γ•

𝑖=1

𝑐𝑖(π‘žπ‘–), and the minimizersπœ†βˆ— are all valuesπœ†for which max

π‘ž0

π‘–β‰ π‘žπ‘–

πœ†π‘ž0

π‘–βˆ’π‘π‘–(π‘ž0

𝑖) ≀ 0, which are exactly the elements of Ξ› = {πœ†β‰₯ 0 |πœ†π‘ž ≀ 𝑐𝑖(π‘ž), βˆ€π‘ž,βˆ€π‘–} (Figure 4.1 provides a pictorial description of these values.) Finally, we have the last minimization, which is

min

π‘ž1,...,π‘žπ‘› 𝑛

Γ•

𝑖=1

𝑐𝑖(π‘žπ‘–) (4.28a)

s.t.

𝑛

Γ•

𝑖=1

π‘žπ‘– =𝑑 (4.28b)

and therefore hasπ‘žβˆ—

𝑖 =π‘ž0

𝑖 βˆ€π‘–as its optimizer. We also haveπ‘’βˆ—

𝑖 =𝑐𝑖(π‘žβˆ—

𝑖) βˆ’πœ†βˆ—π‘žβˆ—

𝑖, βˆ€π‘–. Proof of Proposition 19. The steps of the proof are exactly the same as in the previous one, except that the additional minimizer picks theπœ†with the smallest total uplift Í𝑛

𝑖=1𝑒𝑖(πœ†), which corresponds to the largest element ofΞ›.

4.B Supplement to Section 4.3.2

In this section, we prove Theorem 20, in two parts. First, we show that there exist finite sets𝑄 ,A0,B0for which Algorithm 1 finds anπœ–-approximate solution, and we quantify the sizes of these sets as a function ofπœ–. In the second part, we analyze the running time of Algorithm 1.

4.B.1 πœ–-Accuracy

Let us first state a simple but useful lemma.

Lemma 23(𝛿-discretization). Given a set C βŠ† [𝐿1, 𝐿1] Γ— Β· Β· Β· Γ— [πΏπ‘˜, πΏπ‘˜], for any 𝛿 >0, there exists a finite setC0such that

βˆ€π‘§βˆˆ C, βˆƒπ‘§0∈ C0s.t. kπ‘§βˆ’π‘§0k∞ ≀ 𝛿, and further,C0contains at most𝑉/π›Ώπ‘˜ points, where𝑉 =ΓŽπ‘˜

𝑖=1(πΏπ‘–βˆ’πΏπ‘–)is a constant (the volume of the box). C0is said to be a𝛿-discretization ofC.

Let𝑄,A0, andB0denote some𝛿-discretizations of sets[0, 𝑑],AandB, respectively.

In other words, for everyπ‘ž ∈ [0, 𝑑],𝛼 ∈ A, and𝛽 ∈ B, there existπ‘ž0 βˆˆπ‘„,𝛼0∈ A0, and 𝛽0 ∈ B0, such that |π‘žβˆ’π‘ž0| ≀ 𝛿, kπ›Όβˆ’π›Ό0k∞ ≀ 𝛿, and kπ›½βˆ’π›½0k∞ ≀ 𝛿. We can combine all these inequalities as

k (π‘ž, 𝛼, 𝛽) βˆ’ (π‘ž0, 𝛼0, 𝛽0) k∞ ≀ 𝛿.

On the other hand, given that the cost function 𝑐𝑖(.) for each 𝑖 is Lipschitz on each continuous piece of its domain, there exists a positive constant 𝐾𝑖 such that

|𝑐𝑖(π‘ž) βˆ’π‘π‘–(π‘ž0) | ≀𝐾𝑖|π‘žβˆ’π‘ž0|, which implies

|𝑐𝑖(π‘ž) βˆ’π‘π‘–(π‘ž0) | ≀ 𝐾𝑖𝛿. (4.29) Similarly, Lipschitz continuity of 𝑝(.;.) implies existence of a positive constant𝐾 such that|𝑝(π‘ž, 𝛼, 𝛽) βˆ’ 𝑝(π‘ž0, 𝛼0, 𝛽0) | ≀𝐾k (π‘ž, 𝛼, 𝛽) βˆ’ (π‘ž0, 𝛼0, 𝛽0) k∞, which yields

|𝑝(π‘ž, 𝛼, 𝛽) βˆ’ 𝑝(π‘ž0, 𝛼0, 𝛽0) | ≀ 𝐾 𝛿. (4.30) Using Eqs. (4.29),(4.30), we can see that for any solutionπ‘žβˆ—

1, . . . , π‘žβˆ—

𝑛, π›Όβˆ—, π›½βˆ—

1, . . . , π›½βˆ—

𝑛to optimization (4.5), there exists a pointπ‘ž1, . . . , π‘žπ‘›, 𝛼, 𝛽1, . . . , 𝛽𝑛withπ‘ž1, . . . , π‘žπ‘› βˆˆπ‘„, 𝛼 ∈ A0and 𝛽 ∈ B0, for which constraints (4.5c) and (4.5d) are violated at most by

(𝐾+𝐾𝑖)𝛿and(2𝐾+2𝐾𝑖)𝛿, respectively, and the objective is larger than π‘βˆ—at most by𝑛𝐾 𝛿. As a result, this point will be anπœ–-approximate solution if

(𝐾+𝐾𝑖)𝛿 ≀ πœ– βˆ€π‘–, (4.31)

2(𝐾+𝐾𝑖)𝛿 ≀ πœ– βˆ€π‘–, (4.32)

𝑛𝐾 𝛿 ≀ π‘›πœ– . (4.33)

These constraints altogether enforce an upper bound on the value of𝛿 as 𝛿 ≀𝐢 πœ– ,

for some constant𝐢. Therefore if we pick

𝛿 = 𝑑

dβˆ—e 𝑑

𝐢 πœ–

, (4.34)

our algorithm is guaranteed to encounter anπœ–-approximate solution while enumerating the points, and𝑄 ={0, 𝛿,2𝛿, . . . , 𝑑}is a valid𝛿-discretization for[0, 𝑑], which has π‘π‘ž = dβˆ—e 𝑑

𝐢 πœ–

+1=𝑂 1

πœ–

points. The nice thing about this particular choice of𝛿 is that now𝑑can be written as a sum of𝑛elements in𝑄 (because all the elements, including 𝑑, are multiples of 𝛿), which allows us to satisfy the Market Clearing condition exactly. Based on Lemma (23),A0andB0contain𝑁𝛼 =𝑂

1 𝛿𝑙1

=𝑂 1

πœ–π‘™1

and𝑁𝛽 =𝑂 1

𝛿𝑙2

=𝑂 1

πœ–π‘™2

points.

Finally, if there are any discontinuities in the cost or price functions, we can simply add them to our discrete sets 𝑄, A0, and B0, and since there are at most a finite number of them, the sizes of the sets remain in the same order, i.e., π‘π‘ž =𝑂

1 πœ–

, 𝑁𝛼 = 𝑂

1 πœ–π‘™1

, and 𝑁𝛽 = 𝑂 1

πœ–π‘™2

. Next, we calculate the time complexity of Algorithm 1 running on these discrete sets.

4.B.2 Run-Time Analysis

In this section, we show that Algorithm 1 has a time complexity of𝑂

𝑛(1

πœ–)𝑙1+𝑙2+2 . For every fixed𝛼, we have the following computations:

1. The leaves: We need to compute 𝑔𝑖(π‘ž;𝛼) for every 𝑖 and every π‘ž ∈ 𝑄. Computing each𝑔𝑖(π‘ž;𝛼)(i.e., for fixed𝑖, π‘ž, 𝛼) takes𝑂(π‘π›½π‘π‘ž). The reason for that is we have to search over all 𝛽𝑖 ∈ 𝐡0, and for each one there are

π‘π‘ž+1 constraints to check. More explicitly, we need to (a) check𝑂(π‘π›½π‘π‘ž) constraints, (b) compute𝑁𝛽objectives, and (c) find the minimum among those 𝑁𝛽values. All these steps together take𝑂(π‘π›½π‘π‘ž), and repeating for every𝑖 andπ‘žmakes it𝑂(𝑛 𝑁𝛽𝑁2

π‘ž).

2. The intermediate nodes: In each new level, there are at most half as many (+1) nodes as in the previous level. For each node 𝑖 in this level, we need to compute 𝑔𝑖(π‘ž;𝛼) for every π‘ž ∈ 𝑄. For every fixed π‘ž, there are 𝑂(π‘π‘ž) possible pairs of(π‘žπ‘—, π‘žπ‘˜) that add up toπ‘ž, and therefore we need to (a) sum 𝑂(π‘π‘ž)pairs of objective values, and (b) find the minimum among them, which take𝑂(π‘π‘ž). Hence, the computation for each node takes𝑂(𝑁2

π‘ž). There are 𝑂(𝑛2 + 𝑛4+ Β· Β· Β· +2) =𝑂(𝑛)intermediate nodes in total, and therefore the total complexity of this part is𝑂(𝑛 𝑁2

π‘ž).

3. The root: Finally at the root, we need to compute𝑔root(𝑑;𝛼). There are π‘π‘ž possible pairs of (π‘žπ‘—, π‘žπ‘˜) that add up to 𝑑. Therefore, we need to compute π‘π‘žsums, and find the minimum among the resultingπ‘π‘žvalues, which takes 𝑂(π‘π‘ž).

Putting the pieces together, the computation for all values of 𝛼 takes 𝑁𝛼 Γ—

𝑂(𝑛 𝑁𝛽𝑁2

π‘ž) +𝑂(𝑛 𝑁2

π‘ž) +𝑂(π‘π‘ž)

, which in turn is 𝑂(𝑛 𝑁𝛼𝑁𝛽𝑁2

π‘ž). Finally, find- ing the minimum among the𝑁𝛼values simply takes𝑂(𝑁𝛼).

The backward procedure, which finds the quantities π‘žπ‘–and the parameters 𝛽𝑖, takes just𝑂(𝑛), since it is just a substitution for every node. As a result, the total running time is𝑂(𝑛 𝑁𝛼𝑁𝛽𝑁2

π‘ž), which based on the first part (Section 4.B.1) is𝑂

𝑛(1

πœ–)𝑙1+𝑙2+2 . 4.B.3 Remark on theπœ–-Approximation

As mentioned at the end of Section 4.3.2, if one requires the total payment in Definition 1 to be at mostπœ– (rather thanπ‘›πœ–) away from the optimalπ‘βˆ—, the running time of our algorithm will still be polynomial in both𝑛and 1/πœ–, i.e.,𝑂

𝑛3(1

πœ–)𝑙1+𝑙2+2 . To see that, notice in this case (4.31) and (4.32) remain the same, and (4.33) changes to𝑛𝐾 𝛿 ≀ πœ–. Therefore, the upper bound enforced by the constraints will be𝛿 ≀ 𝐢 πœ–

𝑛

, for some constant 𝐢. In this case, our choice of 𝛿 would be 𝛿 = 𝑑

dβˆ—e𝑑 𝑛

𝐢 πœ–

, and hence π‘π‘ž =𝑂

𝑛 πœ–

. 𝑁𝛼 and 𝑁𝛽 remain the same as before. The running time is 𝑂(𝑛 𝑁𝛼𝑁𝛽𝑁2

π‘ž), as computed previously, which in this case would be𝑂

𝑛3(1

πœ–)𝑙1+𝑙2+2 .

Figure 4.8: The transformation of an arbitrary-degree tree to a binary tree.

4.C Supplement to Section 4.4

In this section, we first show the transformation of the problem on a tree to one on a binary tree, and then prove Theorem 21.

4.C.1 Transformation into Binary Tree

Lemma 24. Given any tree with𝑛nodes (suppliers), there exists a binary tree with additional nodes which has the same solution(π‘žβˆ—

𝑖, . . . , π‘žβˆ—

𝑛, π›Όβˆ—, 𝛽1, . . . , 𝛽𝑛) for those nodes as the original network. The binary tree has𝑂(𝑛) nodes.

Proof. Take any node𝑖 that hasπ‘˜π‘– > 2 children. For any two children, introduce a dummy parent node. For any two dummy parent nodes, introduce a new level of dummy parent nodes. Continue this process until there are 2 or less nodes in the uppermost layer, and then connect them to node𝑖 (see Fig. 4.8). The capacities of the lines immediately connected to the children are the same as those in the original graph. The capacities of the new lines are infinite.

The total number of introduced dummy nodes by this procedure is 𝑂(π‘˜π‘–

2 + π‘˜π‘–

4 + Β· Β· Β· +2) =𝑂(π‘˜π‘–).

Since there are 1+π‘˜1+ π‘˜2+ Β· Β· Β· + π‘˜π‘› = 𝑛 nodes in total in the original tree, the number of introduced additional nodes is𝑂(π‘˜1+ Β· Β· Β· +π‘˜π‘›) =𝑂(𝑛). Therefore the total number of nodes in the new (binary) tree is𝑂(𝑛).

4.C.2 Proof of Theorem 21

Most of the proof is similar to the one presented in Section 4.B. For this reason, we only highlight the main points. The proof consists ofπœ–-accuracy and run-time, as before.

4.C.2.1 πœ–-Accuracy

Let 𝑄1, . . . , 𝑄𝑛, 𝐹1, . . . , 𝐹𝑛,A0,B0 denote some 𝛿-discretizations of sets [0, 𝑑1+ 𝑓ch

1(1)+ 𝑓ch

2(1)βˆ’ 𝑓1], . . . ,[0, 𝑑𝑛+ 𝑓ch

1(n)+ 𝑓ch

2(n)βˆ’ 𝑓𝑛], [𝑓1, 𝑓1], . . . ,[𝑓𝑛, 𝑓𝑛],A,B, respectively. Note that if any line capacities are infinite, the intervals can be replaced by[0,Í𝑛

𝑖=1𝑑𝑖]instead. Similar as in Section 4.B, the constraints enforce an upper bound on the value of 𝛿 as 𝛿 ≀ 𝐢 πœ– , for some constant𝐢. Based on Lemma (23), the sizes of the sets will be π‘π‘ž

𝑖 =𝑂

1 πœ–

βˆ€π‘–,𝑁𝑓

𝑖 = 𝑂

1 πœ–

βˆ€π‘–, 𝑁𝛼 =𝑂 1

πœ–π‘™1

, and 𝑁𝛽=𝑂

1 πœ–π‘™2

4.C.2.2 Run-Time Analysis

For every fixed𝛼, the run-time of the required computations is as follows.

1. The time complexity of computing𝑔𝑖(π‘žπ‘–;𝛼) for each node𝑖 and each fixed value ofπ‘žπ‘–is𝑂(π‘π›½π‘π‘ž

𝑖). Therefore, computing it for all nodes and all values takes𝑂(𝑛 𝑁𝛽𝑁2

π‘ž).

2. Computingβ„Žπ‘–(𝑓𝑖;𝛼) for each node𝑖and each fixed value of 𝑓𝑖 takes𝑂(𝑁2

𝑓), because there are𝑂(𝑁𝑓) ×𝑂(𝑁𝑓) pairs of values for (𝑓ch

1(𝑖), 𝑓ch

2(𝑖)) (π‘žπ‘– is automatically determined as the closest point in𝑄𝑖to𝑑𝑖+ 𝑓ch

1(𝑖)+ 𝑓ch

2(𝑖) βˆ’ 𝑓𝑖).

Therefore, its overall computation for all nodes and all values takes𝑂(𝑛 𝑁3

𝑓).

As a result, the overall computation takes𝑁𝛼× 𝑂

𝑛 𝑁𝛽𝑁2

π‘ž

+𝑂

𝑛 𝑁3

𝑓 , which is 𝑂

𝑛(1

πœ–)𝑙1+𝑙2+2 +𝑂

𝑛(1

πœ–)𝑙1+3

, or equivalently𝑂

𝑛(1

πœ–)𝑙1+max{𝑙2,1}+2 .

C h a p t e r 5