Memuat
Memuat
Want to go deeper?
Join one of our courses or ask us directly on WhatsApp.
Picked from the software, topic, and level of “Class 5G Resource Allocation Deep RL #3: Comparison Methods: Round Robin, Proportional Fair, Water-Filling”.
Other ways we can help with Python.
Learn with a mentor
Scheduled AI & Machine Learning courses with live guidance and a certificate.

Multi-Objective Optimization Course: NSGA-II, MOPSO & Hybrid Algorithms (Python)

ECG Arrhythmia Classification Course with Wavelet & Deep Learning (PyTorch)

ANFIS + PSO/GA Course for Non-Linear Time Series Forecasting (Python)
Have it built for you
No time to learn Python? Our team can do the project for you.

Python Machine Learning — Prediction Models, Customer Segmentation, Fraud Detection & AI Apps

AI Image Creation with Stable Diffusion — Unlimited Custom Visual Production
★ 4.9

AI Image & Video Creation with Leonardo AI — All-in-One Visuals for Business
★ 4.9
Get notified about new Python classes
At most one email a week. Unfollow anytime with one click.
The full narration of this video. The current sentence is highlighted while the video plays; click any sentence to jump there.
Here is the final result, four classic schedulers are compared in our simulator. Max C per AI is the fastest but one user gets nothing. Round robin is fair but slow, and proportional fair finds a middle ground. Let's get started. Hello, welcome to episode three of the 5G resource allocation series with Deep Reinforcement Learning. Before training the agent, we need a strong benchmark. Today we are writing the scheduler used in real cellular networks and measuring its performance with metrics used in scientific papers.
Create a file named scheduler.py All schedulers have the same structure, receiving a network, number of slots, and average rate per user, then returning RBI allocation and power. Round robin distributes RBI in a round-robin fashion without looking at the channel. Max C per AI gives each RBI to the user with the best SINR. Proporsional Fair selects the user with the highest ratio of instantaneous rate to average rate, so weak users still get a turn when the channel is good.
The waterfilling function divides power among RBIs like pouring water into a wavy container. RBIs with good channels get more power, with the water level MU found through bisection. We add a saturation limit of 256 KIA M, because power above this limit does not increase throughput. The PF plus waterfilling scheduler uses proportional fair allocation then divides the total 10 Watt power with waterfilling.
The JIN function calculates the JIN fairness index. One means all users get the same, one per KA means one user monopolizes. The simulate function runs the scheduler for 2000 slots Updating exponential average rate, then calculating throughput, fairness, weakest user, and energy efficiency in megabits per joule.
Create a test file underscore_scheduler.py and run it. Round robin only provides 9.67 Mbps with JIN 0.702. Max C per I is the fastest, 24.31 Mbps, but JIN is only 0.155 and the weakest user gets nothing. Proportional fair achieves 17.07 Mbps with the highest JIN, 0.805, and the weakest user 0.63 Mbps. Waterfilling adds a little more throughput to 17.19. Let's look at the graphs.
In terms of throughput per user, Max C per I gives almost everything to the closest user 2. The middle graph shows the classic compromise, the more throughput, the less fairness, and proportional fair is at the best point. The right graph shows all schedulers radiating full power, so energy efficiency only follows throughput. This is where the QN agent can eventually excel.
Done. We have already written round robin, Max C per I, Proportional fair, and waterfilling, as well as measuring throughput, fairness JIN Weakest user, and energy efficiency. In the next episode, we formulate resource allocation as a Markov Decision Process. Currently working on a thesis, dissertation, or research in the field of telecommunications and artificial intelligence? Cerdas Inovasi Digital helps implement network research, from 5G simulators, channel models and SINR, proportional fair and waterfilling scheduling, up to pre-inforcement learning with PyTorch, as well as offering Python programming courses for electrical engineering and telecommunications. Want to master the entire series? From resource block concepts to evaluating the energy efficiency of the QN agent? All 6 episodes, complete with step-by-step PDF guides and source code, are available to premium tutorial subscribers. Subscribe starting at Rp69.000 per month, save 28% with the 12-month package, or pay once Rp999.000 for lifetime access. Thank you for watching, see you in the next episode.
Type a question or keyword; we find the part of this episode that explains it and jump the video there.
Notes are saved with the current video time and are only visible to you.
Stuck on a step? Ask here; the instructor and other learners can answer.
No questions yet.

Cerdas Inovasi Digital Team
Software developers, BIM & 3D engineers, and AI practitioners
We build software, BIM models, games and AI automations for clients every day, and turn that hands-on work into step-by-step classes: every step is shown on screen and comes with a PDF guide you can keep.
See our clients →