Utafiti wa kitaaluma, lugha inayoeleweka

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

27 Septemba 2026, Jumapili
VERİANLAUchapishaji huru wa sayansi
Fungua au funga menyu
...
Home / Sayansi Tumizi / MATLAB / Ulinganisho wa Utendaji wa Python, MATLAB na R katika Suluhisho za Namba za Modeli za Epidemiolojia za SI na SIR
MATLAB

Ulinganisho wa Utendaji wa Python, MATLAB na R katika Suluhisho za Namba za Modeli za Epidemiolojia za SI na SIR

Utafiti huu unalinganisha mazingira ya Python, MATLAB na R katika utatuzi wa namba wa modeli za kawaida za sehemu za SI na SIR zinazotumika katika epidemiolojia, kwa kuzingatia muda wa ukokotoaji na usahihi wa namba.

25/08/2026  Veri Anla Imetazamwa mara 23
Ulinganisho wa Utendaji wa Python, MATLAB na R katika Suluhisho za Namba za Modeli za Epidemiolojia za SI na SIR

Utafiti huu unalinganisha mazingira ya Python, MATLAB na R katika utatuzi wa namba wa modeli za kawaida za sehemu za SI na SIR zinazotumika katika epidemiolojia, kwa kuzingatia muda wa ukokotoaji na usahihi wa namba. Modeli zilezile za kihisabati zimetekelezwa kwa mbinu tatu tofauti za namba — mbinu ya Euler ya daraja la kwanza, mbinu ya Runge–Kutta ya daraja la nne (RK4), na mbinu ya Predictor–Corrector (P-C). Kwa kuwa modeli ya SI ina suluhisho la uchanganuzi, usahihi wa matokeo ya namba ulitathminiwa kwa kipimo cha R²; katika modeli ya SIR, kitatuzi cha ODE45 cha MATLAB kilitumika kama rejea ya usahihi wa juu, na matokeo ya MATLAB RK4 yakalinganishwa na rejea hiyo.

Katika modeli ya SI, RK4 ilitoa R² = 1,0 kwa Python, MATLAB na R katika ukubwa wote wa hatua h = 0,25, 0,10 na 0,01 uliokaguliwa, baada ya thamani kuzungushwa hadi nafasi saba za desimali katika jedwali. Mbinu ya P-C ilifikia R² = 0,9994189 kwa h = 0,25, 0,9999798 kwa h = 0,10 na 1,0 kwa h = 0,01, huku mbinu ya Euler ikitoa 0,9585463, 0,9927564 na 0,9999239 mtawalia kwa ukubwa huo huo wa hatua. Hivyo, katika masharti ya chanzo, kadiri ukubwa wa hatua ulivyopungua, suluhisho za Euler na P-C zilikaribia suluhisho la uchanganuzi la SI, huku RK4 ikitoa thamani za juu zaidi za R² katika azimio lililotumika.

Kwa muda wa utekelezaji, Python ilitoa thamani za chini kuliko MATLAB na R katika michanganyiko yote ya SI na SIR iliyoripotiwa. Hata hivyo, matokeo haya yanahusu kompyuta moja tu yenye Apple M4, matoleo ya programu ambayo hayakuelezwa katika chanzo, na mpangilio mmoja wa upimaji wa muda. Zaidi ya hayo, ingawa sehemu ya matokeo ya chanzo inasema kuwa R ilikuwa mazingira ya polepole zaidi kila wakati, majedwali yanaonyesha kuwa katika baadhi ya masharti R ilikuwa ya haraka kuliko MATLAB. Kwa hiyo, ingawa utafiti unaonyesha tofauti kubwa ya muda inayopendelea Python chini ya utekelezaji na maunzi mahususi, haupaswi kufasiriwa kama mpangilio wa jumla wa utendaji wa lugha za programu za matumizi yote.

Swali kuu la utafiti ni lipi?

Swali kuu la utafiti ni hili: Wakati mfumo uleule wa milinganyo tofauti ya epidemiolojia unapotatuliwa kwa mbinu ileile ya namba, ni tofauti gani ya muda wa ukokotoaji inayojitokeza kati ya Python, MATLAB na R, na mbinu ya namba inayotumika inaathirije usahihi wa suluhisho?

Kwa hiyo, utafiti unatenganisha aina mbili tofauti za ulinganisho:

  • Ulinganisho wa mbinu za namba: Euler, RK4 na Predictor–Corrector.
  • Ulinganisho wa mazingira ya programu: Python, MATLAB na R.

Utenganisho huu ni muhimu kwa sababu usahihi wa juu si matokeo ya moja kwa moja ya mazingira ya programu yaliyotumika, bali kwa kiasi kikubwa ni matokeo ya mbinu ya namba na ukubwa wa hatua. Kwa kweli, thamani za R² katika modeli ya SI ni sawa katika jedwali la chanzo kwa Python, MATLAB na R wakati mbinu na h zilezile zinatumiwa.

Modeli ya SI ni nini?

SI ni mojawapo ya modeli za msingi zaidi za epidemiolojia zinazogawa idadi ya watu katika sehemu mbili:

  • S — Susceptible: watu wanaoweza kuambukizwa,
  • I — Infected: watu walioambukizwa.

Modeli iliyotumika katika chanzo ni:

\[ \frac{dS}{dt}=-\alpha SI \]

na:

\[ \frac{dI}{dt}=\alpha SI \]

ambazo ni milinganyo inayounda mfumo.

Jumla ya idadi ya watu:

\[ N=S+I \]

inachukuliwa kuwa thabiti. \(\alpha\) ni kigezo cha uenezaji wa maambukizi katika utafiti.

Katika jaribio la SI, chanzo kilitumia:

KigezoThamani
α2,18 × 10⁻³
S(0)762
I(0)1
Jumla ya idadi ya watu mwanzoni763
Kipindi cha muda0–14 siku
Thamani za h zilizochunguzwa0,25; 0,10; 0,01

.

Kwa nini suluhisho la uchanganuzi la modeli ya SI ni muhimu?

Kwa kuwa chanzo kinatoa suluhisho la uchanganuzi kwa umbo hili la modeli ya SI, mikunjo inayozalishwa na mbinu za namba inaweza kulinganishwa moja kwa moja na suluhisho la rejea.

Katika chanzo:

\[ S(t)= \frac{Ne^{-\alpha tN}c} {1+e^{-\alpha tN}c} \]

na:

\[ I(t)= \frac{N(N-S_0)} {N-S_0+e^{-N\alpha t}S_0} \]

zimetolewa, ambapo:

\[ c=\frac{S_0}{N-S_0} \]

imefafanuliwa.

Suluhisho hili la uchanganuzi hutumika kama rejea ya kupima kiwango ambacho matokeo ya takriban ya mbinu za Euler, RK4 na P-C yanakaribia.

Modeli ya SIR inatofautianaje na modeli ya SI?

Katika modeli ya SIR huongezwa sehemu ya tatu:

  • S: wanaoweza kuambukizwa,
  • I: walioambukizwa,
  • R: waliopona/kuondolewa.

Katika chanzo, mfumo wa SIR umefafanuliwa kama:

\[ \frac{dS}{dt}=-\alpha SI \]

\[ \frac{dI}{dt}=\alpha SI-\beta I \]

\[ \frac{dR}{dt}=\beta I \]

.

Jumla ya idadi ya watu ni:

\[ N=S+I+R \]

.

Kigezo cha SIRThamani iliyotumika katika chanzo
α2,18 × 10⁻³
β(2,18 × 10⁻³) × 202
S(0)762
I(0)1
R(0)0
Kipindi cha muda0–14 siku

Chanzo kinahusisha vigezo hivi na data iliyowasilishwa na Murray na kuhusishwa na mlipuko wa mafua katika shule ya bweni ya wavulana mwaka 1978.

Mbinu ya Euler inafanyaje kazi?

Mbinu ya Euler ndiyo mbinu rahisi zaidi na ya daraja la kwanza katika utafiti. Kwa tatizo la jumla la thamani ya mwanzo:

\[ \frac{dy}{dx}=f(x,y) \]

suluhisho huendelezwa hatua kwa hatua kwa:

\[ y_{n+1}=y_n+h f(x_n,y_n) \]

.

Ukubwa wa hatua umefafanuliwa kama:

\[ h=\frac{b-x_0}{n} \]

.

Kwa modeli ya SI:

\[ S_{n+1}=S_n-h\alpha S_n I_n \]

\[ I_{n+1}=I_n+h\alpha S_n I_n \]

hupatikana.

Kwa kuwa mbinu ya Euler hutumia tu mteremko katika nukta ya sasa kwa kila hatua, gharama yake ya ukokotoaji ni ndogo; hata hivyo, matokeo ya chanzo yanaonyesha kwamba hasa kwa thamani kubwa za h ilitoa thamani za R² zilizo chini kuliko RK4 na P-C.

Kwa nini RK4 inatoa matokeo sahihi zaidi?

Mbinu ya Runge–Kutta ya daraja la nne huhesabu miteremko minne ya kati katika kila hatua ya muda, hivyo kuwakilisha mabadiliko ya suluhisho kwa undani zaidi.

Sasisho la jumla la RK4 ni:

\[ y_{n+1} = y_n+ \frac{h}{6} (k_1+2k_2+2k_3+k_4) \]

.

Katika chanzo, \(k_1\), \(k_2\), \(k_3\) na \(k_4\) zimetolewa tofauti kwa vigezo S, I na pale inapohitajika R kwa mifumo yote ya SI na SIR.

Katika matokeo ya SI, RK4 inatoa R² = 1,0 hadi nafasi saba za desimali katika jedwali hata kwa ukubwa mkubwa zaidi wa hatua uliochunguzwa, h = 0,25. Thamani hii ni ripoti iliyozungushwa ya chanzo na haithibitishi kwamba suluhisho la RK4 ni sawa kabisa kihisabati na suluhisho la uchanganuzi.

Mbinu ya Predictor–Corrector inafanyaje kazi?

Mbinu ya P-C ina hatua mbili. Kwanza, nukta inayofuata hukadiriwa kwa hatua ya predictor inayofanana na Euler:

\[ \tilde y_{i+1} = y_i+h f(x_i,y_i) \]

Kisha corrector hutumika kwa kutumia pia derivative katika nukta iliyokadiriwa:

\[ y_{i+1} = y_i+ \frac{h}{2} \left[ f(x_i,y_i)+ f(x_{i+1},\tilde y_{i+1}) \right] \]

Katika matokeo ya chanzo, usahihi wa P-C unaonekana kuwa juu sana kuliko Euler, lakini chini kidogo ya RK4 au sawa nayo katika usahihi wa kuripoti.

Kutoka modeli ya epidemiolojia hadi ulinganisho wa utendaji
fieldvalue
titleKutoka modeli ya epidemiolojia hadi ulinganisho wa utendaji
subtitleMtiririko wa kazi unaounganisha milinganyo tofauti ya SI/SIR, uchaguzi wa suluhisho la namba, ukubwa wa hatua, mazingira ya programu, uthibitishaji na uchanganuzi wa muda
  • 1. Mfumo wa milinganyo tofauti wa SI au SIR na masharti ya mwanzo hufafanuliwa, na mfululizo wa muda wa S, I na inapohitajika R hulengwa
  • 2. Moja ya mbinu za Euler, RK4 au Predictor–Corrector huchaguliwa na suluhisho la takriban hupatikana hatua kwa hatua
  • 3. Ukubwa wa hatua h = 0,25; 0,10 au 0,01 hutumika ili kutengeneza hesabu katika viwango tofauti vya azimio
  • 4. Mbinu ileile huendeshwa katika mazingira ya Python, MATLAB na R, na nyakati tatu tofauti za utekelezaji hurekodiwa
  • 5A. Katika uthibitishaji wa SI, suluhisho la namba hulinganishwa na suluhisho la uchanganuzi la SI na R² huhesabiwa
  • 5B. Katika uthibitishaji wa SIR, suluhisho la MATLAB RK4 hulinganishwa na rejea ya MATLAB ODE45 na R² hutolewa kwa S, I na R
  • 6. Usahihi na muda safi wa utekelezaji wa algorithimu hutathminiwa pamoja na ulinganisho wa mbinu/programu hukamilishwa

fidelity: source-faithful

source: Mchakato umetokana na mnyororo wa mbinu na tathmini ya utendaji wa utafiti.

Kielelezo hiki cha kisayansi chenye mwendo kinaonyesha katika mtiririko mmoja uchaguzi wa suluhisho la namba na ulinganisho wa utendaji wa Python, MATLAB na R katika modeli za epidemiolojia za SI na SIR.

R² inapima nini hapa?

Chanzo kinatathmini ulinganifu kati ya suluhisho la namba na suluhisho la rejea kwa:

\[ R^2 = 1- \frac{ \sum_{i=1}^{n} (y_i-\tilde y_i)^2 }{ \sum_{i=1}^{n} (y_i-\bar y)^2 } \]

.

Hapa \(y_i\) inawakilisha suluhisho exact/reference, \(\tilde y_i\) makadirio ya mbinu ya namba, na \(\bar y\) wastani wa suluhisho la rejea.

Katika modeli ya SI, rejea ni suluhisho la uchanganuzi. Katika modeli ya SIR, chanzo kilitumia matokeo ya MATLAB ODE45 kama rejea kwa tathmini ya MATLAB RK4 pekee.

Ni mbinu ipi sahihi zaidi katika modeli ya SI?

Jedwali la 1 la chanzo linaonyesha mpangilio wazi. Kwa thamani ileile ya h, Python, MATLAB na R hutoa thamani ileile ya R²; tofauti inatokana na mbinu ya namba, si mazingira ya programu.

Verianla Live: usahihi wa mbinu katika modeli ya SI

Jedwali linaonyesha kigezo S; thamani za R² zilizotolewa kwa I katika chanzo ni sawa.

Ukubwa wa hatua hEuler R²P-C R²RK4 R²
0,250,95854630,99941891,0000000
0,100,99275640,99997981,0000000
0,010,99992391,00000001,0000000
 

Verianla Live: Thamani zimechukuliwa kutoka Jedwali la 1 la utafiti wa chanzo na ni thamani za chanzo zilizozungushwa hadi nafasi saba za desimali. Muonekano wa “1,0000000” haupaswi kufasiriwa kuwa hitilafu ya kihisabati ni sifuri.

Mbinu ya Euler ina R² = 0,9585463 kwa h = 0,25 na inafikia 0,9999239 kwa h = 0,01. P-C inaongezeka kutoka 0,9994189 hadi 1,0 katika usahihi wa kuripoti wa chanzo chini ya masharti hayo hayo.

RK4 imeripotiwa kuwa R² = 1,0 katika thamani zote tatu za h baada ya kuzungushwa hadi nafasi saba za desimali.

Grafu za SI katika ukurasa wa 6 zinaonyesha nini?

Katika ukurasa wa 6 wa chanzo kuna safu tatu tofauti za matokeo ya Python, MATLAB na R. Katika kila safu kuna grafu tatu za Euler, RK4 na P-C.

Katika grafu za Euler kuna utengano unaoonekana kati ya mikunjo ya namba kwa thamani tofauti za h, hasa katika eneo la mpito ambako mikunjo ya S na I inabadilika kwa haraka. Kadiri hatua inavyopungua, mikunjo inakaribia exact solution.

Katika grafu za RK4, suluhisho za h tofauti na exact solution karibu zinaingiliana kabisa kwa kuona. Grafu za P-C pia zinaonyesha ulinganifu wa karibu. Tabia hii ya kuona inaendana na thamani za R² katika Jedwali la 1.

Nyakati za utekelezaji katika modeli ya SI ni kiasi gani?

Mbinu / hPython (s)MATLAB (s)R (s)
Euler / 0,250,0000370,0040270,015112
Euler / 0,100,0000810,0071830,011526
Euler / 0,010,0007640,0187440,009426
RK4 / 0,250,0001630,0122010,024517
RK4 / 0,100,0003980,0219670,024647
RK4 / 0,010,0039500,0257770,031478
P-C / 0,250,0000970,0072610,016191
P-C / 0,100,0001870,0151560,010234
P-C / 0,010,0017420,0183580,022058

Python ina muda wa chini zaidi katika michanganyiko yote tisa ya mbinu/hatua katika jedwali la SI.

Hata hivyo, hakuna mpangilio thabiti kabisa kati ya MATLAB na R kama inavyoelezwa katika sehemu ya matokeo ya chanzo. Kwa mfano, katika majaribio ya Euler/h=0,01 na P-C/h=0,10, R iliripoti muda mfupi kuliko MATLAB.

Kwa nini muda kwa kawaida huongezeka ukubwa wa hatua unapopungua?

h ndogo humaanisha hatua nyingi zaidi za ukokotoaji katika kipindi kilekile cha siku 14. Katika majedwali ya chanzo, hasa kwa Python, tabia hii inaonekana wazi.

Kwa mfano, muda wa Python kwa SI–RK4 ni:

  • h = 0,25 → 0,000163 s,
  • h = 0,10 → 0,000398 s,
  • h = 0,01 → 0,003950 s

na unaongezeka hivyo.

Thamani za R na MATLAB si monotoniki kikamilifu katika baadhi ya majaribio madogo. Hali hii haijachanganuliwa tofauti katika chanzo, na kwa kuwa idadi ya marudio ya upimaji wa muda au utofauti wa vipimo haijaripotiwa, haiwezekani kubaini kwa uhakika sababu ya tofauti ndogo za muda kutoka katika chanzo.

Mikunjo katika modeli ya SIR inaonyesha nini?

Katika ukurasa wa 8 wa chanzo kuna tena paneli tatu kwa kila moja ya Python, MATLAB na R. Katika modeli ya SIR, idadi ya susceptible hupungua kwa muda, idadi ya infected huongezeka kwanza hadi kilele kisha hupungua, na idadi ya recovered huongezeka kadiri muda unavyopita.

Kwa mbinu ya Euler, utengano mkubwa zaidi unaonekana kati ya thamani tofauti za h, huku suluhisho katika grafu za RK4 na P-C zikionekana kuwa karibu zaidi.

Vielelezo hivi vinalinganisha tabia ya ubora. Chanzo hakitoi jedwali la pamoja la R² kwa SIR linalojumuisha mbinu na programu zote.

Kwa nini MATLAB ODE45 ilitumika?

Kwa kuwa suluhisho la uchanganuzi exact solution la mfumo wa SIR halikutumika ndani ya utafiti huu, waandishi walichagua kitatuzi cha ODE45 cha MATLAB kama rejea ya usahihi wa juu.

Kisha suluhisho za RK4 katika MATLAB pekee ndizo zililinganishwa na rejea hii.

Kigezoh = 0,25h = 0,10h = 0,01
R² kwa S0,99999980,99999980,9999998
R² kwa I0,99999960,99999960,9999996
R² kwa R0,99999980,99999980,9999998

Matokeo haya yanaonyesha kuwa chini ya masharti ya chanzo, suluhisho la MATLAB RK4 liko karibu sana na rejea ya ODE45.

Hata hivyo, kuwepo kwa thamani zilezile hadi nafasi saba za desimali kwa thamani tatu za h hakuthibitishi kwamba ukubwa tofauti wa hatua una hitilafu ileile kwa kweli; utafiti huzungusha matokeo hadi nafasi saba za desimali.

Zaidi ya hayo, chanzo hakitoi mipangilio ya tolerance ya ODE45. Kwa hiyo, ODE45 hapa ni rejea ya usahihi wa juu iliyochaguliwa na utafiti, na haipaswi kuchukuliwa kama exact solution ya kihisabati.

Nyakati za utekelezaji katika modeli ya SIR ni kiasi gani?

Mbinu / hPython (s)MATLAB (s)R (s)
Euler / 0,250,0000890,0084060,012420
Euler / 0,100,0001250,0064140,007369
Euler / 0,010,0011850,0156660,016969
RK4 / 0,250,0002440,0156940,054937
RK4 / 0,100,0005550,0243790,031706
RK4 / 0,010,0053730,0309000,034045
P-C / 0,250,0001400,0108340,020174
P-C / 0,100,0002940,0177220,029155
P-C / 0,010,0026850,0253910,018921

Python pia hapa ina muda wa chini zaidi wa utekelezaji ulioripotiwa katika masharti yote tisa.

Kwa SIR P-C katika sharti la h = 0,01, muda wa R wa sekunde 0,018921 ni mdogo kuliko muda wa MATLAB wa sekunde 0,025391. Thamani hii inaonyesha wazi kwamba kauli ya “R consistently slowest” katika matokeo ya chanzo haitumiki kwa michanganyiko yote ya majaribio.

Verianla Live: nyakati za utekelezaji za RK4 katika sharti h = 0,01

ModeliPython (s)MATLAB (s)R (s)
SI0,0039500,0257770,031478
SIR0,0053730,0309000,034045
 

Verianla Live: Data zimechukuliwa kutoka Jedwali la 2 na Jedwali la 4 la utafiti wa chanzo. Vipimo vinahusu maunzi moja na utaratibu wa upimaji wa muda uliobainishwa katika chanzo; havipaswi kujumlishwa kama matokeo ya jumla ya benchmark ya Python/MATLAB/R.

Je, Python ni ya haraka zaidi kuliko MATLAB kweli?

Katika majaribio yaliyoripotiwa na utafiti huu, ndiyo; lakini hitimisho hilo haliwezi kutolewa kwa programu zote za Python na MATLAB kwa ujumla.

Katika majedwali ya chanzo, Python ina muda mdogo kuliko MATLAB na R katika michanganyiko yote 18 ya SI/SIR ya mbinu–h. Hili ni jambo thabiti linaloungwa mkono na data za utafiti.

Hata hivyo, maelezo yafuatayo hayajatolewa katika muundo wa jaribio:

  • toleo la Python,
  • toleo la MATLAB,
  • toleo la R,
  • maelezo ya interpreter/compiler iliyotumika,
  • kazi sahihi ya timing iliyotumika katika kila lugha,
  • mara ngapi jaribio lilelile lilirudiwa,
  • iwapo muda wa wastani au wa median ulitumika,
  • mkengeuko wa kawaida au kipindi cha kujiamini cha nyakati,
  • jinsi athari za warm-up au JIT zilivyodhibitiwa.

Vipimo pia vilifanywa kwenye MacBook Air moja pekee yenye kichakataji Apple M4 na 16 GB RAM.

Kwa hiyo, matokeo yanapaswa kufasiriwa kama “utekelezaji wa chanzo ulitoa muda mfupi zaidi katika Python chini ya maunzi na mbinu hizi”.

Matokeo makuu ya utafiti kwa mtazamo wa MATLAB ni yapi?

MATLAB ina majukumu mawili tofauti katika utafiti huu. Kwanza, ni mojawapo ya mazingira ya jumla ya ukokotoaji ambamo mbinu za Euler, RK4 na P-C zinalinganishwa na Python na R. Jukumu la pili, ambalo ni maalumu kwa MATLAB, ni matumizi ya kitatuzi cha rejea ODE45 katika uthibitishaji wa suluhisho la SIR.

Ingawa nyakati za utekelezaji za MATLAB ni kubwa kuliko Python, matokeo ya MATLAB RK4 katika modeli ya SIR dhidi ya rejea ya ODE45 yameripotiwa katika viwango vya:

  • R² = 0,9999998 kwa S,
  • R² = 0,9999996 kwa I,
  • R² = 0,9999998 kwa R

.

Kwa hiyo, utafiti hautoi hitimisho la MATLAB kuwa “mazingira ya haraka zaidi”; hata hivyo, unawezesha kulinganisha ndani ya kazi ileile suluhisho la kawaida la RK4 lililowekwa msimbo na mtumiaji pamoja na rejea ya ODE45 iliyojengwa ndani.

Kwa nini utafiti huu pia unavutia hasa kwa mtazamo wa Türkiye?

Waandishi wote wawili wa utafiti wanahusishwa na Idara ya Hisabati ya Chuo Kikuu cha Ankara. Kwa hiyo, utafiti unatoka moja kwa moja katika taasisi ya kitaaluma nchini Türkiye.

Hata hivyo, vigezo vya epidemiolojia vilivyotumika havitokani na data ya sasa ya mlipuko nchini Türkiye. Chanzo kinachukua vigezo vya SI/SIR kutoka mfano uliowasilishwa na Murray na kuhusishwa na data ya mlipuko wa mafua katika shule ya bweni mwaka 1978.

Kwa hiyo, utafiti si utafiti wa uwanjani wa epidemiolojia unaotabiri uenezaji wa maambukizi nchini Türkiye, bali ni ulinganisho wa mbinu za namba na mazingira ya ukokotoaji unaofanywa kupitia modeli za milinganyo tofauti ya epidemiolojia.

Matokeo yanayoungwa mkono na utafiti

  • Modeli za SI na SIR zimetatuliwa kwa mbinu za Euler, RK4 na Predictor–Corrector katika mazingira ya Python, MATLAB na R.
  • Katika modeli ya SI, Python, MATLAB na R zilitoa thamani zilezile za R² zilizoripotiwa kwa mbinu na h zilezile.
  • Katika modeli ya SI, RK4 imeripotiwa katika jedwali la chanzo kuwa na R² = 1,0 kwa thamani zote za h.
  • P-C ilitoa thamani za R² zilizo juu kuliko Euler katika modeli ya SI.
  • Usahihi wa suluhisho la Euler katika SI uliongezeka wazi h ilipopungua.
  • Python ilitoa muda wa chini zaidi katika michanganyiko yote ya muda wa utekelezaji ya SI na SIR iliyoripotiwa.
  • Suluhisho la MATLAB RK4 la SIR lilikaribia rejea ya ODE45 kwa thamani za juu sana za R².
  • Kwa ujumla, RK4 na P-C ni algorithimu zinazohitaji shughuli nyingi zaidi kuliko Euler, na katika majedwali ya chanzo nyakati kubwa zaidi huonekana katika kulinganisha nyingi.

Matokeo ambayo utafiti hauungi mkono, haujajaribu au haujathibitisha

  • Haijaonyeshwa kwamba Python ni ya haraka kuliko MATLAB na R katika hesabu zote za kisayansi za namba.
  • Majedwali ya chanzo hayaungi mkono kwamba R ni polepole kuliko MATLAB katika masharti yote ya majaribio.
  • Utafiti hauonyeshi kwamba mpangilio uleule wa kasi utadumishwa katika CPU, mfumo wa uendeshaji au usanifu mwingine wa kompyuta.
  • Utafiti haufanyi ulinganisho wa utendaji kati ya matoleo ya programu.
  • Utafiti hautoi variance, mkengeuko wa kawaida au kipindi cha kujiamini kutoka vipimo vilivyorudiwa.
  • Katika modeli ya SIR, usahihi wa Python, MATLAB na R haujalinganishwa kwa jedwali la pamoja la ODE45 R².
  • Katika modeli ya SIR, uthibitishaji wa R² wa mbinu za Euler na P-C dhidi ya ODE45 haujaripotiwa.
  • Kuonekana kwa R² = 1,0 katika jedwali hakuthibitishi kwamba suluhisho la namba ni sawa kabisa kihisabati na exact solution; thamani zimezungushwa.
  • Utafiti si utabiri wa mlipuko wa wakati halisi wala tathmini ya ufanisi wa sera ya epidemiolojia.
  • Utafiti haulinganishi muda wa ukuzaji wa msimbo, matumizi ya kumbukumbu, mfumo ikolojia, urahisi wa matumizi au gharama ya leseni ya Python, MATLAB au R.

Mbinu na Matokeo ya Utafiti

Muhtasari wa muundo wa jaribio

KipengeleMuundo uliotumika katika utafiti
ModeliSI na SIR
Mbinu za nambaEuler, RK4, Predictor–Corrector
Mazingira ya ukokotoajiPython, MATLAB, R
Ukubwa wa hatua0,25; 0,10; 0,01
Rejea ya SISuluhisho la uchanganuzi
Kipimo cha usahihi cha SIR²
Rejea ya SIRMATLAB ODE45
Uthibitishaji wa kiasi wa SIRR² kati ya MATLAB RK4 na ODE45
Upimaji wa mudaMuda safi wa ukokotoaji wa algorithimu ya namba pekee
MaunziMacBook Air, Apple M4, 16 GB RAM

Matokeo yote ya usahihi wa SI yanasema nini?

Katika modeli ya SI, licha ya kubadilisha mazingira ya programu, R² haibadiliki kwa mbinu na ukubwa wa hatua uleule. Kwa mfano, kwa Euler/h=0,25, Python, MATLAB na R kila moja hutoa R² = 0,9585463.

Kwa hiyo, jedwali la SI accuracy linaonyesha zaidi tofauti ya mbinu kati ya Euler–P-C–RK4 kuliko tofauti ya usahihi wa namba kati ya Python–MATLAB–R.

Mbinuh = 0,25h = 0,10h = 0,01
Euler0,95854630,99275640,9999239
P-C0,99941890,99997981,0000000
RK41,00000001,00000001,0000000

Thamani hizi ni sawa kwa S na I.

Ni jambo gani thabiti zaidi katika ulinganisho wa kasi?

Jambo thabiti zaidi la muda wa utekelezaji katika data za chanzo ni kwamba Python hutoa muda wa chini zaidi.

Kwa mfano, wakati ukubwa mdogo zaidi wa hatua h = 0,01 unatumiwa:

Modeli / mbinuPython (s)MATLAB (s)R (s)
SI – Euler0,0007640,0187440,009426
SI – RK40,0039500,0257770,031478
SI – P-C0,0017420,0183580,022058
SIR – Euler0,0011850,0156660,016969
SIR – RK40,0053730,0309000,034045
SIR – P-C0,0026850,0253910,018921

Python ina thamani ndogo zaidi katika ulinganisho wote sita. Kwa upande mwingine, mpangilio wa MATLAB na R hubadilika kulingana na mbinu.

Kutokuwiana katika hitimisho la chanzo kwamba “R ndiyo polepole zaidi”

Sehemu ya matokeo ya utafiti inasema kuwa R ilikuwa polepole zaidi kila wakati kati ya mazingira matatu. Hata hivyo, Jedwali la 2 na Jedwali la 4 hayalingani kikamilifu na kauli hii ya jumla.

Mfano wa chanzo ambapo R ni ya haraka kuliko MATLABMATLABR
SI, Euler, h=0,010,018744 s0,009426 s
SI, P-C, h=0,100,015156 s0,010234 s
SIR, P-C, h=0,010,025391 s0,018921 s

Kwa hiyo, hitimisho linalobaki mwaminifu kwa jedwali la chanzo ni hili: Python ndiyo ya haraka zaidi katika michanganyiko yote iliyoripotiwa; nafasi ya pili/tatu kati ya MATLAB na R si thabiti katika masharti yote.

Upeo wa upimaji wa muda

Katika utafiti wa chanzo, kipima muda kiliwekwa mwanzoni na mwisho wa algorithimu na muda safi wa ukokotoaji wa mbinu ya namba pekee ndio ulirekodiwa.

Shughuli zifuatazo hazikujumuishwa katika kipimo:

  • ufafanuzi wa vigezo,
  • variable initialization,
  • model setup,
  • uchoraji wa grafu.

Mbinu hii inalenga muda wa utekelezaji wa loop ya namba; lakini haipimi muda halisi wa uchanganuzi wa mtumiaji kutoka mwanzo hadi mwisho.

Vikwazo vya kurudufu benchmark

Chanzo kinaeleza maunzi lakini hakiripoti baadhi ya maelezo ya kiufundi yanayohitajika ili kurudufu kikamilifu ulinganisho wa utendaji.

TaarifaHali katika chanzo
KompyutaMacBook Air
KichakatajiApple M4
RAM16 GB
Toleo la PythonHalijabainishwa
Toleo la MATLABHalijabainishwa
Toleo la RHalijabainishwa
Kazi za timingMajina hayajabainishwa
Idadi ya marudioHaijabainishwa
Muda wa wastani/medianHaijabainishwa
Mkengeuko wa kawaida / CIHaujaripotiwa
Utaratibu wa Warm-up / JITHaujaripotiwa

Kwa kuwa hasa vipimo vidogo zaidi viko katika kiwango cha makumi au mamia ya mikrosekunde, maelezo haya ni muhimu wakati wa kutoa hitimisho kuhusu utendaji wa jumla wa lugha za programu. Chanzo hakichanganui tofauti athari za vipengele hivi katika utaratibu wake wa upimaji.

Upeo wa uthibitishaji wa SIR

Ingawa kichwa cha Jedwali la 3 kwa SIR kinatumia kauli “R² values of each numerical method in MATLAB”, jedwali lenyewe lina matokeo ya RK4 Method – MATLAB pekee.

Kwa hiyo, kutoka katika chanzo haiwezekani kupata:

  • R² ya MATLAB Euler dhidi ya ODE45,
  • R² ya MATLAB P-C dhidi ya ODE45,
  • R² ya Python RK4 dhidi ya ODE45,
  • R² ya R RK4 dhidi ya ODE45

.

Hitimisho finyu zaidi ambalo chanzo kinathibitisha ni kwamba suluhisho la RK4 lililotekelezwa na waandishi katika MATLAB liko karibu sana na rejea ya ODE45.

Matokeo makuu ya utafiti

Data za chanzo zinapotathminiwa pamoja, matokeo mawili tofauti yanajitokeza:

  1. Kwa usahihi: katika modeli ya SI, RK4 ina thamani za juu zaidi za R² zilizoripotiwa; P-C iko karibu sana na Euler inaonyesha usahihi wa chini zaidi hasa kwa ukubwa mkubwa wa hatua.
  2. Kwa muda katika utekelezaji wa chanzo: Python inatoa muda mfupi wa utekelezaji kuliko MATLAB na R katika michanganyiko yote ya majaribio iliyoripotiwa.

Matokeo haya mawili hayapaswi kuchanganywa. Muda mfupi wa utekelezaji wa Python ni jambo tofauti na usahihi wa namba wa RK4.

Vikwazo vya msingi

  • Jaribio la utendaji lilifanywa kwenye kompyuta moja pekee.
  • Matoleo ya Python, MATLAB na R hayakuripotiwa.
  • Idadi ya marudio ya upimaji wa muda haikutolewa.
  • Hakuna variance au kipindi cha kujiamini kwa nyakati za utekelezaji.
  • Muda safi wa ukokotoaji wa algorithimu pekee ndio ulipimwa.
  • Haijaonyeshwa kwa kina iwapo viwango vya uboreshaji wa msimbo katika utekelezaji tofauti vilikuwa sawa.
  • Tathmini ya SI accuracy imewekewa kikomo cha R²; hakuna jedwali la hitilafu kamili au hitilafu ya juu zaidi.
  • Jaribio la SIR accuracy lilitumika tu kwa ulinganisho wa MATLAB RK4 na ODE45.
  • Mipangilio ya tolerance ya ODE45 haijaripotiwa katika chanzo.
  • Modeli inahusu tu mifumo midogo ya milinganyo kama SI na SIR; matokeo ya kasi hayawezi kujumlishwa moja kwa moja kwa mifumo mikubwa ya ODE.

Maelezo ya Chanzo na Mbinu

Jina kamili asili la kazi: Performance comparison of Python, MATLAB and R for numerical solutions of SI and SIR epidemiological models

Waandishi na mpangilio asili: Berkay Özışık; Elif Demirci.

Mwandishi anayewajibika: PDF iliyopakiwa haina alama tofauti ya corresponding-author. Anwani tofauti za barua pepe zimetolewa kwa waandishi wote wawili.

Uandishi wa kwanza sawa/mchango sawa: Toleo lililopakiwa halina tamko la mchango sawa.

Taasisi: Ankara University, Faculty of Sciences, Department of Mathematics, Besevler, Ankara, Türkiye.

Aina ya chanzo: Utafiti wa uchanganuzi wa namba, uundaji wa modeli za kihisabati za epidemiolojia na ulinganisho wa utendaji wa mazingira ya programu.

Hali ya uchapishaji: Kazi iliyopakiwa ni preprint ya arXiv ambayo haijapitia tathmini ya wenzao; matokeo yanapaswa kutathminiwa kwa kuzingatia hatua hii ya uchapishaji.

Jukwaa: arXiv.

Kitambulisho cha arXiv: 2603.01916.

Toleo lililopakiwa: v2 [math.NA].

Uwasilishaji wa kwanza: 2 Machi 2026.

Tarehe ya marekebisho ya v2: 4 Machi 2026.

DOI: 10.48550/arXiv.2603.01916.

Toleo la uchapishaji lililopitiwa na wenzao: Kufikia 24 Agosti 2026, katika ukaguzi wa bibliografia, toleo tofauti la jarida lililopitiwa na wenzao lenye kichwa hicho hicho halikuthibitishwa.

Leseni ya makala: Kiungo cha leseni katika rekodi ya arXiv kinaelekeza kwenye leseni ya CC BY-SA 4.0.

Modeli kuu: Susceptible–Infected (SI) na Susceptible–Infected–Recovered (SIR).

Mbinu za namba: Mbinu ya Euler, Runge–Kutta ya daraja la nne (RK4) na Predictor–Corrector.

Mazingira yaliyolinganishwa: Python, MATLAB na R.

Uthibitishaji wa SI: R² dhidi ya suluhisho la uchanganuzi la SI lililotolewa katika chanzo.

Uthibitishaji wa SIR: R² kwa suluhisho la MATLAB RK4 pekee dhidi ya rejea ya MATLAB ODE45.

Maunzi: MacBook Air yenye kichakataji Apple M4 na 16 GB RAM.

Upeo wa muda wa utekelezaji: Muda safi wa ukokotoaji wa algorithimu ya namba pekee ulipimwa; parameter definition, variable initialization, model setup na plotting ziliachwa nje.

Kikomo cha reproducibility: Chanzo hakiripoti matoleo ya Python, MATLAB na R, kazi sahihi za timing, idadi ya marudio ya benchmark, mbinu ya warm-up/JIT, iwapo nyakati ni wastani/median, au utofauti wa timing.

Kutokuwiana kwa matokeo ndani ya chanzo — muda wa utekelezaji wa R: Sehemu ya matokeo inasema kuwa R ilikuwa polepole zaidi kila wakati kati ya mazingira matatu. Hata hivyo, katika Jedwali la 2 kwa SI Euler/h=0,01, R = 0,009426 s na MATLAB = 0,018744 s; kwa SI P-C/h=0,10, R = 0,010234 s na MATLAB = 0,015156 s. Katika Jedwali la 4 kwa SIR P-C/h=0,01, R = 0,018921 s na MATLAB = 0,025391 s. Kwa hiyo, hitimisho la “R ni polepole zaidi katika kila sharti” haliendani kikamilifu na majedwali ya chanzo. Python ina muda wa chini zaidi katika michanganyiko yote iliyoripotiwa.

Kauli ya jedwali ndani ya chanzo — SIR R²: Maelezo ya Jedwali la 3 yanatumia kauli “each numerical method in MATLAB”, lakini jedwali lina ulinganisho wa MATLAB–ODE45 kwa RK4 Method pekee. Thamani za ODE45 R² kwa Euler na P-C hazijatolewa katika chanzo.

Kikomo cha kuzungusha: Katika Jedwali la 1 la SI, thamani za RK4 na baadhi ya P-C zimeripotiwa kama R² = 1,0; katika Jedwali la 3 la SIR, thamani tofauti za h zimeripotiwa kwa thamani zilezile hadi nafasi saba za desimali. Kwa kuwa chanzo huzungusha thamani hadi nafasi saba za desimali, hazijafasiriwa kuwa exact numerical equality au hitilafu sifuri.

Kikomo cha ODE45: Chanzo kinatumia ODE45 kama high-accuracy reference solution kwa SIR, lakini hakiripoti mipangilio ya tolerance ya solver. Matokeo ya ODE45 hayajawasilishwa kama exact solution ya uchanganuzi.

Muktadha wa data: Masharti ya mwanzo na vigezo vya SI/SIR katika chanzo vinahusishwa, kupitia Murray (2002), na data ya mlipuko wa mafua katika shule ya bweni mwaka 1978. Utafiti haumodeli data ya uwanjani ya epidemiolojia ya Türkiye.

Ufadhili: Preprint iliyopakiwa haina funding statement tofauti.

Mgongano wa maslahi: Preprint iliyopakiwa haina tamko tofauti la competing-interest; kutokana na hilo haijahitimishwa kwamba hakuna mgongano wa maslahi.

CRediT/michango ya waandishi: Toleo lililopakiwa halina CRediT authorship contribution statement tofauti.

Kikomo cha tafsiri ya kisayansi: Matokeo ya muda wa utekelezaji katika utafiti yanatumika kwa utekelezaji mahususi wa SI/SIR, maunzi moja, na utaratibu wa timing ulioripotiwa. Hayawakilishi mpangilio wa jumla au usiotegemea maunzi wa utendaji wa Python, MATLAB na R katika kazi zote za ukokotoaji wa kisayansi.

Kikomo cha maudhui ya kisayansi: Milinganyo tofauti, mbinu za namba, vigezo, thamani za R², nyakati za utekelezaji, ulinganisho wa ODE45 na vikwazo vya matokeo katika makala hii ya Verianla zinatokana na kazi ya arXiv v2 iliyopakiwa. Ukaguzi wa nje wa bibliografia ulitumika tu kuthibitisha utambulisho wa waandishi, toleo la arXiv, DOI, tarehe, hali ya uchapishaji na leseni ya makala; hakuna matokeo ya epidemiolojia yasiyokuwapo katika chanzo yaliyoongezwa.


Shiriki:

Maoni huchapishwa baada ya kukaguliwa.Maoni yako yatapitia mchakato wa idhini na yataonekana yakikubaliwa.

Acha maoni

Anwani yako ya barua pepe haitachapishwa. Sehemu za lazima zimewekewa alama ya *

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