Skip to main content
Log in

Accelerating viability kernel computation with CUDA architecture: application to bycatch fishery management

  • Original Paper
  • Published:
Computational Management Science Aims and scope Submit manuscript

Abstract

Computing a viability kernel consumes time and memory resources which increase exponentially with the dimension of the problem. This curse of dimensionality strongly limits the applicability of this approach, otherwise promising. We report here an attempt to tackle this problem with Graphics Processing Units (GPU). We design and implement a version of the viability kernel algorithm suitable for General Purpose GPU (GPGPU) computing using Nvidia’s architecture, CUDA (Computing Unified Device Architecture). Different parts of the algorithm are parallelized on the GPU device and we test the algorithm on a dynamical system of theoretical population growth. We study computing time gains as a function of the number of dimensions and the accuracy of the grid covering the state space. The speed factor reaches up to 20 with the GPU version compared to the Central Processing Unit (CPU) version, making the approach more applicable to problems in 4 to 7 dimensions. We use the GPU version of the algorithm to compute viability kernel of bycatch fishery management problems up to 6 dimensions.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

References

  • Andrés-Domenech P, Saint-Pierre P, Smala Fanokoa P, Zaccour G (2014) Sustainability of the dry forest in Androy: a viability analysis. Ecol Econ 104:33–49. doi:10.1016/j.ecolecon.2014.04.016

    Article  Google Scholar 

  • Aubin JP, Saint-Pierre P (2007) An introduction to viability theory and management of renewable resources. In: Advanced methods for decision making and risk management in sustainability science. Nova Science Publishers Inc, Hauppauge, pp 43–93

  • Béné C, Doyen L, Gabay D (2001) A viability analysis for a bio-economic model. Ecol Econ 36(3):385–396. doi:10.1016/S0921-8009(00)00261-5

    Article  Google Scholar 

  • Bernard C, Martin S (2013) Comparing the sustainability of different action policy possibilities: application to the issue of both household survival and forest preservation in the corridor of Fianarantsoa. Math Biosci 245(2):322–30. doi:10.1016/j.mbs.2013.08.002. http://www.ncbi.nlm.nih.gov/pubmed/23954403

  • Bokanowski O, Martin S, Munos R, Zidani H (2006) An anti-diffusive scheme for viability problems. Appl Numer Math 56(9):1147–1162. doi:10.1016/j.apnum.2006.03.004

    Article  Google Scholar 

  • Bonneuil N (2006) Computing the viability kernel in large state dimension. J Math Anal Appl 323(2):1444–1454. doi:10.1016/j.jmaa.2005.11.076

    Article  Google Scholar 

  • Cekmez U, Ozsiginan M, Technologies S, Air T, Academy F, Sahingoz OK (2013) Adapting the GA Approach to solve traveling salesman problems on CUDA architecture. In: 14th IEEE international symposium on computational intelligence and informatics, pp 423–428

  • Chapel L, Deffuant G, Martin S, Mullon C (2008) Defining yield policies in a viability approach. Ecol Model 212(1–2):10–15. doi:10.1016/j.ecolmodel.2007.10.007

    Article  Google Scholar 

  • Chapel L, Castelló X, Bernard C, Deffuant G, Eguíluz VM, Martin S, San Miguel M (2010) Viability and resilience of languages in competition. PLoS One 5(1):1–11. doi:10.1371/journal.pone.0008681

    Article  Google Scholar 

  • Deffuant G, Chapel L, Martin S (2007) Approximating viability kernels with support vector machines. IEEE Trans Autom Control 52(5):933–937. doi:10.1109/TAC.2007.895881. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=4200855

  • Djeridane B, Lygeros J (2008) Approximate viability using quasi-random samples and a neural network classifier. Int Fed Autom Control 2:14342–14347

    Google Scholar 

  • Donoho DL (2000) High-dimensional data analysis: the curses and blessings of dimensionality. In: Math challenges of the 21st century, pp 1–32

  • Doyen L, De Lara M (2010) Stochastic viability and dynamic programming. Syst Control Lett 59(10):629–634. doi:10.1016/j.sysconle.2010.07.008

    Article  Google Scholar 

  • Doyen L, Thébaud O, Béné C, Martinet V, Gourguet S, Bertignac M, Fifas S, Blanchard F (2012) A stochastic viability approach to ecosystem-based fisheries management. Ecol Econ 75:32–42. doi:10.1016/j.ecolecon.2012.01.005

    Article  Google Scholar 

  • Ehrlich I, Lui F (1997) The problem of population and growth: a review of the literature from Malthus to contemporary models of endogenous population and endogenous growth. J Econ Dyn Control 21(1):205–242. http://www.ncbi.nlm.nih.gov/pubmed/12292267

  • Ekerhovd NA, Steinshamm SI (2014) Optimization in the ‘pelagic complex’: a multi-species competition model of north east Atlantic fisheries. ICES J Mar Sci

  • Goldsworthy MJ (2014) A GPU-CUDA based direct simulation Monte Carlo algorithm for real gas flows. Comput Fluids 94:58–68. doi:10.1016/j.compfluid.2014.01.033

    Article  Google Scholar 

  • Kaynama S, Oishi M (2013) A modified Riccati transformation for decentralized computation of the viability kernel under LTI dynamics. IEEE Trans Autom Control 58(11):2878–2892. arXiv:1302.5990v1

  • Krawczyk JB, Pharo A, Serea OS, Sinclair S (2013) Computation of viability kernels: a case study of by-catch fisheries. Comput Manag Sci 10(4):365–396. doi:10.1007/s10287-013-0189-z

    Article  Google Scholar 

  • Langdon WB (2011) Debugging CUDA. In: Proceedings of the 13th annual conference companion on Genetic and evolutionary computation—GECCO ’11, p 415. doi:10.1145/2001858.2002028. http://portal.acm.org/citation.cfm?doid=2001858.2002028

  • Maidens JN, Kaynama S, Mitchell IM, Oishi MMK, Dumont GA (2009) Lagrangian methods for approximating the viability kernel in high-dimensional systems. Automatica (2013) 49(7):2017–2029

  • Mametjanov A, Lowell D, Ma CC, Norris B (2012) Autotuning stencil-based computations on GPUs. In: 2012 IEEE international conference on cluster computing, pp 266–274. doi:10.1109/CLUSTER.2012.46. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6337788

  • Mathias JD, Bonté B, Cordonnier T, de Morogues F (2015) Using the viability theory to assess the flexibility of forest managers under ecological intensification. Environ Manag (June). doi:10.1007/s00267-015-0555-4

  • Mattioli J, Artiouchine K (2003) Noyau de viabilité: une contrainte globale pour la modélisation de systèmes dynamiques. Technique et Science Informatiques, pp 19–32

  • Rice J, Daan N, Gislason H, Pope J (2013) Does functional redundancy stabilized fish communities. ICES J Mar Sci 70(4):734–742

    Article  Google Scholar 

  • Rougé C, Mathias JD, Deffuant G (2013) Extending the viability theory framework of resilience to uncertain dynamics, and application to lake eutrophication. Ecol Indic 29:420–433. doi:10.1016/j.ecolind.2012.12.032

    Article  Google Scholar 

  • Sabo D, Barzelay O, Weiss S, Furst M (2014) Fast evaluation of a time-domain non-linear cochlear model on GPUs. J Comput Phys 265:97–112. doi:10.1016/j.jcp.2014.01.044

    Article  Google Scholar 

  • Saint-Pierre P (1990) Approximation of the viability kernel. Appl Math Optim 29(2):1–22

    Google Scholar 

  • Sicard M, Perrot N, Reuillon R, Mesmoudi S, Alvarez I, Martin S (2012) A viability approach to control food processes: application to a Camembert cheese ripening process. Food Control 23(2):312–319. doi:10.1016/j.foodcont.2011.07.007

    Article  Google Scholar 

  • Turriff J, Broucke ME (2009) A method to construct viability kernels for nonlinear control systems. 2009 Am Control Conf 1(1):3983–3988. doi:10.1109/ACC.2009.5160409. http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=5160409

Download references

Acknowledgments

This work was supported by grants from Irstea and Region Auvergne. This support is gratefully acknowledged.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Antoine Brias.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Brias, A., Mathias, JD. & Deffuant, G. Accelerating viability kernel computation with CUDA architecture: application to bycatch fishery management. Comput Manag Sci 13, 371–391 (2016). https://doi.org/10.1007/s10287-015-0246-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10287-015-0246-x

Keywords

Mathematics Subject Classification

Navigation