Global Studies on Management Information Systems
Optimization With Julia
Mehmet Hakan Satman, Emre AkadalManagement 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.
Julia ile Optimizasyon
Mehmet Hakan Satman, Emre AkadalYö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.