Bu çalışma, ağ kodlamasını yumuşak aktör-eleştirel pekiştirme öğrenmesiyle birleştirerek çekirdek IoT ağlarında enerji verimli yönlendirme sağlanıyor ve %97 paket teslimat oranıyla enerji tüketiminde %40 azalma göstermektedir.
Araştırma makalesi
Bu çalışma, ağ kodlamasını yumuşak aktör-eleştirel pekiştirme öğrenmesiyle birleştirerek çekirdek IoT ağlarında enerji verimli yönlendirme sağlanıyor ve %97 paket teslimat oranıyla enerji tüketiminde %40 azalma göstermektedir.
Nesnelerin interneti (IoT) ağlarının hızlı yayılması, veri yönlendirmesinin düğüm enerjisine yüksek talepler gerektirdiği ana IoT ağlarında enerji verimliliği sorunlarını artırmıştır. Bu makale, bu zorlukları ele almak için ağ kodlamasını (NC) soft aktör-eleştirmen (SAC) pekiştirme öğrenme ile entegre eden hibrit bir model önermektedir. NC, paketleri birleştirerek gereksiz iletimi en aza indirirken, SAC ajanları düğüm durumu, bağlantı kalitesi ve kalıntı enerjiye göre enerji farkında yönlendirme yollarını dinamik olarak seçer.
Sistem, değişen trafik koşullarında 5 × 5 IoT düğümlerinin (512 baytlık paketler, 100 saniyelik çalışma zamanı) ızgara topolojisine sahip NS-3 simülatörü kullanılarak uygulandı. Sonuçlar, NC + SAC'nin geleneksel yönlendirme ve bağımsız yaklaşımlara kıyasla enerji tüketiminde %40 azalma, %97 paket teslimat oranı, %50 veri verimliliğinde artış ve ağ ömrünü uzattığını göstermektedir.
Önemli katkılar arasında yenilikçi NC-SAC entegrasyonu, birden fazla metrikte kapsamlı NS-3 doğrulaması ve sürdürülebilir IoT altyapıları için öğrenme odaklı kodlu iletişimin gösterimi yer almaktadır. Hibrit yaklaşım, güvenilirlik, enerji koruma ve performansı dengeleyerek yeni nesil yeşil IoT ağları için ölçeklenebilir bir çerçeve sunar.
Nesnelerin interneti (IoT), 21. yüzyılın en dönüştürücü teknolojilerinden biri olarak ortaya çıktı; milyarlarca cihazı sorunsuz bir şekilde birbirine bağlayarak daha akıllı evleri, şehirleri, sektörleri ve sağlık sistemlerinimümkün kılmıştır 1. Ancak bu eşi benzeri görülmemiş büyümeyle birlikte, acil bir zorluk da geliyor: enerji tüketimi meselesi. IoT cihazları, özellikle çekirdek ağda konuşlandırılanlar, genellikle pil ile çalışan veya kaynak kısıtlı olur. Cihaz ve veri trafiğinin yoğunluğu arttıkça, enerji verimliliği IoT altyapılarının uzun vadeli sürdürülebilirliğini sağlamak için kritik bir faktör haline gelir. Bu bağlamda, performansı enerji koruma ile dengeleyen akıllı iletişim ve yönlendirme stratejileri tasarlamak son derece önemlidir.
IoT ağlarındaki geleneksel yönlendirme yöntemleri genellikle en kısa yol veya güvenilirlik odaklı yaklaşımlara odaklanır. Temel senaryolarda etkili olmalarına rağmen, bu yöntemler özellikle dinamik veya büyük ölçekli dağıtımlarda sıklıkla yedek iletimlere ve hızlı enerji tükenmesine yol açar 2,3. Bu eksiklikleri gidermek için araştırmacılar, birden fazla paketi tek bir kodlanmış pakette birleştirerek iletim sayısını azaltan ağ kodlama (NC) gibi teknikleri keşfetmiştir. NC, verimliliği artırdığını, gecikmeyi azalttığını ve bant genişliği kullanımını optimize ettiğini kanıtladı. Ancak, ağ kodlaması iletişim yükünü azaltmada güçlü olsa da, düğüm enerji seviyelerini doğal olarak hesaba katmaz veya dalgalanan ağ koşullarınauyum sağlamaz 4,5.
İşte makine öğrenimi odaklı karar verme hayati bir rol oynar. Pekiştirme öğrenme (RL), IoT düğümlerinin ortamla etkileşime girip ödüllerden öğrenerek uyarlanabilir kararlar almasını sağlayan özellikle sağlam bir çerçeve sunar. Gerçek Yaşam Alanları algoritmaları arasında, yumuşak aktör-eleştirmen (SAC), entropi düzenlemesi yoluyla keşfi ve sömürüşü dengeleme yeteneği sayesinde öneçıkmıştır 6. Geleneksel RL modellerinin aksine, SAC çeşitli eylem seçimini teşvik eder ve sistemin çok hızlı bir şekilde optimal olmayan stratejilere yaklaşmasını engeller. Enerji kısıtlı IoT ağları için bu, sadece bağlantı kalitesi ve teslimat başarısına değil, aynı zamanda her düğümdeki kalan enerji seviyelerine de uyum sağlayan daha akıllı yönlendirme seçenekleri anlamına gelir.
Son çalışmalar, IoT iletişimi ve enerji yönetiminde pekiştirici öğrenmenin rolüne giderek daha fazla odaklanmaktadır. Örneğin, Dev ve ark.7, enerji verimli IoT iletişimi için Harris Hawks Optimizasyonu'nu kullanırken, Tuong ve ark.8 kablosuz IoT sistemlerinde hiyerarşik dupleks için derin pekiştirme öğrenmesini araştırdı. Daha yakın dönemdekiçalışmalar 8,9, proksimal politika optimizasyonu ve dağıtık çoklu ajan çerçeveleri gibi gelişmiş pekiştirme öğrenme yöntemlerinin, büyük ölçekli IoT ortamlarında uyum sağlama yeteneğini daha da artırabileceğini vurguluyor.
Bu araştırma, ağ kodlamasını (NC) soft aktör-eleştirmen (SAC) algoritması ile birleştirerek çekirdek IoT ağlarında enerji duyarlı akıllı yönlendirme sağlayan yenilikçi bir hibrit iletişim modeli sunmaktadır. NC veya pekiştirme öğrenmesini bağımsız olarak kullanan veya ayrık etki derin RL modelleri kullanan önceki yaklaşımların aksine, bu çalışma SAC'nin entropi düzenli sürekli eylem formülasyonunu kullanarak enerji seviyeleri, bağlantı kararlılığı ve paket tampon durumu dahil olmak üzere ağ durumuna dayalı olarak yönlendirme kararlarını dinamik olarak optimize etmektedir. NC entegrasyonu, yeniden iletimlerin azalmasını ve bant genişliği kullanımının artmasını sağlarken, SAC, ağ yükünü dengelemek ve düğüm enerjisini korumak için uyarlanabilir yol seçimini sağlar. Bu çift mekanizma, mevcut yöntemlere göre enerji verimliliği, veri kapasitesi, paket teslimat oranı ve ağ ömründe ölçülebilir kazançlar elde ederek öğrenme odaklı kodlu iletişimin yeni bir paradigmasını tanıtıyor.
Önerilen çerçeveyi NS-3 simülasyon ortamı kullanarak uyguladık ve test ettik; değişen trafik yükleri altında 5×5 boyutlu bir IoT düğümü ağı dağıttık. Paket boyutu, mesafesi ve iletim enerjisi modelleri, gerçekçi IoT koşullarını yansıtacak şekilde dikkatlice tanımlanmıştır. Bu simülasyonlar aracılığıyla paket teslimat oranı (PDR), veri kapasitesi, ağ ömrü ve enerji verimliliği gibi temel metrikleri değerlendirdik. Sonuçlar şöyledir: geleneksel yönlendirme ve bağımsız modellere kıyasla NC + SAC hibrit sistemi enerji tüketimini neredeyse %40 azalttı, veri verimini %50 artırdı ve ağ ömrünü önemli ölçüde uzattı; tüm bunlar paket teslimat oranını yaklaşık %97 olarak korurken.
Sayısal iyileştirmelerin ötesinde, bu çalışmanın gerçek gücü ölçeklenebilirliği ve uyarlanabilirliğinde yatıyor. IoT ağları boyut ve karmaşıklık açısından büyümeye devam ettikçe, değişen koşullara dinamik olarak uyum sağlayan çözümler hayati önem taşıyacaktır. Bu hibrit çerçeve, enerji tasarrufu konusunu ele almakla kalmaz, aynı zamanda gerçek dünyada kullanımlarda kendini sürdürebilecek özerk, kendini optimize eden IoT sistemlerinin zeminini hazırlar. Tablo 1 , enerji tüketimi, paket teslimat oranı, ağ ömrü ve veri verimliliği gibi parametreler için performans kayıtlarını içerir. Tablo 2 , deneyden elde edilen sonuçların bir özetini verir. Ayrıca, güçlendirme öğrenmesinin IoT ağlarına entegrasyonu, yapay zeka tabanlı protokollerin kaynaklar kısıtlı ortamlarda cihazların etkileşimini yeniden şekillendirme potansiyelini göstermektedir.
Akıllı iletişim stratejilerindeki son gelişmeler, uyarlanabilir ve sürdürülebilir IoT yönlendirmeçerçevelerine olan ihtiyacı daha da pekiştirmektedir 10,11,12. Geleneksel kümeleme tabanlı veya statik yönlendirme protokolleri, bağlantı kalitesinin dalgalanması, düğüm enerji seviyelerinin değişmesi ve parazit gibi dinamik ağ zorluklarını karşılayamıyor; bu da hızlı performans düşüşlerine ve erken düğüm arızalarına yol açabiliyor. Modern pekiştirme öğrenme temelli yaklaşımlar, IoT cihazlarının çevreyle sürekli etkileşim yoluyla optimal iletim stratejilerini dinamik olarak öğrenmesini sağlayarak bu sorunları ele almada güçlü potansiyelgöstermiştir 10,11,12. Aynı zamanda, Ağ Kodlama, kısıtlı ağ ortamlarında yedek iletimleri azaltmada ve spektral verimliliği artırmada faydalılığınıgöstermiştir 5,13,14. Ancak, mevcut çalışmaların çoğu bu teknikleri kombinasyon halinde değil, bağımsız olarak değerlendirmektedir. Bu nedenle, NC'yi Soft Actor-Critic gibi sürekli kontrol pekiştirme öğrenme yöntemiyle entegre etmek, enerji tasarrufu sağlarken gerçek zamanlı değişikliklere uyum sağlayabilen daha sağlam ve akıllı bir iletişimmekanizması sunar 15,16. Bu hibrit paradigma, IoT ağlarının dayanıklılığını ve özerkliğini güçlendirmekle kalmaz, aynı zamanda sürdürülebilir büyük ölçekli dağıtımlar için yeşil iletişim sistemleri ve makine öğrenimi odaklı kablosuz mimarilerde ortaya çıkan araştırma trendleriyle de uyum sağlar.
Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.
Veri iletimi ve paket işleme iş akışı
Düğüm başlatma: Her düğüm, tam ağ topolojisi bilgisi, maksimum enerji kapasitesi ve karar vermeye hazır önceden eğitilmiş bir SAC ajanı ile başlar. Ağ kodlama modülü, paket kombinasyon işlemlerini etkinleştirir ve hazırlanır.
Paket kodlama süreci: Iletim başladığında, kaynak düğümler sensörlerden birden fazla veri paketi toplar. Ağ kodlama modülü, bu paketleri daha az kodlanmış pakete dönüştürerek verimli matematiksel işlemler kullanarak toplam iletim sayısını önemli ölçüde azaltır.
SAC yönlendirme kararı yürütülmesi: SAC ajanı, komşu enerji seviyeleri, bağlantı kalitesi, trafik koşulları ve hedef mesafe dahil olmak üzere mevcut ağ durumunu analiz eder. Öğrendiği politikaya dayanarak en uygun sonraki komşuyu seçer ve enerji verimliliği ile güvenilirliği önceliklendirir.
Çok atlı paket ileti: Kodlanmış paketler seçilen yoldan geçer. Ara düğümler, mevcut tampon durumları ve kalan enerji seviyelerine göre paketleri daha fazla birleştirip doğrudan mı ileteceğine karar verir.
Ödül hesaplaması ve depolama: Her iletimden sonra sistem, teslimat başarısı, kullanılan enerji, iletim gecikmesi ve paket düşüşlerine dayalı bir ödül puanı hesaplar. Bu ödül bilgisi, SAC ajanının öğrenmesi için saklanır.
Sürekli öğrenme güncellemesi: SAC temsilcisi, depolanmış deneyimleri düzenli olarak gözden geçirir ve yüksek teslimat performansını korurken enerji verimli güzergahları seçmede daha iyi hale gelmek için karar alma stratejisini günceller.
Sistem mimarisi
Tipik bir düğüm şu şekilde çalışır: veri algılar ve toplar, ağ kodlaması kullanarak kodlar ve ardından kodlanmış paketi SAC ajanı tarafından seçilen yönlendirme yolundan iletir. SAC ajanı, düğümün durumunu değerlendirir; kalan enerji, tampon durumu ve bağlantı kalitesi dahil olmak üzere, bir sonraki optimal zıplamayı seçer. Bu süreç dinamiktir ve ağ koşulları değişimiyle deneyimle evrilir. Şekil 1 , bu veri akışını ve bileşenler arasındaki etkileşimi gösterecektir.
Ağ kodlama denklemi
Ara düğümlerde ağ kodlaması aşağıdaki şekilde uygulanır:

Burada Ci kodlanmış paket, αij kodlama katsayısıdır (SAC ile öğrenilir) ve Pj orijinal paketlerdir. Bu, ağın iletim sayısını azaltmasını ve güvenilirliği artırmasını sağlar.
SAC hedef fonksiyonu
SAC ajanı, aşağıdaki entropi ile düzenlenmiş amaç kullanarak politikayı optimize eder:

Burada r(s t, at) ödül, α keşif için bir takas parametresi ve H entropi terimidir.
Enerji tüketim modeli
Gerçekçi enerji kullanımını simüle etmek için aşağıdaki model kullanılır:

Burada: Eelec- verici/alıcıyı çalıştırmak için bit başına enerji içerir, - k bit cinsinden veri boyutudur, -
verici amplifikatörünün ihtiyaç duyduğu enerjidir, - düğümler arasındaki mesafedir, -d yol kaybı üstelidir.
Değerlendirme metrikleri
Bu çalışmadaki simülasyonlarda aşağıdaki performans metrikleri kullanılmıştır:
Paket teslimat oranı (PDR):

Aktarım:

Ağ ömrü: Ağ düğümlerinin %50'sinin enerjisini tüketmesine kadar süreyle tanımlanır.
Enerji verimliliği:

Sahte kod
IoT ağ düğümlerinin başlatılması
Bu fonksiyon, sistem çalışmaya başlamadan önce ağdaki tüm IoT düğümlerini ayarlar. Her düğüme maksimum enerji, paketleri depolamak için boş bir tampon, yerel ortamını temsil eden bir durum, optimal kararları öğrenmek için bir SAC ajanı ve akıllı veri kodlamasını sağlayan bir NC modülü atanır.
def initialize_nodes(ağ):
Ağdaki düğüm için:
node.energy = MAX_ENERGY
node.buffer = []
node.state = sense_environment(düğüm)
node.agent = initialize_sac_agent()
node.nc_module = activate_network_coding()
Paket üretimi ve ağ kodlaması
Bu fonksiyon, kaynak düğümden sensör verilerini toplamaktan, doğrusal veya XOR tabanlı ağ kodlama yöntemiyle kodlamaktan ve iletime hazırlamaktan sorumludur. Birden fazla paketi tek bir kodlu pakete entegre ederek iletişim yükünü azaltır ve ağ üzerinden iletilebilir hale getirilmeye hazırdır.
def generate_and_code_packets(source_node):
data_packets = collect_data(source_node)
coded_packet = network_code(data_packets)
queue_transmission(source_node, coded_packet)
def network_code(paketler):
Return linear_combination(paketler)
SAC tabanlı yönlendirme kararı
Burada, mevcut düğüm SAC ajanını kullanarak ağ durumunu analiz eder ve paketi iletmek için en enerji verimli ve güvenilir komşunu seçer. Karar, öğrenilmiş politikalar ve mevcut çevresel koşullara, örneğin bağlantı kalitesi veya kalıntı enerji gibi koşullara dayanmaktadır.
def select_next_hop(current_node):
current_state = observe_network_state(current_node)
eylem = sac_agent_policy(current_node.ajan, current_state)
next_hop = map_action_to_neighbor(aksiyon)
Geri next_hop
Paket iletimi ve geri besleme döngüsü
Bu fonksiyon, kodlanmış bir paketin gerçek iletimini yönetir. En iyi bir sonraki atlama belirlendikten sonra, bağlantı geçerliyse paket gönderilir. Sistem daha sonra iletim başarısı ve enerji kullanımına dayalı bir ödül hesaplar ve bu ödül SAC ajanının öğrenme modelini güncellemek için kullanılır.
def transmit_packet(current_node, paket):
next_hop = select_next_hop(current_node)
if is_link_valid(current_node, next_hop):
send(paket, next_hop)
ödül = compute_reward(current_node, paket)
update_sac_agent(current_node, ödül)
Aksi takdirde:
recompute_next_hop(current_node)
SAC ajanı güncellemesi (öğrenme aşaması)
Bir paket iletildikten sonra, bu fonksiyon SAC ajanını günceller. Durum değişikliğini kaydeder, deneyimi hafızada saklar ve yeterli deneyim toplandığında, ajanın karar alma stratejisini geliştirmek için örnek partisi kullanır. Bu, düğümün zaman içinde ağ değişikliklerine uyum sağlamasına yardımcı olur.
def update_sac_agent(düğüm, ödül):
new_state = observe_network_state(düğüm)
store_transition(node.agent.memory, node.state, node.action, reward, new_state)
if enough_experience(node.agent.memory):
batch = sample_batch(node.agent.memory)
node.agent = optimize_sac(node.agent, batch)
node.state = new_state
Alıcıda kod çözme
Hedefte, bu fonksiyon alınan tüm kodlanmış paketleri alır ve Gauss Elimination gibi yöntemlerle orijinal veriye geri dönüştürür. Kurtarılan veriler daha sonra uygun uygulama katmanına veya sürece iletilir.
def decode_packet(destination_node):
received_packets = destination_node.buffer
original_data = decode(received_packets)
deliver_data(original_data)
def decode(packets):
Return gaussian_elimination(paketler)
Enerji izleme ve düğüm uyku mantığı
Bu fonksiyon, her düğümün enerji seviyelerini takip eder ve bir düğümün çalışmaya devam edip etmemesi ya da güç tasarrufu için uyku moduna geçip geçmemesi gerektiğini belirler. Enerji yeterliyse, düğüm iletimle ilgili maliyetleri düşürür; Eğer olmazsa, genel ağ ömrünü uzatmak için geçici olarak kapanır.
def monitor_energy(düğüm):
eğer düğüm.enerji < EŞİĞİ:
put_node_to_sleep(düğüm)
else: node.energy -= transmission_cost()
Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.
Dört farklı yaklaşımı karşılaştırarak simülasyonlar yaptık: (i) Optimize edilmeden geleneksel bir model, (ii) Yalnızca Ağ Kodlaması (NC) kullanan bir sistem, (iii) Yönlendirme için yalnızca soft aktör-eleştiri (SAC) algoritmasını kullanan bir kurulum ve (iv) NC ve SAC'yi birleştiren önerilen hibrit model.
Enerji tüketimi
En önemli gelişme enerji verimliliğinde gözlemlendi. Geleneksel IoT ağları, sabit güzergahlara ve paket kaybı olduğunda s...
Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.
Bu araştırma, çekirdek IoT ağları için ağ kodlamasını (NC) yumuşak aktör-eleştiri (SAC) pekiştirme öğrenme algoritması ile entegre eden yeni bir enerji farkında iletişim stratejisi tanıtmaktadır. Bu hibrit yaklaşımın amacı, enerji tüketimini en aza indirirken güvenilir ve verimli veri iletimini sürdürmektir. NC, veri paketlerini kodlayarak yedekli iletimi azaltırken, SAC gözlemlenen ağ durumlarına göre enerji verimli yönlendirme yollarını dinamik olarak öğrenir ve seçer. Sunulan simülasy...
Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.
Yazarların açıklayacak hiçbir şeyi yok.
Oxford Mühendislik Koleji ve Jain Belirlenen Üniversite'ye destekleri ve kaynakları için teşekkürlerimizi sunarız.
Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.
| Ad | Şirket | Katalog numarası | Yorumlar |
|---|---|---|---|
| 6 GB NVIDIA GeForce RTX 3050 (Bilgisayar sistemi) | nVIDIA | https://www.nvidia.com/en-in/geforce/graphics-cards/30-series/rtx-3050/ | Simülasyon ve eğitim için: CPU RAM: 16 GB, GPU RAM |
| AMD Ryzen (Bilgisayar sistemi) | AMD | Ryzen 7 | Simülasyon ve eğitim için: İşlemci |
| Donanım Test Platformu (isteğe bağlı gelecekteki çalışmalar) | Raspberry Pi | https://www.raspberrypi.com/products/raspberry-pi-4-model-b/ | Gerçek dünya IoT dağıtımı ve doğrulaması için kablosuz modüllü Raspberry Pi 4 düğümleri |
| Intel Core i7 (Bilgisayar sistemi) | Intel Core | i7-7700 İşlemci | Simülasyon ve eğitim için: İşlemci |
| Jupyter Notebook | Jupyter | https://jupyter.org/ | Yinelemeli geliştirme, hata ayıklama ve görselleştirme için ortam |
| Matplotlib | Python | https://matplotlib.org/ | Performans metriklerini çizmek için Python görselleştirme kütüphaneleri (Enerji, Verimlilik, PDR, Ağ Ömrü) |
| Ağ Kodlama Modülü | Doğrusal ağ kodlaması ve paket kodlaması için özel Python/NS-3 entegrasyonu | ||
| NS-3 Simülasyonu | NS-3 | nsnam.org | IoT ağ simülasyonu ve yönlendirme değerlendirmesi için kullanılan açık kaynaklı ayrık olay ağ simülatörü |
| NumPy | NumPy | numpy.org | Simülasyon günlükleri, istatistiksel analiz ve yapılandırılmış veri setleri için Python paketleri |
| Pandalar | pandas.pydata.org | Simülasyon günlükleri, istatistiksel analiz ve yapılandırılmış veri setleri için Python paketleri | |
| Python 3.10 | Python | Sürüm 3.10.0 | SAC ajanı eğitimi, kodlama katsayısı optimizasyonu ve veri işleme için kullanılan programlama dili |
| PyTorch | PyTorch | https://pytorch.org/ | Soft Actor-Critic algoritmasını ve pekiştirme öğrenme modellerini uygulamak için derin öğrenme kütüphanesi |
| Seaborn | Python | https://seaborn.pydata.org/ | Performans metriklerini çizmek için Python görselleştirme kütüphaneleri (Enerji, Verimlilik, PDR, Ağ Ömrü) |
| Ubuntu 20.04 (Bilgisayar sistemi) | Ubuntu | Sürüm 20.04 | Simülasyon ve eğitim için: işletim sistemi |
Erişim kısıtlı. Bu içeriği görüntülemek için lütfen giriş yapın veya deneme sürümünü başlatın.
Bu JoVE makalesinin metnini veya şekillerini yeniden kullanmak için izin iste
İzin iste