The original Python Testbed for Federated Learning Algorithms is a light FL framework, which provides the three generic algorithms: the centralized federated learning, the decentralized federated learning, and the TDM communication (i.e., peer data exchange) in the current time slot. The limitation of the latter is that it allows communication only between pairs of network nodes. This paper presents the new generic algorithm for the universal TDM communication that overcomes this limitation, such that a node can communicate with an arbitrary number of peers (assuming the peers also want to communicate with it). The paper covers: (i) the algorithm's theoretical foundation, (ii) the system design, and (iii) the system validation. The main advantage of the new algorithm is that it supports real-world TDM communications over inter satellite links.
рдкреЗрдкрд░ ID : 2511.08034рд╢реАрд░реНрд╖рдХ : Generic Algorithm for Universal TDM Communication Over Inter Satellite Linksрд▓реЗрдЦрдХ : Miroslav Popovic, Ilija Basicevic, Marko Popovic, Pavle Vasiljevic (рдиреЛрд╡реА рд╕реИрдб рд╡рд┐рд╢реНрд╡рд╡рд┐рджреНрдпрд╛рд▓рдп рдФрд░ RT-RK рд╕рдВрд╕реНрдерд╛рди)рд╡рд░реНрдЧреАрдХрд░рдг : cs.DC (рд╡рд┐рддрд░рд┐рдд рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ)рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреГрд╖реНрдарднреВрдорд┐ : EU Horizon 2020 TaRDIS рдкрд░рд┐рдпреЛрдЬрдирд╛ (101093006)рдкреЗрдкрд░ рд▓рд┐рдВрдХ : https://arxiv.org/abs/2511.08034 рдпрд╣ рдкреЗрдкрд░ Python Testbed for Federated Learning Algorithms (PTB-FLA) рдврд╛рдВрдЪреЗ рдХреЗ рдореВрд▓ TDM рд╕рдВрдЪрд╛рд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рд╕реАрдорд╛рдУрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХреЗрд╡рд▓ рдиреЛрдбреНрд╕ рдХреЗ рдмреАрдЪ рдЬреЛрдбрд╝реАрджрд╛рд░ рд╕рдВрдЪрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдПрдХ рдирдпрд╛ рд╕рд╛рдорд╛рдиреНрдп TDM рд╕рдВрдЪрд╛рд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдиреЛрдбреНрд╕ рдХреЛ рдПрдХ рд╕рд╛рде рдордирдорд╛рдиреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдмрд╢рд░реНрддреЗ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рднреА рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдВ)ред рдкреЗрдкрд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░, рд╕рд┐рд╕реНрдЯрдо рдбрд┐рдЬрд╛рдЗрди рдФрд░ рд╕рд┐рд╕реНрдЯрдо рд╕рддреНрдпрд╛рдкрди рдХреЗ рддреАрди рдкрд╣рд▓реБрдУрдВ рдХреЛ рдХрд╡рд░ рдХрд░рддрд╛ рд╣реИ, рдореБрдЦреНрдп рд▓рд╛рдн рдЙрдкрдЧреНрд░рд╣-рдЕрдВрддрд░ рд▓рд┐рдВрдХ рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ TDM рд╕рдВрдЪрд╛рд░ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ рд╡рд╛рд▓реЗ LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИред
рдореВрд▓ PTB-FLA рдврд╛рдВрдЪрд╛ рддреАрди рд╕рд╛рдорд╛рдиреНрдп рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ: рдХреЗрдВрджреНрд░реАрдХреГрдд рд╕рдВрдШреАрдп рд╢рд┐рдХреНрд╖рд╛, рд╡рд┐рдХреЗрдВрджреНрд░реАрдХреГрдд рд╕рдВрдШреАрдп рд╢рд┐рдХреНрд╖рд╛ рдФрд░ TDM рд╕рдВрдЪрд╛рд░ред рдЗрдирдореЗрдВ рд╕реЗ TDM рд╕рдВрдЪрд╛рд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реАрдорд╛ рд╣реИтАФрдпрд╣ рдХреЗрд╡рд▓ рдиреЛрдбреНрд╕ рдХреЗ рдмреАрдЪ рдЬреЛрдбрд╝реАрджрд╛рд░ рд╕рдВрдЪрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдЧреНрд░рд╣ рд╕рдВрдЪрд╛рд░ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ : LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдореЗрдВ, рдЙрдкрдЧреНрд░рд╣реЛрдВ рдХреЛ рдХрдХреНрд╖реАрдп рдирд┐рд░реНрдзрд╛рд░рдг рдФрд░ рд╕рдордп рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди (ODTS) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдПрдВрдЯреАрдирд╛ рд╕реЗ рд▓реИрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕рд╛рде рдХрдИ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИрдХрд┐рдирд╛рд░реЗ рдкреНрд░рдгрд╛рд▓реА рд╡рд┐рдХрд╛рд╕ : рд╕реНрдорд╛рд░реНрдЯ рдЧреНрд░рд┐рдб, рд╕реНрдорд╛рд░реНрдЯ рд╣реЛрдо рд╕реЗ рд▓реЗрдХрд░ Industrial 4.0 рд░реЛрдмреЛрдЯ рдФрд░ рдЙрдкрдЧреНрд░рд╣ рдиреЗрд╡рд┐рдЧреЗрд╢рди рддрдХ, рд╡рд┐рддрд░рд┐рдд рд╕рдореВрд╣ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓реЗ рд╕рдВрдЪрд╛рд░ рддрдВрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрдХрдо-рдХреЛрдб/рдмрд┐рдирд╛-рдХреЛрдб рдкреНрд░рд╡реГрддреНрддрд┐ : рдЧреИрд░-рдкреЗрд╢реЗрд╡рд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ LLM (рдЬреИрд╕реЗ ChatGPT) рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ API рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрдореВрд▓ get1meas рдлрд╝рдВрдХреНрд╢рди рдХреЗрд╡рд▓ рдПрдХ-рд╕реЗ-рдПрдХ рд╕рдВрдЪрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдПрдХрд▓-рдПрдВрдЯреАрдирд╛ рдЙрдкрдЧреНрд░рд╣реЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд, рд▓реЗрдХрд┐рди рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ рдЙрдкрдЧреНрд░рд╣реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрд░реНрдпрд╛рдкреНрдд рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ рдПрдХ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХреНрд╖рдорддрд╛ рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдореЗрдВ рд╕рдВрдЪрд╛рд░ рджрдХреНрд╖рддрд╛ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддрд╛ рд╣реИ TaRDIS рдкрд░рд┐рдпреЛрдЬрдирд╛ рдврд╛рдВрдЪреЗ рдХреЗ рддрд╣рдд, LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп, рд▓рдЪреАрд▓реЗ рд╕рдВрдЪрд╛рд░ рдЖрджрд┐рдо рдкреНрд░рджрд╛рди рдХрд░рдирд╛, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдЧреНрд░рд╣ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:
рдордирдорд╛рдиреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдПрдВрдЯреАрдирд╛ (рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдЧреНрд░рд╣реЛрдВ рдХреЗ рд▓рд┐рдП рднрд┐рдиреНрди) рдордирдорд╛рдиреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ (тЙд рдПрдВрдЯреАрдирд╛ рд╕рдВрдЦреНрдпрд╛) рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ рд╕реНрдерд╛рдкрдирд╛ : PTB-FLA рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдЙрджрд╛рд╣рд░рдг рд╕реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдореЙрдбрд▓ рдХрд░рдирд╛, рд╕рд╛рдорд╛рдиреНрдп TDM рд╕рдВрдЪрд╛рд░ рдХреЛ рдЙрд╕ рд╕реЗрдЯ рдкрд░ рдмреАрдЬрдЧрдгрд┐рддреАрдп рд╕рдВрдмрдВрдз R рдХреЗ рд░реВрдк рдореЗрдВ рдореЙрдбрд▓ рдХрд░рдирд╛, рдФрд░ рд╕рдВрдмрдВрдз рдХреЗ рдкрд╛рдВрдЪ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЧреБрдгреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдирд╛ (рд╡реНрдпреБрддреНрдХреНрд░рдо рд╕рдВрдмрдВрдз, рдбреЗрдЯрд╛ рдкреНрд░рд╕рд╛рд░, рд╡рд┐рд╢реЗрд╖ рдЧреБрдг, рд╕рдордорд┐рдд рд╕рдорд╛рдкрди, рдЧреНрд░рд╛рдл рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡)рдирдпрд╛ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдбрд┐рдЬрд╛рдЗрди : getMeas рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рдирд╛, рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп TDM рд╕рдВрдЪрд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдиреЛрдбреНрд╕ рдХреЛ рдордирдорд╛рдиреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдореВрд▓ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдкреНрд░рддреНрдпрдХреНрд╖ рд▓реЗрдХрд┐рди рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рд╕реНрддрд╛рд░ рд╣реИрд╕рд┐рд╕реНрдЯрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдФрд░ рд╕рддреНрдпрд╛рдкрди : PTB-FLA рдврд╛рдВрдЪреЗ рдореЗрдВ рдирдпрд╛ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд▓рд╛рдЧреВ рдХрд░рдирд╛, рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛, O(n┬▓) рдХреА рдЕрдкреЗрдХреНрд╖рд┐рдд рд╕рдордп рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рд╕рд╛рдмрд┐рдд рдХрд░рдирд╛рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдореВрд▓реНрдп : рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рдЙрдкрдЧреНрд░рд╣-рдЕрдВрддрд░ рд▓рд┐рдВрдХ рдкрд░ TDM рд╕рдВрдЪрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ рдЙрдкрдЧреНрд░рд╣ рдкрд░рд┐рджреГрд╢реНрдпрдЗрдирдкреБрдЯ :
peer_ids: рд╕рдордХрдХреНрд╖ рдиреЛрдб ID рдХреА рд╕реВрдЪреА (k, k > 0)odata: рдЗрд╕ рдиреЛрдб рдХрд╛ рдХрдХреНрд╖реАрдп рдбреЗрдЯрд╛ (рдпрд╛ None рд╡рд░реНрддрдорд╛рди рд╕рдордп рд╕реНрд▓реЙрдЯ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП)рдЖрдЙрдЯрдкреБрдЯ :
obss: рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрдХреНрд╖реАрдп рдбреЗрдЯрд╛ рдХреА рд╕реВрдЪреА (peer_ids рд╕реНрдерд┐рддрд┐ рдХреЗ рдЕрдиреБрд░реВрдк)рдмрд╛рдзрд╛ рд╢рд░реНрддреЗрдВ :
рд╕рдВрдЪрд╛рд░ рджреНрд╡рд┐рджрд┐рд╢рд╛рддреНрдордХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: aRb рдФрд░ bRa рджреЛрдиреЛрдВ рдПрдХ рд╕рд╛рде рдореМрдЬреВрдж рд╣реЛрдВ рдиреЛрдб рдХреБрдЫ рд╕рдордп рд╕реНрд▓реЙрдЯ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ (odata рдХреЛ None рд╕реЗрдЯ рдХрд░рдХреЗ) рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЛ рднреА рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдорд╛рди рд▓реАрдЬрд┐рдП A = {aтВБ, aтВВ, ..., aтВШ}, m тЙд n рд╡рд░реНрддрдорд╛рди рд╕рдордп рд╕реНрд▓реЙрдЯ TDM рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рд╕реЗрдЯ рд╣реИред рд╕рд╛рдореВрд╣рд┐рдХ TDM рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп A рдкрд░ рд╕рдВрдмрдВрдз R рд╣реИ, рдЕрд░реНрдерд╛рддреН R тКЖ A ├Ч Aред
рд╢рдмреНрджрд╛рд░реНрде : aRb рдХрд╛ рдЕрд░реНрде рд╣реИ a, b рдХреЛ рдбреЗрдЯрд╛ рднреЗрдЬрддрд╛ рд╣реИ рдФрд░ b рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ (рджреЛрд╣рд░реЗ рд╣рд╛рде рдореЙрдбрд▓: рдмрд╛рдПрдВ рд╣рд╛рде рдбреЗрдЯрд╛ рджреЗрддрд╛ рд╣реИ, рджрд╛рд╣рд┐рдирд╛ рд╣рд╛рде рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ)
рдЙрджрд╛рд╣рд░рдг :
RтВБ = {(a, b), (b, a)}: рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЬреЛрдбрд╝реАрджрд╛рд░ рд╡рд┐рдирд┐рдордп RтВВ = {(a, b), (b, a), (b, c), (c, b)}: b рдПрдХ рд╕рд╛рде a рдФрд░ c рдХреЗ рд╕рд╛рде рд╡рд┐рдирд┐рдордп рдХрд░рддрд╛ рд╣реИ (b рдХреЗ рдкрд╛рд╕ рджреЛ рд╣рд╛рде рдХреА рдЬреЛрдбрд╝реА рд╣реИ) RтВГ = {(a, b), (b, a), (a, c), (c, a), (b, c), (c, b)}: рдкреВрд░реНрдг рдХрдиреЗрдХреНрд╢рди рд╡рд┐рдирд┐рдордп рдЧреБрдг 1 (рд╡реНрдпреБрддреНрдХреНрд░рдо рд╕рдВрдмрдВрдз) : RтБ╗┬╣ = R
рдЧреБрдг 2 (рдбреЗрдЯрд╛ рдкреНрд░рд╕рд╛рд░) :
R рд╕рдВрдмрдВрдз рдХреА рд╕рдВрд░рдЪрдирд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╕рд╛рд░ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреА рд╣реИ рдЙрджрд╛рд╣рд░рдг: RтВВтВБтИШRтВВтВВ тИк RтВВтВВтИШRтВВтВБ рдбреЗрдЯрд╛ рдХреЛ a рд╕реЗ b рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ c рддрдХ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рд╕рдВрдмрдВрдз рд╕рдВрд░рдЪрдирд╛ рд╕рд╣рдпреЛрдЧреА рдХрд╛рдиреВрди рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░рддреА рд╣реИ рдЧреБрдг 3 (рд╡рд┐рд╢реЗрд╖ рдЧреБрдг) :
рд╕реНрд╡рддреБрд▓реНрдп рдирд╣реАрдВ (not reflexive) рд╕рдордорд┐рдд (symmetric) рд╕рдХрд░реНрдордХ рдирд╣реАрдВ (not transitive) рдкреНрд░рддрд┐рд╕рдордорд┐рдд рдирд╣реАрдВ (not anti-symmetric) рдЧреБрдг 4 (рд╕рдордорд┐рдд рд╕рдорд╛рдкрди) : R рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХрд╛ рд╕рдордорд┐рдд рд╕рдорд╛рдкрди рд╣реИ
рдЧреБрдг 5 (рдЧреНрд░рд╛рдл рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡) : R рдХреЛ рдЧреНрд░рд╛рдл G(V, E) рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ V = A, {a, b} тИИ E тЯ║ (a, b) тИИ R
def getMeas(peerIds, odata):
# рдпрджрд┐ odata None рд╣реИ, рддреЛ рд╡рд░реНрддрдорд╛рди рд╕рдордп рд╕реНрд▓реЙрдЯ рдХреЛ рдЫреЛрдбрд╝реЗрдВ
if odata == None:
timeSlot += 1
return None
# рдЗрд╕ рдиреЛрдб рдХрд╛ рдбреЗрдЯрд╛ рд╕рднреА рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЛ рднреЗрдЬреЗрдВ
for peerId in peerIds:
sendMsg(peerId, [timeSlot, nodeId, odata])
# рд╕рднреА рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
peerOdatas = []
for peerId in peerIds:
# рдкрд╣рд▓реЗ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдмрдлрд░ рдореЗрдВ рддреЗрдЬ рдиреЛрдбреНрд╕ рд╕реЗ рд╕рдВрджреЗрд╢ рд╣реИ рдпрд╛ рдирд╣реАрдВ
if (timeSlot, peerId) in timeSlotsMap:
msg = timeSlotsMap[(timeSlot, peerId)]
del timeSlotsMap[(timeSlot, peerId)]
else:
# рдирдпрд╛ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
while True:
msg = rcvMsg()
peerTimeSlot, peerNodeId, peerOdata = msg
# рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рд╕рдВрджреЗрд╢ рд╡рд░реНрддрдорд╛рди рд╕рдордп рд╕реНрд▓реЙрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдпрд╛ рдирд╣реАрдВ
if (peerTimeSlot, peerNodeId) != (timeSlot, peerId):
# рднрд╡рд┐рд╖реНрдп рдХреЗ рд╕рдордп рд╕реНрд▓реЙрдЯ рд╕реЗ рд╕рдВрджреЗрд╢, рдмрдлрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдВ
timeSlotsMap[(peerTimeSlot, peerNodeId)] = msg
continue
else:
break
# рд╕рдВрджреЗрд╢ рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВ рдФрд░ рдкрд░рд┐рдгрд╛рдо рд╕реВрдЪреА рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ
peerTimeSlot, peerNodeId, peerOdata = msg
peerOdatas.append(peerOdata)
timeSlot += 1
return peerOdatas
рдореВрд▓ get1meas : рдХреЗрд╡рд▓ рдПрдХ-рд╕реЗ-рдПрдХ рд╕рдВрдЪрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдкреЛрд▓рд┐рдВрдЧ рдЯреВрд░реНрдирд╛рдореЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ рдХреЗ рд╕рдорд╛рдирдирдпрд╛ getMeas : рдПрдХ-рд╕реЗ-рдХрдИ рд╕рдВрдЪрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдиреЛрдб рдХрдИ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВрд╕рдордп рд╕реНрд▓реЙрдЯ рдкреНрд░рдмрдВрдзрди : timeSlot рдФрд░ timeSlotsMap рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдЧрддрд┐ рдЕрдВрддрд░ рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛рд╕рдВрджреЗрд╢ рдмрдлрд░рд┐рдВрдЧ : рддреЗрдЬ рдиреЛрдбреНрд╕ рдХреЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рд╕рдордп рд╕реНрд▓реЙрдЯ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд╡рд░реЛрдз рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдПрд▓рдЪреАрд▓рд╛рдкрди : рдиреЛрдбреНрд╕ рдХреЛ рдЪрдпрдирд╛рддреНрдордХ рднрд╛рдЧреАрджрд╛рд░реА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (None рддрдВрддреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ)рд╕рдордорд┐рддрддрд╛ : рджреНрд╡рд┐рджрд┐рд╢рд╛рддреНрдордХ рд╕рдВрдЪрд╛рд░ рдХреА рд╕реНрдерд┐рд░рддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИрдХрд┐рд╕реА рднреА рдЯреЛрдкреЛрд▓реЙрдЬреА рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (рдЬреЛрдбрд╝реАрджрд╛рд░, рд╕реНрдЯрд╛рд░, рдХреНрд▓рд╕реНрдЯрд░ рдЖрджрд┐) рд╡рд┐рд╖рдо рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрдХреВрд▓ (рд╡рд┐рднрд┐рдиреНрди рдиреЛрдбреНрд╕ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдПрдВрдЯреАрдирд╛ рд╕рдВрдЦреНрдпрд╛) рдЬрдЯрд┐рд▓ рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рддрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг : рдПрдХрд▓ рд╣реЛрд╕реНрдЯ (i7-8550u, 16GB RAM)рдиреЛрдб рд╕реНрдХреЗрд▓ : 20 рд╕реЗ 200 рдиреЛрдбреНрд╕, 20 рдХреА рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рдердкрд░реАрдХреНрд╖рдг рдкрд░рд┐рджреГрд╢реНрдп : рдкреВрд░реНрдг рдЧреНрд░рд╛рдл (clique) рдЯреЛрдкреЛрд▓реЙрдЬреА, рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИрднреМрддрд┐рдХ рдкрддреНрд░рд╛рдЪрд╛рд░ : рд╕рднреА рдЙрдкрдЧреНрд░рд╣реЛрдВ рдХреЗ рдмреАрдЪ рд╕реАрдзреЗ рд▓рд┐рдВрдХ рд╡рд╛рд▓рд╛ рдирдХреНрд╖рддреНрд░рдореБрдЦреНрдп рдореЗрдЯреНрд░рд┐рдХ : рдФрд╕рдд рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп (average execution time)рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЕрдкреЗрдХреНрд╖рд╛ : O(n┬▓) рд╡реГрджреНрдзрд┐ (рдкреВрд░реНрдг рдЧреНрд░рд╛рдл рдХрд┐рдирд╛рд░реЛрдВ рдХреА рд╡реГрджреНрдзрд┐ рдХреЗ рдЕрдиреБрд░реВрдк)get1meas : рдореВрд▓ рдЬреЛрдбрд╝реАрджрд╛рд░ рд╕рдВрдЪрд╛рд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо (рдкреЛрд▓рд┐рдВрдЧ рдЯреВрд░реНрдирд╛рдореЗрдВрдЯ рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ)getMeas : рдирдпрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рд╛рдорд╛рдиреНрдп TDM рд╕рдВрдЪрд╛рд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдордкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╕рдВрдЦреНрдпрд╛ : рдкреНрд░рддреНрдпреЗрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди 50 рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛рдкрд░реАрдХреНрд╖рдг рдЕрдиреБрдкреНрд░рдпреЛрдЧ : рджреЛ рд╢рдмреНрджрд╛рд░реНрде рд░реВрдк рд╕реЗ рд╕рдорддреБрд▓реНрдп рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдкрд░реАрдХреНрд╖рдг рдЕрдиреБрдкреНрд░рдпреЛрдЧ
get1meas рд╕рдВрд╕реНрдХрд░рдг: рдкреЛрд▓рд┐рдВрдЧ рдЯреВрд░реНрдирд╛рдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╢реЗрдбреНрдпреВрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ getMeas рд╕рдВрд╕реНрдХрд░рдг: рдЕрдиреНрдп рд╕рднреА рдиреЛрдб ID рдХреА рд╕реВрдЪреА рдХреЛ рд╢реЗрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣ : рдкреНрд░рддреНрдпреЗрдХ рд░рди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдореВрд▓реНрдпрд╛рдВрдХрди рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИрдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг : рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рдФрд░ рдФрд╕рдд рдорд╛рди рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ
рдореБрдЦреНрдп рдирд┐рд╖реНрдХрд░реНрд╖ :
рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рддреНрдпрд╛рдкрди : рджреЛрдиреЛрдВ рд╡рд┐рдзрд┐рдпрд╛рдВ O(n┬▓) рдХреА рджреНрд╡рд┐рдШрд╛рдд рд╡реГрджреНрдзрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИрдВ, рдЬреЛ рдкреВрд░реНрдг рдЧреНрд░рд╛рдл рдХрд┐рдирд╛рд░реЛрдВ рдХреА рд╡реГрджреНрдзрд┐ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдкреНрд░рджрд░реНрд╢рди рддреБрд▓рдирд╛ : getMeas рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп get1meas рд╕реЗ рдПрдХ рд╕реНрдерд┐рд░ рдХрд╛рд░рдХ рддреЗрдЬ рд╣реИрд╡рд┐рд╕реНрддрд╛рд░рд╢реАрд▓рддрд╛ : 20 рд╕реЗ 200 рдиреЛрдбреНрд╕ рддрдХ, рджреЛрдиреЛрдВ рд╡рд┐рдзрд┐рдпрд╛рдВ рдЕрдиреБрдорд╛рдирд┐рдд рдкреНрд░рджрд░реНрд╢рди рд╡реГрджреНрдзрд┐ рдмрдирд╛рдП рд░рдЦрддреА рд╣реИрдВрд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛ (рдЪрд┐рддреНрд░ 3 рд╕реЗ рдЕрдиреБрдорд╛рдирд┐рдд):
рдКрдкрд░реА рд░реЗрдЦрд╛ (get1meas): рдзреАрдореЗ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдирд┐рдЪрд▓реА рд░реЗрдЦрд╛ (getMeas): рддреЗрдЬ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рджреЛрдиреЛрдВ рд╡рдХреНрд░ рд╕реНрдкрд╖реНрдЯ рджреНрд╡рд┐рдШрд╛рдд рд╡реГрджреНрдзрд┐ рдкреНрд░рд╡реГрддреНрддрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╕рд╣реА : getMeas рдХрдИ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрднрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ, рдЖрдЙрдЯрдкреБрдЯ get1meas рдХреЗ рд╢рдмреНрджрд╛рд░реНрде рд░реВрдк рд╕реЗ рд╕рдорддреБрд▓реНрдп рд╣реИрдкреНрд░рджрд░реНрд╢рди рд▓рд╛рдн : рд╣рд╛рд▓рд╛рдВрдХрд┐ рджреЛрдиреЛрдВ O(n┬▓) рд╣реИрдВ, рд▓реЗрдХрд┐рди getMeas рд╕рдордп рд╕реНрд▓реЙрдЯ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдХреЗ рд╕реНрдерд┐рд░ рдХрд╛рд░рдХ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИget1meas рдХреЛ рдкреЛрд▓рд┐рдВрдЧ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП n-1 рд╕рдордп рд╕реНрд▓реЙрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ getMeas рдПрдХрд▓ рд╕рдордп рд╕реНрд▓реЙрдЯ рдореЗрдВ рд╕рднреА рд╕рдВрдЪрд╛рд░ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИ рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рд╕рддреНрдпрд╛рдкрди : рдкреВрд░реНрдг рдЧреНрд░рд╛рдл рдЯреЛрдкреЛрд▓реЙрдЬреА рдХреЗ рддрд╣рдд рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рдордЬрдмреВрддреА рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛рд╡рд┐рд╕реНрддрд╛рд░рд╢реАрд▓рддрд╛ : рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдиреЛрдб рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рдиреЗ рдкрд░ рдЕрдиреБрдорд╛рдирд┐рдд рдкреНрд░рджрд░реНрд╢рди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИPTB-FLA 2 : рдореВрд▓ Python рд╕рдВрдШреАрдп рд╢рд┐рдХреНрд╖рд╛ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░реАрдХреНрд╖рдг рдордВрдЪ, рд╕рд░рд▓ API рдФрд░ SPMD рдореЛрдб рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИMPT-FLA : MicroPython рд╡реНрдпреБрддреНрдкрдиреНрди рд╕рдВрд╕реНрдХрд░рдг, рдкреВрд░реНрдг рд╡рд┐рддрд░рд┐рдд рд╕реЗрдЯрдЕрдк рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (PC рдФрд░ IoT рдбрд┐рд╡рд╛рдЗрд╕)рдХрдХреНрд╖реАрдп рдпрд╛рдВрддреНрд░рд┐рдХреА 7 : Milankovi─З рдХреА рдЦрдЧреЛрд▓реАрдп рдпрд╛рдВрддреНрд░рд┐рдХреА рд╕рд┐рджреНрдзрд╛рдВрдд рдЖрдзрд╛рд░рдирдХреНрд╖рддреНрд░ рдбрд┐рдЬрд╛рдЗрди 8 : Walker рдФрд░ Street-of-Coverage рдирдХреНрд╖рддреНрд░ рдХреА рд╡реИрд╢реНрд╡рд┐рдХ рдХрд╡рд░реЗрдЬ рдбрд┐рдЬрд╛рдЗрдирдХрдХреНрд╖реАрдп рдЕрдиреБрдорд╛рди 9 : рдХрдХреНрд╖реАрдп рдЕрдиреБрдорд╛рди рдореЗрдВ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдХрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ4-рдЪрд░рдг рд╡рд┐рдХрд╛рд╕ рдкреНрд░рддрд┐рдорд╛рди 3 : рдорд╛рдирд╡ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдиреНрдореБрдЦChatGPT рдЕрдиреБрдХреВрд▓рди рдкреНрд░рддрд┐рдорд╛рди 4 : рдмрдбрд╝реА рднрд╛рд╖рд╛ рдореЙрдбрд▓ рдХреЗ рдЕрдиреБрдХреВрд▓ 2-рдЪрд░рдг рдФрд░ 4-рдЪрд░рдг рдкреНрд░рддрд┐рдорд╛рдирд╕рд╛рдорд╛рдиреНрдпрддрд╛ : рдХрд┐рд╕реА рднреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдПрдВрдЯреАрдирд╛ рдФрд░ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрддрд╛ : рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдкрд░ рд╕реАрдзреЗ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИрд╕рд░рд▓рддрд╛ : рд╕рд░рд▓ API рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдирд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ : рдХрдареЛрд░ рдмреАрдЬрдЧрдгрд┐рддреАрдп рд╕рдВрдмрдВрдз рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИрдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рднрд╛рд╡рд╢реАрд▓рддрд╛ : рдирдпрд╛ getMeas рдлрд╝рдВрдХреНрд╢рди рд╕рд╛рдорд╛рдиреНрдп TDM рд╕рдВрдЪрд╛рд░ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдореВрд▓ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рдЬреЛрдбрд╝реАрджрд╛рд░ рд╕рдВрдЪрд╛рд░ рд╕реАрдорд╛ рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИрд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдкреВрд░реНрдгрддрд╛ : рдмреАрдЬрдЧрдгрд┐рддреАрдп рд╕рдВрдмрдВрдз R рдФрд░ рдЗрд╕рдХреЗ рдкрд╛рдВрдЪ рдЧреБрдгреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рд▓рд┐рдП рдПрдХ рдареЛрд╕ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдореВрд▓реНрдп : рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рдЙрдкрдЧреНрд░рд╣-рдЕрдВрддрд░ рд▓рд┐рдВрдХ рд╕рдВрдЪрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░рдкреНрд░рджрд░реНрд╢рди рд╕рддреНрдпрд╛рдкрди : рдкреНрд░рдпреЛрдЧ рд╕рд╛рдмрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд┐рдд O(n┬▓) рд╕рдордп рдЬрдЯрд┐рд▓рддрд╛ рд╣реИ, рдФрд░ рдореВрд▓ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕реНрдерд┐рд░ рдХрд╛рд░рдХ рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рд╣реИрдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рдПрдХрд▓ : рдХреЗрд╡рд▓ рдПрдХрд▓-рд╣реЛрд╕реНрдЯ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рддрд░рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕рддреНрдпрд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛рдЯреЛрдкреЛрд▓реЙрдЬреА рд╕реАрдорд╛ : рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдкреВрд░реНрдг рдЧреНрд░рд╛рдл рдЯреЛрдкреЛрд▓реЙрдЬреА рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЕрдиреНрдп рдЯреЛрдкреЛрд▓реЙрдЬреА (рдЬреИрд╕реЗ рд╡рд┐рд░рд▓ рдЧреНрд░рд╛рдл, рдЧрддрд┐рд╢реАрд▓ рдЯреЛрдкреЛрд▓реЙрдЬреА) рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛рд╕реНрдХреЗрд▓ рд╕реАрдорд╛ : рдЕрдзрд┐рдХрддрдо рдкрд░реАрдХреНрд╖рдг рд╕реНрдХреЗрд▓ 200 рдиреЛрдбреНрд╕ рд╣реИ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдмрдбрд╝реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВрдзрд╛рд░рдгрд╛ рд╢рд░реНрддреЗрдВ : рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ, рдПрдХрддрд░рдлрд╛ рд╕рдВрдЪрд╛рд░ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рдирд╣реАрдВ рд╣реИрд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рд╕рдорд╕реНрдпрд╛ : рд╕рдордп рд╕реНрд▓реЙрдЯ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рддрдВрддреНрд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдиреЛрдб рдШрдбрд╝реА рд╕рдЯреАрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдирд┐рд╣рд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрдкреЗрдкрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ:
рд╡рд┐рд╡рд┐рдз рдЯреЛрдкреЛрд▓реЙрдЬреА рдкрд░реАрдХреНрд╖рдг : рд╡рд┐рднрд┐рдиреНрди рдиреЗрдЯрд╡рд░реНрдХ рдЯреЛрдкреЛрд▓реЙрдЬреА рдХреЗ рддрд╣рдд PTB-FLA рдкреНрд░рдпреЛрдЧ рдореВрд▓реНрдпрд╛рдВрдХрдирдЬрдЯрд┐рд▓ рдЧрддрд┐рд╢реАрд▓ рдкреНрд░рдгрд╛рд▓реА : рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдФрд░ рдЧрддрд┐рд╢реАрд▓ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░реАрдХреНрд╖рдгрд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд╛рддрд╛рд╡рд░рдг рддреИрдирд╛рддреА : рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдирд╛рд░реЗ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ рд╕рддреНрдпрд╛рдкрдирд╕рдВрднрд╛рд╡рд┐рдд рд╡рд┐рд╕реНрддрд╛рд░ рджрд┐рд╢рд╛рдПрдВ:
рд╕рд╣рдирд╢реАрд▓рддрд╛ рддрдВрддреНрд░: рдиреЛрдб рд╡рд┐рдлрд▓рддрд╛ рдФрд░ рд╕рдВрдЪрд╛рд░ рд╡рд┐рдлрд▓рддрд╛ рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛ рдЕрдиреБрдХреВрд▓реА рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ: рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдерд┐рддрд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдВрдЪрд╛рд░ рд░рдгрдиреАрддрд┐ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рдКрд░реНрдЬрд╛ рдЦрдкрдд рдЕрдиреБрдХреВрд▓рди: рдЙрдкрдЧреНрд░рд╣ рд╕реАрдорд┐рдд рдКрд░реНрдЬрд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рд╕реБрд░рдХреНрд╖рд╛ рд╡реГрджреНрдзрд┐: рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдФрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рддрдВрддреНрд░ рд╕рд┐рджреНрдзрд╛рдВрдд рдФрд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╕рдВрдпреЛрдЬрди : рдХрдареЛрд░ рдмреАрдЬрдЧрдгрд┐рддреАрдп рд╕рдВрдмрдВрдз рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИрд╕рд╛рдорд╛рдиреНрдп рдбрд┐рдЬрд╛рдЗрди : рд╡рд┐рд╢реЗрд╖ рд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рддрдХ рдХрд╛ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╡рд┐рд╕реНрддрд╛рд░, рдХрд┐рд╕реА рднреА рд╕рдВрдЪрд╛рд░ рдкреИрдЯрд░реНрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИрджреЛрд╣рд░реЗ рд╣рд╛рде рдореЙрдбрд▓ рд░реВрдкрдХ : рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рд╢рдмреНрджрд╛рд░реНрде рдХреЛ рд╕рд╣рдЬ рд░реВрдк рд╕реЗ рд╕рдордЭрд╛рддрд╛ рд╣реИрддреБрд▓рдирд╛рддреНрдордХ рдкреНрд░рдпреЛрдЧ : рдореВрд▓ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рд╕рд╛рде рд╡реНрдпрд╡рд╕реНрдерд┐рдд рддреБрд▓рдирд╛рд╕реНрдХреЗрд▓ рдкрд░реАрдХреНрд╖рдг : 20-200 рдиреЛрдбреНрд╕ рдХреЛ рдХрд╡рд░ рдХрд░рддрд╛ рд╣реИ, 50 рдмрд╛рд░ рджреЛрд╣рд░рд╛рд╡ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИрд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рд╡рд┐рд╢реНрд▓реЗрд╖рдг : рдкреВрд░реНрдг рдЧреНрд░рд╛рдл рдЯреЛрдкреЛрд▓реЙрдЬреА рдЪреБрдирдХрд░ рдЪрд░рдо рдкреНрд░рджрд░реНрд╢рди рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИрд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЕрдкреЗрдХреНрд╖рд╛ рд╕рдВрдЧрддрд┐ : O(n┬▓) рд╡реГрджреНрдзрд┐ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рд╕реНрдкрд╖реНрдЯ : рд╕реНрдерд┐рд░ рдХрд╛рд░рдХ рд╕реБрдзрд╛рд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдореВрд▓реНрдп рд╣реИрд╢рдмреНрджрд╛рд░реНрде рд╕рдорддреБрд▓реНрдпрддрд╛ рд╕рддреНрдпрд╛рдкрди : рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╕рд╣реА рд╣реЛрдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИрд╕рдВрд░рдЪрдирд╛ рд╕реНрдкрд╖реНрдЯ : рд╕рд┐рджреНрдзрд╛рдВрдд-рдбрд┐рдЬрд╛рдЗрди-рд╕рддреНрдпрд╛рдкрди рддреАрди рднрд╛рдЧ рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ рд╕реБрд╕рдВрдЧрддрдЫрджреНрдордХреЛрдб рд╡рд┐рд╕реНрддреГрдд : Algorithm 1 рдкреВрд░реНрдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИрдЪрд┐рддреНрд░ рд╕рд╣рд╛рдпрдХ : рд╕рдВрдмрдВрдз рдЧреНрд░рд╛рдл рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдЧреНрд░рд╛рдл рд╕рдордЭ рдХреЛ рдмрдврд╝рд╛рддреЗ рд╣реИрдВрдУрдкрди рд╕реЛрд░реНрд╕ рдЙрдкрд▓рдмреНрдз : рдХреЛрдб GitHub рдкрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╣реИрдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдорд░реНрдерди : EU Horizon 2020 рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреГрд╖реНрдарднреВрдорд┐рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ : LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд▓рдХреНрд╖рд┐рддрд╕рдордп рд╕реНрд▓реЙрдЯ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рдирд┐рд░реНрднрд░рддрд╛ : рдШрдбрд╝реА рдмрд╣рд╛рд╡ рдФрд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рддреНрд░реБрдЯрд┐ рдкреНрд░рднрд╛рд╡ рдкрд░ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рдХреА рдЧрдИрдмрдлрд░ рдкреНрд░рдмрдВрдзрди : timeSlotsMap рдЕрдирдВрдд рддрдХ рдмрдврд╝ рд╕рдХрддрд╛ рд╣реИ, рдореЗрдореЛрд░реА рдкреНрд░рдмрдВрдзрди рд░рдгрдиреАрддрд┐ рдХреА рдХрдореАрдПрдХрддрд░рдлрд╛ рд╕рдВрдЪрд╛рд░ : рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рди рджреЗрдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рдирд╣реАрдВ рд╣реИрд╡рд╛рддрд╛рд╡рд░рдг рдПрдХрд▓ : рдХреЗрд╡рд▓ рдПрдХрд▓-рд╣реЛрд╕реНрдЯ рдкрд░реАрдХреНрд╖рдг, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ рд╡рд┐рд▓рдВрдмрддрд╛ рдФрд░ рдкреИрдХреЗрдЯ рд╣рд╛рдирд┐ рд╕рддреНрдпрд╛рдкрд┐рдд рдирд╣реАрдВрдЯреЛрдкреЛрд▓реЙрдЬреА рдПрдХрд▓ : рдХреЗрд╡рд▓ рдкреВрд░реНрдг рдЧреНрд░рд╛рдл рдкрд░реАрдХреНрд╖рдг, рд╡рд┐рд░рд▓ рдЧреНрд░рд╛рдл, рдЧрддрд┐рд╢реАрд▓ рдЯреЛрдкреЛрд▓реЙрдЬреА рдкрд░реАрдХреНрд╖рдг рдХреА рдХрдореАрднрд╛рд░ рдПрдХрд▓ : рд╡рд┐рднрд┐рдиреНрди рдбреЗрдЯрд╛ рдЖрдХрд╛рд░ рдФрд░ рд╕рдВрдЪрд╛рд░ рдЖрд╡реГрддреНрддрд┐ рдХреЗ рдкреНрд░рднрд╛рд╡ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдП рдЧрдПрддреБрд▓рдирд╛ рдХреА рдХрдореА : рдЕрдиреНрдп рд╡рд┐рддрд░рд┐рдд рд╕рдВрдЪрд╛рд░ рдврд╛рдВрдЪреЗ рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдирд╣реАрдВ рдХреА рдЧрдИрд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рддрд╣реА : рд╕рдВрдмрдВрдз рдЧреБрдгреЛрдВ рдХреЗ рдкреНрд░рдорд╛рдг рдЫреЛрдбрд╝реЗ рдЧрдП ("рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рд╛рдмрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ")рдЬрдЯрд┐рд▓рддрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЕрдзреВрд░рд╛ : рдХреЗрд╡рд▓ рд╕рдордп рд╡рд┐рд╢реНрд▓реЗрд╖рдг, рд╕реНрдерд╛рди рдЬрдЯрд┐рд▓рддрд╛ рдФрд░ рд╕рдВрдЪрд╛рд░ рдЬрдЯрд┐рд▓рддрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдирд╣реАрдВрддреНрд░реБрдЯрд┐ рдкреНрд░рдмрдВрдзрди рдХреА рдХрдореА : рдиреЗрдЯрд╡рд░реНрдХ рд╡рд┐рдлрд▓рддрд╛, рд╕рдВрджреЗрд╢ рд╣рд╛рдирд┐ рдкреНрд░рдмрдВрдзрди рдкрд░ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВрд╕реБрд░рдХреНрд╖рд╛ рдЕрдЫреВрддрд╛ : рдЙрдкрдЧреНрд░рд╣ рд╕рдВрдЪрд╛рд░ рд╕реБрд░рдХреНрд╖рд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛рд╡рд┐рд╢рд┐рд╖реНрдЯ рдорд╛рди рдЕрдиреБрдкрд╕реНрдерд┐рдд : рдЪрд┐рддреНрд░ 3 рдореЗрдВ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдирд╣реАрдВ рджрд┐рдП рдЧрдПрд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЕрдкрд░реНрдпрд╛рдкреНрдд : рдорд╛рдирдХ рд╡рд┐рдЪрд▓рди, рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕ рдЕрдВрддрд░рд╛рд▓ рд░рд┐рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд┐рдП рдЧрдПрд╕рдВрд╕рд╛рдзрди рдЦрдкрдд рдЕрдиреБрдкрд╕реНрдерд┐рдд : CPU, рдореЗрдореЛрд░реА, рдмреИрдВрдбрд╡рд┐рдбреНрде рдЙрдкрдпреЛрдЧ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдП рдЧрдПрдЕрдВрддрд░рд╛рд▓ рднрд░рдирд╛ : рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ рдЙрдкрдЧреНрд░рд╣ рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИрд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдпреЛрдЧрджрд╛рди : рдмреАрдЬрдЧрдгрд┐рддреАрдп рд╕рдВрдмрдВрдз рдореЙрдбрд▓рд┐рдВрдЧ рд╕рдВрдмрдВрдзрд┐рдд рдЕрдиреБрд╕рдВрдзрд╛рди рдХреЗ рд▓рд┐рдП рдирдпрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИрдУрдкрди рд╕реЛрд░реНрд╕ рдпреЛрдЧрджрд╛рди : рд╕рдВрдШреАрдп рд╢рд┐рдХреНрд╖рд╛ рдФрд░ рдХрд┐рдирд╛рд░реЗ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдЙрдкрдХрд░рдг рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рдХреЛ рд╕рдореГрджреНрдз рдХрд░рддрд╛ рд╣реИрдкреНрд░рддреНрдпрдХреНрд╖ рдЕрдиреБрдкреНрд░рдпреЛрдЧ : LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИрд╡рд┐рд╕реНрддрд╛рд░рд╢реАрд▓рддрд╛ рдЕрдЪреНрдЫреА : рд╕реНрдорд╛рд░реНрдЯ рдЧреНрд░рд┐рдб, Industrial 4.0 рдЖрджрд┐ рдХрдИ рдХреНрд╖реЗрддреНрд░реЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИрдЕрдкрдирд╛рдирд╛ рдЖрд╕рд╛рди : рд╕рд░рд▓ API рдЙрдкрдпреЛрдЧ рдХреА рджрд╣рд▓реАрдЬ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИрдХреЛрдб рдУрдкрди рд╕реЛрд░реНрд╕ : GitHub рдкрд░ рдкреВрд░реНрдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╣реИрджрд╕реНрддрд╛рд╡реЗрдЬ рд╡рд┐рд╕реНрддреГрдд : рдЫрджреНрдордХреЛрдб рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рд╡рд┐рд╡рд░рдг рд╕реНрдкрд╖реНрдЯ рд╣реИрдврд╛рдВрдЪрд╛ рдкрд░рд┐рдкрдХреНрд╡ : рдореМрдЬреВрджрд╛ PTB-FLA рдврд╛рдВрдЪреЗ рдкрд░ рдЖрдзрд╛рд░рд┐рдд, рдкреБрдирд░реБрддреНрдкрд╛рджрди рдЖрд╕рд╛рди рд╣реИрд╕реНрдХреЗрд▓ рд╕реАрдорд╛ : O(n┬▓) рдЬрдЯрд┐рд▓рддрд╛ рдЕрддрд┐-рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддреА рд╣реИрд╡рд╛рддрд╛рд╡рд░рдг рдирд┐рд░реНрднрд░рддрд╛ : рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕рдордп рд╕реНрд▓реЙрдЯ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рддрдВрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрд╕рдореБрджрд╛рдп рдЖрдХрд╛рд░ : рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреНрд╖реЗрддреНрд░LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ : рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ рдЙрдкрдЧреНрд░рд╣реЛрдВ рдХреЛ рдХрдИ рд╕рдордХрдХреНрд╖ рдиреЛрдбреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрдХрд┐рдирд╛рд░реЗ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдиреЗрдЯрд╡рд░реНрдХ : рдордзреНрдпрдо рдиреЛрдб рд╕рдВрдЦреНрдпрд╛ (<200), рд▓рдЪреАрд▓реЗ рд╕рдВрдЪрд╛рд░ рдкреИрдЯрд░реНрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрд╕рдВрдШреАрдп рд╢рд┐рдХреНрд╖рд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ : рд╡рд┐рдХреЗрдВрджреНрд░реАрдХреГрдд рд╢рд┐рдХреНрд╖рд╛ рд╕рдордХрдХреНрд╖ рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрд╕рдордп рд╕реНрд▓реЙрдЯ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рдкреНрд░рдгрд╛рд▓реА : рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕рдордп рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рддрдВрддреНрд░ рд╡рд╛рд▓реА рдкреНрд░рдгрд╛рд▓реАрдЕрддрд┐-рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдиреЗрдЯрд╡рд░реНрдХ : рдиреЛрдбреНрд╕ >1000, O(n┬▓) рдЬрдЯрд┐рд▓рддрд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИрдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдкреНрд░рдгрд╛рд▓реА : рд╕рдордп рд╕реНрд▓реЙрдЯ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬреЗрд╢рди рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдвреАрд▓реЗ рдпреБрдЧреНрдорд┐рдд рдкреНрд░рдгрд╛рд▓реАрдЙрдЪреНрдЪ рдЧрддрд┐рд╢реАрд▓ рдиреЗрдЯрд╡рд░реНрдХ : рдЯреЛрдкреЛрд▓реЙрдЬреА рддреЗрдЬреА рд╕реЗ рдмрджрд▓рддрд╛ рд╣реИ, рдиреЛрдбреНрд╕ рдмрд╛рд░-рдмрд╛рд░ рдЬреБрдбрд╝рддреЗ/рдЫреЛрдбрд╝рддреЗ рд╣реИрдВрдХрдо рд╡рд┐рд▓рдВрдмрддрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ : рдорд┐рд▓реАрд╕реЗрдХрдВрдб-рд╕реНрддрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдкреНрд░рдгрд╛рд▓реАрдЙрдЪреНрдЪ рд╕рд╣рдирд╢реАрд▓рддрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ : рдкреБрдирдГ рдкреНрд░рд╕рд╛рд░рдг рдФрд░ рдкреБрд╖реНрдЯрд┐ рддрдВрддреНрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрд╕реБрд░рдХреНрд╖рд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ : рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдФрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИрдКрд░реНрдЬрд╛ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ : рд╕рдВрдЪрд╛рд░ рд░рдгрдиреАрддрд┐ рдЕрдиреБрдХреВрд▓рди рдХрд░рдХреЗ рдКрд░реНрдЬрд╛ рдЦрдкрдд рдХрдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИTaRDIS рдкрд░рд┐рдпреЛрдЬрдирд╛ 1 : Trustworthy And Resilient Decentralised Intelligence For Edge Systems, EU Horizon 2020 рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддреНрддрдкреЛрд╖рд┐рддPTB-FLA рдореВрд▓ рдкреЗрдкрд░ 2 : Popovic et al., "A Simple Python Testbed for Federated Learning Algorithms," ZINC 2023рд╡рд┐рдХрд╛рд╕ рдкреНрд░рддрд┐рдорд╛рди 3 : Popovic et al., "A Federated Learning Algorithms Development Paradigm," LNCS 14390, 2024рдЕрд╕рддрдд рдЧрдгрд┐рдд рдЖрдзрд╛рд░ 10 : J.A. Anderson, "Discrete Mathematics with Combinatorics," 2004 - рд╕рдВрдмрдВрдз рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЧрдгрд┐рддреАрдп рдЖрдзрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИрдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░ рдбрд┐рдЬрд╛рдЗрди 8 : Huang et al., "Multi-criteria design of continuous global coverage Walker and Street-of-Coverage constellations," Acta Astronautica, 2021рдпрд╣ рдкреЗрдкрд░ рдПрдХ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░-рдЙрдиреНрдореБрдЦ рдкреНрд░рдгрд╛рд▓реА рдкреЗрдкрд░ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдЧреНрд░рд╣ рд╕рдВрдЪрд╛рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдореБрдЦреНрдп рд▓рд╛рдн рдареЛрд╕ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ (рдмреАрдЬрдЧрдгрд┐рддреАрдп рд╕рдВрдмрдВрдз рдореЙрдбрд▓рд┐рдВрдЧ), рд╕рд░рд▓ рд╕рд╛рдорд╛рдиреНрдп рдбрд┐рдЬрд╛рдЗрди (рдХрд┐рд╕реА рднреА рд╕рдВрдЪрд╛рд░ рдкреИрдЯрд░реНрди рдХрд╛ рд╕рдорд░реНрдерди), рдУрдкрди рд╕реЛрд░реНрд╕ рдЙрдкрд▓рдмреНрдзрддрд╛ (GitHub рдкрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ) рдореЗрдВ рд╣реИрдВред рдкреНрд░рдпреЛрдЧ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рд╕рд╣реА рдФрд░ рдкреНрд░рджрд░реНрд╢рди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, O(n┬▓) рдХреА рдЕрдкреЗрдХреНрд╖рд┐рдд рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рд╕рд╛рдмрд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреЗрдкрд░ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рдХрдорд┐рдпрд╛рдВ рд╣реИрдВ: рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╡рд╛рддрд╛рд╡рд░рдг рдПрдХрд▓ (рдХреЗрд╡рд▓ рдПрдХрд▓-рд╣реЛрд╕реНрдЯ рдкрд░реАрдХреНрд╖рдг), рдЯреЛрдкреЛрд▓реЙрдЬреА рдкрд░реАрдХреНрд╖рдг рдЕрдкрд░реНрдпрд╛рдкреНрдд (рдХреЗрд╡рд▓ рдкреВрд░реНрдг рдЧреНрд░рд╛рдл), рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддреИрдирд╛рддреА рд╕рддреНрдпрд╛рдкрди рдХреА рдХрдореА ред рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рддрд╣реА рд╣реИ, рдХрдИ рдкреНрд░рдорд╛рдг рдЫреЛрдбрд╝реЗ рдЧрдП рд╣реИрдВ, рддреНрд░реБрдЯрд┐ рдкреНрд░рдмрдВрдзрди рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдкрд╣рд▓реБрдУрдВ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдпрд╣ рдПрдХ рдареЛрд╕ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдкреЗрдкрд░ рд╣реИ, рдЬреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкрд░рд┐рджреГрд╢реНрдп (рдмрд╣реБ-рдПрдВрдЯреАрдирд╛ LEO рдЙрдкрдЧреНрд░рд╣ рдирдХреНрд╖рддреНрд░) рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдпрд╡рд╛рди рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЧрд╣рд░рд╛рдИ рдФрд░ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╡реНрдпрд╛рдкрдХрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреА рдЧреБрдВрдЬрд╛рдЗрд╢ рд╣реИред рдЗрд╕рдХреА рдУрдкрди рд╕реЛрд░реНрд╕ рд╡рд┐рд╢реЗрд╖рддрд╛ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдорд░реНрдерди рдЗрд╕реЗ рдЕрдЪреНрдЫреА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рджреЗрддреЗ рд╣реИрдВ, рд╕рдВрдмрдВрдзрд┐рдд рдХреНрд╖реЗрддреНрд░ рдЕрдиреБрд╕рдВрдзрд╛рди рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рд╣реИред
рдЕрдиреБрд╢рдВрд╕рд╛ рд╕реВрдЪрдХрд╛рдВрдХ : 3.5/5
рдЙрдкрдЧреНрд░рд╣ рд╕рдВрдЪрд╛рд░, рдХрд┐рдирд╛рд░реЗ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ, рд╕рдВрдШреАрдп рд╢рд┐рдХреНрд╖рд╛ рд╢реЛрдзрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╡рд┐рддрд░рд┐рдд рд╕рдВрдЪрд╛рд░ рдЖрджрд┐рдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реЗ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдирд╡рд╛рдЪрд╛рд░ рдпрд╛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдХреА рдкреНрд░рдгрд╛рд▓реА рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╢реЛрдзрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдкрдпреБрдХреНрдд