CHAPTER


DOI :10.26650/B/SS28ET06.2023.006.11   IUP :10.26650/B/SS28ET06.2023.006.11    Full Text (PDF)

Optimization With Julia

Mehmet Hakan SatmanEmre Akadal

Management science is concerned mainly with optimization techniques, although it is not so apparent to everyone. Determining the number of products in stocks, establishing an appropriate number of payment points, assigning the most suitable job to the right worker, selecting the best production order in multiple machines, and developing an optimal transportation strategy, are all classical optimization problems in management. Optimization is a particular sub-discipline of mathematics that serves as an underlying infrastructure for Operations Research, Statistics, and Machine Learning. For example, a substantial range of tools, from the least-squares estimator and mathematical programming to deep learning and feed-forward neural networks are based on minimizing an objective function with a great number of optimization parameters. These optimization problems are linear or nonlinear. The problem at hand may have constraints as well. When the decision variables are in types of integer or binary, things get even worse in the computational context. Julia is a high-performance programming language primarily designed for scientific computing. Even though Julia is a relatively young language, it has several packages for optimization, data analysis, and machine learning. In addition, with its dynamic and robust type system, Julia is promising in terms of performance as a compiled language. In this chapter, we investigate many optimization problems, e.g., linear and nonlinear objective functions, with or without constraints, integer or mixed types of decision variables, etc., and search for the ability to solve them using Julia. Benchmark statistics are also reported to present the performance of Julia in solving the mentioned problems.


DOI :10.26650/B/SS28ET06.2023.006.11   IUP :10.26650/B/SS28ET06.2023.006.11    Full Text (PDF)

Julia ile Optimizasyon

Mehmet Hakan SatmanEmre Akadal

Yönetim bilimi, herkes için çok açık olmasa da, temel olarak optimizasyon teknikleriyle ilgilenir. Stoktaki ürün sayısının belirlenmesi, uygun sayıda ödeme noktasının oluşturulması, en uygun işin doğru işçiye atanması, birden fazla makinede en iyi üretim emrinin seçilmesi ve optimal taşıma stratejisinin geliştirilmesi, yönetimde klasik optimizasyon problemleridir. Optimizasyon, Yöneylem Araştırması, İstatistik ve Makine Öğrenimi için temel bir altyapı görevi gören matematiğin belirli bir alt disiplinidir. Örneğin, en küçük kareler tahmincisi ve matematiksel programlamadan derin öğrenme ve ileri beslemeli sinir ağlarına kadar önemli bir araç yelpazesi, çok sayıda optimizasyon parametresi ile bir amaç fonksiyonunu en aza indirmeye dayanır. Bu optimizasyon problemleri doğrusal veya doğrusal değildir. Eldeki problemin de kısıtlamaları olabilir. Karar değişkenleri tamsayı veya ikili türde olduğunda, hesaplama bağlamında işler daha da kötüleşir. Julia, öncelikle bilimsel hesaplama için tasarlanmış yüksek performanslı bir programlama dilidir. Julia nispeten genç bir dil olmasına rağmen, optimizasyon, veri analizi ve makine öğrenimi için çeşitli paketlere sahiptir. Ayrıca dinamik ve sağlam tip sistemi ile Julia, derlenmiş bir dil olarak performans açısından umut vericidir. Bu bölümde; kısıt altında olan veya olmayan, tamsayılı veya karışık tipte karar değişkenli, doğrusal ve doğrusal olmayan amaç fonksiyonları gibi birçok optimizasyon problemini ele aldık ve bunları Julia kullanarak çözme yeteneğini araştırdık. Gerçekleştirilen performans testi istatistikleri de Julia’nın bahsedilen sorunları çözmedeki performansını göstermektedir. 



References

  • Chauhan, D., Unnikrishnan, A., & Figliozzi, M. (2019). Maximum coverage capacitated facility location problem with range constrained drones. Transportation Research Part C. 99. google scholar
  • Church, R. L. & Wang, S. (2020). Solving the p-median problem on regular and lattice networks. Computers and Operations Research. 123. google scholar
  • Dunning, I., Huchette, J., & Lubin, M. (2017). JuMP: A modeling language for mathematical optimization. SIAM review, 59(2), 295-320. google scholar
  • Oki, E. (2012). GLPK (GNU linear programming kit). In Linear programming and algorithms for communication networks (pp. 39-44). CRC Press. google scholar
  • Forrest, J., & Lougee-Heimer, R. (2005). CBC user guide. In Emerging theory, methods, and applications (pp.257-277). INFORMS. google scholar
  • Biegler, L. T., & Zavala, V. M. (2009). Large-scale nonlinear programming using IPOPT: An integrating fra-mework for enterprise-wide dynamic optimization. Computers & Chemical Engineering, 33(3), 575-582. google scholar
  • Mogensen, P. K., & Riseth, A. N. (2018). Optim: A mathematical optimization package for Julia. Journal of Open Source Software, 3(24). google scholar
  • Bezanson, J., Edelman, A., Karpinski, S., & Shah, V. B. (2017). Julia: A fresh approach to numerical compu-ting. SIAM review, 59(1), 65-98. google scholar
  • Jesus Mega, Pietro Monticone, & Mehmet Hakan Satman. (2022). jmejia8/Metaheuristics.jl: v3.2.4 (v3.2.4). Zenodo. https://doi.org/10.5281/zenodo.6407725 google scholar
  • Mepa-de-Dios, J. A., & Mezura-Montes, E. (2019). A new evolutionary optimization method based on center of mass. In Decision Science in Action (pp. 65-74). Springer, Singapore. google scholar
  • Narula S. C., Ogbu U. I., & Samuelsson H. M. (1977). An Algorithm for the p-median problem. Operations Research. 25(4). 709-713. google scholar
  • Price, K. V. (2013). Differential evolution. In Handbook of optimization (pp. 187-214). Springer, Berlin, Hei-delberg. google scholar
  • Poli, R., Kennedy, J., & Blackwell, T. (2007). Particle swarm optimization. Swarm intelligence, 1(1), 33-57. google scholar
  • Karaboga, D., & Basturk, B. (2008). On the performance of artificial bee colony (ABC) algorithm. Applied soft computing, 8(1), 687-697. google scholar
  • Rashedi, E., Nezamabadi-Pour, H., & Saryazdi, S. (2009). GSA: a gravitational search algorithm. Information sciences, 179(13), 2232-2248. google scholar
  • Bertsimas, D., & Tsitsiklis, J. (1993). Simulated annealing. Statistical science, 8(1), 10-15. google scholar
  • Mirjalili, S., & Lewis, A. (2016). The whale optimization algorithm. Advances in engineering software, 95, 51-67. google scholar
  • Satman, M. H., & Akadal, E. (2020). Machine Coded Compact Genetic Algorithms for Real Parameter Optimi-zation Problems. Alphanumeric Journal, 8(1), 43-58. google scholar
  • Satman, M. H., Adiga, S., Angeris, G., & Akadal, E. (2021). LinRegOutliers: A Julia package for detecting outliers in linear regression. Journal of Open Source Software, 6(57), 2892. google scholar


SHARE




Istanbul University Press aims to contribute to the dissemination of ever growing scientific knowledge through publication of high quality scientific journals and books in accordance with the international publishing standards and ethics. Istanbul University Press follows an open access, non-commercial, scholarly publishing.