Next Article in Journal
Double Deep Q-Network Next-Generation Cyber-Physical Systems: A Reinforcement Learning-Enabled Anomaly Detection Framework for Next-Generation Cyber-Physical Systems
Previous Article in Journal
Cooperative Decisions of a Multi-Agent System for the Target-Pursuit Problem in Manned–Unmanned Environment
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Accelerating Bayesian Estimation of Solar Cell Equivalent Circuit Parameters Using JAX-Based Sampling

Department of Electrical Materials and Engineering, University of Hyogo, 2167 Shosha, Himeji 671-2280, Hyogo, Japan
Electronics 2023, 12(17), 3631; https://doi.org/10.3390/electronics12173631
Submission received: 31 July 2023 / Revised: 24 August 2023 / Accepted: 25 August 2023 / Published: 28 August 2023
(This article belongs to the Section Power Electronics)

Abstract

:
Equivalent circuit models that reproduce the current–voltage characteristics of solar cells are useful not only to gain physical insight into the power loss mechanisms that take place in solar cells but also for designing systems that use renewable solar energy as a power source. As mentioned in a previous paper, Bayesian estimation of equivalent circuit parameters avoids the drawbacks of nonlinear least-squares methods, such as the possibility of evaluating estimation errors. However, it requires a long computation time because the estimated values are obtained by sampling using a Markov chain Monte Carlo method. In this paper, a trial to accelerate the calculation by upgrading the Bayesian statistical package PyMC is presented. PyMC ver. 4, the next version of PyMC3 used in the previous paper, started to support the latest sampling libraries using a machine learning framework JAX, in addition to PyMC-specific methods. The acceleration effect of JAX is remarkable, achieving a calculation time of less than 1/20 times that of the case without JAX. Recommended calculation conditions were disclosed based on the results of a number of trials, and a demonstration with testable Python code on Google Colaboratory using the recommended conditions is published on GitHub.

1. Introduction

Efforts are underway to dramatically improve the efficiency as well as accessibility of crucial societal components including energy production and distribution, infrastructure establishment and upkeep, production technology, agriculture, transport, public health, and security by analyzing and utilizing information collected by the Internet of Things (IoT) networks, which consist of many wireless sensor nodes deployed around the society [1,2,3,4]. Utilizing permanent power sources that do not need to be replaced is necessary to minimize the maintenance costs of wireless sensor nodes. So far, devices that convert ambient energy sources such as heat, vibration, and light into electric power have been developed as environmental energy-harvesting devices. Among these, the use of light energy is an attractive option in terms of energy density and other factors, assuming a comfortable living environment for human inhabitants [5,6,7,8]. For this purpose, we need to develop technologies to make full use of power generated by solar cells under any lighting situation.
Solar cells have long been used to convert indoor light power into electric power [9]. In recent years, new types of solar cells, such as organic solar cells and perovskite solar cells, have attracted much attention [10,11,12,13]. One of the reasons why these new solar cells are attractive is that their power conversion efficiency even increases under low irradiation light. A previous work has elucidated that this increased efficiency can be attributed to the increase in parallel resistance within organic thin-film solar cells under lower light intensity, thereby resulting in reduced power losses [14]. On the other hand, dye-sensitized solar cells (DSSCs), a kind of the new solar cells and the ancestor of perovskite solar cells, are already on the market for this purpose [15,16]. A feature unique to DSSCs is that the electrochemical nature of DSSCs prevents their power conversion efficiency from decreasing under pulse-width-modulated illumination, which is commonly used in modern solid-state lighting with light-emitting diodes (LEDs) [17].
Equivalent circuit models of solar cells describe the direct current (DC) operation behavior of solar cells and are useful not only to gain physical insight into the power loss mechanisms that take place in solar cells, but also to design systems that use solar cells as power sources. Obtaining an accurate equivalent circuit model is especially important when employing solar cells as a power source for IoT devices used indoors, since it is necessary to track the optimal operating point of the solar cell in response to fluctuating irradiation light intensity.
The one-diode model shown in Figure 1 is the most basic solar cell equivalent circuit model and has been widely adopted because it reproduces the current–voltage characteristics of many solar cells, despite having only four basic elements displayed in Figure 1 and five parameters mentioned below. In this equivalent circuit, the following equation holds for the current I and the voltage V.
I = I s · e x p V I · R s n · V t 1 + V I · R s R p I p h
where R s and R p are the series and the parallel (shunt) resistances, I s and n denote the reverse saturation current and the ideality factor of the diode, respectively, and I p h is the ideal photocurrent. The thermal voltage V t is approximately 26 mV at room temperature.
It is necessary to extract five circuit parameters so as to reproduce the current–voltage curve of the solar cell obtained experimentally. This is the task of finding parameters that minimize the discrepancy between the experimental data and the corresponding equivalent circuit curve [18]. To accomplish this, a variety of nonlinear least-squares methods have traditionally been developed and used, including sophisticated techniques such as metaheuristic algorithms [19,20,21]. If one takes such a proper approach, of course, all five parameters are determined simultaneously.
It is worth noting here that in numerous experimental studies, only the series resistance R s as well as the parallel resistance R p is presented, and the other three parameters are often not presented. In such cases, it is expected that a simple method of estimating the series resistance R s (and parallel resistance R p ) as the reciprocal of the slope of the curve when the terminals are open (and shorted) is often employed [22]. However, the values obtained via this method are not suitable for the purpose of accurately estimating R s and R p because the slopes at these particular points are strongly affected not only by R s and R p shown in Figure 1 but also by other parameters like the ideality factor of the diode n [23]. Therefore, such an approach potentially yields imprecise outcomes in determining R s and R p as well as misunderstanding that the effect on n caused by specific conditions is the effect on R s or R p .
The nonlinear least-squares method yields point estimates for a set of parameters. It should be noted that the curves computed from the equivalent circuit are error free in a practical sense, but the experimental data are not free from measurement error. This means that the parameters that minimize the experimental and computed curves will have many locally optimal solutions. This implies that parameter estimation should also involve information about the error in the estimation in addition to point estimation. Indeed, when using nonlinear least-squares methods, it is frequently experienced that the point estimates differ depending on the initial guess of each parameter given to the program.
In recent years, parameter extraction from experimental data by Bayesian estimation has been used in various fields including physics, energy, and materials science to solve the problems mentioned above and has begun to produce fruitful results [24,25,26,27,28]. Bayesian estimation searches the parameter space according to a pre-specified probability distribution called the prior probability distribution to obtain a probability distribution of the parameter set that can reproduce the experimental data, called the posterior probability distribution. One may utilize the mean value and the standard deviation of the posterior probability distribution as the point estimate and the error, respectively, for example.
In a previous paper, the author reported on a method for extracting equivalent circuit parameters of solar cells from current–voltage characteristics using Bayesian estimation [29]. The result is not a point estimate of the parameters but an estimated probability distribution of the parameters, and thus, it is also possible to evaluate the error contained in the estimated value. For example, if one adds larger errors in the pseudo-generated experimental data, larger standard deviations of the estimated values are obtained as the outcome. This is a clear piece of evidence of the ability of the Bayesian estimation to treat uncertainty arising from the error in the experimental data.
On the other hand, a problem with the Markov chain Monte Carlo sampling method used in the estimation calculation is that it requires a relatively long computation time. In this paper, it is reported that by applying the latest sampling computation module, appropriate estimates can be obtained in a calculation time that is more than one order of magnitude shorter.

2. Methods

One can express the current I in terms of an analytical solution for the voltage V, by using the principal branch of Lambert’s W-function W0(x) [30].
I V = n · V t R s · W 0 Q V + V I s + I p h · R s R s + R p
with
Q V = I s · R s · R p n · V t · R s + R p · e x p V + I s + I p h · R s n · V t · R s + R p
Lambert’s W-function W ( x ) is defined as the solution of the transcendental equation W ( x ) · e x p ( ( W ( x ) ) = x , and has two real branches. W0(x) is the branch defined for x∈[−exp(−1), +∞]. This equation includes the exponential function of a relatively large number to be computed once, which creates the risk of overflow when standard double-precision floating-point number is used. To avoid this, it is very useful to use the g-function g ( x ) = l n ( W ( e x p ( x ) ) ) , defined by Roberts [31,32,33].
I V = V R s + n V t R s ln I s R s R p n V t R s + R p g x V
with
x V = ln I s R s R p n V t R s + R p + R s R p n V t R s + R p V R s + I s + I p h
This equation of I(V) using g-function appeared in Ref. [33] for the first time. This is because Roberts focused his attention on the equation of V(I), which potentially causes overflow much more easily than I(V).
In the previous work, the Python package PyMC3 [34], which enables us to conduct Bayesian estimation by simply writing a model in Python, was employed. This package is still under active development, and the next version, PyMC ver. 4, and the current version, PyMC ver. 5 [35], have already been released. These new versions support the latest sampling libraries Numpyro [36,37] and Blackjax [38], which are based on the machine learning framework JAX [39] and are expected to provide accelerated sampling, in addition to conventional PyMC-specific sampling methods.
As shown below, each parameter is assigned a prior probability density distribution in the form of a uniform distribution spanning several orders of magnitude, thereby indicating a deliberate avoidance of substantial prior information utilization. As an example, the upper limit permitted for I p h surpasses the short-circuit photocurrent magnitude by over tenfold. These are the same as ones used in the previous work [29].
I p h   [ m A ]   ~   U n i f ( 1 × 10 2 ,   1 × 10 4 ) R p   [ Ω ]   ~   U n i f ( 1 × 10 0 ,   1 × 10 5 ) R s   [ m Ω ]   ~   U n i f ( 1 × 10 0 ,   1 × 10 8 ) I s   [ n A ]   ~   U n i f ( 1 × 10 1 ,   1 × 10 6 ) n   ~   U n i f ( 5 × 10 1 , 5 × 10 2 )
The computational algorithm for g ( x ) is given in Ref. [31]. An initial rough estimation of g ( x ) was obtained by the piecewise function reported in the original literature, not the softplus-like function developed in the previous work [29]. Although the latter consists of a single analytical equation, it was found that it gives a somewhat worse estimation compared to the former one.
The current–voltage characteristics of a Si solar cell [18] and an organic photovoltaic cell (OPV) [40] used in the literature [29] were used as the experimental data. Calculations were performed on the free version of Google Colaboratory, employing 10,000 steps for both sampling and burn-in if not otherwise noted, and the number of chains (parallel calculations) was two. All calculations were run on the CPU, and it was confirmed that the calculations were executed on two Xeon cores (2.2 GHz) in all cases. GPUs and TPUs provided in the free version of Google Colaboratory were not used, as they did not improve the computation speed.

3. Results and Discussion

3.1. Recommended Calculation Condition and Its Results

As a result of a large number of trials, the author recommends the following calculation conditions: use calculation package Numpyro under PyMC ver. 5 with 10,000 steps for both sampling and burn-in. Figure 2 shows the density distributions, which are similar to those of the posterior probability density function, and the trace plots for each equivalent circuit parameter obtained under these conditions for the tabular experimental data of the commercial Si solar cell (R.T.C. France) presented in the literature [18]. Table 1 shows the results for the estimated values. The shapes of density distributions generated by two independent chains mimic each other and are similar to normal distribution functions. According to the central limit theorem, the density distribution generally approaches a normal distribution function as the number of sampling steps increases. The trace plots show that the values are repeatedly updated within an appropriate range, indicating that the Markov chain Monte Carlo calculation converges well. In fact, the R ^ (R-hat) value, which indicates the convergence of this calculation, is 1.0 for all parameters. The deviation of R ^ from 1.0 is usually accompanied by trace plots drifting unsteadily over a wide range and skewed density distributions. The average values for each parameter listed in Table 1 are practically the same as those in the literature. In addition, as shown in Figure 3, the current–voltage curve calculated using the mean values of the density distributions reasonably reproduces the experimental data.
Figure 4 shows the density distributions and the trace plots for each equivalent circuit parameter obtained under these conditions for the OPV (PTB7-Th:C70, annealed at 175 °C) experimental data shown in the literature [40]. The results for each parameter estimate are summarized in Table 2. Similarly, the calculation converges well, and no serious discrepancy is observed between the simulated curve using the average values of the density distributions and the experimental data, as shown in Figure 5. On the other hand, the mean values of each parameter shown in Table 2 are slightly different from those shown in the previous work [29]. This is due to the fact that the experimental data up to +0.8 V were used in this study, while those up to +0.9 V were used in the previous work.
The calculation times were approximately 160 s and 310 s for the former and latter data, respectively. The usage of JAX and Numpyro accelerates the calculation, and these calculation times are less than 1/20 times those calculations when using PyMC-specific methods without JAX. The above results, including the Python code, are available on GitHub [41]. The calculation time varies somewhat from run to run and data to data, and successful convergence of the calculation potentially depends on the experimental data used. If the calculations do not converge well, increasing the number of burn-in and sampling steps may help.

3.2. Results of Other Conditions

Table 3 summarizes the calculation results for the Si solar cell obtained under other typical calculation conditions. The parameter estimates themselves were almost identical for all calculation methods: without JAX, PyMC3 and PyMC ver. 4 required approximately 9000 s of calculation time, and PyMC ver. 5 was too time consuming to verify. On the other hand, when JAX was used, the computation time was less than 150 s, which is a remarkable acceleration.
The Markov chain Monte Carlo computation used for the present study is something like a numerical experiment of a random process, and the steps needed to reach the convergence change from trial to trial, probably due to the initial condition and data set. In the case of this experimental data, both Numpyro and Blackjax were verified to converge successfully 10 times in 10 trials. On the other hand, for the OPV experimental data, Numpyro converged 10 times in 10 trials, as shown in Table 4, while the calculation converged only in less than half of the cases when Blackjax was used.

3.3. Dependence on the Number of Steps

In Bayesian estimation using Markov chain Monte Carlo methods, an increase in the number of steps directly leads to an increase in computation time. Therefore, information on the minimum number of steps required to obtain adequate results is important. This section describes the results of an investigation of this issue using PyMC ver. 5, the latest version at the time of writing the present paper. The number of steps used for sampling and burn-in is the same, and only the number of steps is changed. Other conditions remained unchanged.
The results without JAX are shown in Table 5 and Table 6. The computation time increases monotonically as the number of steps increases. In Table 5, the standard deviations of some parameters are noticeably large for the 1000-step case, indicating that adequate results are not obtained. Even in the case of 2000 steps, the computation time exceeds 7000 s, which is much longer than the computation time of 10,000 steps using Numpyro.
Table 7 and Table 8 show the results of varying the number of steps when using Numpyro. Computing a large number of consecutive calculations decreases the overhead associated with compilation. For this reason, shorter computation times are shown than in the results shown in 3.1. As the number of steps increases, the probability of convergence of the computation increases monotonically, indicating that for both data sets, convergence is almost certain after 10,000 steps of computation.
Based on these results, it is recommended that Numpyro be used and that 10,000 steps be used for both sampling and burn-in. In addition, the computation time and the probability of convergence of the computation depended on the data set. The reason for this is not clear at this time and is a subject for future research.

4. Conclusions

Equivalent circuit models that reproduce the current–voltage characteristics of solar cells are useful not only to gain physical insight into the power loss mechanisms that take place in solar cells but also for designing systems that use renewable solar energy as a power source. The extraction of equivalent circuit parameters from experimental current–voltage characteristics of a solar cell is still an active research topic today. Bayesian estimation of equivalent circuit parameters avoids the drawbacks of nonlinear least-squares methods; however, it requires a long computation time. In this study, we investigated the acceleration of Bayesian estimation of equivalent circuit parameters for solar cells from current–voltage characteristics using the latest JAX-based sampling libraries that are now available in recent versions of PyMC. It was confirmed that reasonable estimates could be obtained in less than 1/20 times that of the computation time compared to the case where JAX is not used. Recommendations were made based on the results of a number of trials, and a demonstration with testable Python code on Google Colaboratory using the recommended conditions is published on GitHub [41].

Funding

This research received no funding.

Data Availability Statement

The data that support the findings of this study are available from the corresponding author upon reasonable request.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. Rawat, P.; Singh, K.D.; Chaouchi, H.; Bonnin, J.M. Wireless sensor networks: A survey on recent developments and potential synergies. J. Supercomp. 2014, 68, 1–48. [Google Scholar] [CrossRef]
  2. Jamshed, M.A.; Ali, K.; Abbasi, Q.H.; Imran, M.A.; Ur-Rehman, M. Challenges, applications and future of wireless sensors in Internet of Things: A review. IEEE Sens. J. 2022, 22, 5482–5494. [Google Scholar] [CrossRef]
  3. Hodge, V.J.; O’Keefe, S.; Weeks, M.; Moulds, A. Wireless Sensor Networks for Condition Monitoring in the Railway Industry: A Survey. IEEE Trans. Intell. Transp. Sys. 2015, 16, 1088–1106. [Google Scholar] [CrossRef]
  4. Vullers, R.J.M.; van Schaijk, R.; Doms, I.; Van Hoof, C.; Mertens, R. Micropower energy harvesting. Solid-State Electron. 2009, 53, 684–693. [Google Scholar] [CrossRef]
  5. Sudevalayam, S.; Kulkarni, P. Energy Harvesting Sensor Nodes: Survey and Implications. IEEE Commun. Surv. Tutor. 2011, 13, 443–461. [Google Scholar] [CrossRef]
  6. Matiko, J.W.; Grabham, N.J.; Beeby, S.P.; Tudor, M.J. Review of the application of energy harvesting in buildings. Meas. Sci. Technol. 2014, 25, 012002. [Google Scholar] [CrossRef]
  7. Raj, A.; Steingart, D. Review-Power Sources for the Internet of Things. J. Electrochem. Soc. 2018, 165, B3130–B3136. [Google Scholar] [CrossRef]
  8. Venkateswararao, A.; Ho, J.K.W.; So, S.K.; Liu, S.-W.; Wong, K.-T. Device characteristics and material developments of indoor photovoltaic devices. Mater. Sci. Eng. R 2020, 139, 100517. [Google Scholar] [CrossRef]
  9. Kuwano, Y.; Imai, T.; Ohnishi, M.; Nakano, S.; Fukatsu, T. Amorphous Si Photovoltaic Cells and Cell Module (Integrated Cell Module). Jpn. J. Appl. Phys. 1980, 19, 137–141. [Google Scholar] [CrossRef]
  10. Li, B.; Hou, B.; Amaratunga, G.A.J. Indoor photovoltaics, The Next Big Trend in solution-processed solar cells. InfoMat 2021, 3, 445–459. [Google Scholar] [CrossRef]
  11. Mathews, I.; Kantareddy, S.N.; Buonassisi, T.; Peters, I.M. Technology and Market Perspective for Indoor Photovoltaic Cells. Joule 2019, 3, 1415–1426. [Google Scholar] [CrossRef]
  12. Arai, R.; Furukawa, S.; Hidaka, Y.; Komiyama, H.; Yasuda, T. High-Performance Organic Energy-Harvesting Devices and Modules for Self-Sustainable Power Generation under Ambient Indoor Lighting Environments. ACS Appl. Mater. Interfaces 2019, 11, 9259–9264. [Google Scholar] [CrossRef]
  13. Lee, H.K.H.; Li, Z.; Durrant, J.R.; Tsoi, W.C. Is organic photovoltaics promising for indoor applications? Appl. Phys. Lett. 2016, 108, 253301. [Google Scholar] [CrossRef]
  14. Tada, K. Characterization of polymer bulk heterojunction photocell with unmodified C70 prepared with halogen-free solvent for indoor light harvesting. Org. Electron. 2016, 30, 289–295. [Google Scholar] [CrossRef]
  15. Aslam, A.; Mehmood, U.; Arshad, M.H.; Ishfaq, A.; Zaheer, J.; Ul Haq Khan, A.; Sufyan, M. Dye-sensitized solar cells (DSSCs) as a potential photovoltaic technology for the self-powered internet of things (IoTs) applications. Sol. Energy 2020, 207, 874–892. [Google Scholar] [CrossRef]
  16. Tanabe, N. Dye-Sensitized Solar Cell for Energy Harvesting Applications. Fujikura Tech. Rev. 2013, 42, 109–113. [Google Scholar]
  17. Tada, K. Characteristics of Dye-Sensitized Solar Cell under PWM Illumination: Toward Indoor Light-Energy Harvesting in the Solid-State Lighting Era. Energies 2022, 15, 9553. [Google Scholar] [CrossRef]
  18. Easwarakhanthan, T.; Bottin, J.; Bouhouch, I.; Boutrit, C. Nonlinear minimization algorithm for determining the solar cell parameters with microcomputers. Int. J. Sol. Energy 1986, 4, 1–12. [Google Scholar] [CrossRef]
  19. Venkateswari, R.; Rajasekar, N. Review on parameter estimation techniques of solar photovoltaic systems. Int. Trans. Electr. Energ. Syst. 2021, 31, e13113. [Google Scholar] [CrossRef]
  20. Younis, A.; Bakhit, A.; Ons, M.; Hashi, M. A comprehensive and critical review of bio-inspired metaheuristic frameworks for extracting parameters of solar cell single and double diode models. Energy Rep. 2022, 8, 7085–7106. [Google Scholar] [CrossRef]
  21. Gu, Z.; Xiong, G.; Fu, X. Parameter Extraction of Solar Photovoltaic Cell and Module Models with Metaheuristic Algorithms: A Review. Sustainability 2023, 15, 3312. [Google Scholar] [CrossRef]
  22. Shirland, F.A. The history, design, fabrication and performance of CdS thin film solar cells. Adv. Energy Conv. 1966, 6, 201–221. [Google Scholar] [CrossRef]
  23. Tada, K. What Do Apparent Series and Shunt Resistances in Solar Cell Estimated by I–V Slope Mean? Study with Exact Analytical Expressions. Phys. Status Solidi A 2018, 215, 18004. [Google Scholar] [CrossRef]
  24. Nagata, K.; Sugita, S.; Okada, M. Bayesian spectral deconvolution with the exchange Monte Carlo method. Neural Netw. 2012, 28, 82. [Google Scholar] [CrossRef]
  25. Brandt, R.E.; Kurchin, R.C.; Steinmann, V.; Kitchaev, D.; Roat, C.; Levcenco, S.; Ceder, G.; Unold, T.; Buonassisi, T. Rapid Photovoltaic Device Characterization through Bayesian Parameter Estimation. Joule 2017, 1, 843. [Google Scholar] [CrossRef]
  26. Akai, I.; Iwamitsu, K.; Okada, M. Bayesian spectroscopy in solid-state photo-physics. J. Phys. Conf. Ser. 2018, 1036, 012022. [Google Scholar] [CrossRef]
  27. Iwamitsu, K.; Okada, M.; Akai, I. Spectral Decomposition of Components Weaker than Noise Intensity by Bayesian Spectroscopy. J. Phys. Soc. Jpn. 2020, 89, 104004. [Google Scholar] [CrossRef]
  28. Kawahara, K.; Ishikawa, R.; Higashi, T.; Kimura, T.; Ikuhara, Y.H.; Shibata, N.; Ikuhara, Y. Unique fitting of electrochemical impedance spectra by random walk Metropolis Hastings algorithm. J. Power Sources 2018, 403, 184–191. [Google Scholar] [CrossRef]
  29. Tada, K. Bayesian estimation of equivalent circuit parameters of photovoltaic cells. Appl. Phys. Express 2021, 14, 046502. [Google Scholar] [CrossRef]
  30. Jain, A.; Kapoor, A. Exact analytical solutions of the parameters of real solar cells using Lambert W-function. Sol. Energy Mater. Sol. Cells 2004, 81, 269–277. [Google Scholar] [CrossRef]
  31. Roberts, K. A Robust Approximation to a Lambert-Type Function. arXiv 2015, arXiv:1504.01964v1. [Google Scholar]
  32. Roberts, K.; Valluri, S.R. On Calculating the Current–Voltage Characteristic of Multi-Diode Models for Organic Solar Cells. arXiv 2015, arXiv:1601.02679v1. [Google Scholar]
  33. Tada, K. Calculation of Error in Series/Shunt Resistance Estimated from Current–Voltage Slope Using Exact Analytical Expressions with Roberts g-Function. IEEJ Trans. Electr. Erectron. Eng. 2019, 14, 333–334. [Google Scholar] [CrossRef]
  34. Salvatier, J.; Wiecki, T.V.; Fonnesbeck, C. Probabilistic programming in Python using PyMC3. PeerJ Comput. Sci. 2016, 2, e55. [Google Scholar] [CrossRef]
  35. PyMC 4.0 Release Announcement. Available online: https://www.pymc.io/blog/v4_announcement.html#v4_announcement (accessed on 17 August 2023).
  36. Phan, D.; Pradhan, N.; Jankowiak, M. Composable Effects for Flexible and Accelerated Probabilistic Programming in NumPyro. arXiv 2019, arXiv:1912.11554. [Google Scholar]
  37. Bingham, E.; Chen, J.P.; Jankowiak, M.; Obermeyer, F.; Pradhan, N.; Karaletsos, T.; Singh, R.; Szerlip, P.A.; Horsfall, P.; Goodman, N.D. Pyro: Deep Universal Probabilistic Programming. J. Mach. Learn. Res. 2019, 20, 1–6. [Google Scholar]
  38. Blackjax. Available online: http://github.com/blackjax-devs/blackjax (accessed on 17 August 2023).
  39. JAX: Autograd and XLA. Available online: https://github.com/google/jax (accessed on 17 August 2023).
  40. Tada, K. Effect of fullerene substituent on thermal robustness in polymer:fullerene bulk heterojunction solar cells. Jpn. J. Appl. Phys. 2020, 59, SDDD03. [Google Scholar] [CrossRef]
  41. Demonstration Codes. Note that These Are Experimental Codes for the Purpose of Helping the Readers to Validate the Concept of the Present Study, and the Author Is Not Responsible for any Damages that May Result from Their Use. Available online: https://github.com/KTada777/Bayesian_SolarCell_1D-Citrcuit (accessed on 24 August 2023).
Figure 1. One-diode equivalent circuit model of photovoltaic cell.
Figure 1. One-diode equivalent circuit model of photovoltaic cell.
Electronics 12 03631 g001
Figure 2. Density distributions ((left) panels) and trace plots ((right) panels) for each equivalent circuit parameter of the commercial Si solar cell (R.T.C. France) [18] with the recommended calculation condition. The solid and dotted lines correspond to different chains.
Figure 2. Density distributions ((left) panels) and trace plots ((right) panels) for each equivalent circuit parameter of the commercial Si solar cell (R.T.C. France) [18] with the recommended calculation condition. The solid and dotted lines correspond to different chains.
Electronics 12 03631 g002
Figure 3. Experimental data (symbols) and simulated curve (line) for the commercial Si solar cell (R.T.C. France) [18].
Figure 3. Experimental data (symbols) and simulated curve (line) for the commercial Si solar cell (R.T.C. France) [18].
Electronics 12 03631 g003
Figure 4. Density distributions ((left) panels) and trace plots ((right) panels) for each equivalent circuit parameter of the OPV (PTB7-Th:C70, annealed at 175 °C) [40] with the recommended calculation condition. The solid and dotted lines correspond to different chains.
Figure 4. Density distributions ((left) panels) and trace plots ((right) panels) for each equivalent circuit parameter of the OPV (PTB7-Th:C70, annealed at 175 °C) [40] with the recommended calculation condition. The solid and dotted lines correspond to different chains.
Electronics 12 03631 g004
Figure 5. Experimental data (symbols) and simulated curve (line) for the OPV (PTB7-Th:C70, annealed at 175 °C) [40].
Figure 5. Experimental data (symbols) and simulated curve (line) for the OPV (PTB7-Th:C70, annealed at 175 °C) [40].
Electronics 12 03631 g005
Table 1. Estimation reported in Ref. [18] and Bayesian estimation of the equivalent circuit parameters of the commercial Si solar cell (R.T.C. France) [18] with the recommended calculation condition.
Table 1. Estimation reported in Ref. [18] and Bayesian estimation of the equivalent circuit parameters of the commercial Si solar cell (R.T.C. France) [18] with the recommended calculation condition.
ParameterRef. [18]Bayesian Estimation
Mean ValueStandard Deviation R ^
I p h   [ m A ] 760.8 760.70.41.0
R p   [ Ω ] 53.7654.414.701.0
R s   [ m Ω ] 36.436.440.541.0
I s   [ n A ] 322.3 321.5 38.4 1.0
n 1.48371.5020.0121.0
Table 2. Bayesian estimation of the equivalent circuit parameters of the OPV (PTB7-Th:C70, annealed at 175 °C) [40] with the recommended calculation condition.
Table 2. Bayesian estimation of the equivalent circuit parameters of the OPV (PTB7-Th:C70, annealed at 175 °C) [40] with the recommended calculation condition.
ParameterMean ValueStandard Deviation R ^
J p h   [ m A · c m 2 ] 14.210.021.0
R p · A   [ Ω · c m 2 ] 372.211.11.0
R s · A   [ m Ω · c m 2 ] 52811981.0
J s   [ n A · c m 2 ] 2562 539 1.0
n 3.3710.0831.0
Table 3. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters under various computation conditions (experimental data: the commercial Si solar cell (R.T.C. France) [18]). All displayed values are typical ones.
Table 3. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters under various computation conditions (experimental data: the commercial Si solar cell (R.T.C. France) [18]). All displayed values are typical ones.
Method I p h [ m A ] R p [ Ω ] R s [ m Ω ] I s [ n A ] n Comp. Time [s]Convergence
/Trial
MeanSDMeanSDMeanSDMeanSDMeanSD
PyMC3 760.7 0.35 54.37 4.79 36.44 0.55 321.1 39.0 1.502 0.012 8769 1/1
PyMC ver.4
(w/o JAX)
760.7 0.35 54.27 4.75 36.45 0.55 320.4 36.7 1.501 0.012 9155 1/1
PyMC ver.5
(w/o JAX)
The calculation was interrupted because the runtime usage limit of Google Colaboratory was exceeded.
PyMC ver.4
+ JAX(Numpyro)
760.7 0.35 54.31 4.64 36.45 0.54 319.9 38.0 1.501 0.012 152 10/10
PyMC ver.5
+ JAX(Numpyro)
760.7 0.35 54.24 4.63 36.46 0.54 319.9 37.6 1.501 0.012 117 10/10
PyMC ver.4
+ JAX(Blackjax)
760.7 0.35 54.32 4.76 36.45 0.55 320.7 39.4 1.501 0.012 127 10/10
PyMC ver.5
+ JAX(Blackjax)
760.7 0.35 54.32 4.78 36.45 0.54 320.5 37.7 1.502 0.012 125 10/10
Table 4. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters under various computation conditions (experimental data: the OPV (PTB7-Th:C70, annealed at 175 °C) [40]). All displayed values are typical ones.
Table 4. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters under various computation conditions (experimental data: the OPV (PTB7-Th:C70, annealed at 175 °C) [40]). All displayed values are typical ones.
Method J p h [ m A · c m 2 ] R p · A [ Ω · c m 2 ] R s · A [ m Ω · c m 2 ] J s [ n A · c m 2 ] n Comp. Time [s]Convergence
/Trial
MeanSDMeanSDMeanSDMeanSDMeanSD
PyMC3 14.2 0.02 372 11.2 5288 201 2546 545 3.37 0.08 9374 1/1
PyMC ver.4
(w/o JAX)
14.2 0.02 372 11.0 5284 201 2555 538 3.37 0.08 7899 1/1
PyMC ver.5
(w/o JAX)
14.2 0.02 372 11.0 5286 198 2549 535 3.37 0.08 37,303 1/1
PyMC ver.4
+ JAX(Numpyro)
14.2 0.02 372 10.8 5286 193 2549 522 3.37 0.08 363 10/10
PyMC ver.5
+ JAX(Numpyro)
14.2 0.02 372 11.2 5282 199 2560 544 3.37 0.08 259 10/10
PyMC ver.4
+ JAX(Blackjax)
14.2 0.02 372 11.1 5282 200 2560 545 3.37 0.08 283 5/10
PyMC ver.5
+ JAX(Blackjax)
14.2 0.02 372 10.9 5285 199 2561 535 3.37 0.08 178 3/10
Table 5. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 without JAX under various numbers of steps (experimental data: the commercial Si solar cell (R.T.C. France) [18]). All displayed values are typical ones.
Table 5. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 without JAX under various numbers of steps (experimental data: the commercial Si solar cell (R.T.C. France) [18]). All displayed values are typical ones.
Steps I p h [ m A ] R p [ Ω ] R s [ m Ω ] I s [ n A ] n Comp. Time [s]Convergence
/Trial
MeanSDMeanSDMeanSDMeanSDMeanSD
1000 760.7 0. 77 3321 13,354 35.97 1.092 368.5 146.3 1.512 0.0 28 3615 1/1
2000 760. 8 0. 35 54.08 4.50 36.45 0.52 320.1 36.6 1.501 0.012 9248 1/1
5000 760.7 0.34 54.32 4.63 36.44 0.55 321.7 39.1 1.502 0.012 23,306 1/1
10,000 The calculation was interrupted because the runtime usage limit of Google Colaboratory was exceeded.
Table 6. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 without JAX under various numbers of steps (experimental data: the OPV (PTB7-Th:C70, annealed at 175 °C) [40]). All displayed values are typical ones.
Table 6. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 without JAX under various numbers of steps (experimental data: the OPV (PTB7-Th:C70, annealed at 175 °C) [40]). All displayed values are typical ones.
Steps J p h [ m A · c m 2 ] R p · A [ Ω · c m 2 ] R s · A [ m Ω · c m 2 ] J s [ n A · c m 2 ] n Comp. Time [s]Convergence
/Trial
MeanSDMeanSDMeanSDMeanSDMeanSD
1000 14.2 0.02 371 11.0 5297 206 2514 542 3.36 0.09 4120 1/1
2000 14.2 0.02 372 11.2 5292 204 2538 557 3.37 0.09 7721 1/1
5000 14.2 0.02 372 11.0 5282 198 2558 533 3.37 0.08 19,044 1/1
10,000 14.2 0.02 372 11.0 5286 198 2549 535 3.37 0.08 37,303 1/1
Table 7. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 with Numpyro under various numbers of steps (experimental data: the commercial Si solar cell (R.T.C. France) [18]). All displayed values are typical ones.
Table 7. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 with Numpyro under various numbers of steps (experimental data: the commercial Si solar cell (R.T.C. France) [18]). All displayed values are typical ones.
Steps I p h [ m A ] R p [ Ω ] R s [ m Ω ] I s [ n A ] n Comp. Time [s]Convergence
/Trial
MeanSDMeanSDMeanSDMeanSDMeanSD
1000 0/10
2000 760.7 0.35 54.3 3 4.7 2 36.4 5 0.55 320.0 38.6 1.50 1 0.012 31 2/10
5000 760.7 0.3 4 54. 19 4. 64 36.4 8 0.5 4 318.3 37.1 1.50 1 0.012 73 8/10
10,000 760.7 0.3 5 54. 24 4. 63 36.4 6 0.5 4 319.9 37.6 1.50 1 0.012 117 10/10
Table 8. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 with Numpyro under various numbers of steps (experimental data: the OPV (PTB7-Th:C70, annealed at 175 °C) [40]). All displayed values are typical ones.
Table 8. Mean value, standard deviation (SD), computation time, and computation success rate of estimated equivalent circuit parameters obtained by PyMC ver. 5 with Numpyro under various numbers of steps (experimental data: the OPV (PTB7-Th:C70, annealed at 175 °C) [40]). All displayed values are typical ones.
Steps J p h [ m A · c m 2 ] R p · A [ Ω · c m 2 ] R s · A [ m Ω · c m 2 ] J s [ n A · c m 2 ] n Comp. Time [s]Convergence
/Trial
MeanSDMeanSDMeanSDMeanSDMeanSD
1000 14.2 0.02 372 10.8 5280 193 2560 521 3.37 0.08 49 9/10
2000 14.2 0.02 372 10.4 5280 191 2562 517 3.37 0.08 97 10/10
5000 14.2 0.02 372 10.9 5280 198 2563 535 3.37 0.08 184 10/10
10,000 14.2 0.02 372 11.2 5282 199 2560 544 3.37 0.08 259 10/10
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Tada, K. Accelerating Bayesian Estimation of Solar Cell Equivalent Circuit Parameters Using JAX-Based Sampling. Electronics 2023, 12, 3631. https://doi.org/10.3390/electronics12173631

AMA Style

Tada K. Accelerating Bayesian Estimation of Solar Cell Equivalent Circuit Parameters Using JAX-Based Sampling. Electronics. 2023; 12(17):3631. https://doi.org/10.3390/electronics12173631

Chicago/Turabian Style

Tada, Kazuya. 2023. "Accelerating Bayesian Estimation of Solar Cell Equivalent Circuit Parameters Using JAX-Based Sampling" Electronics 12, no. 17: 3631. https://doi.org/10.3390/electronics12173631

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop