
路径规划;算法;人工智能
文章平均质量分 67
AndrewGSD
通其变,天下无弊法;执其方,天下无善教。-隋·王通《中说·周公》
展开
-
论文笔记:Safe Active Learning for Multi-Output Gaussian Processes
论文名称:Safe Active Learning for Multi-Output Gaussian Processes1.论文见此链接:Link2. 论文要点:1)、该文章利用高斯回归去帮助实现主动学习的safety exploration, 主要从公式(1)去原创 2022-04-04 22:41:34 · 2854 阅读 · 0 评论 -
华为诺亚方舟实验室实习面试
前言记录一下自己遇到的实习面试经历,希望能对后来人有用。面试总共分为两轮:第一轮是项目面试,主要讲自己做的研究工作以及论文相关情况;第二轮主要是CodingTest测试;这里主要讲讲自己的CodingTest,其实代码测试的题目和LeetCode差不多,水平差不多,题目可能不一定相同。给了我两个题目,一道是困难,一道是简单的。一、题目说明题目1:A为一个十进制数(以整数为例),k位,k<100。求B使得B为大于A的最小整数,且A各位的和等于B各位的和。题目2:给一定数量的信封,带有整数对原创 2020-12-27 19:45:24 · 3295 阅读 · 6 评论 -
LeetCode计数质数求解(204)(Python和C++实现)
一、题目说明统计所有小于非负整数 n 的质数的数量。示例 1:输入:n = 10输出:4解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。示例 2:输入:n = 0输出:0示例 3:输入:n = 1输出:0提示:0 <= n <= 5 * 106二、代码实现(1)python实现厄拉多塞筛法class Solution(object): def countPrimes(self, n): """ :原创 2020-12-03 23:22:27 · 212 阅读 · 0 评论 -
TensorFlow之init部分代码解读
一、部分代码解读(1)头部文件环境的设置代码解读from __future__ import absolute_import as _absolute_import # 使用系统自带的文件 参考 https://blog.youkuaiyun.com/caiqiiqi/article/details/51050800from __future__ import division as _division # 在python2 中导入未来的支持的语言特征中division(精确除法),即from __future_原创 2020-11-28 16:47:44 · 689 阅读 · 0 评论 -
LeetCode对链表进行插入排序(147)(Python, Java,C++多个版本实现)
一、题目描述对链表进行插入排序。插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。插入排序算法:插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。重复直到所有输入数据插入完为止。示例 1:输入: 4->2->1->3输出: 1-原创 2020-11-24 22:54:46 · 117 阅读 · 0 评论 -
LeetCode有效的字母异位词(242)(Python和C++实现)
一、题目说明给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = “anagram”, t = “nagaram”输出: true示例 2:输入: s = “rat”, t = “car”输出: false说明:你可以假设字符串只包含小写字母。二、代码实现(Python)class Solution(object): def isAnagram(self, s, t): """ :type s:原创 2020-11-24 20:40:40 · 188 阅读 · 0 评论 -
LeetCode完全二叉树的节点个数求解(222)(Python和Java实现)
一、题目说明给出一个完全二叉树,求出该树的节点个数。说明:完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。示例:输入:1/ 2 3/ \ /4 5 6输出: 6二、Python代码实现# Definition for a binary tree node.# class TreeNode(object):# def原创 2020-11-24 20:25:16 · 150 阅读 · 0 评论 -
LeetCode加油站(134)思路讲解和不同方法的Python实现
一、题目说明在一条环路上有N个加油站,其中第i个加油站有汽油gas[i]升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1个加油站需要消耗汽油cost[i]升。你从其中的一个加油站出发,开始时油箱为空。如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。说明:如果题目有解,该答案即为唯一答案。输入数组均为非空数组,且长度相同。输入数组中的元素均为非负数。示例1:输入:gas = [1,2,3,4,5]cost = [...原创 2020-11-20 21:27:29 · 336 阅读 · 0 评论 -
LeetCode 移动零(283)(Python实现)
一、题目说明给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。二、代码实现实现方法一:class Solution(object): def moveZeroes(self, nums): """ :type nums: List[int]原创 2020-11-20 13:57:11 · 225 阅读 · 0 评论 -
LeetCode搜索插入位置求解(35题)(Python和C++实现)
一、题目描述:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入: [1,3,5,6], 0输出: 0二、解决办法1. 解决办法一:采用暴力求解的方式,算法复杂度O(N) (Pytho..原创 2020-11-19 20:27:55 · 241 阅读 · 2 评论 -
最长上升子序列算法(详细讲解+多个版本实现(C/C++和Python))
什么是最长上升子序列(LIS)问题?【题目描述】给定N个数,求这N个数的最长上升子序列的长度。【样例输入】72 5 3 4 1 7 6【样例输出】4什么是最长上升子序列? 就是给你一个序列,请你在其中求出一段不断严格上升的部分,它不一定要连续。就像这样:2,3,4,7和2,3,4,6就是序列2 5 3 4 1 7 6的两种选取方案。最长的长度是4.更直接的描述:首先需要设计状态,以及状态转移方程状态转移方程的推导状态转移方程的详细推导C++代码实现总结7. .原创 2020-11-18 22:10:44 · 1882 阅读 · 0 评论 -
break,continue和return的区别
return 可以直接结束整个方法,不管里面有多少个循环;continue 可以结束本次循环,执行下面的语句;break 可以结束本层循环;如果外面有多层循环,也需要结束的时候,以java为例,可以设置标识符,比如在多层循环的外面,设置一个标识符,然后在需要跳出循环的地方也设置标识符,如下面的outer就是标识符。public class BreakTest{ public static void main(String[] args){ // 外层循环,outer作为标识符 .原创 2020-11-16 23:06:47 · 96 阅读 · 0 评论 -
强化学习应用简述
强化学习 (reinforcement learning) 经过了几十年的研发,在一直稳定发展,最近取得了很多傲人的成果,后面会有越来越好的进展。强化学习广泛应用于科学、工程、艺术等领域。下面简单列举一些强化学习的成功案例,然后对强化学习做简介,介绍两个例子:最短路径和围棋,讨论如何应用强化学习,讨论一些仍然存在的问题和建议,介绍《机器学习》强化学习应用专刊和强化学习应用研讨会,介绍强化学习资料,回顾强化学习简史,最后,简单讨论强化学习的前景。一、成功案例我们已经见证了强化学习的一些突破,比如深度Q网转载 2020-11-11 21:20:20 · 5087 阅读 · 0 评论 -
支持向量机---笔记
支持向量机主要用于分类问题。最初支持向量机是用于二分类的问题,并且刚开始的时候,支持向量机也只是线性的支持向量机。支持向量机的思路是找到一个超平面,将空间的数据点分开。二分类问题非常适合用支持向量机。求解支持向量机问题可以转化为求解凸二次规划(优化)问题。支持向量机的输入空间与特征空间:(1)支持向量机的输入空间:欧式空间或离散集合;(2)支持向量机的特征空间:欧式空间或希尔伯特空间。支持向量机的分类问题是在特征空间完成的,所以分类之前需要将输入空间转换为特征空间。线性与非线性支持向量机:原创 2020-11-09 21:51:24 · 541 阅读 · 0 评论 -
模型学习的优化算法---笔记
常用的模型学习优化算法原创 2020-11-05 20:38:06 · 1337 阅读 · 0 评论 -
最大熵模型(Maximum Entropy Model)---笔记
最大熵模型和逻辑回归模型都是线性对数模型,一般应用在分类问题中,这两个模型都具有很好的分类能力。在我看来都是具有一个比较特殊的分布函数或者分布特征,很适合分类。其中,最大熵模型(Maximum Entropy Model)由最大熵原理推导实现。此外,最大熵原理指:学习概率模型时, 在所有可能的概率模型(分布)中, 熵最大的模型是最好的模型, 表述为在满足约束条件的模型集合中选取熵最大的模型。假设离散随机变量X的概率分布是P(X),熵为:约束条件为:其中,|X|是X的取值个数, X均匀分布时右边..原创 2020-11-04 20:53:42 · 1093 阅读 · 0 评论 -
逻辑(logistic)回归模型---笔记
符合如下等式要求的为逻辑回归模型的函数和密度函数(至于为啥,我也不是很清楚,可能是具有这个分布的特征,然后就取了这个名字),其实我感觉逻辑回归和高斯模型挺像的。不过根据我的经验,二项逻辑回归很适合处理二分类问题。二分类回归模型,主要就是Y只能取两个值,也就是0或者1。logistic分类器是由一组权值系数组成的, 最关键的问题就是如何获取这组权值, 通过极大似然函数估计获得, 并且Y~f(x;w)。似然函数是统计模型中参数的函数。 给定输出x时, 关于参数θ的似然函数L(θ|x)(在数值上)原创 2020-11-03 20:22:53 · 1287 阅读 · 0 评论 -
决策树算法之CART算法---笔记
CART算法是决策树的一种方法之一,其同样有如下流程:决策树的特征的选择,决策树的生成,决策树的剪枝。决策树的生成可以看成是一种局部最优,而决策树剪枝是全局最优的求解。其中决策树的剪枝也是用熵的模型,不过用的是经验熵,但是搞懂了熵就差不多懂决策树剪枝,里面根据节点的熵的大小进行比较。熵比较下的叶子节点会被剪去,也就是树的回缩,减少模型的复杂度,防止过度拟合。理想的决策树有三种: (1)叶子结点数最少; (2)叶子结点深度最小; (3)叶子结点数最少且叶子结点深度最小。然而, 洪家荣等人已经证明了要..原创 2020-11-02 20:36:40 · 538 阅读 · 0 评论 -
决策树生成---笔记
自己学习总结决策树的生成过程主要利用信息增益或者信息增益比进行特征选择,然后依次进行节点的选择,直到全部的叶子节点全部分配完成。本文将介绍常见的决策树生成算法:ID3算法C4.5算法。其实ID3算法和C4.5算法原理都很简单。只要懂得怎么利用信息增益或者信息增益比进行特征选择,那么ID3算法和C4.5算法就会很轻松。ID3算法主要是在每一个子集中利用信息增益进行特征选择,然后在进行节点的类划分;C4.5算法主要是把ID3算法中的信息增益换成信息增益比,因为利用信息增益有一个问题,那就是某一个类原创 2020-11-01 22:31:54 · 695 阅读 · 0 评论 -
特征选择之信息增益---笔记
信息增益在决策树的特征选择中很重要,可以说是特征选择的核心方法之一,也同样是决策树生成的核心之一。决策树的算法很多都是建立在信息增益进行的,信息增益是建立在熵这个概念上进行的。熵就是衡量一个变量不确定性的度量。熵用的很广,在信息领域、在强化学习、在统计学习中都用的很广。下面我将分别介绍上述提到的概念:1. 熵:(entropy):信息量大小的度量, 即表示随机变量不确定性的度量。熵越大, 随机变量的不确定性越大。2. 信息增益:通俗的理解是:一个变量的熵减去其条件熵,得到的值就是这个条件的信息原创 2020-11-01 22:05:49 · 1041 阅读 · 0 评论 -
朴素贝叶斯算法--自己感悟
朴素贝叶斯之所加上“朴素”,主要是因为其在条件概率中假设为各个参数之间相互独立,比如P(X=x|Y=y),在其中假设X参数之间相互独立,就可以以乘积的形式求条件概率,否则,要求出相应的条件概率,几乎不可能,因为随着X参数以及Y类别参数的增加,需要求的参数是指数级别的增加,对计算量要求太高。朴素贝叶斯经过期望风险最小化原则,可以只考虑P(Y=y)P(X=x| P=y),最后在Y类别参数中进行argmax就可以求出相应Y的概率,也即可以对类别进行预测。朴素贝叶斯算法在连续变量中的应用,可以把P(Y=y)和.原创 2020-10-15 11:50:34 · 912 阅读 · 2 评论 -
关于生成式对抗网络(GAN) 还有这些开放性问题尚未解决
从某些指标来看,在过去的两年中,生成式对抗网络(Generative Adversarial Networks,简称GAN)的研究已经取得了长足进展。对图像合成模型进行的实际改进速度非常快,让人有种跟不上技术进步步伐的感觉。然而,从其他指标来看,实际发生的情况可能并非如此乐观。举例来说,关于“应该如何评估GAN”仍然存在广泛的分歧。鉴于目前的图像合成基准似乎有些泛滥,我们认为现在是反思这个人工智...转载 2019-04-18 10:13:46 · 1088 阅读 · 0 评论 -
机器人领域的SCI期刊和会议
机器人领域的SCI期刊杂志和国际会议List item【方法】要想找到比较全、比较新的资料,直接到校园网的图书馆,一般都有“期刊评价”这种选项,进去选SCI库,以关键字“robot”或者“robotic”搜一下就基本都出来了。例如广州地区高校图书馆联盟的“期刊投稿与评价” http://202.38.232.84/evaluation/ 。机械类同理。【结果】下面贴出2010年与机器人...转载 2018-11-20 19:19:19 · 20782 阅读 · 0 评论 -
机器人相关的网址
机器人网址:机器人实验室网址机器人研究所、公司网址协会、学会、期刊、杂志网址现代集成制造系统CIMS网址收集不全,随时补充。机器人实验室网址1 斯坦福大学航空航天机器人实验室 研究内容包括:机器人、宇航机器人、光子系统、环境工程、软件工程。http://sun-valley.stanford.edu/转载 2017-09-20 14:44:42 · 2938 阅读 · 0 评论 -
PRM路径规划算法
路径规划作为机器人完成各种任务的基础,一直是研究的热点。研究人员提出了许多规划方法:如人工势场法、单元分解法、随机路标图(PRM)法、快速搜索树(RRT)法等。传统的人工势场、单元分解法需要对空间中的障碍物进行精确建模,当环境中的障碍物较为复杂时,将导致规划算法计算量较大。基于随机采样技术的PRM法可以有效解决高维空间和复杂约束中的路径规划问题。 PRM是一种基于图搜索的方法,它将连续空转载 2017-09-19 17:13:45 · 23593 阅读 · 9 评论