Elmagnifico's Blog

云深不知归处

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算法的基础也一样是匈牙利算法,但是在它的基础上融合了贪心...

Bipartite Graph 二分图

匈牙利算法,最大匹配

Foreword 遇到一个匹配问题,搜了很久,就是找不到相关的算法,经过询问,重新描述问题以后,发现原来问题这么简单,而且还有专门描述此类问题的算法。 问题: 有若干男孩和女孩,他们之间存在互相喜欢的关系,求一种配对方式使得所有人都能得到喜欢的人(或者是得到最多配对数) 此类问题都有一个共同的数学模型,二分图。图G = (V,E) 是一个无向图,如果一个图可以被分成两部分,并且...

Maya C++开发 in VS2017

API, HelloWorld, plugin

Foreword maya除了可以直接使用MEL和Python的脚本语言(Maya Commands)来开发,还可以使用C++ API或者python API,又或者C# 从本质上说python API 是基于C++ API来的,而C#的API基本就是C++ API 在这里面C++无疑是速度最快的,并且最接近maya的,而python则是速度最慢的。 要开发maya c++ pl...