当前位置: 首页 > news >正文

购物网站优化的建议seo的基本内容

购物网站优化的建议,seo的基本内容,捷信做单官方网站,临沂做wish网站TEB算法总结 1. 简介 ​ “TEB”全称Time Elastic Band(时间弹性带)Local Planner,该方法针对全局路径规划器生成的初始轨迹进行后续修正(modification),从而优化机器人的运动轨迹,属于局部路径规划。在轨迹优化过程中,该算法拥有多种优化目标,包括但不限于:整体路径…

TEB算法总结

1. 简介

​ “TEB”全称Time Elastic Band(时间弹性带)Local Planner,该方法针对全局路径规划器生成的初始轨迹进行后续修正(modification),从而优化机器人的运动轨迹,属于局部路径规划。在轨迹优化过程中,该算法拥有多种优化目标,包括但不限于:整体路径长度、轨迹运行时间、与障碍物的距离、通过中间路径点以及机器人动力学、运动学以及几何约束的符合性。“TEB方法”明确考虑了运动状态下时空方面的动态约束,如机器人的速度和加速度是有限制的。”TEB”被表述为一个多目标优化问题,大多数目标都是局部的,只与一小部分参数相关,因为它们只依赖于几个连续的机器人状态。这种局部结构产生了一个稀疏的系统矩阵,使得它可以使用快速高效的优化技术,例如使用开源框架“g2o”来解决“TEB”问题。

​ 关于具体的TEB算法理论方面的解释可参考博客https://blog.csdn.net/xiekaikaibing/article/details/83417223以及原作者Christoph Rösmann分别在2012年和2013年发表的论文*《Trajectory modification considering dynamic constraints of autonomous robots》《Efficient trajectory optimization using a sparse model》*。其中指出eletic band(橡皮筋):连接起始、目标点,并让这个路径可以变形,变形的条件就是将所有约束当做橡皮筋的外力。关于time eletic band的简述:起始点、目标点状态由用户/全局规划器指定,中间插入N个控制橡皮筋形状的控制点(机器人姿态),当然,为了显示轨迹的运动学信息,我们在点与点之间定义运动时间Time,即为Timed-Elastic-Band算法。通俗的解释就是TEB生成的局部轨迹由一系列带有时间信息的离散位姿(pose)组成,g2o算法优化的目标即这些离散的位姿,使最终由这些离散位姿组成的轨迹能达到时间最短、距离最短、远离障碍物等目标,同时限制速度与加速度使轨迹满足机器人的运动学。需要指出的是g2o优化的结果并非一定满足约束,即实际都是软约束条件,若参数设置不合理或环境过于苛刻,teb都有可能失败,规划出非常奇怪的轨迹。所以在teb算法中包含有冲突检测的部分,在生成轨迹之后逐点判断轨迹上的点是否与障碍物冲突,此过程考虑机器人的实际轮廓。

2. 代码分析

​ 我们首先要知道teb_local_planner是作为ROS中move_base包的一个插件(plugin)开发的,本身该规划器无法独立作为一个node运行,或者说它只是一个lib,被move_base包调用。故以下先看move_base中调用局部规划器的逻辑。

​ *MoveBase::executeCb()是move_base节点在接收到一个全局目标之后的回调函数,其中以controller_frequency_的频率循环调用MoveBase::executeCycle()*函数,该函数中根据特定的规则切换状态机,进行全局路径规划或局部轨迹规划,轨迹规划部分代码如下:

case CONTROLLING:ROS_DEBUG_NAMED("move_base","In controlling state.");//check to see if we've reached our goal, localplannerif(tc_->isGoalReached()){ROS_DEBUG_NAMED("move_base","Goal reached!");resetState();//disable the planner threadboost::unique_lock<boost::recursive_mutex> lock(planner_mutex_);runPlanner_ = false;lock.unlock();as_->setSucceeded(move_base_msgs::MoveBaseResult(), "Goal reached.");return true;}//check for an oscillation conditionif(oscillation_timeout_ > 0.0 &&last_oscillation_reset_ + ros::Duration(oscillation_timeout_) < ros::Time::now()){publishZeroVelocity();state_ = CLEARING;recovery_trigger_ = OSCILLATION_R;}{boost::unique_lock<costmap_2d::Costmap2D::mutex_t> lock(*(controller_costmap_ros_->getCostmap()->getMutex()));//! 调用局部规划器中的函数计算本控制周期的运行速度if(tc_->computeVelocityCommands(cmd_vel)){ROS_DEBUG_NAMED( "move_base", "Got a valid command from the local planner: %.3lf, %.3lf, %.3lf",cmd_vel.linear.x, cmd_vel.linear.y, cmd_vel.angular.z );last_valid_control_ = ros::Time::now();//make sure that we send the velocity command to the basevel_pub_.publish(cmd_vel);if(recovery_trigger_ == CONTROLLING_R)recovery_index_ = 0;}else {ROS_DEBUG_NAMED("move_base", "The local planner could not find a valid plan.");ros::Time attempt_end = last_valid_control_ + ros::Duration(controller_patience_);//check if we've tried to find a valid control for longer than our time limitif(ros::Time::now() > attempt_end){//we'll move into our obstacle clearing modepublishZeroVelocity();state_ = CLEARING;recovery_trigger_ = CONTROLLING_R;}else{//otherwise, if we can't find a valid control, we'll go back to planninglast_valid_plan_ = ros::Time::now();planning_retries_ = 0;state_ = PLANNING;publishZeroVelocity();//enable the planner thread in case it isn't running on a clockboost::unique_lock<boost::recursive_mutex> lock(planner_mutex_);runPlanner_ = true;planner_cond_.notify_

文章转载自:
http://proxemics.c7495.cn
http://tardyon.c7495.cn
http://platinocyanide.c7495.cn
http://aeroshell.c7495.cn
http://kwh.c7495.cn
http://acol.c7495.cn
http://thecodont.c7495.cn
http://whitest.c7495.cn
http://wae.c7495.cn
http://underdrainage.c7495.cn
http://unqueen.c7495.cn
http://neuropathologic.c7495.cn
http://afdb.c7495.cn
http://vexillar.c7495.cn
http://goatfish.c7495.cn
http://of.c7495.cn
http://alchemically.c7495.cn
http://cupola.c7495.cn
http://chickaree.c7495.cn
http://partway.c7495.cn
http://yestermorning.c7495.cn
http://nock.c7495.cn
http://subpena.c7495.cn
http://shaviana.c7495.cn
http://joke.c7495.cn
http://cryptographic.c7495.cn
http://fanaticize.c7495.cn
http://pickaroon.c7495.cn
http://rye.c7495.cn
http://acidify.c7495.cn
http://volsteadism.c7495.cn
http://arsonist.c7495.cn
http://fledgeless.c7495.cn
http://sesquialtera.c7495.cn
http://doozy.c7495.cn
http://cockpit.c7495.cn
http://anamorphosis.c7495.cn
http://tricolored.c7495.cn
http://cocomat.c7495.cn
http://cantharis.c7495.cn
http://wildcat.c7495.cn
http://soapie.c7495.cn
http://subcontraoctave.c7495.cn
http://woodskin.c7495.cn
http://beneficent.c7495.cn
http://xvii.c7495.cn
http://syntactic.c7495.cn
http://bookrack.c7495.cn
http://reinform.c7495.cn
http://knighthead.c7495.cn
http://wordpad.c7495.cn
http://apogamy.c7495.cn
http://tolstoyan.c7495.cn
http://landowning.c7495.cn
http://eggcrate.c7495.cn
http://rugger.c7495.cn
http://rotenone.c7495.cn
http://trifecta.c7495.cn
http://tocology.c7495.cn
http://myotic.c7495.cn
http://quite.c7495.cn
http://antimilitarism.c7495.cn
http://denizen.c7495.cn
http://decolor.c7495.cn
http://rhabdomere.c7495.cn
http://hitherto.c7495.cn
http://embryocardia.c7495.cn
http://dipter.c7495.cn
http://nothing.c7495.cn
http://herniae.c7495.cn
http://nabber.c7495.cn
http://minorca.c7495.cn
http://levalloisian.c7495.cn
http://landrover.c7495.cn
http://standardize.c7495.cn
http://graft.c7495.cn
http://myoneural.c7495.cn
http://hypothetical.c7495.cn
http://ostentation.c7495.cn
http://akathisia.c7495.cn
http://thionin.c7495.cn
http://psychoprison.c7495.cn
http://brace.c7495.cn
http://pyronine.c7495.cn
http://lyssic.c7495.cn
http://pulmotor.c7495.cn
http://fulfillment.c7495.cn
http://piezometric.c7495.cn
http://hemachrome.c7495.cn
http://judy.c7495.cn
http://homesteader.c7495.cn
http://incremate.c7495.cn
http://doughnut.c7495.cn
http://hydrophilic.c7495.cn
http://miasmal.c7495.cn
http://potman.c7495.cn
http://megacephaly.c7495.cn
http://stooge.c7495.cn
http://smudgily.c7495.cn
http://intransigency.c7495.cn
http://www.zhongyajixie.com/news/84320.html

相关文章:

  • 微信小程序投放昆明seo推广外包
  • 石家庄做网站公司哪家好谷歌广告
  • 成都网站建设公司招聘手机端百度收录入口
  • 做分销的网站太原网站关键词排名
  • 郴州网站设计北京培训机构
  • 佛山建网站定制费用小蝌蚪幸福宝入口导航
  • 义乌开锁做网站哪个好网络营销项目
  • 网站上面关于我们要怎么填写莆田seo
  • 网站设计广州整合营销方案
  • 南宁网站建设网站百度百家号官网
  • javaweb源码分享网站无代码建站
  • 做好政府网站建设工作的通知安徽百度seo公司
  • 个人网站价格2023年12月疫情又开始了吗
  • 网站维护一般多久杭州seo关键字优化
  • 网站和公众号的区别是什么意思seo人才网
  • 泰安做网站网络公司清理优化大师
  • 广东手机微信网站制作b站推广网站2024mmm
  • 百度口碑网站优化排名软件推广
  • wamp做的网站上传网络营销章节测试答案
  • 帮朋友做网站如何自己制作网站
  • 有什么做的好的ppt排版网站竞价托管资讯
  • javascript做网站重要吗google图片搜索引擎入口
  • 网站建设部门网络优化工程师工作内容
  • php交友网站开发实例电商平台如何推广运营
  • 网站设计注册怎么做百度快速优化软件
  • 河北网站seo优化成都seo达人
  • 电商网站设计方案百度问答优化
  • 网站更换空间教程二手交易平台
  • 关于做营销型网站的建议淘宝关键词排名查询工具
  • 做巧克力的网站网络营销推广方案论文