Elmagnifico's Blog

云深不知归处

OMPL Benchmark Planner

cfg,log,database

Foreword 由于存在很多规划的方式,各个参数又不同,如果一遍一遍自己运行很费事费时,所以要对比一下到底何种方式更好的时候,就可以使用OMPL自带的Benchmark来完成这样的工作. cfg 所有的benchmark参数全都存在一个以cfg为后缀的配置文件中,其中参数类似于ini文件,都是使用关键字与数值匹配. 配置文件大致如下,此文件存于 ./benchmark/exampl...

OMPL 有效状态检测

state,CAD,Models

Foreword 由于给定的环境是自定义的,所以ompl不提供有效状态检查,只是给了对应的接口,让我们自己来完成状态检查. 状态检测 ompl中给了两个类定义状态检测 ompl::base::StateValidityChecker ompl::base::MotionValidator ompl::base::StateValidityChecker 类中 isVal...

OMPL 2D刚体规划Demo

RRT,Rigidbody,SE2

Foreword 本篇内容基本来自于官网的第一篇教程,但是这里还是有些东西没有解释清楚。 http://ompl.kavrakilab.org/geometricPlanningSE3.html 比如其中的RealVectorBounds维度边界为什么是(-1,1)? source code try: from ompl import base as ob f...

OMPL 创建自己的采样器

state,sampler

Foreword 由于使用的算法基本都是基于采样来完成,那么采样具体是怎么采的,则和最后得到的结果有很大的关系. ompl中一般来说有两种采样器,一个是 ompl::base::StateSampler ,另一个是 ompl::base::ValidStateSampler 任何一个采样器都派生自 ompl::base::StateSampler,而 ValidStateSample...

OMPL 安装

app,python,ubuntu

Foreword 记录一下 OMPL 安装过程. 环境 Ubuntu 16.04 安装 第一步,打开 http://ompl.kavrakilab.org/installation.html 然后,下载其中的 install-ompl-ubuntu.sh 第二步,看要安装什么版本的ompl,就装什么版本的就行. ./install-ompl-ubuntu.sh ...

OMPL 2D规划Demo

motion planning

Foreword 学习ompl 首先从最简单呢2D规划demo开始。 Setting up geometric planning for a rigid body in 3D requires the following steps: identify the space we are planning in: SE(3) select a corresponding s...

腾讯云与ASF

steam,挂卡

Foreword 最近刚好碰到腾讯云阿里云各种云一起打折,于是入了一个腾讯云,1核,2g内存,1m带宽,120块16个月。(没赶上降配延迟时间的bug) 服务器可选地址,一共就只有北京,上海,广州,成都,并不能选择国外节点,所以vps什么的就别想了。 而且最近香港或者其他海外地区的ip疯狂被封,无论你是阿里云还是什么的,都不好使。 这里记录一下用腾讯云挂卡,搭建ASF的过程。 腾讯...

背包问题,动态规划

0/1,DP,NPC

Foreword 遇到一个涉及到很多球根据约束条件,选取最多数量的球的问题,类似于背包问题. 基本0/1背包 问题:有n个物品,物品不重复,每个物品对应价值为price[i],对应重量是weight[i],背包最大载重是w,求背包能装的最大价值的是多少,或者说背包要怎么装才能得到最大价值. 因为对于每个物品而言只有两种选择,拿或者不拿,对应0/1,当然可以用暴力搜索直接遍历一遍所有的...

网络流,最大流

增广路,EK

Foreword 之前的二分匹配问题,要做的是一对一的情况下,求得最优匹配的情况。 而从某种角度上来说二分带权匹配可以算是网络流中最大流的一种特殊情况。 网络流一般来说都是有一个源点和一个汇点。源点只负责无限流出流量,而汇点则是无限接收流量,然后会包含一些从源点到汇点的路径,每条路径能承载的流量都有上限,类似于二分带权最优匹配。 网络流图一般来说都是一个有向图,但是在求解的时候有时候...

二分图带权最大匹配

KM,完备匹配

Foreword 前面的二分图,都是基于每条边都是可行的,最大匹配也是只要可行就行,完全不考虑,选择这条边带来的代价,认为所有的边都是代价平等的,然而实际上很多问题不同的选择需要付出的代价并不相同。 那么为了解决这种问题,从而有了二分图带权匹配,其实还有一种方法,就是通过网络流求最小费用最大流,从而获得最佳匹配。 KM算法 KM算法的基础也一样是匈牙利算法,但是在它的基础上融合了贪心...