Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >超冗余机器人运动控制:蛇形机器人 & 8自由度平面机械臂

超冗余机器人运动控制:蛇形机器人 & 8自由度平面机械臂

原创
作者头像
ZC_Robot机器人技术
修改于 2020-09-25 15:02:56
修改于 2020-09-25 15:02:56
4.8K00
代码可运行
举报
运行总次数:0
代码可运行

1 概述

超冗余机器人具有适应复杂多变环境的特点,成为机器人研究中的一个热点,超冗余机器人的代表诸如蛇形机器人等。,生物蛇所 具有的运动步态是无足脊椎动物行走步态的典 范。运动学模型和动力学模型是蛇形机器人的控 制基础。基于前人对生物蛇形态曲线的初步探 索,为深入研究蛇形机器人步态,运动学模型和动 力学模型成为该领域的研究重点。根据蛇形机器 人的运动步态特点,可以将运动学模型和动力学 模型分为二维步态和三维步态两种。

二维步态:蛇形机器人的二维步态主要指的是蜿蜒、内 攀爬和蠕动(也称行波步态)。蜿蜒步态与生物蛇 的蜿蜒运动相同,蠕动步态犹如尺蠖蠕动,但其效 率很低,内攀爬步态类似于鼓风琴运动,但是利用 机器人两个外侧表面与外界的接触摩擦力,及自 身部分向前运动。

三维步态:蛇形机器人的三维步态包括侧移步态和攀爬 步态,两种步态与生物蛇的运动相同,并且均具有 螺旋曲线的特点。

snakebot
snakebot

图片位置

2 开源项目

a 7-DoF snake robot. Robotis Dynamixel MX-28AR, Protocol1.0. Ubuntu 16.04 LTS, ROS kinetic, ROS Control.

项目具体链接:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://github.com/cygni/snakebot
https://github.com/guzhaoyuan/snake_robot
dynamixel
dynamixel
七自由度蛇形机械臂
七自由度蛇形机械臂
圆弧轨迹
圆弧轨迹

安装步骤如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 1. install ros kinetic and create workspace

# 2. install dynamixel lib
git clone https://github.com/ROBOTIS-GIT/DynamixelSDK.git
cd DynamixelSDK/c++/build/linux64
make
sudo make install
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib # add dynamixel lib install path

# 3. get code
cd ~/catkin_ws/src
git clone https://github.com/guzhaoyuan/snake_robot.git
git clone https://github.com/guzhaoyuan/snake_moveit_config.git
cd ..
catkin_make

3 平面8自由度运动控制仿真

仿真图形如下:

末端位移
末端位移
关节角度
关节角度
障碍物距离
障碍物距离

具体程序如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
%Kinematic Control of Redundant Manipulato
clear;
close all;
%Sampling period
dt = 0.0005; %1 msec
%duration of motion (in secs)
Tf = 1.0; %1 sec
t = 0:dt:Tf;
%Initial position of end-effecto
pd8_0 = [5; 1; 0];
xde_0 = pd8_0(1);
yde_0 = pd8_0(2);
%final position
pd8_f = [6; 0; 0];
xde_f = pd8_f(1);
yde_f = pd8_f(2);
% desired trajectory (1st subtask): position (xd,yd); velocity (xd_,yd_)
Nmax = Tf/dt + 1;
k = linspace(0, Tf, Nmax);
a1 = 6*(xde_f - xde_0)/Tf^2;
a2 = -a1/Tf;
xd =(-a1*k.^3)/(3*Tf) + (a1*k.^2)/2 + xde_0;
yd =(-a1*k.^3)/(3*Tf) + (a1*k.^2)/2 + yde_0;
xd_ = a1*k + a2*k.^2;
yd_ = a1*k + a2*k.^2;
%%%%%%%%%% FIGURE FOR ANIMATION %%%%%%%%%%%%
%%%%%%% (moving robot stick diagram) %%%%%%%
figure;
%set(gcf, 'Position', get(0,'Screensize')); % Maximize figure.
axis([-1, 7 -0.5 3])
axis on
axis equal
hold on
xlabel('x (m)');
ylabel('y (m)');
plot(xd, yd, 'm:');
dtk = 10; %% interval between consecutive plots
pauseTime = 0.1;

% ****** KINEMATIC SIMULATION - Main loop ******
disp('Kinematic Simulation ...');

tt=0; tk=1;
qd(tk,1)=0; qd(tk,2)=0; qd(tk,3)=0; qd(tk,4)=0; qd(tk,5)=0; qd(tk,6)=0; qd(tk,7)=0; qd(tk,8)=0;
while (tt <= Tf)
    %Calculate Jacobian for current q
    c1 = cos(qd(tk,1));
    c12 = cos(qd(tk,1) + qd(tk,2));
    c123 = cos(qd(tk,1) + qd(tk,2) + qd(tk,3));
    c1234 = cos(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4));
    c12345 = cos(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5));
    c123456 = cos(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5) + qd(tk,6));
    c1234567 = cos(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5) + qd(tk,6) + qd(tk,7));
    c12345678 = cos(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5) + qd(tk,6) + qd(tk,7) + qd(tk,8));
    s1 = sin(qd(tk,1));
    s12 = sin(qd(tk,1) + qd(tk,2));
    s123 = sin(qd(tk,1) + qd(tk,2) + qd(tk,3));
    s1234 = sin(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4));
    s12345 = sin(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5));
    s123456 = sin(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5) + qd(tk,6));
    s1234567 = sin(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5) + qd(tk,6) + qd(tk,7));
    s12345678 = sin(qd(tk,1) + qd(tk,2) + qd(tk,3) + qd(tk,4) + qd(tk,5) + qd(tk,6) + qd(tk,7) + qd(tk,8));

    Jac1(1,1) = -c1 - s12 - c123 - s1234 - s12345 - s123456 + c1234567  - s12345678;
    Jac1(1,2) = Jac1(1,1) + c1;
    Jac1(1,3) = Jac1(1,2) + s12;
    Jac1(1,4) = Jac1(1,3) + c123;
    Jac1(1,5) = Jac1(1,4) + s1234;
    Jac1(1,6) = Jac1(1,5) + s12345;
    Jac1(1,7) = c1234567 - s12345678;
    Jac1(1,8) = -s12345678;
    
    Jac1(2,1) = -s1 + c12 - s123 + c1234 + c12345 + c123456 + s1234567 + c12345678;
    Jac1(2,2) = Jac1(2,1) + s1;
    Jac1(2,3) = Jac1(2,2) - c12;
    Jac1(2,4) = Jac1(2,3) + s123;
    Jac1(2,5) = Jac1(2,4) - c1234;
    Jac1(2,6) = c12345678 + c123456 + s1234567;
    Jac1(2,7) = c12345678 + s1234567;
    Jac1(2,8) = c12345678;
    
    %Pseudo-inverse of jacobian
    Jac1_psinv = Jac1'/(Jac1*Jac1');
    
    %Subtask 1
    task1 = Jac1_psinv*[xd_(tk); yd_(tk)];
    %forward kinematics
    xd1(tk) = -s1;
    yd1(tk) = c1;
    xd2(tk) = xd1(tk) + c12;
    yd2(tk) = yd1(tk) + s12;
    
    xd3(tk) = xd2(tk) - s123;
    yd3(tk) = yd2(tk) + c123;
    
    xd4(tk) = xd3(tk) + c1234;
    yd4(tk) = yd3(tk) + s1234;
    
    xd5(tk) = xd4(tk) + c12345;
    yd5(tk) = yd4(tk) + s12345;
    
    xd6(tk) = xd5(tk) + c123456;
    yd6(tk) = yd5(tk) + s123456;
    
    xd7(tk) = xd6(tk) + s1234567;
    yd7(tk) = yd6(tk) - c1234567;
    
    xd8(tk) = xd7(tk) + c12345678;
    yd8(tk) = yd7(tk) + s12345678;
    
    %Subtask 2
    %minimize distance of joints 6 and 7 from middle line between obstacles
    
    %joint 7
    dist7_m(tk) = (yd7(tk) - yde_0)^2;
    
    xi7 = zeros(8,1);
    xi7(1) = -2*(yd7(tk) - yde_0)*(-s1 + c12 - s123 + c1234 + c12345 + c123456 + s1234567);
    xi7(2) = -2*(yd7(tk) - yde_0)*(c12 - s123 + c1234 + c12345 + c123456 + s1234567);
    xi7(3) = -2*(yd7(tk) - yde_0)*(-s123 + c1234 + c12345 + c123456 + s1234567);
    xi7(4) = -2*(yd7(tk) - yde_0)*(c1234 + c12345 + c123456 + s1234567);
    xi7(5) = -2*(yd7(tk) - yde_0)*(c12345 + c123456 + s1234567);
    xi7(6) = -2*(yd7(tk) - yde_0)*(c123456 + s1234567);
    xi7(7) = -2*(yd7(tk) - yde_0)*(s1234567);
    xi7(8) = 0;
    
    %joint 6
    dist6_m(tk) = (yd6(tk) - yde_0)^2;
    
    xi6 = zeros(8,1);
    xi6(1) = -2*(yd6(tk) - yde_0)*(-s1 + c12 - s123 + c1234 + c12345 + c123456);
    xi6(2) = -2*(yd6(tk) - yde_0)*(c12 - s123 + c1234 + c12345 + c123456);
    xi6(3) = -2*(yd6(tk) - yde_0)*(-s123 + c1234 + c12345 + c123456);
    xi6(4) = -2*(yd6(tk) - yde_0)*(c1234 + c12345 + c123456);
    xi6(5) = -2*(yd6(tk) - yde_0)*(c12345 + c123456);
    xi6(6) = -2*(yd6(tk) - yde_0)*(c123456);
    xi6(7) = 0;
    xi6(8) = 0;
    
    %joint 5
    dist5_m(tk) = (yd5(tk) - yde_0)^2;
    
    xi5 = zeros(8,1);
    xi5(1) = -2*(yd5(tk) - yde_0)*(-s1 + c12 - s123 + c1234 + c12345);
    xi5(2) = -2*(yd5(tk) - yde_0)*(c12 - s123 + c1234 + c12345);
    xi5(3) = -2*(yd5(tk) - yde_0)*(-s123 + c1234 + c12345);
    xi5(4) = -2*(yd5(tk) - yde_0)*(c1234 + c12345);
    xi5(5) = -2*(yd5(tk) - yde_0)*(c12345);
    xi5(6) = 0;
    xi5(7) = 0;
    xi5(8) = 0;
    
    k5 = 50;
    k6 = 50;
    k7 = 100;
    task2(:,tk) = (eye(8) - Jac1_psinv*Jac1)*(k5*xi5 + k6*xi6 + k7*xi7);
    
    %angular velocity
    %qd_(tk, :) = task1' + task2(:, tk)';

%****************** Parallagh A *******************
%     if max([dist5_m(tk), dist6_m(tk), dist7_m(tk)]) == dist5_m(tk)
%         task2(:,tk) = (eye(8) - Jac1_psinv*Jac1)*(20*xi5);
%     elseif max([dist5_m(tk), dist6_m(tk), dist7_m(tk)]) == dist6_m(tk)
%         task2(:,tk) = (eye(8) - Jac1_psinv*Jac1)*(20*xi6);
%     else
%         task2(:,tk) = (eye(8) - Jac1_psinv*Jac1)*(20*xi7);
%     end
%     qd_(tk, :) = task1' + task2(:, tk)';
    
%****************** Parallagh B *******************
    if max([dist5_m(tk), dist6_m(tk), dist7_m(tk)]) >= 0.01
        qd_(tk,:) = task2(:, tk)';
    else
        qd_(tk, :) = task1' + task2(:, tk)';
    end
    
    %end-effector velocity
    v8(:, tk) = Jac1 * qd_(tk, :)';
    
    % numerical integration --> kinematic simulation
    qd(tk+1,1) = qd(tk,1) + dt*qd_(tk,1);
    qd(tk+1,2) = qd(tk,2) + dt*qd_(tk,2);
    qd(tk+1,3) = qd(tk,3) + dt*qd_(tk,3);
    qd(tk+1,4) = qd(tk,4) + dt*qd_(tk,4);
    qd(tk+1,5) = qd(tk,5) + dt*qd_(tk,5);
    qd(tk+1,6) = qd(tk,6) + dt*qd_(tk,6);
    qd(tk+1,7) = qd(tk,7) + dt*qd_(tk,7);
    qd(tk+1,8) = qd(tk,8) + dt*qd_(tk,8);
    
    %plot robot
    if (mod(tk, dtk) == 0 || tk == 1)
       % cla %clear plot
        plot(xd, yd, 'm:');
        
        plot(0, 0, 'o');
        
          plot([0, xd1(tk)], [0, yd1(tk)],'b');
          %plot(xd1(tk), yd1(tk), 'ro');
        
          plot([xd1(tk), xd2(tk)], [yd1(tk), yd2(tk)],'b');
          %plot(xd2(tk), yd2(tk), 'ro');
        
          plot([xd2(tk), xd3(tk)], [yd2(tk), yd3(tk)],'b');
          %plot(xd3(tk), yd3(tk), 'ro');
        
        plot([xd3(tk), xd4(tk)], [yd3(tk), yd4(tk)],'b');
          %plot(xd4(tk), yd4(tk), 'ro');
        
        plot([xd4(tk), xd5(tk)], [yd4(tk), yd5(tk)],'b');
          %plot(xd5(tk), yd5(tk), 'ro');
        
        plot([xd5(tk), xd6(tk)], [yd5(tk), yd6(tk)],'b');
          %plot(xd6(tk), yd6(tk), 'ro');
        
        plot([xd6(tk), xd7(tk)], [yd6(tk), yd7(tk)],'b');
          %plot(xd7(tk), yd7(tk), 'ro');
        
        plot([xd7(tk), xd8(tk)], [yd7(tk), yd8(tk)],'b');
          %plot(xd8(tk), yd8(tk), 'ro');
        
         plot(xd8(tk), yd8(tk), 'g+');
        
        %OBSTACLES
        diam = 0.2;
        d = 1;
        %5
        rectangle('Position',[xde_0 - diam/2, yde_0 - d/2+0.15, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %6
        rectangle('Position',[xde_0 - diam/2, yde_0 - d/2+1.2, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %7
        rectangle('Position',[xde_0 - diam/2, yde_0 + d/2, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %8
        rectangle('Position',[xde_0 - diam/2+0.2, yde_0 - d/2+0.15, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %9
        rectangle('Position',[xde_0 - diam/2+0.2, yde_0 - d/2+1.2, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %10
        rectangle('Position',[xde_0 - diam/2+0.4, yde_0 - d/2+0.15, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %21
        rectangle('Position',[xde_0 - diam/2+0.4, yde_0 - d/2+1.2, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %11
        rectangle('Position',[xde_0 - diam/2+0.6, yde_0 - d/2+1.35, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %12
        rectangle('Position',[xde_0 - diam/2+0.6, yde_0 - d/2+1.55, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %13
        rectangle('Position',[xde_0 - diam/2+0.8, yde_0 - d/2+1.55, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %14
        rectangle('Position',[xde_0 - diam/2+1, yde_0 - d/2+1.55, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %15
        rectangle('Position',[xde_0 - diam/2+1.1, yde_0 - d/2+1.35, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %16
        rectangle('Position',[xde_0 - diam/2+1.1, yde_0 - d/2+1.15, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %17
        rectangle('Position',[xde_0 - diam/2+1.1, yde_0 - d/2+0.95, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
        %18
        rectangle('Position',[xde_0 - diam/2+0.9, yde_0 - d/2+0.95, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
       %19
       rectangle('Position',[xde_0 - diam/2+0.6, yde_0 - d/2+0.2, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
       %20
       rectangle('Position',[xde_0 - diam/2+0.6, yde_0 - d/2+0.4, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
         %zuoshang
      %1
      rectangle('Position',[xde_0 - diam/2-0.578, yde_0 + d/2-0.35, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
      %2
      rectangle('Position',[xde_0 - diam/2-0.578, yde_0 + d/2-0.15, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
      %3
      rectangle('Position',[xde_0 - diam/2-0.378, yde_0 + d/2-0.15, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue');
      %4  
      rectangle('Position',[xde_0 - diam/2-0.178, yde_0 + d/2-0.15, diam, diam], 'Curvature', [1,1], 'FaceColor', 'blue')
     
        %%%%%%%%%
        
        pause(pauseTime);
    end
    
    tk = tk + 1;
    tt = tt + dt;
end

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
深度学习已经触底?这篇文章的观点令人信服吗?
许多人认为,算法可以利用认知意识来超越人类。机器可以在没有人类干预的情况下识别和学习任务。他们完全可以「思考」。许多人甚至提出了我们是否可以打造机器人配偶的问题。
机器之心
2019/04/30
5570
深度学习已经触底?这篇文章的观点令人信服吗?
图说人工智能简史,每一张图片都是一个里程碑
在人类文明的漫长历程中,对于智慧的追求从未停歇。自古代哲学家对逻辑和推理的探索,到20世纪计算机科学的诞生,我们见证了人工智能(Artificial Intelligence, AI)从概念的萌芽到技术的蓬勃发展。人工智能,作为计算机科学的一个分支,其核心目标是模拟人类思维,赋予机器学习、推理乃至创造的能力。AI大眼萌将带大家回顾人工智能发展的各个阶段。
AI大眼萌
2025/01/27
8.7K1
图说人工智能简史,每一张图片都是一个里程碑
AI从寒冬到复兴,以科学的方式赤裸裸地剖析
谈人工智能的历史,需要谈谈很有名的人工智能寒冬。第一次人工智能寒冬是在1975年左右。1956年,在达特茅斯会议之后,包括很多国家政府,美国国家科学基金会、军方,大家满怀希望投了很多钱。但是到1975年以后发生了几件事情,让人工智能进入了寒冬。 1975年的第一次人工智能寒冬 第一件事是,因为人工智能只能解决Toy dom人工智能n(摆弄玩具一样的简单任务)。那个时候做语音,只有10个词汇;下象棋,大概是20个词汇;做视觉的人,都不能辨认出一个椅子。 第二件事情,19
机器人网
2018/04/18
1.2K0
AI从寒冬到复兴,以科学的方式赤裸裸地剖析
AI学术交流——“人工智能”和“神经网络学习”
图灵对于人工智能的发展有诸多贡献,提出了一种用于判定机器是否具有智能的试验方法,即图灵试验,每年都有试验的比赛。此外,图灵提出的著名的图灵机模型为现代计算机的逻辑工作方式奠定了基础。
网络豆
2023/10/17
3970
AI学术交流——“人工智能”和“神经网络学习”
深度学习“奠基人”科伦斯:人脑中的一片黑暗才是“黑匣子”
如果说谁有资格谈论目前正在进行的人工智能革命,特伦斯·谢诺夫斯基(Terry Sejnowski)无疑是其中一个,特伦斯是20世纪80年代挑战构建人工智能主流方法的重要研究人员之一。
科技云报道
2022/04/15
3370
深度学习“奠基人”科伦斯:人脑中的一片黑暗才是“黑匣子”
赫尔辛基大学AI基础教程:关于预测未来(6.1节)
说些你可能会感到失望的话,我们不是巫师,不会有一个水晶球可以向我们展示未来世界会是什么样子,以及AI如何改变我们的生活。
AiTechYun
2018/07/27
4020
赫尔辛基大学AI基础教程:关于预测未来(6.1节)
贯穿计算机历史长河的幽灵竟是一张“彩票”,深度学习也曾被诅咒
先以数学为例。曾经繁荣一时的毕达哥拉斯学派曾提出“万物皆数”,也即“一切数均可表示成整数或整数之比”,这也成为这一学派的数学信仰。——后来该学派中的一个成员希巴斯带着
AI科技评论
2020/09/24
6460
贯穿计算机历史长河的幽灵竟是一张“彩票”,深度学习也曾被诅咒
为什么真正的人工智能不从深度学习中获得?
尽管深度学习前景光明也取得一些初步的成功,但它实际上可能会阻碍真正的人工智能的发展。 人工智能是一个包含许多概念和开发方法的强有力的保护伞。这些不同但不排他的方法能够让机器拥有接近人类的推理能力和智能
灯塔大数据
2018/04/04
1K0
为什么真正的人工智能不从深度学习中获得?
深度学习撞墙?LeCun与Marcus到底谁捅了马蜂窝
---- 新智元报道   编辑:Joey 如願 David 【新智元导读】图灵奖得主Yann LeCun正式撰文回应老冤家Gary Marcus,表示「深度学习撞墙」这个说法,我不同意! 今天的主角,是一对AI界相爱相杀的老冤家: Yann LeCun和Gary Marcus 在正式讲述这一次的「新仇」之前,我们先来回顾一下,两位大神的「旧恨」。 LeCun与Marcus之争 Facebook首席人工智能科学家和纽约大学教授,2018年图灵奖(Turing Award)得主杨立昆(Yann L
新智元
2022/06/20
3120
深度学习撞墙?LeCun与Marcus到底谁捅了马蜂窝
NIPS-16 | 无监督学习“感知分组”概念获突破,深度学习或迎来变革
【新智元导读】神经网络在图像中的物体识别上准确率做到75%,这是来自芬兰的一群研究员在NIPS2016 上公布的最新成果。他们使用的核心概念是“感知分组” (Perceptual Grouping),把感知到的表征信息进行分组,然后学习,整个神经网络会被复制4次,系统会对每一个复制的神经网络层进行学习。研究人员称:这是一项具有革命意义的研究,因为它把无监督学习的实现又向前推了一步。被称为RNN 之父的人工智能“无冕之王”的Jürgen Schmidhuber 是论文作者之一。 英国媒体 ibtimes 12
新智元
2018/03/26
1.1K0
NIPS-16 | 无监督学习“感知分组”概念获突破,深度学习或迎来变革
机器学习的前世今生:一段波澜壮阔的历史
AlphaGo的胜利,无人驾驶的成功,模式识别的突破性进展,人工智能的的飞速发展一次又一次地挑动着我们的神经。作为人工智能的核心,机器学习也在人工智能的大步发展中备受瞩目,光辉无限。
IT阅读排行榜
2018/08/15
2.5K0
机器学习的前世今生:一段波澜壮阔的历史
深度学习的历史和趋势
引言: 本文是黄文辉同学的第4篇文章,前面三篇分别是: SparkStreaming窗口操作 sqoop数据导入总结 SparkStreaming入门 最近AI领域真的很热,国际国内,大小巨头都投入巨
大数据和云计算技术
2018/03/08
1.8K0
深度学习的历史和趋势
人工智能迎来春天 在“深度学习”帮助下欲当“学霸”
人类对人工智能寄予厚望,赋予其无尽的遐想,更是许多科幻大片的主题。但人工智能的发展一直不如人意,直至一种名为深度学习的强大技术横空出世,这一情况才发生了根本性转变。 人工智能曾步入“寒冬” 人工智能的开发可以追溯到上世纪五十年代。随着计算机的出现,人工智能有了新的发展,并在跳棋上战胜了人类,同时在数学定理证明上展现出强大能力。许多科学家兴奋地认为,利用软硬件形成的人工智能可在任何领域内战胜人类。麻省理工学院著名科学家马文明斯基则公开宣称,人工智能只需要一代人的时间就可以战胜人类。这一愿望推动了一大批科研人
智能算法
2018/04/02
4790
【万赟】从图灵测试到深度学习:人工智能60年
【新智元导读】美国休斯敦大学副教授万赟回溯人工智能60年历史,对比理性和感性两大流派各自轨迹,指出在目前这轮以深度学习为代表的人工智能新高潮中,各大企业对收购和人才猎取的投入最终很有可能以泡沫破裂收场;目前我们对人脑智能仍然缺乏理解,真正需要防范的是强势集团对人工智能技术的滥用。 作者简介:万赟,美国休斯敦大学维多利亚分校,副教授,研究方向为电子商务和互联网应用。 人工智能诞生 2014 年英美合作的电影《模仿游戏》讲述了英国数学家艾伦·图灵60年前在二战期间帮助设计电子计算机破译纳粹德国军事密码的真实
新智元
2018/03/22
1.4K0
【万赟】从图灵测试到深度学习:人工智能60年
痴人、信徒、先驱:深度学习三巨头等口述神经网络复兴史
现代神经网络、机器学习等AI技术背后的思想,可以追溯到第二次世界大战行将结束之际。彼时,学者们开始构建计算系统,旨在以类似于人类大脑的方式存储和处理信息。
量子位
2018/07/20
4430
邬学宁:未来30年人工智能将影响人类命运
上海2018年“创客中国”高峰论坛上,数据科学50人成员、SAP硅谷创新中心首席数据科学家邬学宁以“大数据驱动人工智能的应用和展望”为主题发表了演讲。随着物联网、云计算和移动互联网等技术的发展成熟,大数据驱动的人工智能进行“双创”的风口,已经到来。DT君整理出了数据侠邬学宁的演讲实录,一起来看看用大数据当燃料,能“燃”起人工智能怎样的未来吧~
DT数据侠
2018/08/08
4090
邬学宁:未来30年人工智能将影响人类命运
《复杂》作者梅拉妮·米歇尔发文直指AI四大谬论,探究AI几度兴衰背后的根源
人工智能的春天和寒冬交替轮回,本文脱离枯燥的技术语言,从感性的角度为你揭示AI兴衰起伏背后的根本原因。
AI科技评论
2021/05/19
5870
《复杂》作者梅拉妮·米歇尔发文直指AI四大谬论,探究AI几度兴衰背后的根源
【Nature】拥抱深度学习,不要过多苛求黑箱
【新智元导读】Nature 昨日刊发新闻特写,针对AI,特别是深度学习中的黑箱问题的来龙去脉进行分析。AI 中神经网络深度学习方法的黑箱问题是科学家们一直在尝试解决的问题,现在AI黑箱问题带来的负面影响已经出现,值得引起注意。一些科学家也在创造不同的AI路径,希望能让AI 更加透明。文章最后指出,不应该太过苛责黑箱问题,毕竟我们每天都在使用大脑,但同样对大脑的工作原理并不知情。 Pomerleau 院长仍然记得他第一次与黑箱问题交锋的经历。那是 1991 年,当时他尽力做的开创性尝试,现在已经稀松平常了:教
新智元
2018/03/23
1.2K0
深度学习简史
深度学习可以追溯到20世纪40年代。深度学习看似是一个全新的领域,最不过因为在目前流行的前几年它还是相对冷门的,同时也因为它被赋予了许多不同的名称(其中大部分已经不再使用),最近才成为众所周知的“深度学习”。这个研究领域已经更换了很多名称,它反映了不同的研究人员和不同观点的影响。一般认为,迄今为止深度学习已经经历了3次发展浪潮:20世纪40年代到60年代,深度学习的雏形已经出现在控制论(cybeinetics)中;20世纪80年代到90年代,深度学习表现为连接主义(connectionsm);直到2006年,才真正以深度学习之名复兴。
狼啸风云
2019/09/18
1.4K0
深度学习简史
LeCun在线访谈:我的深度学习之路
近日,深度学习先驱Yann LeCun接受了Gradient Podcast的采访,畅谈了他在80年代早期的AI研究以SSL的最新发展。
新智元
2021/08/25
3500
推荐阅读
相关推荐
深度学习已经触底?这篇文章的观点令人信服吗?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验