| 85 | | \subsubsection{Configuration} |
| 86 | | |
| 87 | | For comparative analysis, we consider two related works: |
| 88 | | Vigorito \cite{vigorito07} and Hsu \cite{hsu06} . Before we run each |
| 89 | | algorithm, we configured each algorithm so that it produced |
| 90 | | the best possible results. |
| 91 | | Figure~\ref{fig:vigorito_algorithm} shows |
| 92 | | that the performance of Vigorito's algorithm varies a lot |
| 93 | | depending on the input parameters $\alpha$ and $\beta$: |
| 94 | | \begin{itemize} |
| 95 | | \item $\alpha$ : exponential moving average factor |
| 96 | | for the historical average of duty-cycle ($\overline{\mu}$). |
| 97 | | $\alpha$ is set to 0.01, where $|\overline{E_{tra}}|$ |
| 98 | | is minimized to 0.510 and zerodays is kept to 0. |
| 99 | | \item $\beta$ : exponential moving average factor |
| 100 | | between the duty-cycle calculation ($\mu$) and |
| 101 | | its historical average ($\overline{\mu}$). |
| 102 | | $\beta$ is set to 0.5, where $|\overline{E_{tra}}|$ |
| 103 | | is minimized to 0.028. |
| 104 | | \end{itemize} |
| 105 | | %Thus, we set the input parameters as follows: |
| 106 | | %$\beta$ = 0.5 and $\alpha$ = 0.01. |
| | 85 | %\subsubsection{Configuration} |
| | 86 | % |
| | 87 | %For comparative analysis, we consider two related works: |
| | 88 | %Vigorito \cite{vigorito07} and Hsu \cite{hsu06} . Before we run each |
| | 89 | %algorithm, we configured each algorithm so that it produced |
| | 90 | %the best possible results. |
| | 91 | %Figure~\ref{fig:vigorito_algorithm} shows |
| | 92 | %that the performance of Vigorito's algorithm varies a lot |
| | 93 | %depending on the input parameters $\alpha$ and $\beta$: |
| 110 | | %\item $\alpha$ : At $\alpha = 0.01$, $|\overline{E_{tra}}|$ |
| 111 | | %is minimized to 0.510 while keeping the zerodays to 0. |
| 112 | | %\end{itemize} |
| 113 | | In a similar way, we set the moving average factor $\alpha$ |
| 114 | | that is used to predict the daily harvested solar energy of |
| 115 | | the Hsu's algorithm. We set the $\alpha$ so that the |
| 116 | | algorithm minimizes the difference from the target energy |
| 117 | | level, which is at $\alpha = 0.75$. |
| 118 | | %Figure~\ref{fig:hsu_algorithm} shows that the |
| 119 | | %performance of Hsu's algorithm depends on the exponential |
| 120 | | %moving average factor $\alpha$ that is used to predict |
| 121 | | %the daily harvested solar energy $\overline{E_s}$ |
| 122 | | %from the historical measurement $E_s$. We set the $\alpha$ |
| 123 | | %so that the algorithm minimizes the difference from the |
| 124 | | %target energy level, which is at $\alpha = 0.75$. |
| 125 | | |
| 126 | | \begin{figure} |
| 127 | | %\begin{tabular}{|p{0.45\textwidth}|} |
| 128 | | %\hline |
| 129 | | %\begin{scriptsize} |
| 130 | | %\begin{algorithmic}[1] |
| 131 | | %%\STATE $\theta$ $\leftarrow$ $[2,-1,1]$ |
| 132 | | %%\STATE $B$ $\leftarrow$ $B_{init} / B_{max}$ |
| 133 | | %%\STATE $B^*$ $\leftarrow$ $B_{target} / B_{max}$ |
| 134 | | %%\STATE $\rho$, $\mu$, $\overline{\mu}$ $\leftarrow$ $DC_{init}$ |
| 135 | | %%%\STATE $\mu$ $\leftarrow$ $DC_{init}$ |
| 136 | | %%%\STATE $\overline{\mu}$ $\leftarrow$ $DC_{init}$ |
| 137 | | %%\STATE $\phi$ $\leftarrow$ $[B, \mu, -B^*]$ |
| 138 | | %\LOOP |
| 139 | | % \STATE $B$ $\leftarrow$ $Bat / B_{max}$ |
| 140 | | % \STATE $\theta$ $\leftarrow$ $\theta + \frac{\mu}{\phi \cdot \phi} \times (B - \phi \cdot \theta) \times \phi$ |
| 141 | | % \STATE $\mu$ $\leftarrow$ $\min(1, \max(0, \frac{B^* - \theta(1) \times B + \theta(3) \times B^*}{\theta(2)}))$ |
| 142 | | % \STATE $\phi$ $\leftarrow$ $[B, \mu, -B^*]$ |
| 143 | | % \STATE $\overline{\mu}$ $\leftarrow$ $\overline{\mu} + \alpha \times (\mu - \overline{\mu})$ |
| 144 | | % \STATE $\rho$ $\leftarrow$ $\beta \times \mu + (1 - \beta) \times \overline{\mu}$ |
| 145 | | % \STATE $1/T_{samp}$ $\leftarrow$ $(1-\rho)/T_{sampmax} + \rho/T_{sampmin}$ |
| 146 | | % \STATE $1/T_{report}$ $\leftarrow$ $(1-\rho)/T_{reportmax} + \rho/T_{reportmin}$ |
| 147 | | %\ENDLOOP |
| 148 | | %\end{algorithmic} |
| 149 | | %\end{scriptsize} |
| 150 | | %\\ |
| 151 | | %\hline |
| 152 | | %\end{tabular} |
| 153 | | \begin{tabular}{cc} |
| 154 | | \includegraphics[width=0.23\textwidth]{fig/vigoritto_case3} & |
| 155 | | \includegraphics[width=0.23\textwidth]{fig/vigoritto_case2} \\ |
| 156 | | \end{tabular} |
| 157 | | \caption{Configuring the input parameters $\alpha$, $\beta$ |
| 158 | | for Vigorito's algorithm} |
| 159 | | \label{fig:vigorito_algorithm} |
| 160 | | \end{figure} |
| 161 | | |
| 162 | | %\begin{figure*}[ht] |
| 163 | | % \centering |
| 164 | | % \begin{tabular}{ccc} |
| 165 | | % \includegraphics[width=0.25\textwidth]{fig/vigoritto_case3} & |
| 166 | | % \includegraphics[width=0.25\textwidth]{fig/vigoritto_case2} & |
| 167 | | % \includegraphics[width=0.25\textwidth]{fig/hsu_case1} \\ |
| 168 | | % (a) $\alpha$ of Vigorito & |
| 169 | | % (b) $\beta$ of Vigorito & |
| 170 | | % (c) $\alpha$ of Hsu \\ |
| | 104 | %\end{itemize} |
| | 105 | %%Thus, we set the input parameters as follows: |
| | 106 | %%$\beta$ = 0.5 and $\alpha$ = 0.01. |
| | 107 | %%\begin{itemize} |
| | 108 | %%\item $\beta$ : At $\beta = 0.5$, $|\overline{E_{tra}}|$ |
| | 109 | %%is minimized to 0.028. |
| | 110 | %%\item $\alpha$ : At $\alpha = 0.01$, $|\overline{E_{tra}}|$ |
| | 111 | %%is minimized to 0.510 while keeping the zerodays to 0. |
| | 112 | %%\end{itemize} |
| | 113 | %In a similar way, we set the moving average factor $\alpha$ |
| | 114 | %that is used to predict the daily harvested solar energy of |
| | 115 | %the Hsu's algorithm. We set the $\alpha$ so that the |
| | 116 | %algorithm minimizes the difference from the target energy |
| | 117 | %level, which is at $\alpha = 0.75$. |
| | 118 | %%Figure~\ref{fig:hsu_algorithm} shows that the |
| | 119 | %%performance of Hsu's algorithm depends on the exponential |
| | 120 | %%moving average factor $\alpha$ that is used to predict |
| | 121 | %%the daily harvested solar energy $\overline{E_s}$ |
| | 122 | %%from the historical measurement $E_s$. We set the $\alpha$ |
| | 123 | %%so that the algorithm minimizes the difference from the |
| | 124 | %%target energy level, which is at $\alpha = 0.75$. |
| | 125 | % |
| | 126 | %\begin{figure} |
| | 127 | %%\begin{tabular}{|p{0.45\textwidth}|} |
| | 128 | %%\hline |
| | 129 | %%\begin{scriptsize} |
| | 130 | %%\begin{algorithmic}[1] |
| | 131 | %%%\STATE $\theta$ $\leftarrow$ $[2,-1,1]$ |
| | 132 | %%%\STATE $B$ $\leftarrow$ $B_{init} / B_{max}$ |
| | 133 | %%%\STATE $B^*$ $\leftarrow$ $B_{target} / B_{max}$ |
| | 134 | %%%\STATE $\rho$, $\mu$, $\overline{\mu}$ $\leftarrow$ $DC_{init}$ |
| | 135 | %%%%\STATE $\mu$ $\leftarrow$ $DC_{init}$ |
| | 136 | %%%%\STATE $\overline{\mu}$ $\leftarrow$ $DC_{init}$ |
| | 137 | %%%\STATE $\phi$ $\leftarrow$ $[B, \mu, -B^*]$ |
| | 138 | %%\LOOP |
| | 139 | %% \STATE $B$ $\leftarrow$ $Bat / B_{max}$ |
| | 140 | %% \STATE $\theta$ $\leftarrow$ $\theta + \frac{\mu}{\phi \cdot \phi} \times (B - \phi \cdot \theta) \times \phi$ |
| | 141 | %% \STATE $\mu$ $\leftarrow$ $\min(1, \max(0, \frac{B^* - \theta(1) \times B + \theta(3) \times B^*}{\theta(2)}))$ |
| | 142 | %% \STATE $\phi$ $\leftarrow$ $[B, \mu, -B^*]$ |
| | 143 | %% \STATE $\overline{\mu}$ $\leftarrow$ $\overline{\mu} + \alpha \times (\mu - \overline{\mu})$ |
| | 144 | %% \STATE $\rho$ $\leftarrow$ $\beta \times \mu + (1 - \beta) \times \overline{\mu}$ |
| | 145 | %% \STATE $1/T_{samp}$ $\leftarrow$ $(1-\rho)/T_{sampmax} + \rho/T_{sampmin}$ |
| | 146 | %% \STATE $1/T_{report}$ $\leftarrow$ $(1-\rho)/T_{reportmax} + \rho/T_{reportmin}$ |
| | 147 | %%\ENDLOOP |
| | 148 | %%\end{algorithmic} |
| | 149 | %%\end{scriptsize} |
| | 150 | %%\\ |
| | 151 | %%\hline |
| | 152 | %%\end{tabular} |
| | 153 | % \begin{tabular}{cc} |
| | 154 | % \includegraphics[width=0.23\textwidth]{fig/vigoritto_case3} & |
| | 155 | % \includegraphics[width=0.23\textwidth]{fig/vigoritto_case2} \\ |
| 172 | | % \caption{Configuring input parameters} |
| 173 | | % \label{fig:vigorito_parameters} |
| 174 | | %\end{figure*} |
| 175 | | |
| 176 | | %\begin{figure} |
| 177 | | %\centering |
| 178 | | %\includegraphics[width=0.25\textwidth]{fig/hsu_case1} |
| 179 | | %\caption{Configuring the input parameter $\alpha$ for |
| 180 | | %Hsu's algorithm} |
| 181 | | %\label{fig:hsu_algorithm} |
| 182 | | %\end{figure} |
| 183 | | |
| 184 | | |
| 185 | | |
| 186 | | \subsubsection{Simulation Results} |
| 187 | | |
| 188 | | To compare the performance of Vigorito's algorithm |
| 189 | | with ours, we consider the following metrics: |
| | 157 | %\caption{Configuring the input parameters $\alpha$, $\beta$ |
| | 158 | %for Vigorito's algorithm} |
| | 159 | %\label{fig:vigorito_algorithm} |
| | 160 | %\end{figure} |
| | 161 | % |
| | 162 | %%\begin{figure*}[ht] |
| | 163 | %% \centering |
| | 164 | %% \begin{tabular}{ccc} |
| | 165 | %% \includegraphics[width=0.25\textwidth]{fig/vigoritto_case3} & |
| | 166 | %% \includegraphics[width=0.25\textwidth]{fig/vigoritto_case2} & |
| | 167 | %% \includegraphics[width=0.25\textwidth]{fig/hsu_case1} \\ |
| | 168 | %% (a) $\alpha$ of Vigorito & |
| | 169 | %% (b) $\beta$ of Vigorito & |
| | 170 | %% (c) $\alpha$ of Hsu \\ |
| | 171 | %% \end{tabular} |
| | 172 | %% \caption{Configuring input parameters} |
| | 173 | %% \label{fig:vigorito_parameters} |
| | 174 | %%\end{figure*} |
| | 175 | % |
| | 176 | %%\begin{figure} |
| | 177 | %%\centering |
| | 178 | %%\includegraphics[width=0.25\textwidth]{fig/hsu_case1} |
| | 179 | %%\caption{Configuring the input parameter $\alpha$ for |
| | 180 | %%Hsu's algorithm} |
| | 181 | %%\label{fig:hsu_algorithm} |
| | 182 | %%\end{figure} |
| | 183 | % |
| | 184 | % |
| | 185 | % |
| | 186 | %\subsubsection{Simulation Results} |
| | 187 | |
| | 188 | For comparative analysis, we consider two related works |
| | 189 | on energy-harvesting-aware duty-cycling algorithms: |
| | 190 | Vigorito \cite{vigorito07} and Hsu \cite{hsu06} . |
| | 191 | To compare the performance of these algorithms with ours, |
| | 192 | we consider the following metrics: |