Abstract:

  • 问题:AI在路由协议上的应用仅适用于真实设备,尤其是无线传感器节点
  • The inclusion of artificial intelligence (AI) can improve the performance of routing protocols. Nowadays the application of AI over routing protocols is only applied to real devices, especially in wireless sensor nodes.

  • 解决:提出了基于强化学习智能路由协议,它能根据最佳标准、网络状态选择最佳数据传输路径
  • In this paper, we present a new proposal to implement an intelligent routing protocol in a SDN topology. The intelligent routing protocol is based on the reinforcement learning process that allows choosing the best data transmission paths according to the best criteria and based on the network status.


强化学习:

根据维基百科的描述,强化学习定义如下:

强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。

在强化学习的世界里, 算法称之为Agent, 它与环境发生交互,Agent从环境中获取状态(state),并决定自己要做出的动作(action).环境会根据自身的逻辑给Agent予以奖励(reward)。奖励有正向和反向之分。比如在游戏中,每击中一个敌人就是正向的奖励,掉血或者游戏结束就是反向的奖励。

来自掘金·腾讯云加社区


IDEA

  • Quagga : 开源软件,可以修改路由协议
  • it is open-source so it can be modified to add the AI-based improvements to the routing protocol. However, Quagga has the disadvantage that only allows having one router per PC.

  • 图2所示的算法提供了一种强化学习方法,用于建立源和目的地之间的路径。
  • 给定一组可能的路径I和一组称为M的网络测量值(延迟,丢失率和带宽)
  • 为参数分配不同的权重w1,w2和w3,从而计算每个可用路径的成本ci。
  • 数据传输在较低成本的路径发送。
  • The algorithm showed in Fig. 2 provides a reinforcement learning method to establish a path between a source and a destination. Given a set of possible paths I and a set of network measurements (delay, loss rate and bandwidth) called M, the agent calculate for every available path i a cost ci by assigning different weights w1, w2 and w3 to the parameters. The data transmission is sent by the path with less cost.

  • 一段时间,路径节点提供奖励d,其使用关于通过路径的传输的网络参数和传递函数来计算。
  • 利用来自路径的反馈,代理再次调整权重,从更好的路径获得更大的回报**。
  • After spending some time, the following node in the path gives to the agent a reward d which is calculated using network parameters about the transmission through the path and a transfer function. This reward is the parameter that the agent (the router) wants to increase as much as possible. With that feedback from the paths, the agent adjusts again the weights trying to obtain a greater reward from a better path. This is the learning process in which the agent learns to choose the most important parameters to take account in the routing process.

  • To execute this algorithm, the different elements present in the network need to exchange a set of messages. Fig. 3 shows the message exchange.

做法

  • 提出通过SDN实现的新的分布式路由提议,设计了一种基于强化学习的智能算法。
  • we have presented a new distributed routing proposal implemented over SDN. We have analyzed the way of building the SDN topology that runs routing protocol in a distributed way. Moreover, we have designed an intelligent algorithm based on reinforcement learning to improve some aspects of routing.

  • 使用Quagga,将算法添加到OSPF路由协议**中。
  • This algorithm is added to the OSPF routing protocol using Quagga which allows modifying the routing algorithms.


效果:

  • 更稳定,损失率更低,延迟更低的路线。 抖动优化。
  • The results showthat the routing proposal works properly and it reaches better QoS features than the traditional one. Our proposal clearly achieves a more stable route with less loss rate that implies to have lower delay. In addition, the jitter obtained with the proposal is significantly better than the values offered by the traditional routing.

# Including Artificial Intelligence in a Routing ProtocolUsing Software Defined Networks的更多相关文章

  1. 阅读Deep Packet Inspection based Application-Aware Traffic Control for Software Defined Networks

    Deep Packet Inspection based Application-Aware Traffic Control for Software Defined Networks Globlec ...

  2. 文献:Technology-related Disasters:A Survey toward Disaster-resilient Software Defined Networks

    DISASTER的定义和影响(本文中) 定义范围: 自然灾害,比如洪水.地震等造成一定范围类的节点故障: 恶意攻击,DDOS攻击或者电磁脉冲攻击造成节点故障: 技术相关的问题,配置错误或者误操作等: ...

  3. (转)A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers

    A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers. Updated 20 ...

  4. ARTIFICIAL INTELLIGENCE FOR GAMES (Ian Millington / John Funge 著)

    相关网站:http://www.ai4g.com PART I AI AND GAMESCHAPTER1 INTRODUCTIONCHAPTER2 GAME AIPART II TECHNIQUESC ...

  5. Artificial Intelligence in Finance

    https://sigmoidal.io/real-applications-of-ai-in-finance/ Artificial Intelligence is taking the finan ...

  6. (转) Artificial intelligence, revealed

    Artificial intelligence, revealed Yann LeCunJoaquin Quiñonero Candela It's 8:00 am on a Tuesday morn ...

  7. AI AND THE BOTTOM LINE: 15 EXAMPLES OF ARTIFICIAL INTELLIGENCE IN FINANCE

    https://builtin.com/artificial-intelligence/ai-finance-banking-applications-companies f there's one ...

  8. Artificial intelligence(AI)

    ORM: https://github.com/sunkaixuan/SqlSugar 微软DEMO: https://github.com/Microsoft/BotBuilder 注册KEY:ht ...

  9. Artificial Intelligence Language

    Artificial Intelligence Language Objective We know, a true AI program should have ability to underst ...

随机推荐

  1. css隐藏元素的六类13种方法

    隐藏元素的方法 隐藏元素的方法可以总结为六类:直接隐藏.对溢出内容隐藏.对元素透明度进行调整.将元素移除当前屏幕.对元素的层级关系进行调整.对元素进行裁剪 只有对元素的透明度进行调整才可以点击,其余都 ...

  2. 知识总结和记录——HTML

    文档结构 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="U ...

  3. Data Warehouse 业务系统不入仓表

    根据数据仓库的实施经验,凡符合如下特征的表,建议不入仓. ① 备份数据表 此类表是对现有表中某个时点数据的一份拷贝,根据需要进行数据恢复使用.因此,只需取当前表中的数据即可. ② 冗余数据表 同一类数 ...

  4. java数据库 JDBC操作MySQL数据库常用API 部门表和员工表 创建表 添加数据 查询数据

    package com.swift.department; import java.sql.Connection; import java.sql.PreparedStatement; import ...

  5. LeetCode106. Construct Binary Tree from Inorder and Postorder Traversal

    题目 根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素. 例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9, ...

  6. 【经典问题】bzoj2957: 楼房重建

    经典问题:动态维护上升子序列长度 进阶问题:[经典问题]#176. 栈 Description 小A的楼房外有一大片施工工地,工地上有N栋待建的楼房.每天,这片工地上的房子拆了又建.建了又拆.他经常无 ...

  7. datatable中reload和load的区别

    ajax.reload()用于datatable表某个数据的变化而重新加载 ajax.url(url).load() 用于切换url时,datatable重新获取数据,加载.

  8. PHP的IMAP函数

    imap_8bit -转换的8位字符串的引用,打印字符串 imap_alerts -返回所有的I MAP邮件警报已经发生 imap_append -附加了一系列的信息到指定邮箱 imap_base64 ...

  9. 裸机——210SD卡启动

    1.通过阅读iROM_Application_note可以获取关于启动的全部信息 2.记录下代码 制作SD卡启动的代码,即添加校验和的 #include <strings.h> #incl ...

  10. python基础之面向对象编程介绍、类和对象

    面向对象变成介绍 面向过程编程 核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西.主要应用在一旦完成很少修改的地方,如linux ...