Original Title: Task Scheduling for Federated Learning in Edge Cloud Computing Environments by Using Adaptive-Greedy Dingo Optimization Algorithm and Binary Salp Swarm Algorithm
Source: doi.org/10.3390/fi15110357
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការរៀបចំកាលវិភាគការងារសម្រាប់ការរៀនសូត្របែបសហព័ន្ធ (Federated Learning) ក្នុងបរិស្ថានកុំព្យូទ័រ Edge Cloud ដោយប្រើក្បួនដោះស្រាយ Adaptive-Greedy Dingo Optimization និងក្បួនដោះស្រាយ Binary Salp Swarm

ចំណងជើងដើម៖ Task Scheduling for Federated Learning in Edge Cloud Computing Environments by Using Adaptive-Greedy Dingo Optimization Algorithm and Binary Salp Swarm Algorithm

អ្នកនិពន្ធ៖ Weihong Cai (Department of Computer, Shantou University, China), Fengxi Duan (Department of Computer, Shantou University, China)

ឆ្នាំបោះពុម្ព៖ 2023, Future Internet

វិស័យសិក្សា៖ Computer Science

១. សេចក្តីសង្ខេបប្រតិបត្តិ (Executive Summary)

បញ្ហា (The Problem)៖ ការស្រាវជ្រាវនេះផ្តោតលើការដោះស្រាយបញ្ហាការបែងចែកថាមពលបញ្ជូន (Transmission Power Allocation) និងបញ្ហាការសម្រេចចិត្តរួមគ្នានៃការទម្លាក់សំណើ និងការរៀបចំកាលវិភាគធនធានកុំព្យូទ័រ (JRORS) សម្រាប់ការរៀនសូត្របែបសហព័ន្ធ (Federated Learning) នៅក្នុងប្រព័ន្ធកុំព្យូទ័រ MEC (Mobile Edge Computing) ច្រើនអ្នកប្រើប្រាស់។

វិធីសាស្ត្រ (The Methodology)៖ អ្នកស្រាវជ្រាវបានស្នើឡើងនូវក្បួនដោះស្រាយប្រភេទកែលម្អថ្មីចំនួនពីរ ដើម្បីដោះស្រាយបញ្ហាបែងចែកធនធាន និងបញ្ហាកាលវិភាគការងារ ដោយធ្វើការបញ្ជាក់តាមរយៈការក្លែងធ្វើពិសោធន៍ (Simulation) កុំព្យូទ័រ។

លទ្ធផលសំខាន់ៗ (The Verdict)៖

២. ការវិភាគលើប្រសិទ្ធភាព និងដែនកំណត់ (Performance & Constraints)

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
BSSA (Binary Salp Swarm Algorithm)
ក្បួនដោះស្រាយ BSSA សម្រាប់រៀបចំកាលវិភាគធនធាន
មានសមត្ថភាពខ្ពស់ក្នុងការបង្កើនសុខុមាលភាពប្រព័ន្ធ (System Welfare) រក្សាបាននូវអត្រាឆ្លើយតបរហ័ស និងមានភាពយុត្តិធម៌ល្អសម្រាប់ការបែងចែកធនធានកុំព្យូទ័រ។ ទាមទារការគណនាស្មុគស្មាញនៅពេលចំនួនអ្នកប្រើប្រាស់កើនឡើងច្រើន ហើយអាចលះបង់ភាពយុត្តិធម៌បន្តិចបន្តួចនៅពេលប្រព័ន្ធមានផ្ទុកទិន្នន័យលើសកម្រិត។ បង្កើន System Welfare បានរហូតដល់ ១០០% នៅពេលមានអ្នកប្រើប្រាស់ ១២នាក់ និង ២០% សម្រាប់អ្នកប្រើប្រាស់ ១០០នាក់ ធៀបនឹងក្បួនដោះស្រាយ GA។
GA (Genetic Algorithm)
ក្បួនដោះស្រាយពន្ធុវិទ្យា (GA)
ដំណើរការបានល្អក្នុងការដោះស្រាយបញ្ហាថេរ (Discrete Problems) និងអាចរក្សាបាននូវភាពយុត្តិធម៌ (Fairness) ក្នុងកម្រិតដែលអាចទទួលយកបាន។ ផ្តល់នូវតម្លៃសុខុមាលភាពប្រព័ន្ធ (System Welfare) និងអត្រាឆ្លើយតប (Response Rate) ទាបជាង BSSA និងងាយនឹងយឺតយ៉ាវនៅពេលទិន្នន័យច្រើន។ មានភាពយុត្តិធម៌ល្អ (SSD ខ្ពស់) ប៉ុន្តែអត្រាឆ្លើយតប និងទិន្នផលទូទៅទាបជាង BSSA យ៉ាងច្បាស់។
AGDOA (Adaptive-Greedy Dingo Optimization Algorithm)
ក្បួនដោះស្រាយ AGDOA សម្រាប់ការបែងចែកថាមពលបញ្ជូន
មានល្បឿនជួបប្រសព្វ (Convergence Speed) លឿន សន្សំសំចៃថាមពលខ្ពស់ និងមានយន្តការការពារកុំឱ្យធ្លាក់ចូលទៅក្នុងចំណុច Local Optima។ ទាមទារការកំណត់ប៉ារ៉ាម៉ែត្របន្សាំ (Adaptive Parameters) ឱ្យបានត្រឹមត្រូវដើម្បីទទួលបានលទ្ធផលល្អបំផុត។ កាត់បន្ថយការប្រើប្រាស់ថាមពលពី ៨.៣% ទៅ ១៦៣.៩% និងប្រើត្រឹមតែ ៦១ ជុំ (Iterations) ដើម្បីស្វែងរកចម្លើយ ធៀបនឹង ២០០ ជុំរបស់ GPSO។
GPSO (Greedy Particle Swarm Optimization)
ក្បួនដោះស្រាយ GPSO
មានភាពងាយស្រួលក្នុងការអនុវត្ត និងស័ក្តិសមសម្រាប់បញ្ហាដែលមានអថេរច្រើនក្នុងការបែងចែកថាមពល។ មានល្បឿនយឺតក្នុងការស្វែងរកចម្លើយ និងប្រើប្រាស់ថាមពលប្រព័ន្ធច្រើនជាងក្បួនដោះស្រាយជំនាន់ថ្មី។ ត្រូវការរហូតដល់ ២០០ ទៅ ២២៩ ជុំ (Iterations) ទើបអាចស្វែងរកចម្លើយបាន និងស៊ីថាមពលខ្ពស់បំផុតក្នុងចំណោមក្បួនដោះស្រាយដែលបានប្រៀបធៀប។
NCGG (Non-cooperative game model)
ម៉ូដែលហ្គេមមិនសហការ (NCGG)
មានប្រសិទ្ធភាពក្នុងការសម្រេចចិត្តបែបវិមជ្ឈការ (Decentralized) សម្រាប់អ្នកប្រើប្រាស់ម្នាក់ៗ។ ខ្វះការសម្របសម្រួលជាសកល (Global Coordination) ដែលធ្វើឱ្យប្រព័ន្ធទាំងមូលមិនអាចដំណើរការបានក្នុងកម្រិតអតិបរមា។ ដំណើរការបានលឿនជាង GPSO បន្តិច ប៉ុន្តែនៅតែប្រើប្រាស់ថាមពលច្រើនជាង AGDOA យ៉ាងខ្លាំង។

ការចំណាយលើធនធាន (Resource Cost)៖ ការសិក្សានេះប្រើប្រាស់ការក្លែងធ្វើ (Simulation) តាមរយៈកុំព្យូទ័រធម្មតា ដែលមិនទាមទារធនធានផ្នែករឹង (Hardware) ធំដុំ ឬម៉ាស៊ីនសេវើថ្លៃៗសម្រាប់ដំណើរការសាកល្បងនោះទេ។

៣. ការពិនិត្យសម្រាប់បរិបទកម្ពុជា/អាស៊ីអាគ្នេយ៍

ភាពលំអៀងនៃទិន្នន័យ (Data Bias)៖

ការស្រាវជ្រាវនេះពឹងផ្អែកទាំងស្រុងទៅលើទិន្នន័យក្លែងធ្វើ (Simulated Data) ដែលបង្កើតឡើងដោយកុំព្យូទ័រ ដូចជាការសន្មត់ពីកម្លាំងកុំព្យូទ័រ ល្បឿនអ៊ីនធឺណិត និងទំហំទិន្នន័យ ដោយមិនមានការសាកល្បងក្នុងបរិស្ថានជាក់ស្តែង។ សម្រាប់ប្រទេសកម្ពុជា នេះជាចំណុចខ្វះខាតមួយ ដោយសារកត្តាជាក់ស្តែងដូចជា ភាពមិនប្រក្រតីនៃបណ្តាញអ៊ីនធឺណិត ការដាច់ភ្លើង និងកម្រិតបញ្ជូន (Bandwidth) ទាបនៅតំបន់ជាយក្រុង មិនត្រូវបានគិតបញ្ចូលក្នុងទិន្នន័យក្លែងធ្វើនេះទេ។

លទ្ធភាពនៃការអនុវត្ត (Applicability)៖

ទោះបីជាយ៉ាងណាក៏ដោយ ក្បួនដោះស្រាយនេះមានសក្តានុពលខ្ពស់ក្នុងការជួយអភិវឌ្ឍប្រព័ន្ធហេដ្ឋារចនាសម្ព័ន្ធបច្ចេកវិទ្យានៅកម្ពុជា ពិសេសក្នុងគម្រោងទីក្រុងឆ្លាតវៃ និងការគ្រប់គ្រងទិន្នន័យ។

សរុបមក ការអនុវត្តក្បួនដោះស្រាយ AGDOA និង BSSA អាចជួយកម្ពុជាក្នុងការសន្សំសំចៃថ្លៃដើមប្រតិបត្តិការអ៊ីនធឺណិត និងពន្លឿនដំណើរការបច្ចេកវិទ្យា IoT ឱ្យកាន់តែមានប្រសិទ្ធភាព និងឆ្លើយតបទាន់ពេលវេលា។

៤. ផែនការសកម្មភាពសម្រាប់និស្សិត (Actionable Roadmap)

ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃ MEC និង Federated Learning: អ្នកស្រាវជ្រាវគួរចាប់ផ្តើមដោយការស្វែងយល់ពីស្ថាបត្យកម្មនៃ Mobile Edge Computing (MEC) របៀបដែលវាខុសពី Cloud ធម្មតា និងគោលការណ៍រក្សាការសម្ងាត់របស់ Federated Learning តាមរយៈវគ្គសិក្សាអនឡាញ ឬឯកសារស្រាវជ្រាវកម្រិតមូលដ្ឋាន។
  2. រៀនប្រើប្រាស់កម្មវិធីក្លែងធ្វើបណ្តាញ: អនុវត្តការសរសេរកូដក្លែងធ្វើបរិស្ថានបណ្តាញដោយប្រើប្រាស់កម្មវិធី MATLAB ឬបណ្ណាល័យ SimPy និង EdgeCloudSim នៅក្នុង Python ដើម្បីបង្កើតប្រព័ន្ធធនធាន Edge និង Cloud ក្លែងក្លាយ។
  3. សរសេរកូដ និងសាកល្បងក្បួនដោះស្រាយ: ចាប់ផ្តើមសរសេរកូដសម្រាប់ក្បួនដោះស្រាយសាមញ្ញដូចជា Genetic Algorithm (GA) រួចឈានទៅការអនុវត្តក្បួនដោះស្រាយ Binary Salp Swarm Algorithm (BSSA) សម្រាប់រៀបចំកាលវិភាគ និងអនុវត្តការវាស់ស្ទង់ប្រសិទ្ធភាព (System Welfare) នៅក្នុង Python
  4. កែសម្រួលប៉ារ៉ាម៉ែត្រស្របតាមបរិបទកម្ពុជា: កែប្រែទិន្នន័យនៅក្នុង Simulation ដោយបន្ថយកម្រិត Bandwidth បង្កើនការពន្យារពេល (Latency) និងបន្ថែមសេណារីយ៉ូនៃការដាច់បណ្តាញមួយរំពេច ដើម្បីមើលថាតើក្បួនដោះស្រាយនេះនៅតែអាចដំណើរការបានល្អឬទេនៅក្នុងស្ថានភាពបណ្តាញជាក់ស្តែងនៅកម្ពុជា។
  5. បង្កើតគម្រោងសាកល្បងខ្នាតតូច (Pilot Project): រៀបចំប្រព័ន្ធសាកល្បងពិតប្រាកដដោយប្រើប្រាស់ Raspberry Pi ជា Edge Servers និងទូរស័ព្ទដៃជាឧបករណ៍ IoT រួចអនុវត្តក្បួនដោះស្រាយទាំងនេះដើម្បីបែងចែកការងារជាក់ស្តែង ដូចជាការសម្គាល់រូបភាពតូចៗ (Image Recognition) ដើម្បីបញ្ជាក់ពីលទ្ធផលនៃការស្រាវជ្រាវ។

៥. វាក្យសព្ទបច្ចេកទេស (Technical Glossary)

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Federated Learning (FL) ជាវិធីសាស្ត្របង្វឹកម៉ូដែលបញ្ញាសិប្បនិម្មិត (AI) ដោយឱ្យឧបករណ៍នីមួយៗ (ដូចជាទូរស័ព្ទដៃ) ធ្វើការរៀនពីទិន្នន័យដោយខ្លួនឯង រួចបញ្ជូនតែលទ្ធផលនៃការរៀនសូត្រទៅកាន់សេវើកណ្តាល ដោយមិនចាំបាច់បញ្ជូនទិន្នន័យដើម ឬព័ត៌មានឯកជនរបស់អ្នកប្រើប្រាស់នោះទេ។ ដូចជាសិស្សរៀនធ្វើលំហាត់នៅផ្ទះរៀងៗខ្លួន រួចយកតែចម្លើយដែលរកឃើញទៅប្រាប់គ្រូ ដោយមិនបាច់យកសៀវភៅព្រាង ឬក្រដាសស្មៅទៅឱ្យគ្រូមើលឡើយ ដើម្បីការពារអាថ៌កំបាំងផ្ទាល់ខ្លួន។
Mobile Edge Computing (MEC) ជាការនាំយកសមត្ថភាពគណនា និងរក្សាទុកទិន្នន័យឱ្យមកនៅកៀកនឹងអ្នកប្រើប្រាស់បំផុត (ឧទាហរណ៍៖ ដំឡើងសេវើនៅតាមបង្គោលអង់តែនទូរស័ព្ទ) ដើម្បីកាត់បន្ថយការពន្យារពេលក្នុងការបញ្ជូនទិន្នន័យទៅកាន់សេវើធំនៅឆ្ងាយៗ (Cloud)។ ដូចជាការបើកសាខាធនាគារ ឬទូអេធីអឹម (ATM) នៅជិតផ្ទះអ្នក ដើម្បីឱ្យអ្នកដកប្រាក់បានលឿន ដោយមិនចាំបាច់ធ្វើដំណើរទៅកាន់ទីស្នាក់ការកណ្តាលនៅឯទីក្រុងឡើយ។
Transmission Power Allocation (PA) គឺជាដំណើរការនៃការបែងចែកកម្រិតថាមពល (សេវា) ក្នុងការបញ្ជូនទិន្នន័យរវាងឧបករណ៍ចល័ត និងអង់តែនសេវើ ដើម្បីធានាថាការទំនាក់ទំនងមានភាពរលូន និងសន្សំសំចៃថ្មទូរស័ព្ទរបស់អ្នកប្រើប្រាស់បានច្រើនបំផុត។ ដូចជាការគ្រប់គ្រងកម្លាំងទឹកដែលបាញ់ចេញពីទុយោទៅកាន់រុក្ខជាតិផ្សេងៗគ្នា ដោយផ្តល់ទឹកខ្លាំងទៅដើមឈើធំ និងទឹកតិចតួចទៅកូនរុក្ខជាតិ ដើម្បីកុំឱ្យខ្ជះខ្ជាយទឹក។
Joint Request Offloading and Computational Resource Scheduling (JRORS) ជាដំណើរការសម្រេចចិត្តរួមគ្នាលើបញ្ហាពីរក្នុងពេលតែមួយ៖ ទីមួយ សម្រេចថាតើត្រូវបញ្ជូនការងារពីទូរស័ព្ទទៅឱ្យសេវើណាមួយជួយគណនា និងទីពីរ ត្រូវបែងចែកធនធានម៉ាស៊ីន (CPU/RAM) យ៉ាងដូចម្តេចដើម្បីឱ្យការងារនោះរួចរាល់ទាន់ពេលកំណត់។ ដូចជាអ្នកគ្រប់គ្រងភោជនីយដ្ឋានម្នាក់ ដែលត្រូវសម្រេចចិត្តក្នុងពេលតែមួយថា តើត្រូវបញ្ជូនមុខម្ហូបណាទៅឱ្យចុងភៅណាធ្វើ ហើយត្រូវបែងចែកចង្ក្រានប៉ុន្មានសម្រាប់ចុងភៅម្នាក់ៗ ដើម្បីឱ្យភ្ញៀវទទួលបានម្ហូបលឿន។
Salp Swarm Algorithm (SSA) ជាក្បួនដោះស្រាយគណិតវិទ្យាដែលយកគំរូតាមការផ្លាស់ទីជាហ្វូងរបស់សត្វសមុទ្រម្យ៉ាង (Salp) ដោយមានមេហ្វូងជាអ្នកដឹកនាំ និងអ្នកតាម ដើម្បីស្វែងរកចំណុចល្អបំផុត (Optimal Solution) ក្នុងការដោះស្រាយបញ្ហាបែងចែកធនធានដ៏ស្មុគស្មាញ។ ដូចជាហ្វូងស្រមោចដែលដើរតាមគ្នាជាជួរដើម្បីទៅរកដុំស្ករ ដោយមេហ្វូងជាអ្នករកផ្លូវខ្លីបំផុត ហើយស្រមោចផ្សេងទៀតដើរតាម ដើម្បីសន្សំកម្លាំងនិងពេលវេលា។
Dingo Optimization Algorithm (DOA) ជាក្បួនដោះស្រាយបញ្ហាដែលបង្កើតឡើងដោយត្រាប់តាមយុទ្ធសាស្ត្រប្រមាញ់ចំណីរបស់សត្វឆ្កែព្រៃអូស្ត្រាលី (Dingo) ដូចជាការវាយប្រហារជាក្រុម ឬការវាយប្រហារឯកត្តជន ដើម្បីស្វែងរកចម្លើយដ៏មានប្រសិទ្ធភាពបំផុតសម្រាប់បញ្ហាបែងចែកថាមពលបញ្ជូន (PA problem)។ ដូចជាក្រុមអ្នកស៊ើបអង្កេតដែលប្រើប្រាស់យុទ្ធសាស្ត្រផ្សេងៗគ្នា (ធ្វើការជាក្រុមខ្លះ ចុះអង្កេតតែឯងខ្លះ) ដើម្បីស្វែងរកភស្តុតាង និងបំបែកសំណុំរឿងដ៏ស្មុគស្មាញមួយ។
System Welfare ជារង្វាស់ដែលប្រើដើម្បីវាយតម្លៃពីកម្រិតនៃភាពជោគជ័យ និងតុល្យភាពនៃប្រព័ន្ធទាំងមូល ដោយគិតបញ្ចូលទាំងល្បឿននៃការឆ្លើយតប ការចំណាយថាមពល តម្លៃសេវើ និងភាពយុត្តិធម៌សម្រាប់អ្នកប្រើប្រាស់ម្នាក់ៗ។ ដូចជាពិន្ទុវាយតម្លៃសេវាកម្មរបស់សណ្ឋាគារមួយ ដែលឆ្លុះបញ្ចាំងពីការពេញចិត្តរួមរបស់ភ្ញៀវទាំងអស់ ផ្អែកលើតម្លៃ ភាពស្អាតបាត និងល្បឿននៃការបម្រើសេវាកម្ម។
Scheduling Dominance Degree (SDD) ជាសូចនាករសម្រាប់វាស់ស្ទង់កម្រិតនៃភាពយុត្តិធម៌ក្នុងការបែងចែកធនធានកុំព្យូទ័រដល់អ្នកប្រើប្រាស់។ បើតម្លៃ SDD កាន់តែខ្ពស់ មានន័យថាអ្នកប្រើប្រាស់គ្រប់រូបទទួលបានចំណែកសេវាកម្មកាន់តែស្មើភាពគ្នា (មិនលម្អៀង)។ ដូចជាការកាត់នំខេកចែកក្មេងៗ បើក្មេងគ្រប់គ្នាទទួលបាននំប៉ុនៗគ្នា នោះភាពយុត្តិធម៌ (SDD) គឺមានកម្រិតខ្ពស់ ប៉ុន្តែបើមានក្មេងម្នាក់បាននំធំជាងគេ នោះកម្រិត SDD នឹងធ្លាក់ចុះ។

៦. ប្រធានបទពាក់ព័ន្ធ (Further Reading)

អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖

ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖