机器人动力学与控制学习笔记(十五)——机器人路径规划

news2024/9/22 19:40:33

十五、机器人路径规划

15.1  机器人运动规划  

        机器人运动规划包含三个层次的内容:即路径规划、轨迹规划、轨迹跟踪或轨迹控制。路径规划是确定不含时间信息的几何路径。一般的工业机器人中都含有点到点,直线,圆弧及样条曲线等常用轨迹的路径规划。

        TSP(旅行商)优化问题在机器人运动规划中得到许多应用。例如,移动机器人的全局路径规划问题,可转化为一种TSP问题。移动机器人在有障碍物的工作环境中工作时,通过优化,可寻找出一条从给定起始点到终止点的较优的运动路径,使移动机器人在运动过程中能安全、无碰撞地绕过所有的障碍物,且所走路径最短。TSP问题是一个组合优化问题,当数目很大时,常规方法求解计算量太大。对庞大的搜索空间中寻求最优解,使用遗传算法的搜索能力可以有效地解决这类问题。

15.2  基于神经网络的TSP问题优化

        TSP问题是在一个城市集合中找出一个最短且经过每个城市各一次并回到起点的路径。为了将TSP问题映射为一个神经网络的动态过程,采取换位矩阵的表示方法,用N\times N矩阵表示商人访问N个城市。例如,有四个城市\left \{ A_{_{c}} ,B_{_{c}} ,C_{_{c}} ,D_{_{c}} \right \},访问路线是D_{c}\rightarrow A_{c}\rightarrow C_{c}\rightarrow B_{c}\rightarrow D_{c},则神经网路输出所代表的有效解用表1所示的二维矩阵来表示。

 

表1 四个城市的访问路线
城市\次序1234
A{_{c}}0100
B{_{c}}0001
C{_{c}}0010
D{_{c}}1000

        上表中构成了一个4\times 4的矩阵,该矩阵中,各行各列只能有一个元素为1,其余为0,否则是一个无效的路径。利用神经网络求解TSP问题的算法描述如下:

(1)置初值和权值;

(2)读入N个城市之间的距离d;

(3)神经网络输入;

(4)利用动态方程进行计算;

(5)根据一阶欧拉法计算;

(6)采用Sigmoid函数计算;

(7)计算能量函数;

(8)检查路径的合法性,判断迭代次数是否结束,如果结束,则终止,否则返回到第(4)步;

(9)输出迭代次数、最优路径、最优能量函数、路径长度及能量函数随时间的变化。

15.3  仿真实例

        在TSP的神经网络能量函数式中,取A=B=1.5,D=1.0。城市的数量取8,其城市路径坐标保存在8.txt中。针对8个城市进行路径优化。采样时间取step=0.01,经过2000次迭代,最优能量函数为1.8734,初始路程为4.1419,最短路程为3.7469,如下图所示。

 

仿真结果如下图所示。左图为初始路径,右图为优化后的路径。

下图为能量函数随时间的变化过程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/713873.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【进程】进程概念及相关函数实现

目录 0. 进程概述 1. 创建进程 1.1 进程的创建:fork函数 1.2 进程的等待:wait()、waitpid() 1.3 特殊进程:僵尸进程、孤儿进程、守护进程 1.4 进程的终止:exit和_exit函数 1.5 进程退出清理:atexit函数 1.6 进…

【我的创作纪念日】关于某站的音频爬虫+GUI

文章目录 一、前言&机遇二、爬虫代码三、爬虫GUI四、文件打包五、结果展示未来可期 一、前言&机遇 许久没看私信内容,一上线就看到了官方的私信,我已经来到CSDN1024天啦! 想到注册这个号的初衷是学习记录爬虫,后面渐渐变…

抖音产业带服务商哪些类目在招募?开通需要什么条件?

5月,刚刚结束的抖音电商生态大会上,抖音电商总裁魏雯雯披露,近一年平台GMV增幅超80%。其中,商城GMV同比增长277%,电商搜索GMV同比增长159%,货架场景GMV在平台GMV占比超30%。过去一年,抖音电商直…

数据结构与算法——树与二叉树

😊数据结构与算法——树与二叉树 🚀前言🚀树🚢树的定义🚢树的基本术语🚢有序树和无序树🚢森林 🚀二叉树🚢二叉树的定义🚢二叉树的性质🚢满二叉树&…

【VUE】Element UI 表单校验出现async-validator: [‘discipline is required‘]报错

问题:async-validator: [discipline is required] 选择器已经获取到数值,却显示获取到 解决办法如下

线性规划算法

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家:点击跳转 本文部分内容来自网友博客 一,线性规划 例如,一个企业“生产计划”的线性规划模型如下: 是subjec…

​如何优雅的卸载Edge浏览器

如何优雅的卸载Edge浏览器 由于Edge浏览器越来越复杂,功能越来越繁琐我是真的一刻也用不下去了。虽然我主力是火狐浏览器,Edge用来访问一些只能使用Chromium内核的网页作为备用。 但是我现在一打开Edge浏览器我就窝火,也懒得再去调整优化&a…

【表格树状】jqgrid表格树状折叠效果实现(附代码,留邮箱发demo)

【写在前面】有段时间没好好的整理一篇前端文章了,之前的6月城市活动也结束了,期待下周的榜单公布,其实这个月还有一个东西也让我牵肠挂肚的,就是软考的成绩也会在这个月的中旬公布,也是感觉很悬。既成定局&#xff0c…

【中间件-Openjob】高性能任务调度框架Openjob简介及快速搭建

介绍基础基础信息任务调度框架对比 特性高可靠高性能定时调度分布式计算延迟任务工作流程权限管理告警监控跨语言 安装访问docker-compose安装在线访问 总结 介绍 一款分布式高性能任务调度框架,支持多种定时任务、延时任务、工作流设计、轻量级分布式计算、无限水平…

el-form动态嵌套表单验证

v-for 遍历的表单校验 根据官网的介绍&#xff0c;是在 el-form-item 中使用 :rules 属性&#xff0c;同时 prop 属性直接定位到具体循环元素。这个用法的前提是在循环外面包裹一个 el-form 元素&#xff0c;v-for 位于 el-form-item 中。 <template><el-form:model…

深入浅出对话系统——对话管理与对话生成

引言 对话管理 我们知道对话管理主要包括状态追踪(DST)和策略优化(DPO)。 对话管理模块包含两个子任务&#xff1a; 对话状态追踪(Dialogue State Tracking) 根据用户输入和对话历史识别对话状态&#xff1b;策略学习(Policy Learning) 根据识别到的对话状态选择合适的下一步…

BC SU21 对象 ZJHD_LGO 已交付;只能进行有限更改

ECC 升级S4 库位从ECC的唯一库位 → S4 工厂 库位才能唯一。 那原先的 依据库存地 控制库位的zjhd打印机的权限需要新增工厂字段。 但是su21的修改的时候 提示 &#xff1a;对象 ZJHD_LGO 已交付&#xff1b;只能进行有限更改 查了一下&#xff0c;SAP官方说只能 把该权限…

HCIP第二次作业

要求&#xff1a;R1-R2-R3-R4-R5 RIP 100运行版本2 R6-R7 RIP 200 运行版本1 1.使用合理IP地址规划网络&#xff0c;各自创建环回接口 2.R1创建环回 172.16.1.1/24 172.16.2.1/24 172.16.3.1/24 3.要求R3使用R2访问R1环回 4.减少路由条目数量&#xff0c;R1-R2之间增加路由传递…

部署springboot项目读取外部配置文件

我们在部署springboot项目的时候&#xff0c;经常会遇到这样的情况&#xff1a;测试环境与生产环境的配置不一样&#xff0c;这就导致每次部署的时候都要修改配置文件再打包&#xff0c;即使用了nacos进行配置管理&#xff0c;但测试环境与生产环境的nacos部署的地方肯定不一样…

MyBatis简单入门

文章目录 快速入Mapper代理开发具体步骤使用mapper代理中的包扫描 查询字段名称不一致问题方法一&#xff1a;对SQL语句起别名方法二&#xff1a; 采用resultMap映射 条件查询单条件查询SQL中特殊字符的处理 多条件查询方式一&#xff1a;散装参数方式二&#xff1a;对象参数方…

ABAP:ABAP解析xml文件的方法

目前我在ECC的系统找到两种实现XML解析的办法&#xff0c;第一种是通过strans创建转化例程&#xff0c;然后在程序中调用转化例程来转化xml&#xff0c;第二种是调用方法按照node解析xml。 要转化的xml文件demo如下 <?xml version"1.0" encoding"Windows-…

1.5 编写自定位ShellCode弹窗

在笔者上一篇文章中简单的介绍了如何运用汇编语言编写一段弹窗代码&#xff0c;虽然简易ShellCode可以被正常执行&#xff0c;但却存在很多问题&#xff0c;由于采用了硬编址的方式来调用相应API函数的&#xff0c;那么就会存在一个很大的缺陷&#xff0c;如果操作系统的版本不…

提取图像中的文本信息(Tesseract OCR 和 pytesseract)

环境准备 安装Tesseract&#xff1a;点这里参考本人博客 下载第三方库 pip install Pytesseract这个库只自带了一个英语的语言包&#xff0c;这个时候如果我们图片中有对中文或者其他语言的识别需求&#xff0c;就需要去下载其他语言包 下载其他语言包 进入官网以后进入Tra…

MyBatisPlus基础知识

一、MyBatisPlus 1.MyBatisPlus入门案例与简介 这一节我们来学习下MyBatisPlus的入门案例与简介&#xff0c;这个和其他课程都不太一样&#xff0c;其他的课程都是先介绍概念&#xff0c;然后再写入门案例。而对于MyBatisPlus的学习&#xff0c;我们将顺序做了调整&#xff0…

STM32——MCU简单介绍

文章目录 一、单片机基础简介1.MCU简介&#xff08;1&#xff09;MCU的组成&#xff08;2&#xff09;常见的MCU 2.STM32简介&#xff08;1&#xff09;STM32&STM8产品型号--各个字母的含义 3.如何查手册&#xff08;1&#xff09;数据手册芯片信息总线框图时钟树内存映射 …