CN107065561B - 两轮自平衡车的机器学习控制方法 - Google Patents
两轮自平衡车的机器学习控制方法 Download PDFInfo
- Publication number
- CN107065561B CN107065561B CN201710343873.6A CN201710343873A CN107065561B CN 107065561 B CN107065561 B CN 107065561B CN 201710343873 A CN201710343873 A CN 201710343873A CN 107065561 B CN107065561 B CN 107065561B
- Authority
- CN
- China
- Prior art keywords
- state
- balance car
- current
- behavior
- current state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000010801 machine learning Methods 0.000 title claims abstract description 15
- 230000006399 behavior Effects 0.000 claims abstract description 43
- 238000011156 evaluation Methods 0.000 claims abstract description 24
- 230000006870 function Effects 0.000 claims abstract description 9
- 230000008859 change Effects 0.000 claims abstract description 7
- 230000008569 process Effects 0.000 claims description 3
- 230000003044 adaptive effect Effects 0.000 abstract description 3
- 230000003542 behavioural effect Effects 0.000 abstract 2
- 238000011217 control strategy Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/042—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Motorcycle And Bicycle Frame (AREA)
- Control Of Electric Motors In General (AREA)
Abstract
本发明公开了一种两轮自平衡车的机器学习控制方法,包括:S1:获取平衡车当前的状态量,所述状态量包括倾角和角速度;S2:根据最优行为的概率、当前状态下的状态行为指标和所述当前的状态量得到驱动电机的控制信号;S3:根据所述控制信号控制驱动电机运行,使所述平衡车趋于平衡,并采用预设评价函数对所述平衡车的状态量改变进行评价得到报酬评价值;S4:根据所述报酬评价值更新当前状态下的状态行为指标;S5:观测并更新所述平衡车的状态量,并返回步骤S1。本发明具有如下优点:无需模型的先验知识,具有自学习、自适应的优点,应用灵活。
Description
技术领域
本发明属于机器人与信息技术交叉领域,具体涉及一种两轮自平衡车的机器学习控制方法。
背景技术
自平衡车是近年来出现的一种个人便捷交通工具,传统平衡车的控制都是基于经典PID控制方法。传统的PID控制方法需要具备一定的先验知识,才能实现对平衡车的自动控制,导致应用不灵活。
发明内容
本发明旨在至少解决上述技术问题之一。
为此,本发明的目的在于提出一种两轮自平衡车的机器学习控制方法,无需模型的先验知识,具有自学习、自适应的优点,应用灵活。
为了实现上述目的,本发明的实施例公开了一种两轮自平衡车的机器学习控制方法,包括以下步骤:S1:获取平衡车当前的状态量,所述状态量包括倾角和角速度;S2:根据最优行为的概率、当前状态下的状态行为指标和所述当前的状态量得到驱动电机的控制信号;S3:根据所述控制信号控制驱动电机运行,使所述平衡车趋于平衡,并采用预设评价函数对所述平衡车的状态量改变进行评价得到报酬评价值;S4:根据所述报酬评价值更新当前状态下的状态行为指标;S5:观测并更新所述平衡车的状态量,并返回步骤S1。
进一步地,步骤S2进一步包括:根据以下公式并以概率∈从所有可能的a取值域中随机选择行为a:
a=arg maxa′{Q(s,a′)}
其中,s为当前的状态量,θ为当前时刻平衡车的倾角,为当前时刻平衡车倾角的角速度,0<∈<1,a′为所述驱动电机的力矩取值。
进一步地,采用以下公式得到所述报酬评价值:
其中c1和c2为正常数,r(s,a)为所述报酬评价值。
进一步地,采用以下公式更新所述状态行为指标:
Q(s,a)←Q(s,a)+α[r(s,a)+γmaxa'Q(s',a')-Q(s,a)]
其中,Q(s,a)是当前状态下的状态行为指标,γ是折扣因子且0<γ<1,α是一个惯性因子常数。
进一步地,利用陀螺仪测量得到所述平衡车的倾角和角速度。
本发明实施例的两轮自平衡车的机器学习控制方法,与现有技术相比具有如下优点:
1、本发明的控制方法无需知道被控对象平衡车的物理模型和先验知识,学习得到的控制策略能够自适应被控对象的变化,当被控对象、运行环境发生较大变化时,无需像传统PID控制需要调整参数,本发明能够通过自学习逐渐习得新的最优控制律;
2、本发明的学习算法是在线学习算法,可以在实际运行中不断进行策略更新,进而逐渐改进控制效果;
3、本发明对设备有着较少的设定要求。可直接在现有室内环境控制设备中实现。该系统与算法独立于底层设备的具体控制算法,推广性更强。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明一个实施例的两轮自平衡车的机器学习控制方法的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
参照下面的描述和附图,将清楚本发明的实施例的这些和其他方面。在这些描述和附图中,具体公开了本发明的实施例中的一些特定实施方式,来表示实施本发明的实施例的原理的一些方式,但是应当理解,本发明的实施例的范围不受此限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
以下结合附图描述本发明。
图1是本发明一个实施例的两轮自平衡车的机器学习控制方法的流程图。如图1所示,本发明的两轮自平衡车的机器学习控制方法,包括以下步骤:
S1:获取平衡车当前的状态量,所述状态量包括倾角和角速度。
在本发明的一个实施例中,利用陀螺仪测量得到所述平衡车的倾角和角速度。
S2:根据最优行为的概率、当前状态下的状态行为指标和所述当前的状态量得到驱动电机的控制信号。
在本发明的一个实施例中,步骤S2进一步包括:
根据以下公式并以概率∈从所有可能的a取值域中随机选择行为a:
a=arg maxa′{Q(s,a′)}
其中,s为当前的状态量,θ为当前时刻平衡车的倾角,为当前时刻平衡车倾角的角速度,0<∈<1,a′为行为空间中所有可能的行为,也即驱动电机的力矩取值。
S3:根据所述控制信号控制驱动电机运行,使所述平衡车趋于平衡,并采用预设评价函数对所述平衡车的状态量改变进行评价得到报酬评价值。
在本发明的一个实施例中,采用以下公式得到所述报酬评价值:
其中c1和c2为正常数,r(s,a)为所述报酬评价值。
S4:根据所述报酬评价值更新当前状态下的状态行为指标。
在本发明的一个实施例中,采用以下公式更新所述状态行为指标:
Q(s,a)←Q(s,a)+α[r(s,a)+γmaxa'Q(s',a')-Q(s,a)]
其中,Q(s,a)是当前状态下的状态行为指标,γ是折扣因子且0<γ<1,α是一个惯性因子常数。
S5:观测并更新所述平衡车的状态量,并返回步骤S1。
具体地,首先本发明实施例的两轮自平衡车的机器学习控制方法,具体包括:
状态定义:即当前平衡车的环境测量信息。所述状态定义,即对当前平衡车的状态,由平衡车的传感器测量得到。在平衡车上一般配置陀螺仪传感器以测量车体倾角,因此状态可定义为其中θ为当前时刻平衡车的倾角,为当前时刻平衡车倾角的角速度。
控制行为:即平衡车电机的输出力矩。所述控制行为,指控制策略可控量,在平衡车上一般来说其控制变量为驱动电机的力矩,因此控制行为可定义为平衡车电机的输出力矩u,即a=u,其中u为当前时刻的电机输出力矩,其正负代表电机的不同转动方向。
状态行为报酬:即对已执行的控制行为的评价。其中,状态行为报酬的选择可以综合考虑多方面的因素,包括当前平衡车的倾角及其角速度、位移距离等相关信息,具体定义方式需要视情况改变。在当前状态下的某个行为导致系统所得的报酬降低,进而影响到对该行为的评价,直到该控制行为被排除在最优控制策略之外。
所述状态行为报酬,为在特定状态下,执行某一控制行为后,控制系统对于该行为执行效果的一个评价。在该问题中,报酬函数r的选择需要满足r≤0,且当车体越倾斜时r越小,当车体完全竖直且角速度为零时标定为r=0的理想状态。报酬函数的选择可以综合考虑多方面因素,合理的报酬函数选择对最终学习算法的性能存在影响。例如,可以定位为当倾角超过某个指定阈值θ0(如取值为2度)时都为-1惩罚,也即r=0,ifθ<θ0;r=-1,ifθ≥θ0;更合理的是引入角速度来区分车体处于正在回正的好倾向,还是会变得更加倾斜的坏倾向,例如一个简单的线性加权做法是其中c1和c2为正常数,如分别取值2和1。
策略更新:即根据对控制行为的评价,更新已有的控制行为评价,同时选择评价最高的控制行为,形成更新后的控制策略。所述策略更新,指在每次获得该行为报酬时,与之前该状态行为已有的报酬指标进行融合计算,获得更新后的状态行为指标。更新的控制策略则选取在各个状态下,该项指标最好的控制行为。即先根据当前获得的行为报酬值r对当前的状态行为指标Q进行迭代更新,获得更新后的状态行为指标值Q(s,a)←Q(s,a)+α[r+γmaxa'Q(s',a')-Q(s,a)],其中Q(s,a)是当前状态下的状态行为指标;γ是折扣因子,其取值在0至1范围内;α是一个惯性因子常数,也可认为是算法的学习速率,其取值一般为一个较小的正值,也可随时间而变化。
所述控制决策选择,是根据当前的状态来选取最优的控制行为,即选择合适电机输出力矩u使得学习算法关注的优化目标能够得到提升:以概率1-∈来选择a=arg maxa′{Q(s,a′)};以概率∈来随机选取其他的控制行为,其中∈为很小的非负数,例如∈=0.05。
连续变量的离散化:由于上述状态和控制行为其本质均为连续变量,连续变量的无穷多取值对学习算法的工程实现造成障碍,需要将其进行离散化,也即将倾角、角速度、输出力矩的取值进行离散化。所述连续变量的离散化,是将陀螺仪所测得的倾角取值、角速度取值以及电机驱动力矩取值进行离散化,便于学习算法的工程实现。具体离散精度需要综合考虑算法收敛速度以及复杂度要求,一般来说,离散化精度越高,模型与真实系统越接近,但是算法复杂度越大,收敛速度也会受到影响。在工程实现中一般不会取太精细的离散化程度,且进行非均匀离散化,例如在该问题中取倾角为零度、正负2度、正负5度、正负10度,取电机驱动力矩为零、正负4Nm。
本发明实施例的两轮自平衡车的机器学习控制方法,与现有技术相比具有如下优点:
1、本发明的控制方法无需知道被控对象平衡车的物理模型和先验知识,学习得到的控制策略能够自适应被控对象的变化,当被控对象、运行环境发生较大变化时,无需像传统PID控制需要调整参数,本发明能够通过自学习逐渐习得新的最优控制律;
2、本发明的学习算法是在线学习算法,可以在实际运行中不断进行策略更新,进而逐渐改进控制效果;
3、本发明对设备有着较少的设定要求。可直接在现有室内环境控制设备中实现。该系统与算法独立于底层设备的具体控制算法,推广性更强。
另外,本发明实施例的两轮自平衡车的机器学习控制方法的其它构成以及作用对于本领域的技术人员而言都是已知的,为了减少冗余,不做赘述。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同限定。
Claims (2)
1.一种两轮自平衡车的机器学习控制方法,其特征在于,包括以下步骤:
S1:获取平衡车当前的状态量,所述状态量包括倾角和角速度;
S2:根据最优行为的概率、当前状态下的状态行为指标和所述当前的状态量得到驱动电机的控制信号,其中,步骤S2进一步包括:
根据以下公式并以概率∈从所有可能的a取值域中随机选择行为a:
a=arg maxa′{Q(s,a′)}
其中,s为当前的状态量,θ为当前时刻平衡车的倾角,为当前时刻平衡车倾角的角速度,0<∈<1,a′为所述驱动电机的力矩取值;
S3:根据所述控制信号控制驱动电机运行,使所述平衡车趋于平衡,并采用预设评价函数对所述平衡车的状态量改变进行评价得到报酬评价值,其中,采用以下公式得到所述报酬评价值:
其中c1和c2为正常数,r(s,a)为所述报酬评价值;
S4:根据所述报酬评价值更新当前状态下的状态行为指标,其中,采用以下公式更新所述状态行为指标:
Q(s,a)←Q(s,a)+α[r(s,a)+γmaxa'Q(s',a')-Q(s,a)]
其中,Q(s,a)是当前状态下的状态行为指标,γ是折扣因子且0<γ<1,α是一个惯性因子常数;
S5:观测并更新所述平衡车的状态量,并返回步骤S1。
2.根据权利要求1所述的两轮自平衡车的机器学习控制方法,其特征在于,利用陀螺仪测量得到所述平衡车的倾角和角速度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710343873.6A CN107065561B (zh) | 2017-05-16 | 2017-05-16 | 两轮自平衡车的机器学习控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710343873.6A CN107065561B (zh) | 2017-05-16 | 2017-05-16 | 两轮自平衡车的机器学习控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107065561A CN107065561A (zh) | 2017-08-18 |
CN107065561B true CN107065561B (zh) | 2019-11-22 |
Family
ID=59610263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710343873.6A Active CN107065561B (zh) | 2017-05-16 | 2017-05-16 | 两轮自平衡车的机器学习控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107065561B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110109354B (zh) * | 2019-04-17 | 2022-01-07 | 杭州电子科技大学 | 一种反作用轮平衡自行车机器人自适应滑模控制方法 |
CN110102055A (zh) * | 2019-05-14 | 2019-08-09 | 网易(杭州)网络有限公司 | 一种虚拟对象的决策方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102645894A (zh) * | 2012-04-20 | 2012-08-22 | 中国科学院自动化研究所 | 模糊自适应动态规划方法 |
CN103217899A (zh) * | 2013-01-30 | 2013-07-24 | 中国科学院自动化研究所 | 基于数据的q函数自适应动态规划方法 |
CN103324085A (zh) * | 2013-06-09 | 2013-09-25 | 中国科学院自动化研究所 | 基于监督式强化学习的最优控制方法 |
CN103381826A (zh) * | 2013-07-31 | 2013-11-06 | 中国人民解放军国防科学技术大学 | 基于近似策略迭代的自适应巡航控制方法 |
CN103488080A (zh) * | 2013-09-09 | 2014-01-01 | 河北科技师范学院 | 基于分层模糊系统的月球探测车协调驱动自适应容错控制方法 |
CN105059213A (zh) * | 2015-08-11 | 2015-11-18 | 奇瑞汽车股份有限公司 | 一种智能跟车控制系统及方法 |
-
2017
- 2017-05-16 CN CN201710343873.6A patent/CN107065561B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102645894A (zh) * | 2012-04-20 | 2012-08-22 | 中国科学院自动化研究所 | 模糊自适应动态规划方法 |
CN103217899A (zh) * | 2013-01-30 | 2013-07-24 | 中国科学院自动化研究所 | 基于数据的q函数自适应动态规划方法 |
CN103324085A (zh) * | 2013-06-09 | 2013-09-25 | 中国科学院自动化研究所 | 基于监督式强化学习的最优控制方法 |
CN103381826A (zh) * | 2013-07-31 | 2013-11-06 | 中国人民解放军国防科学技术大学 | 基于近似策略迭代的自适应巡航控制方法 |
CN103488080A (zh) * | 2013-09-09 | 2014-01-01 | 河北科技师范学院 | 基于分层模糊系统的月球探测车协调驱动自适应容错控制方法 |
CN105059213A (zh) * | 2015-08-11 | 2015-11-18 | 奇瑞汽车股份有限公司 | 一种智能跟车控制系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107065561A (zh) | 2017-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109597317B (zh) | 一种基于自学习的车辆自动驾驶方法、系统及电子设备 | |
CN109733395B (zh) | 一种基于可拓优度评价的自动驾驶汽车横向协调控制方法 | |
CN102815299B (zh) | 通过用于车道定中/保持的车道标记识别的车道感测 | |
US9454153B2 (en) | Farm vehicle autopilot with automatic calibration, tuning and diagnostics | |
JP7128152B2 (ja) | 学習方法及びプログラム | |
CN107065561B (zh) | 两轮自平衡车的机器学习控制方法 | |
CN105527963B (zh) | 侧方位停车方法及系统 | |
CN111038477B (zh) | 车辆控制方法、装置和设备 | |
CN107390682B (zh) | 一种农用车辆自动驾驶路径跟随方法及系统 | |
US20150346723A1 (en) | Vehicle trajectory planning for autonomous vehicles | |
JP6721121B2 (ja) | 制御カスタマイズシステム、制御カスタマイズ方法および制御カスタマイズプログラム | |
CN111538241B (zh) | 一种平流层飞艇水平轨迹智能控制方法 | |
CN110727266B (zh) | 轨迹规划方法、装置及车辆及其控制方法、系统 | |
CN107709058B (zh) | 基于轨迹的底盘控制 | |
CN110654384A (zh) | 一种基于深度强化学习的车道保持控制算法及系统 | |
CN111708856B (zh) | 一种基于强化学习的车道线的众包数据分段融合方法 | |
CN113844535B (zh) | 基于方向盘转矩的主动转向控制方法 | |
CN113015982B (zh) | 人工神经网络及其训练方法 | |
CN110525421B (zh) | 一种用于具有挂车的车辆的车道保持强化学习方法及系统 | |
CN112687121A (zh) | 行驶轨迹的预测方法、装置及自动驾驶车辆 | |
CN114475607B (zh) | 自动驾驶车辆的拟人化换道方法、装置、车辆及存储介质 | |
CN114728584A (zh) | 用于在机动车的人机接口上显示信息的方法、计算机程序产品、人机接口以及机动车 | |
CN112985446A (zh) | 车辆导航音量的自动调节算法 | |
WO2018008503A1 (ja) | 制御装置 | |
CN116749953A (zh) | 自动泊车的学习方法、装置、云服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |