Akademik tədqiqatlar, aydın dil

Verianla | Akademik Araştırmalardan Türkçe Ekonomi ve Bilim İçerikleri

27 sentyabr 2026, bazar
VERİANLAMüstəqil elmi yayımçılıq
Menyunu açın və ya bağlayın
...
Home / Tətbiqi Elmlər / MATLAB / ArcLP: Xətti proqramlaşdırma üçün O(√nL) mürəkkəblik həddinə malik qövs-axtarışlı qeyri-mümkün başlanğıclı daxili nöqtə alqoritminin Matlab reallaşdırılması
MATLAB

ArcLP: Xətti proqramlaşdırma üçün O(√nL) mürəkkəblik həddinə malik qövs-axtarışlı qeyri-mümkün başlanğıclı daxili nöqtə alqoritminin Matlab reallaşdırılması

Bu tədqiqat xətti proqramlaşdırma üçün nəzəri olaraq işlənmiş və polinom iterasiya həddi O(√nL) kimi verilmiş qövs-axtarışlı qeyri-mümkün başlanğıclı daxili nöqtə alqoritmini işlək Matlab proqramına çevirir.

26/08/2026  Veri Anla 30 baxış
ArcLP: Xətti proqramlaşdırma üçün O(√nL) mürəkkəblik həddinə malik qövs-axtarışlı qeyri-mümkün başlanğıclı daxili nöqtə alqoritminin Matlab reallaşdırılması

Bu tədqiqat xətti proqramlaşdırma üçün nəzəri olaraq işlənmiş və polinom iterasiya həddi O(√nL) kimi verilmiş qövs-axtarışlı qeyri-mümkün başlanğıclı daxili nöqtə alqoritmini işlək Matlab proqramına çevirir. arcLP standart formada \(Ax=b,\;x\ge0\) məhdudiyyətləri altında \(c^Tx\) məqsəd funksiyasını minimallaşdırır və ilkin emal, başlanğıc nöqtəsinin seçilməsi, seyrək Cholesky sistemlərinin həlli, qövs addım bucağı, mərkəzləşdirmə parametri, degenerasiya seçimi, son emal və optimalıq yoxlamasını birləşdirir.

Proqram Netlib-in standart xətti proqramlaşdırma sınaqları üzərində Mehrotra predictor-corrector tətbiqi ilə eyni başlanğıc nöqtələri, eyni ilkin/son emal və eyni dayandırma meyarları altında müqayisə edilib. Mənbənin Cədvəl 1-də verdiyi 51 problem üzrə Verianla sayımında arcLP 24 problemdə daha az, 11-də eyni, 16-da isə daha çox iterasiya tələb edir; ümumi iterasiya sayı arcLP üçün 1084, Mehrotra üçün 1099-dur. Bərabərlik məhdudiyyətinin qalıq göstəricisi arcLP-də 34 problemdə daha kiçik, 1 problemdə eyni, 16 problemdə daha böyükdür.

Əsas elmi məhdudiyyət budur ki, bu 2026-cı il proqram metameqaləsi O(√nL) yaxınlaşma sübutunu yenidən çıxarmır. Həmin nəzəri nəticə əvvəlki işə istinadla qəbul edilir; bu məqalənin birbaşa töhfəsi tətbiq arxitekturası, hesablama strategiyaları və benchmark yoxlanışıdır.

Standart xətti proqramlaşdırma modeli

\[ \min c^Tx,\qquad Ax=b,\quad x\ge0. \tag{1} \]

Burada \(A\in\mathbb{R}^{m\times n}\), \(b\in\mathbb{R}^{m}\), \(c\in\mathbb{R}^{n}\), optimallaşdırılan dəyişən isə \(x\in\mathbb{R}^{n}\)-dir.

Dual məsələ:

\[ \max b^T\lambda,\qquad A^T\lambda+s=c,\quad s\ge0. \tag{2} \]

\(\lambda\) dual dəyişənlər, \(s\) dual slack vektorudur. Alqoritm \((x^0,s^0)>0\) daxili nöqtəsindən başlayır və iterasiyalarda \((x^k,s^k)>0\) müsbətliyini qoruyaraq KKT şərtlərinə yaxınlaşır.

Başlanğıc nöqtəsinin seçilməsi

İki namizəd başlanğıc nöqtə üçün aşağıdakı meyar hesablanır:

\[ \max\left\{ \|Ax^0-b\|, \|A^T\lambda^0+s^0-c\|, \frac{(x^0)^Ts^0}{n} \right\}. \tag{3} \]

Daha kiçik qiymət verən namizəd seçilir. Məqsəd başlanğıcdakı primal qalıq, dual qalıq və complementarity səviyyəsini birlikdə nəzərə almaqdır.

Matrisin qiymət diapazonu

\[ \frac{\max |A_{i,j}|} {\min\{|A_{k,l}|:A_{k,l}\neq0\}}. \tag{4} \]

Mənbə ümumi matris scaling əməliyyatının səmərəliliyi artırmadığını və buna görə əsas tətbiqə daxil edilmədiyini bildirir. Bununla yanaşı bu nisbət ilkin emal qaydalarından birinin lazım olub-olmadığını müəyyən etmək üçün istifadə olunur. Məqalənin əvvəlində `calRatioCondition(A)` funksiyasının scaling qərarı ilə əlaqələndirilməsi ilə sonrakı “scaling daxil edilməyib” ifadəsi arasında redaksiya səviyyəsində fərq vardır və bu fərq saxlanmalıdır.

Seyrək Cholesky sistemi

Əsas hesablama yükü belə ifadə olunan sistemlərin həllidir:

\[ AD^2A^Tu=L\Lambda L^Tu=v. \tag{5} \]

\(D\) və \(\Lambda\) diaqonal, \(L\) aşağı üçbucaqlı matrisdir. Mənbə pis şərtlənmiş seyrək sistemlərin idarəsi üçün əvvəlki tətbiq strategiyasından istifadə edir.

Degenerasiya və asılı sətirlər

`makeAfull(...)` funksiyası Markowitz pivot meyarından istifadə edərək xətti asılı sətirləri çıxara və seyrəkliyi qorumağa çalışa bilər. Bununla belə bu əməliyyat standart axında məcburi deyil; degenerasiya ilə bağlı strategiyanın bir hissəsi kimi lazım olduqda istifadə oluna bilər. \(d=1\) degenerasiya prosedurunu aktivləşdirir, \(d=0\) isə standart seçimdir.

Qövs bucağı və mərkəzləşdirmə

arcLP optimallaşdırıcıya düz xətt üzrə deyil, qövs üzrə hərəkət edir. Addım bucağı analitik hesablana bilir. Mərkəzləşdirmə parametri \(\sigma_k\) xüsusi Golden Section axtarışı ilə seçilir. Mənbəyə görə klassik üsul intervalı təxminən 0,618 əmsalla daraldır, istifadə edilən xüsusi prosedur isə hər iterasiyada 0,5 əmsala endirir.

Sayısal sabitlik üçün:

\[ \alpha_k=\min\{0.9999\alpha_k,\;0.99\pi/2\}<0.99\pi/2. \]

Məhdudiyyətsiz və mümkün olmayan instansiyaların aşkarlanması

\[ \max_i|x_i|>10^{10} \]

şərti məhdudiyyətsizliyə,

\[ \max_i|\lambda_i|>10^{10} \]

isə mümkün olmama halına işarə edən heuristik meyar kimi istifadə olunur. Müsbət \(x\) və \(s\)-ni qoruyaraq duality gap-i azaldan addımın tapılmaması da mümkün olmama göstəricisi ola bilər. Bu detektorlar məqalədə “reasonable detection” verən hesablama heuristikaları kimi təqdim edilir; universal tam sertifikat nəzəriyyəsi kimi deyil.

Dayandırma meyarı

\[ \frac{\|r_b^k\|}{\max\{1,\|b\|\}}+ \frac{\|r_c^k\|}{\max\{1,\|c\|\}}+ \frac{\mu_k}{\max\{1,|c^Tx^k|,|b^T\lambda^k|\}} <10^{-8}, \]

\[ r_b^k=Ax^k-b,\qquad r_c^k=A^T\lambda^k+s^k-c. \]

Bundan əlavə, həm primal, həm dual addım ölçüləri \(10^{-8}\)-dən kiçik olduqda və müəyyən sayısal pisləşmə hallarında proqram dayana bilər.

Tədqiqat nəyi göstərir, nəyi göstərmir?

Tədqiqat arcLP-nin işlək Matlab LP solveri olduğunu, Netlib sınaqlarında optimum həllər tapdığını və Mehrotra tətbiqi ilə hesablama baxımından rəqabət apara bildiyini göstərir. Lakin arcLP-nin hər problem, hər kompüter və hər kommersiya solverində daha sürətli və ya daha dəqiq olduğunu göstərmir. O(√nL) sübutunun tam törəməsi də bu metameqalənin daxilində verilmir.

Azərbaycan baxımından mümkün əhəmiyyəti

Tədqiqat Azərbaycan məlumatları əsasında aparılmayıb. Bununla belə xətti proqramlaşdırma enerji planlaşdırılması, istehsal, logistika, nəqliyyat, resurs bölgüsü və mühəndislik optimallaşdırmasında əsas vasitələrdəndir. Açıq kodlu Matlab tətbiqi Azərbaycandakı universitetlərdə və tədqiqat qruplarında optimallaşdırma alqoritmlərinin öyrədilməsi və müqayisəsi üçün faydalı ola bilər. Yerli sənaye tətbiqi isə problem ölçüsü, hesablama infrastrukturu, məlumat keyfiyyəti və mövcud proqram sistemləri ilə ayrıca yoxlanmalıdır.

Tədqiqatın Metodu və Nəticələri

Əsas çağırış:[x,obj,kk,infe,lambda,s,exflag]=arcLP(A,b,c,d,tol,iter)

exflagMəna
0Uğurlu sonlanma
1Mənbə API təsvirinə görə mümkün olmayan instansiya
2Mənbə API təsvirinə görə məhdudiyyətsiz instansiya
3Primal və dual məsələlərin hər ikisinin mümkün olmadığı vəziyyət
4A, b və ya c giriş məlumatının natamam olması

Sadə nümunə

\[ \min x_1,\qquad x_1+x_2=5,\quad x_1,x_2\ge0. \]

\(A=[1\;1]\), \(b=5\), \(c=[1\;0]^T\). Mənbəyə görə arcLP beş iterasiyada \(x^*=[0\;5]^T\) həllini tapır.

Netlib nəticələrinin tam cədvəli

ProblemMehrotra iter.arcLP iter.Mehrotra obyektivarcLP obyektivMehrotra qalıqarcLP qalıq
Adlittle15162.2549e+052.2549e+053.4e–083.0e–11
Afiro99–464.7531–464.75318.0e–126.2e–13
Agg2220–3.5992e+07–3.5992e+075.2e–053.7e–06
Agg22021–2.0239e+07–2.0239e+075.2e–073.1e–08
Agg318201.0312e+071.0312e+078.8e–091.5e–08
Bandm2220–158.6280–158.62808.3e–103.6e–11
Beaconfd11113.3592e+043.3592e+041.4e–101.8e–12
Blend1414–30.8122–30.81224.9e–111.6e–12
Bnl135341.9776e+031.9776e+033.4e–092.9e–09
Bnl2+38351.8112e+031.8112e+039.3e–073.5e–06
Brandy19241.5185e+031.5185e+036.2e–082.4e–06
Degen2+1719–1.4352e+03–1.4352e+032.0e–105.9e–10
Degen3*2235–9.8729e+02–9.8729e+021.2e–098.6e–08
fffff80031285.5568e+055.5568e+057.7e–043.7e–09
Israel2927–8.9665e+05–8.9664e+051.8e–083.4e–08
Lotfi1816–25.2647–25.26462.7e–077.8e–09
Maros_r721201.4972e+061.4972e+066.4e–091.7e–09
Osa_07+35325.3578e+055.3578e+051.5e–078.4e–10
Osa_1437421.1065e+061.1065e+063.0e–085.2e–09
Osa_3036422.1421e+062.1421e+061.3e–081.3e–08
Qap1224235.2289e+025.2289e+026.2e–092.9e–10
Qap15+44281.0410e+031.0410e+031.5e–058.4e–08
Qap8+13122.0350e+022.0350e+027.1e–096.2e–11
Sc1051111–52.2021–52.20219.8e–112.2e–12
Sc2051212–52.2021–52.20218.8e–114.4e–11
Sc50a910–64.5751–64.57518.3e–088.5e–13
Sc50b810–70.0000–70.00009.1e–073.6e–12
Scagr251819–1.4753e+07–1.4753e+074.6e–091.7e–08
Scagr71717–2.3314e+06–2.3314e+061.1e–077.0e–10
Scfxm1+22211.8417e+041.8417e+041.6e–083.3e–05
Scfxm226243.6660e+043.6660e+042.6e–084.8e–05
Scfxm3+23235.4901e+045.4901e+049.8e–081.2e–04
Scrs830289.0430e+029.0430e+021.8e–101.0e–10
Scsd113118.66668.66668.7e–143.3e–15
Scsd6161650.500050.50008.6e–152.6e–13
Scsd814159.0500e+029.0500e+021.3e–102.6e–13
Sctap127201.4123e+031.4123e+030.00311.4e–11
Sctap221221.7248e+031.7248e+034.4e–071.4e–12
Sctap322211.4240e+031.4240e+035.9e–071.9e–12
Share1b2526–7.6589e+04–7.6589e+041.5e–061.9e–07
Share2b1515–4.1573e+02–4.1573e+027.9e–101.4e–10
Ship04l18191.7933e+061.7933e+062.9e–111.3e–10
Ship04s20191.7987e+061.7987e+064.5e–093.1e–10
Ship08l22201.9091e+061.9090e+061.0e–101.8e–11
Ship08s20191.9201e+061.9201e+064.5e–121.7e–09
Ship12l21211.4702e+061.4702e+061.0e–083.0e–10
Ship12s19211.4892e+061.4892e+062.1e–135.0e–11
Stocfor1+1413–4.1132e+04–4.1132e+041.1e–108.6890e–11
Stocfor22222–3.9024e+04–3.9024e+041.6e–094.3e–09
Stocfor33837–3.9976e+04–3.9977e+046.4e–087.7e–08
Truss26244.5882e+054.5882e+059.5e–065.2e–07

51 problemin sayımında arcLP iterasiya üzrə 24 qələbə, 11 bərabərlik və 16 geridə qalma göstərir. Qalıq göstəricisində isə arcLP 34 problemdə daha aşağı, 1-də eyni, 16-da daha yüksək nəticə verir. Bu paylanma metodun ümumilikdə rəqabətqabiliyyətli olduğunu dəstəkləyir, lakin hər sətirdə üstün olduğunu göstərmir.

Verianla Live: arcLP hesablama axını

Göstərilən mərhələlər mənbədə təsvir edilən əsas proqram arxitekturasına əsaslanır.

MərhələİzahSource
1. Məlumatların qəbuluA, b, c və seçim parametrləri qəbul edilir.Main function
2. İlkin emalPresolve qaydaları və erkən status yoxlamaları tətbiq olunur.Pre-process
3. Başlanğıc nöqtəDenklem (3) üzrə daha yaxşı namizəd seçilir.Equation 3
4. Qövs-axtarış iterasiyasıMüsbət x və s qorunaraq qövs addımı və σk seçilir.Arc-search
5. Seyrək sistemCholesky tipli sistem həll edilir.Equation 5
6. DayandırmaQalıqlar, μ, addım ölçüləri və status meyarları yoxlanır.Termination criteria
7. Son emalNəticə yoxlanır və çıxış dəyişənləri qaytarılır.Main function
 

Mənbə və Metod Qeydi

Orijinal başlıq: ArcLP: A Matlab Implementation of an O(√nL) Arc-search Infeasible Interior-Point Algorithm for Linear Programming.

Müəllif: Yaguang Yang.

Afiliyasiya: Independent Researcher, US.

DOI: 10.5334/jors.674.

Nəşr: Journal of Open Research Software, 14(1):57, Ubiquity Press, 12 avqust 2026.

Rəy statusu: Hakim rəyindən keçmiş Software Metapaper.

Məqalə lisenziyası: CC BY 4.0. Proqram lisenziyası: BSD 3-Clause.

Proqram versiyası: 1.0. Mənbədə proqramın tarix sahəsi “08/02/2026” kimi verildiyindən format şərh edilmədən saxlanılır.

Maliyyələşdirmə: JORS nəşr haqqından imtina edib; ayrıca tədqiqat qrantı göstərilmir.

Maraqların toqquşması: Müəllif belə toqquşma olmadığını bəyan edir.

Elmi məhdudiyyət: O(√nL) sübutunun tam riyazi quruluşu bu yeddi səhifəlik metameqalədə təkrar verilmir. Benchmark nəticələri hesablama rəqabətliliyini dəstəkləyir, universal üstünlüyü deyil.


Paylaşın:

Şərhlər yoxlandıqdan sonra yayımlanır.Şərhiniz təsdiq prosesinə daxil ediləcək və uyğun hesab olunduqda görünəcək.

Şərh yazın

E-poçt ünvanınız yayımlanmayacaq. Məcburi sahələr * ilə işarələnib

Your experience on this site will be improved by allowing cookies Cookie Policy