CN101923662A - 信息处理设备、信息处理方法以及程序 - Google Patents
信息处理设备、信息处理方法以及程序 Download PDFInfo
- Publication number
- CN101923662A CN101923662A CN201010199034XA CN201010199034A CN101923662A CN 101923662 A CN101923662 A CN 101923662A CN 201010199034X A CN201010199034X A CN 201010199034XA CN 201010199034 A CN201010199034 A CN 201010199034A CN 101923662 A CN101923662 A CN 101923662A
- Authority
- CN
- China
- Prior art keywords
- state
- action
- series
- intelligent body
- transition probability
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/29—Graphical models, e.g. Bayesian networks
- G06F18/295—Markov models or related models, e.g. semi-Markov models; Markov random fields; Networks embedding Markov models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Evolutionary Biology (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Human Computer Interaction (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- Image Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供信息处理设备、信息处理方法和程序。该信息处理设备包括计算单元和确定单元。计算单元被配置成基于通过如下方式得到的状态转换概率模型来计算当前状态系列候选,所述当前状态系列候选是使能够进行动作的智能体到达当前状态的状态系列:使用智能体所执行的动作和当智能体执行动作时在智能体处观测到的观测值来执行对状态转换概率模型的学习。状态转换概率模型由如下内容规定:状态将会根据能够进行动作的智能体所执行动作中的每个动作来被转换的状态转换概率,以及从所述状态将会观测到预定观测值的观测概率。确定单元被配置成根据预定策略、使用当前状态系列候选来确定智能体接下来要执行的动作。
Description
技术领域
本发明涉及信息处理设备、信息处理方法、以及程序,更具体而言,涉及例如允许智能体(agent)能够自主地执行各种类型的动作以确定合适动作的信息处理设备、信息处理方法以及程序。
背景技术
状态预测和行为确定技术的实例包括如下这种方法:应用部分观测的马尔可夫决策过程(Partially Observed Markov Decision Process)以根据被学习数据来自动构建静态部分观测的马尔可夫决策过程的方法(例如,见日本未审查专利申请公开No.2008-186326)。
另外,自主移动的机器人和振动体的操作规划方法的实例包括如下这种方法:通过进行被马尔可夫状态模型分散的操作规划、进一步将规划的目标输入控制器、以及得出要给予待受控对象的输出来执行所期望的控制的方法(例如,见日本未审查专利申请公开No.2007-317165和2006-268812)。
发明内容
已经提出了各种方法作为用于确定智能体(能够自主地执行各种类型的动作)的合适动作的方法,并期望提出进一步的新方法。
已经发现期望允许智能体确定合适的动作,即,允许智能体确定合适的动作,作为要由智能体执行的动作。
根据本发明实施例的信息处理设备或程序是如下这种信息处理设备或使得计算机作为如下这种信息处理设备的程序,所述信息处理设备包括:计算单元,被配置成基于得到的状态转换概率模型,计算当前状态系列候选,当前状态系列候选是能够进行动作的智能体到达当前状态的状态系列,通过如下方式得到状态转换概率模型:使用所述智能体所执行的动作以及当所述智能体执行动作时在所述智能体处观测到的观测值来执行对所述状态转换概率模型的学习,其中所述状态转换概率模型由如下内容规定:根据能够进行动作的智能体所执行动作中的每个动作、状态将会转换的状态转换概率,以及从所述状态将会观测到预定观测值的观测概率;以及确定单元,被配置成根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
根据本发明实施例的信息处理方法是包括如下步骤的信息处理方法:基于得到的状态转换概率模型,计算当前状态系列候选,当前状态系列候选是能够进行动作的智能体到达当前状态的状态系列,通过如下方式得到状态转换概率模型:使用所述智能体所执行的动作以及当所述智能体执行动作时在所述智能体处观测到的观测值来执行对所述状态转换概率模型的学习,其中所述状态转换概率模型由如下内容规定:根据能够进行动作的智能体所执行动作中的每个动作、状态将会转换的状态转换概率,以及从所述状态将会观测到预定观测值的观测概率;以及根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
就以上配置而言,基于通过如下方式得到的状态转换概率模型,计算当前状态系列候选(能够进行动作的智能体到达当前状态的状态系列):使用所述智能体所执行的动作以及当所述智能体执行动作时在所述智能体处观测到的观测值来执行对所述状态转换概率模型的学习,其中所述状态转换概率模型由如下内容规定:根据能够进行动作的智能体所执行动作中的每个动作、状态将会转换的状态转换概率,以及从所述状态将会观测到预定观测值的观测概率。另外,根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
注意,信息处理设备可以是单机设备,或者,可以是构成设备的内部组件。另外,程序的提供可以通过经由传输介质来传输,或者,通过记录在记录介质中。
因此,智能体可以确定合适的动作,作为要由智能体执行的动作。
附图说明
图1是示出了动作环境的图;
图2是示出了动作环境配置改变的情形的图;
图3A和图3B是示出了智能体所执行动作、以及智能体观测到的观测值的图;
图4是示出应用了根据本发明的信息处理设备的智能体的实施例的配置实例的方框图;
图5是说明了反射动作模式中的处理的流程图;
图6是说明了扩展HMM(隐马尔可夫模型)的状态转换概率的图;
图7是说明了对扩展HMM的学习处理的流程图;
图8是说明了识别动作模式中的处理的流程图;
图9是说明了目标确定单元所执行的用于确定目标状态的处理的流程图;
图10A至图10C是说明了动作确定单元所执行的对动作规划的计算的图;
图11是说明了动作确定单元使用抑制因子所执行的对扩展HMM的状态转换概率的校正的图;
图12是说明了状态识别单元所执行的对抑制因子的更新处理的流程图;
图13是说明了扩展HMM的状态(开放边缘检测单元所检测到的开放端)的图;
图14A和图14B是说明了开放边缘检测单元列出其中以等于阈值或更大的概率观测到观测值的状态的处理的图;
图15是说明了使用对于观测值列出的状态来生成动作模板的方法的图;
图16是说明了用于基于观测概率来计算动作概率的方法的图;
图17是说明了用于基于状态转换概率来计算动作概率的方法的图;
图18是示意性地示出了差值动作概率的图;
图19是说明了用于检测开放边缘的处理的流程图;
图20是说明了用于通过分支结构检测单元对分支结构化状态进行检测的方法的图;
图21A和图21B是示出了仿真所采用的动作环境的图;
图22是示意性地示出了通过仿真进行学习之后的扩展HMM的图;
图23是示出了仿真结果的图;
图24是示出了仿真结果的图;
图25是示出了仿真结果的图;
图26是示出了仿真结果的图;
图27是示出了仿真结果的图;
图28是示出了仿真结果的图;
图29是示出了仿真结果的图;
图30是示出应用了智能体的清扫机器人的概况的图;
图31A和图31B是说明了用于实现一个状态一个观测值约束的状态分割的概况的图;
图32是说明了检测作为分割对象的状态的方法的图;
图33A和图33B是说明了用于将作为分割对象的状态分割成分割后状态的方法的图;
图34A和图34B是示出了用于实现一个状态一个值约束的状态合并的概况的图;
图35A和图35B是说明了用于检测作为合并对象的状态的方法的图;
图36A和图36B是说明了用于将多个分支状态合并成一个代表性状态的方法的图;
图37是说明了在一个状态一个观测值约束下所执行的对扩展HMM进行学习的处理的流程图;
图38是说明了用于检测作为分割对象的状态的处理的流程图;
图39是说明了状态分割处理的流程图;
图40是说明了用于对作为合并对象的状态进行检测的处理的流程图;
图41是说明了用于对作为合并对象的状态进行检测的处理的流程图;
图42是说明了状态合并处理的流程图;
图43A至图43C是说明了在一个状态一个观测值约束下对扩展HMM的学习仿真的图;
图44是说明了识别动作模式中的处理的流程图;
图45是说明了当前状态系列候选计算处理的流程图;
图46是说明了当前状态系列候选计算处理的流程图;
图47是说明了根据第一策略的动作确定处理的流程图;
图48是说明了根据第二策略的动作确定的概况的图;
图49是说明了根据第二策略的动作确定处理的流程图;
图50是说明了根据第三策略的动作确定的概况的图;
图51是说明了根据第三策略的动作确定处理的流程图;
图52是说明了用于从多个策略中选择在确定动作时所要遵循的策略的处理的流程图;
图53是说明了用于从多个策略中选择在确定动作时所要遵循的策略的处理的流程图;以及
图54是示出应用了本发明的计算机实施例的配置实例的方框图。
具体实施方式
智能体执行动作的环境
图1是示出了动作环境(应用了根据本发明的信息处理设备的智能体执行动作的环境)的实例的图。
智能体例如是能够自主地执行诸如运动等的动作(行为)的设备,如机器人(可以是在现实世界中进行动作的机器人,或者,可以是在虚拟世界中进行动作的虚拟机器人)等。
智能体可以通过执行动作来改变智能体本身的情形,并且可以通过观测可在外部观测的信息以及使用观测值(其观测结果)来识别情形。
另外,智能体构建其中智能体执行动作的动作环境模型(环境模型),以识别情形以及确定(选择)在每种情形中要执行的动作。
针对其配置不固定而是以概率性的方式改变的动作环境以及其配置固定的动作环境,智能体执行有效建模(建立环境模型)。
在图1中,动作环境由二维平面迷宫形成,并且其配置以概率性的方式改变。注意,就图1中的动作环境而言,智能体可以在作为路径的图中白色部分上移动。
图2是示出了动作环境配置改变的情形的图。关于图2中的动作环境,在时间点t=t1,位置p1形成屏障,而位置p2形成路径。相应地,在时间点t=t1,动作环境具有如下这种配置:智能体可以通过位置p2但无法通过位置p1。
然后,在时间点t=t2(>t1),位置p1从屏障变成路径,作为其结果,动作环境具有如下这种配置:智能体可以通过位置p1以及p2。
进一步地,然后,在时间点t=t3,位置p2从路径变成屏障,作为其结果,动作环境具有如下这种配置:智能体可以通过位置p1但无法通过位置p2。
智能体所执行的动作、以及智能体观测到的观测值
图3A和图3B示出了智能体所执行动作、以及智能体在动作环境中观测到的观测值的实例。
通过动作环境中(如图1中所示通过虚线以方形被分区)的区域作为用于对观测值进行观测的单元(观测单元),智能体执行在其观测单元中移动的动作。
图3A示出了智能体所执行动作的类型。在图3A中,智能体可以执行以观测单元为单位向上移动的动作U1、用于以观测单元为单位向右移动的动作U2、用于以观测单元为单位向下移动的动作U3、用于以观测单元为单位向左移动的动作U4、以及不移动(不执行)的动作U5,图中总计五个动作U1至U5。
图3B示意性示出了智能体在观测单元中观测到的观测值的类型。就本实施例而言,智能体在观测单元中观测15种观测值(符号)O1至O15中的任一种。
在顶部、底部和左部形成屏障并且右部形成路径的观测单元中观测到观测值O1,以及在顶部、左部和右部形成屏障并且底部形成路径的观测单元中观测到观测值O2。
在顶部和左部形成屏障并且底部和右部形成路径的观测单元中观测到观测值O3,以及在顶部、底部和右部形成屏障并且左部形成路径的观测单元中观测到观测值O4。
在顶部和底部形成屏障并且左部和右部形成路径的观测单元中观测到观测值O5,以及在顶部和右部形成屏障并且底部和左部形成路径的观测单元中观测到观测值O6。
在顶部形成屏障并且底部、左部和右部形成路径的观测单元中观测到观测值O7,以及在底部、左部和右部形成屏障并且顶部形成路径的观测单元中观测到观测值O8。
在底部和左部形成屏障并且顶部和右部形成路径的观测单元中观测到观测值O9,以及在左部和右部形成屏障并且顶部和底部形成路径的观测单元中观测到观测值O10。
在左部形成屏障并且顶部、底部和右部形成路径的观测单元中观测到观测值O11,以及在底部和右部形成屏障并且顶部和左部形成路径的观测单元中观测到观测值O12。
在底部形成屏障并且顶部、左部和右部形成路径的观测单元中观测到观测值O13,以及在右部形成屏障并且顶部、底部和左部形成路径的观测单元中观测到观测值O14。
在左部、右部、顶部和底部均形成路径的观测单元中观测到观测值O15。
注意,动作Um(m=1、2等至M,M是动作(类型)的总数)和观测值Ok(k=1、2等至K,K是观测值的总数)均是离散值。
智能体的配置实例
图4是示出应用了根据本发明的信息处理设备的智能体的实施例的配置实例的方框图。智能体得到通过学习、根据动作环境建模的环境模型。另外,智能体使用一系列观测值(观测值系列)执行对智能体本身当前情形的识别。
进一步地,智能体执行从当前情形朝向某个目标要执行的动作规划的计划(动作规划),并且根据其动作规划确定接下来要执行的动作。
注意,智能体执行的学习、对情形的识别、以及对动作的规划(对动作的确定)可以应用于可以用马尔可夫决策过程(MDP)的架构公式化的问题(通常被当作强化学习问题)以及智能体在观测单元中向上、向下、向左或向右移动的问题(任务)。
在图4中,智能体通过在动作环境中执行图3A中所示的动作Um在观测单元中移动,并得到在移动后的观测单元中观测到的观测值Ok。
然后,智能体使用动作系列(到现在为止执行的动作Um(的代表符号)的系列)和观测值系列(到现在为止观测到的观测值(的代表符号)Ok的系列),执行对动作环境(的配置(根据该配置建模环境模型))的学习或者对下一步要执行动作的确定。
作为智能体执行动作的模式,有反射动作模式(反射行为模式)和识别动作模式(识别行为模式)两种模式可用。
在反射动作模式中,事先根据过去得到的观测值系列和动作系列来设计用于确定接下来要执行动作的规则,作为固有规则。
此处,作为固有规则,可以采用:用于确定动作(用于允许在路径内往复运动)以不碰撞屏障的规则,或者,用于确定动作以不碰撞屏障并且在智能体到达尽头之前不返回智能体所来自的地方的规则,等等。
智能体重复如下步骤:根据固有规则、针对在智能体处观测到的观测值确定接下来要执行的动作,并在其动作之后的观测单元中对观测值进行观测。
因此,智能体当在动作环境中移动时得到动作系列和观测值系列。在反射动作模式中如此得到的动作系列和观测值系列用于对动作环境的学习。也就是说,反射动作模式原则上用于得到动作系列和观测值系列(作为要用于动作环境学习的被学习数据)。
在识别动作模式中,智能体确定目标,识别当前情形,并确定从其当前情形达到目标的动作规划。然后,智能体根据其动作规划确定接下来要执行的动作。
注意,可以执行在反射动作模式与识别动作模式之间的切换,例如,根据使用者的操作等。
在图4中,智能体被配置有反射动作确定单元11、致动器12、传感器13、历史存储单元14、动作控制单元15、以及目标确定单元16。将从传感器13输出的在动作环境中观测到的观测值提供给反射动作确定单元11。
在反射动作模式中,反射动作确定单元11根据固有规则、针对从传感器13提供的观测值确定接下来要执行的动作,并控制致动器12。
例如,在智能体是在现实世界中行走的机器人的情形中,致动器12是用于使机器人行走的电动机等,并根据反射动作确定单元11或者后面所描述的动作确定单元24的控制被驱动。根据所驱动的致动器,利用动作环境,智能体执行反射动作确定单元11或动作确定单元24确定的动作。
传感器13执行对可以在外部观测的信息的感测,以输出作为其感测结果的观测值。具体地,传感器13对动作环境中智能体存在于其中的观测单元进行观测,并输出代表此观测单元的符号作为观测值。
注意,在图4中,传感器13还对致动器12进行观测,从而输出智能体所执行的动作(的代表符号)。将从传感器13输出的观测值提供给反射动作确定单元11和历史存储单元14。另外,将从传感器13输出的动作提供给历史存储单元14。
历史存储单元14按顺序存储从传感器13输出的观测值和动作。因此,一系列观测值(观测值系列)和一系列动作(动作系列)存储于历史存储单元14中。
注意,此处采用代表存在智能体的观测单元的符号作为可以在外部观测的观测值,但也可以按集合的形式采用代表存在智能体的观测单元的符号以及代表智能体所执行动作的符号。
动作控制单元15使用历史存储单元14中存储的观测值系列和动作系列执行对状态转换概率模型(作为用于存储(得到)动作环境配置的环境模型)的学习。
另外,动作控制单元15基于学习后的状态转换概率模型来计算动作规划。进一步地,动作控制单元15根据其动作规划确定在智能体处接下来要执行的动作,并控制致动器12以使得智能体根据接下来要执行的动作来执行动作。
动作控制单元15被配置有学习单元21、模型存储单元22、状态识别单元23、以及动作确定单元24。
学习单元21使用历史存储单元14中存储的观测值系列和动作系列来执行对模型存储单元22中存储的状态转换概率模型的学习。
现在,学习单元21所采用的作为学习对象的状态转换概率模型是由每个动作的状态转换概率和从状态观测到预定观测值的观测概率规定的状态转换概率模型,通过智能体所执行的动作来转换其状态。
状态转换概率模型的实例包括HMM(隐马尔可夫模型),但并非针对每个动作都存在通用HMM的状态转换概率。因此,就本实施例而言,将HMM的状态转换概率扩展到针对智能体所执行的每个动作的状态转换概率,并采用其状态转换概率如此扩展的HMM(此后,也称作“扩展HMM”)作为学习单元21的学习对象。
模型存储单元22存储扩展HMM(用于规定扩展HMM的模型参数:状态转换概率、观测概率等)。另外,模型存储单元22存储后面所描述的抑制因子。
状态识别单元23使用历史存储单元14中存储的动作系列和观测值系列、基于模型存储单元22中存储的扩展HMM,识别智能体的当前情形,并得到(识别)当前状态(其当前情形所对应的扩展HMM的状态)。
然后,状态识别单元23将当前状态提供给动作确定单元24。
另外,状态识别单元23根据当前状态等,执行对模型存储单元22中存储的抑制因子的更新,以及对后面所描述的逝去时间管理表存储单元32中存储的逝去时间管理表的更新。
动作确定单元24作为如下这种规划器:用于规划智能体在识别动作模式中要执行的动作。
也就是说,除了从状态识别单元23提供给动作确定单元24的当前状态,还将存储于模型存储单元22中的扩展HMM的状态中的一个状态从目标确定单元16提供给动作确定单元24作为目标状态。
动作确定单元24计算(确定)动作规划(如下这种动作系列:基于模型存储单元22中存储的扩展HMM,将从来自状态识别单元23的当前状态到来自目标确定单元16的目标状态的状态转换可能性提高到最高)。
进一步地,动作确定单元24根据动作规划确定智能体接下来要执行的动作,并根据其确定的动作控制致动器12。
目标确定单元16在识别动作模式中确定目标状态并将此目标状态提供给动作确定单元24。
也就是说,目标确定单元16被配置有目标选择单元31、逝去时间管理表存储单元32、外部目标输入单元33、以及内部目标生成单元34。
将作为来自外部目标输入单元33的目标状态的外部目标以及作为来自内部目标生成单元34的目标状态的内部目标提供给目标选择单元31。
目标选择单元31选择作为来自外部目标输入单元33的外部目标的状态或者作为来自内部目标生成单元34的内部目标的状态,确定其选择的状态作为目标状态,并将此目标状态提供给动作确定单元24。
逝去时间管理表存储单元32存储逝去时间管理表。对于模型存储单元22中存储的扩展HMM的每个状态,在逝去时间管理表上注册自从该状态变成当前状态以后逝去的逝去时间等。
外部目标输入单元33将从(智能体的)外面给出的状态提供给目标选择单元31,作为用作目标状态的外部目标。具体地,例如,当使用者在外部指定作为目标状态的状态时,使用者对外部目标输入单元33进行操作。外部目标输入单元33将使用者指定的状态提供给目标选择单元31,作为用作目标状态的外部目标。
内部目标生成单元34在(智能体的)里面生成作为目标状态的内部目标,并将此目标提供给目标选择单元31。内部目标生成单元34被配置有随机目标生成单元35、分支结构检测单元36、以及开放边缘检测单元37。
随机目标生成单元35随机地从模型存储单元22中存储的扩展HMM的状态中选出一个状态作为随机目标,并将此随机目标提供给目标选择单元31,作为用作目标状态的内部目标。
分支结构检测单元36基于模型存储单元22中存储的扩展HMM的状态转换概率来检测分支结构化状态(如下这种状态:其中,在执行同一动作的情况下可以执行到不同状态的状态转换),并将其分支结构化状态提供给目标选择单元31,作为用作目标状态的内部目标。
注意,通过分支结构检测单元36,在从扩展HMM检测到多个状态作为分支结构化状态的情形中,目标选择单元31参考逝去时间管理表存储单元32中存储的逝去时间管理表从多个分支结构化状态中选出逝去时间最大的分支结构化状态作为目标状态。
开放边缘检测单元37利用模型存储单元22中存储的扩展HMM,在使用作为转换起点的、其中预定观测值被观测到的状态可以执行的状态转换中,检测未执行的状态转换(其中观测到与预定观测值相同的观测值的另一状态),作为开放边缘。然后,开放边缘检测单元37将开放边缘提供给目标选择单元31,作为用作目标状态的内部目标。
反射动作模式中的处理
图5是说明了图4的智能体所执行的反射动作模式中的处理的流程图。
在步骤S11中,反射动作确定单元11设置如下这种变量t:用于将时间点计数成例如1作为初始值,并且处理前往步骤S12。
在步骤S12中,传感器13从动作环境得到当前观测值(在时间点t处的观测值)ot,将此观测值输出,并且处理前往步骤S13。
此处,就本实施例而言,在时间点t处的观测值ot是图3B中所示15个观测值o1至o15中的任一个观测值。
在步骤S13中,智能体将从传感器13输出的观测值ot提供给反射动作确定单元11,并且处理前往步骤S14。
在步骤S14中,反射动作确定单元11根据固有规则、针对来自传感器13的观测值ot确定在时间点t处要执行的动作ut,根据其动作ut控制致动器12,并且处理前往步骤S15。
就本实施例而言,在时间点t处的动作ut是图3A中所示五个动作U1至U5中的任一个动作。
另外,此后,在步骤S14中确定的动作ut还将称作确定的动作ut。
在步骤S15中,根据反射动作确定单元11的控制来驱动致动器12,从而,智能体执行所确定的动作ut。
此时,传感器13对致动器12进行观测,并输出智能体所执行的动作ut(的代表符号)。
然后,处理从步骤S15前往步骤S16,历史存储单元14以如下这种方式存储从传感器13输出的观测值ot和动作ut:将它们添加到已经存储的观测值和动作系列来作为观测值和动作的历史;并且处理前往步骤S17。
在步骤S17中,反射动作确定单元11确定智能体是否执行动作了已指定(设置)次数(作为在反射动作模式中执行动作的次数)。
在步骤S17中确定智能体未执行动作已指定次数的情形中,处理前往步骤S18,其中,反射动作确定单元11将时间点t递增一。然后,处理从步骤S18返回步骤S12,此后,重复同样的处理。
另外,在步骤S17中确定智能体执行动作了已指定次数的情形中,即,在时间点t等于已指定次数的情形中,反射动作模式中的处理结束。
根据反射动作模式中的处理,一系列观测值ot(观测值系列)以及在观测到观测值ot时智能体所执行的一系列动作ut(动作系列)(一系列动作ut以及在执行动作ut时智能体所观测到的一系列观测值ot+1)存储于历史存储单元14中。
然后,学习单元21使用历史存储单元14中存储的观测值系列和动作系列作为被学习数据来执行对扩展HMM的学习。
就扩展HMM而言,通用(已有)HMM的状态转换概率被扩展到针对智能体所执行动作的状态转换概率。
图6A和图6B是说明了扩展HMM的状态转换概率的图。具体地,图6A示出了通用HMM的状态转换概率。
现在,让我们假定采用遍历HMM作为包括扩展HMM的HMM,从而,可以执行从某状态到任意状态的状态转换。另外,让我们假定HMM状态的数量为N。
在此情形中,通用HMM包括作为模型参数的N×N个状态转换(从N个状态中的每个状态Si到N个状态中的每个状态Sj)的状态转换概率aij。
通用HMM的所有状态转换概率可以由二维表来表示,其中,从状态Si到状态Sj的状态转换的状态转换概率aij放置在从顶部数第i个且从左边数第j个。现在,HMM的状态转换概率表还将称作状态转换概率A。
图6B示出了扩展HMM的状态转换概率A。就扩展HMM而言,针对智能体所执行的每个动作Um都存在状态转换概率。现在,针对某动作Um的从状态Si到状态Sj的状态转换的状态转换概率还将称作aij(Um)。
代表从状态Si到状态Sj的状态转换的概率的状态转换概率aij(Um)将在智能体执行动作Um时发生。
扩展HMM的所有状态转换概率可以由三维表来表示,其中,针对动作Um的从状态Si到状态Sj的状态转换的状态转换概率aij(Um)放置在从顶部数第i个、从左边数第j个、并且在深度方向上从近侧数第m个。
现在,让我们假定:就状态转换概率A的三维表而言,分别地,竖直方向上的轴将称作轴i,水平方向上的轴将称作轴j,以及深度方向上的轴将称作轴m或动作轴。
另外,以如下方式形成的平面:通过用垂直于动作轴的平面在动作轴的某位置m处截断状态转换概率A的三维表,所得到的状态转换概率aij(Um)构成的平面,还将称作针对动作Um的状态转换概率平面。
进一步地,以如下方式形成的平面:通过用垂直于i轴的平面在i轴的某位置I处截断状态转换概率A的三维表,所得到的状态转换概率aij(Um)构成的平面,还将称作针对状态Si的动作平面。
构成针对状态Si的动作平面的状态转换概率aij(Um)代表当状态Si作为转换起点的状态转换发生时每个动作Um将会执行的概率。
注意,作为模型参数,扩展HMM与通用HMM的方式一样包括:扩展HMM的状态在第一个时间点t=1将会处于状态Si的初始状态概率πi,以及,在状态Si中将会观测到观测值Ok的观测概率bi(Ok),扩展HMM还包括针对每个动作的状态转换概率aij(Um)。对扩展HMM的学习
图7是说明了图4中的学习单元21使用历史存储单元14中存储的、作为被学习数据的观测值系列和动作系列所执行的用于学习扩展HMM的处理的流程图。
在步骤S21中,学习单元21对扩展HMM进行初始化。具体地,学习单元21对初始状态概率πi、状态转换概率aij(Um)(针对每个动作)、以及观测概率bi(Ok)(模型存储单元22中存储的扩展HMM的模型参数)进行初始化。
注意,如果我们假定扩展HMM状态的数量(总数量)为N,则将初始状态概率πi初始化成1/N。现在,如果我们假定这样的动作环境:二维平面迷宫,其横向×纵向由a×b个观测单元构成,要合并的整数为Δ,则可以采用(a+Δ)×(b×Δ)个作为扩展HMM状态的数量N。
另外,将状态转换概率aij(Um)和观测概率bi(Ok)初始化成例如可以取作概率值的随机值。
此处,执行对状态转换概率aij(Um)的初始化,以针对关于每个动作Um的初始状态概率平面的每个行,得到1.0作为其行的状态转换概率aij(Um)的和(ai,1(Um)+ai,2(Um)+…+ai,N(Um))。
类似地,执行对观测概率bi(Ok)的初始化,以针对每个状态Si得到1.0作为将会从其状态Si观测到观测值O1、O2、…、Ok的观测概率的和(bi(O1)+bi(O2)+…+bi(Ok))。
注意,在执行所谓额外学习的情形中,将模型存储单元22中存储的扩展HMM的初始状态概率πi、状态转换概率aij(Um)、以及观测概率bi(Ok)用作初始值而不作改变。也就是说,不执行步骤S21中的初始化。
在步骤S21之后,处理前往步骤S22,此后,在步骤S22中以及此后,执行对扩展HMM的学习,其中,根据Baum-Welch重估方法(针对动作扩展了Baum-Welch重估方法的方法)、使用历史存储单元14中存储的作为被学习数据的动作系列和观测值系列来估算初始状态概率πi、针对每个动作的状态转换概率aij(Um)、以及观测概率bi(Ok)。
具体地,在步骤S22中,学习单元21计算前向概率αt+1(j)和后向概率βt(i)。
此处,就扩展HMM而言,对于在时间点t执行的动作Ut,执行从当前状态Si到状态Sj的状态转换,以及在下一个时间点t+1,在状态转换之后的状态Sj中观测到观测值ot+1。
就这种扩展HMM而言,前向概率αt+1(j)是如下这种概率P(o1,o2,…,ot+1,u1,u2,…,ut,st+1=j|Λ)(具有模型Λ(当前的扩展HMM,由模型存储单元22中当前存储的初始状态概率πi、状态转换概率aij(Um)、以及观测概率bi(Ok)规定的扩展HMM)):将会观测到动作系列u1、u2、…、ut(被学习数据)以及还将会观测到观测值系列o1、o2、…、ot+1;并且扩展HMM的状态在时间点t+1将处于状态Sj,前向概率αt+1(j)由表达式(1)表示。
注意,状态st表示在时间点t呈现的状态,在扩展HMM状态的数量为N的情形中它是状态S1至SN中的任一状态。另外,表达式st+1=j表示在时间点t+1呈现的状态st+1是状态Sj。
表达式(1)中的前向概率αt+1(j)表示在如下这种情形中通过执行动作ut(观测)将会发生状态转换的概率:观测到动作系列u1、u2、…、ut-1以及观测值系列o1、o2、…、ot(被学习数据)并且扩展HMM的状态在时间点t处于状态st;扩展HMM的状态在时间点t+1将会处于状态Sj并且将会观测到观测值ot+1。
注意,前向概率αt+1(j)的初始值α1(j)由表达式(2)表示。
α1(j)=πjbj(o1)…(2)
其中,初始值α1(j)表示扩展HMM的状态最初(时间点t=0)将会处于状态Sj且将会观测到观测值o1的概率。
另外,就扩展HMM而言,后向概率βt(i)是如下这种概率P(ot+1,ot+2,…,oT,ut+1,ut+2,…,uT-1,st=i|Λ)(具有模型Λ(当前的扩展HMM)):在时间点t以及在状态Si中,将会观测到动作系列ut+1、ut+2、…、uT-1(被学习数据)以及还将会观测到观测值系列ot+1、ot+2、…、oT;并且后向概率βt(i)由表达式(3)表示。
其中,T表示观测值系列(被学习数据)的观测值的数量。
表达式(3)中的后向概率βt(i)表示在如下这种情形中扩展HMM的状态在时间点t处于状态Si的概率:扩展HMM的状态在时间点t+1处于状态Sj,然后,观测到动作系列ut+1、ut+2、…、uT-1(被学习数据),还观测到观测值系列ot+2、ot+3、…、oT;通过执行动作ut(观测)状态转换将会发生,在观测到观测值ot+1的同时,时间点t+1处的状态St+1将会变成状态Sj,以及时间点t处的状态st将会变成状态Si。
注意,后向概率βt(i)的初始值βT(i)由表达式(4)表示。
βT(i)=1 …(4)
其中,初始值βT(i)表示扩展HMM的状态最后(时间点t=T)将会处于状态Si的概率为1.0,即,扩展HMM的状态最后将会必定处于状态Si。
扩展HMM(如,表达式(1)和(3)中所示的)与通用HMM的不同之处在于:将针对每个动作的状态转换概率aij(ut)用作从某状态Si到某状态Sj的状态转换的状态转换概率。
在步骤S22中计算了前向概率αt+1(j)和后向概率βt(i)之后,处理前往步骤S23,其中,学习单元21使用前向概率αt+1(j)和后向概率βt(i)重新估算初始状态概率πi、针对每个动作Um的状态转换概率aij(Um)、以及观测概率bi(Ok)(扩展HMM的模型参数Λ)。
现在,伴随着将状态转换概率扩展到针对每个动作Um的状态转换概率aij(Um),通过扩展Baum-Welch重估方法来如下执行对模型参数的重估。
具体地,就模型Λ(当前的扩展HMM)而言,在观测到动作系列u1、u2、…、uT-1和观测值系列O=o1、o2、…、oT的情形中,扩展HMM的状态在时间点t处于状态Si、通过执行动作Um将会发生到时间点t+1的状态Sj的状态转换的概率ξt+1(ij,Um)使用前向概率αt(i)和后向概率βt+1(j)由表达式(5)表示。
进一步地,在时间点t的状态Si中将会执行动作ut=Um的概率γt(i,Um)可以计算成与扩展HMM在时间点t+1处于状态Sj有关的使概率ξt+1(ij,Um)边缘化的概率,并由表达式(6)表示。
学习单元21使用表达式(5)中的概率ξt+1(i,j,Um)以及表达式(6)中的概率γt(i,Um)执行对扩展HMM的模型参数Λ的重新估算。
现在,如果我们假定通过执行对模型参数Λ的重新估算所得到的估值利用使用撇号(′)的模型参数Λ′来表示,则根据表达式(7)得到模型参数Λ′中包括的初始状态概率的估值π′i。
另外,根据表达式(8)得到模型参数Λ′中包括的针对每个动作的状态转换概率的估值a′ij(Um)。
此处,表达式(8)中状态转换概率的估值a′ij(Um)的分子表示扩展HMM处于状态Si中并且通过执行动作ut=Um到状态Sj的转换的状态转换次数的预期值,以及其分母表示扩展HMM处于状态Si中并通过执行动作ut=Um被转换的状态转换次数的预期值。
根据表达式(9)得到模型参数Λ′中包括的观测概率的估值b′j(Ok)。
此处,表达式(9)中观测概率的估值b′j(Ok)的分子表示执行到状态Sj的状态转换并且在其状态Sj中观测到观测值Ok的次数的预期值,以及其分母表示执行到状态Sj的状态转换的次数的预期值。
在步骤S23中重新估算初始状态概率、状态转换概率、以及观测概率(它们是模型参数Λ′)的估算值π′i、a′ij(Um)、以及b′j(Ok)之后,学习单元21以覆写方式分别将估算值π′i、a′ij(Um)、以及b′j(Ok)存储于模型存储单元22中,作为新的初始状态概率πi、新的状态转换概率aij(Um)、以及新的观测概率bj(Ok),并且处理前往步骤S24。
在步骤S24中,确定扩展HMM的模型参数(即,模型存储单元22中存储的(新的)初始状态概率πi、状态转换概率aij(Um)、以及观测概率bj(Ok))是否收敛。
在步骤S24中确定扩展HMM的模型参数尚未收敛的情形中,处理返回步骤S22,其中,使用模型存储单元22中存储的新的初始状态概率πi、状态转换概率aij(Um)、以及观测概率bj(Ok)重复同样的处理。
另外,在步骤S24中确定扩展HMM的模型参数已收敛的情形中,即,例如,在扩展HMM的模型参数在步骤S23的重新估算之前和之后改变很小的情形中,对扩展HMM的学习处理结束。
如上所述,使用智能体所执行动作的动作系列、以及智能体在执行动作时观测到的观测值的观测值系列,来执行对由针对每个动作的状态转换概率aij(Um)规定的扩展HMM的学习,因此,就扩展HMM而言,通过观测值系列得到了动作环境的配置,并且还得到了每个观测值与对该观测值进行观测时的动作之间的关系(智能体所执行的动作与执行该动作时观测到的观测值(在动作之后观测到的观测值)之间的关系)。
作为其结果,在识别动作模式中,如后面所描述的,可以通过使用这种学习后的扩展HMM来确定合适的动作,作为智能体要在动作环境内执行的动作。
识别动作模式中的处理
图8是说明了图4的智能体所执行的识别动作模式中的处理的流程图。
在识别动作模式中,智能体如上所述执行对目标的确定、以及对当前情形的识别,并计算用于从当前情形达到目标的动作规划。进一步地,智能体根据其动作规划确定接下来要执行的动作,并执行此动作。然后,智能体重复以上处理。
具体地,在步骤S31中,状态识别单元23设置如下这种变量t:用于将时间点计数成例如1作为初始值,并且处理前往步骤S32。
在步骤S32中,传感器13从动作环境得到当前观测值(在时间点t处的观测值)ot,将此观测值输出,并且处理前往步骤S33。
在步骤S33中,历史存储单元14存储:传感器13所得到的时间点t处的观测值ot,以及在观测值ot被观测到时(紧靠在传感器13处得到观测值ot之前)从传感器13输出的动作ut-1(智能体在最后时间点t-1执行的动作ut-1),作为观测值和动作的历史,存储的方式是将它们添加到已经存储的观测值和动作系列;并且处理前往步骤S34。
在步骤S34中,状态识别单元23基于扩展HMM、使用智能体所执行的动作以及执行此动作时在智能体处观测到的观测值来识别智能体的当前情形,并得到当前状态(其当前情形所对应的扩展HMM的状态)。
具体地,状态识别单元23从历史存储单元14读取出最近的零个或更多个动作的动作系列、以及最近的一个或更多个观测值的观测值系列作为用于识别智能体的当前情形的识别用的动作系列和观测值系列。
进一步地,状态识别单元23通过模型存储单元22中存储的学习后的扩展HMM对识别用的动作系列和观测值系列进行观测,并得到最佳状态概率δt(j)(扩展HMM在时间点(当前时间点)t处将会处于状态Sj的状态概率的最大值)、以及最佳路线(路径)ψt(j)(根据维特比算法(从维特比算法扩展的针对动作的算法)、借助其得到最佳状态概率δt(j)的状态系列)。
现在,根据维特比算法,就通用HMM而言,在观测到某观测值系列时跟踪的状态的系列(状态系列)中,可以估算出使观测到此观测值系列的可能性最大的状态系列(最有可能的状态系列)。
然而,就扩展HMM而言,状态转换概率进行了有关动作的扩展,因此,为了将维特比算法应用于扩展HMM,维特比算法必须进行有关动作的扩展。
因此,就状态识别单元23而言,分别根据表达式(10)和(11)得到最佳状态概率δt(j)和最佳路线ψt(j)。
…(11)
此处,表达式(10)中的max[X]表示通过将代表状态Si的下标i变成从1至状态数量N范围中的整数所得到的X的最大值。另外,表达式(11)中的argmax[X]表示使通过将下标i变成从1至N范围中的整数所得到的X最大的下标i。
状态识别单元23对识别用的观测值系列和动作系列进行观测,并根据表达式(11)中的最佳路线ψt(j)得到最有可能的状态系列(在时间点t到达如下这种状态Sj的状态系列:使表达式(10)中的最佳状态概率δt(j)最大)。
进一步地,状态识别单元23将最有可能的状态系列当做当前情形的识别结果,并得到(估算)最有可能系列的最后状态作为当前状态st。
在得到当前状态st后,状态识别单元23基于其当前状态st更新逝去时间管理表存储单元32中存储的逝去时间管理表,并且处理从步骤S34前往步骤S35。
具体地,以与扩展HMM的每个状态相关联的方式,在逝去时间管理表存储单元32的逝去时间管理表上已经注册了自从其状态变成当前状态以后的逝去时间。状态识别单元23通过逝去时间管理表将扩展HMM到达当前状态st的状态中的逝去时间复位成例如0,并且还将其它状态的逝去时间递增例如一。
此处,当目标选择单元31选择目标状态时,如上所述适当地参考逝去时间管理表。
在步骤S35中,状态识别单元23基于当前状态st更新模型存储单元22中存储的抑制因子。针对抑制因子的更新将在后面进行描述。
进一步地,在步骤S35中,状态识别单元23将当前状态st提供给动作确定单元24,并且处理前往步骤S36。
在步骤S36中,目标确定单元16从扩展HMM的状态中确定出目标状态,将此目标状态提供给动作确定单元24,并且处理前往步骤S37。
在步骤S37中,动作确定单元24使用模型存储单元22中存储的抑制因子(在紧靠前步骤S35中被更新的抑制因子)来校正类似地存储于模型存储单元22中的扩展HMM的状态转换概率,并计算校正后的转换概率(校正后的状态转换概率)。
就在动作确定单元24处对动作规划的计算(后面进行描述)而言,将校正后的转换概率用作扩展HMM的状态转换概率。
随步骤S37之后,处理前往步骤S38,其中,动作确定单元24基于模型存储单元22中存储的扩展HMM(例如,根据维特比算法(从维特比算法扩展的针对动作的算法))来计算动作规划(使从来自状态识别单元23的当前状态达到来自目标确定单元16的目标状态的状态转换可能性最高的动作系列)。
现在,根据维特比算法,就通用HMM而言,在从两个状态中的一个状态到达另外状态的状态系列(即,例如,从当前状态到达目标状态的状态系列)中,可以估算出使观测到某观测值系列的可能性最高的最有可能的状态系列。
然而,如上所述,就扩展HMM而言,状态转换概率针对动作进行了扩展,据此,为了将维特比算法应用于扩展HMM,维特比算法必须针对动作进行扩展。
因此,就动作确定单元24而言,按照表达式(12)得到状态概率δ′t(j)。
其中,max[X]表示通过将代表状态Si的下标i变成从1至状态数量N范围中的整数、以及还将代表动作Um的下标m变成从1到动作数量M范围中的整数所得到的X的最大值。
表达式(12)是通过如下这种方式得到的表达式:从用于得到最有可能状态概率δt(j)的表达式(10)中删除观测概率bj(Ot)。另外,在表达式(12)中,在得到状态概率δ′t(j)的同时将动作Um考虑在内,这一点等同于维特比算法的针对动作的扩展。
动作确定单元24在前向方向上执行对表达式(12)的计算,并针对每个时间点暂时存储取最大状态概率δ′t(j)的下标i、代表到达状态Si(下标i代表)的状态转换发生时所执行的动作Um的下标m。
注意,在计算表达式(12)时,将通过使用抑制因子对学习后的扩展HMM的状态转换概率aij(Um)进行校正所得到的校正后的转换概率用作状态转换概率aij(Um)。
动作确定单元24按顺序计算表达式(12)中的状态概率δ′t(j)(当前状态st作为第一个状态),并在目标状态Sgoal的状态概率δ′t(Sgoal)到达预定阈值δ′th或更大时(如表达式(13)中所示)结束对表达式(12)中状态概率δ′t(j)的计算。
注意,例如根据表达式(14)来设置表达式(13)中的阈值δ′th。
δ’th=0.9T′ …(14)
其中,T′表示表达式(12)中的计算次数(从表达式(12)得到的最有可能的状态系列的系列长度)。
根据表达式(14),采用0.9作为可能性状态转换发生了一次的情形中的状态概率,并设置阈值δ′th。
因此,根据表达式(13),在继续了可能性状态转换T′次的情形中,结束对表达式(12)中状态概率δ′t(j)的计算。
当结束对表达式(12)中状态概率δ′t(j)的计算时,动作确定单元24通过从结束时间时扩展HMM的状态反向跟踪针对状态Si和动作Um存储的下标i和m(即,从目标状态Sgoal到当前状态st),得到其中扩展HMM从当前状态st到达目标状态Sgoal的最有可能的状态系列(许多情形中的最短路线);以及,得到在状态转换(由此得到其最有可能的状态系列)发生时所执行的一系列动作Um。
具体地,如上所述,当在前向方向上执行对表达式(12)中状态概率δ′t(j)的计算时,动作确定单元24针对每个时间点存储取最大状态概率δ′t(j)的下标i、代表到达状态Si(下标i代表)的状态转换发生时所执行的动作Um的下标m。
针对每个时间点的下标i代表在时间退回的方向上从状态Sj返回那个状态Si时是否得到最大状态概率,以及针对每个时间点的下标m代表由于它而发生状态转换(从而得到其最大状态概率)的动作Um。
因此,在通过将针对每个时间点的下标i和m从对表达式(12)中的状态概率δ′t(j)的计算结束时的时间点起在时间上一次退回一个时间点而到达对表达式(12)中的状态概率δ′t(j)的计算开始的时间点后,可以得到如下这些系列:其中,从当前状态st到目标状态Sgoal的状态系列的一系列状态下标、以及在其状态系列的状态转换发生时所执行的动作系列的一系列动作下标中的每个系列以时间上退回的次序排列。
动作确定单元24通过将以时间上退回的次序排列的系列再次以时间顺序排列,得到从当前状态st到目标状态Sgoal的状态系列(最有可能的状态系列)、以及在其状态系列的状态转换发生时所执行的动作系列。
如以上所示出的,在动作确定单元24处所得到的、在从当前状态st到目标状态Sgoal的最有可能的状态系列的状态转换发生时所执行的动作系列是动作规划。
此处,在动作确定单元24处除动作规划外还得到的最有可能的状态系列是在智能体根据动作规划执行动作的情形中发生(应该发生)的状态转换的状态系列。因此,在智能体根据动作规划执行动作的情形中,当其阵列与最有可能的状态系列的状态阵列不同的状态转换发生时,即使在智能体根据动作规划执行动作的情况下扩展HMM也可能无法到达目标状态。
在动作确定单元24在步骤S38中得到诸如以上所描述的动作规划后,处理前往步骤S39,其中,动作确定单元24根据其动作规划确定智能体接下来要执行的动作ut,并且处理前往步骤S40。
也就是说,动作确定单元24把作为动作规划的动作系列的第一个动作确定为智能体接下来要执行的确定动作ut。
在步骤S40中,动作确定单元24根据在最后的步骤S39中确定的动作(确定动作)ut控制致动器12,从而,智能体执行动作ut。
然后,处理从步骤S40前往步骤S41,其中,状态识别单元23将时间点t递增一,并且处理返回步骤S32,此后,重复同样的处理。
注意,图8的识别动作模式中的处理在如下这些情形中结束:例如,对智能体进行操作以结束识别动作模式中的处理,智能体的电源关断,智能体的模式从识别动作模式变成另一模式(反射动作模式等),等等。
如上所述,基于扩展HMM,状态识别单元23使用智能体所执行的动作以及在执行其动作时在智能体处观测到的观测值来识别智能体的当前情形,并得到其当前情形所对应的当前状态。目标确定单元16确定目标状态,以及动作确定单元24基于扩展HMM计算动作规划(使从当前状态到目标状态的状态转换可能性(状态概率)最高的一系列动作),并根据其动作规划确定智能体接下来要执行的动作,据此,智能体到达目标状态,从而,可以确定合适的动作,作为智能体要执行的动作。
现在,就根据相关领域的动作确定方法而言,通过单独准备用于学习观测值系列的状态转换概率模型、以及动作模型(用于实现其状态转换概率模型的状态转换的动作的模型)执行了学习。
因此,执行了对状态转换概率模型和动作模型这两个模型的学习,相应地,必须使用大量运算成本和存储资源以用于学习。
另一方面,图4中的智能体通过将观测值系列与动作系列相关联来执行(扩展HMM作为模型)学习,据此,可以通过少量运算成本和存储资源来执行学习。
另外,就根据相关领域的动作确定方法而言,必须提供如下这种布置:其中,使用状态转换概率模型来计算达到目标状态的状态系列,以及使用动作模型执行对用于得到该状态系列的动作的计算。也就是说,必须使用单独的模型来执行对达到目标状态的状态系列的计算、以及对用于得到该状态系列的动作的计算。
因此,就根据相关领域的动作确定方法而言,用于计算动作的运算成本大。
另一方面,图4中的智能体可以同时得到从当前状态到目标状态的最有可能的状态系列、以及用于得到其最有可能系列的动作系列,因此,可以通过少量运算成本确定智能体接下来要执行的动作。
对目标状态的确定
图9是说明了图4中的目标确定单元16所执行的图8的步骤S36中用于确定目标状态的处理的流程图。
就目标确定单元16而言,在步骤S51中,目标选择单元31确定是否设置了外部目标。
在步骤S51中确定设置了外部目标的情形中,即,例如,在使用者对外部目标输入单元33进行了操作的情形中,指定了模型存储单元22中存储的扩展HMM的任一个状态作为用作目标状态的外部目标,以及将目标状态(的代表下标)从外部目标输入单元33提供给了目标选择单元31,处理前往步骤S52,其中,目标选择单元31选择来自外部目标输入单元33的外部目标,将此外部目标提供给动作确定单元24,并且处理返回。
注意,使用者通过对外部目标输入单元33进行操作外,还可以通过对诸如未示出的PC(个人计算机)等的终端进行操作来指定作为目标状态的状态(的下标)。在此情形中,外部目标输入单元33通过执行与使用者所操作的终端的通信来识别使用者所指定的状态,并将此状态提供给目标选择单元31。
另一方面,在步骤S51中确定未设置外部目标的情形中,处理前往步骤S53,其中,开放边缘检测单元37基于模型存储单元22中存储的扩展HMM来检测扩展HMM状态的开放边缘输出,并且处理前往步骤S54。
在步骤S54中,目标选择单元31确定是否检测到了开放边缘。
此处,在检测到了扩展HMM状态的开放边缘输出的情形中,开放边缘检测单元37将作为其开放边缘的状态(的代表下标)提供给目标选择单元31。目标选择单元31通过确定是否从开放边缘检测单元37提供了开放边缘来确定是否检测到了开放边缘。
在步骤S54中确定检测到了开放边缘的情形中,即,从开放边缘检测单元37向目标选择单元31提供了一个或更多个开放边缘的情形中,处理前往步骤S55,其中,目标选择单元31选择例如如下这种开放边缘作为目标状态:其中,代表状态的下标是来自开放边缘检测单元37的一个或更多个开放边缘中最小的,将此下标提供给动作确定单元24,并且处理返回。
另外,在步骤S54中确定未检测到开放边缘的情形中,即,未从开放边缘检测单元37向目标选择单元31提供开放边缘的情形中,处理前往步骤S56,其中,分支结构检测单元36基于模型存储单元22中存储的扩展HMM来检测扩展HMM状态的分支结构化状态输出,并且处理前往步骤S57。
在步骤S57中,目标选择单元31确定是否检测到了分支结构化状态。
此处,在从扩展HMM的状态中检测到了分支结构化状态的情形中,分支结构检测单元36将其分支结构化状态(的代表下标)提供给目标选择单元31。目标选择单元31通过确定是否从分支结构检测单元36提供了分支结构化状态来确定是否检测到了分支结构化状态。
在步骤S57中确定检测到了分支结构化状态的情形中,即,在从分支结构检测单元36向目标选择单元31提供了一个或更多个分支结构化状态的情形中,处理前往步骤S58,其中,目标选择单元31选择来自分支结构检测单元36的一个或更多个分支结构化状态中的一个状态作为目标状态,将此目标状态提供给动作确定单元24,并且处理返回。
具体地,目标选择单元31参考逝去时间管理表存储单元32的逝去时间管理表来识别来自分支结构检测单元36的一个或更多个分支结构化状态的逝去时间。
进一步地,目标选择单元31从来自分支结构检测单元36的一个或更多个分支结构化状态中检测出逝去时间最长的状态,并选择此状态作为目标状态。
另一方面,在步骤S57中确定未检测到分支结构化状态的情形中,即,未从分支结构检测单元36向目标选择单元31提供分支结构化状态的情形中,处理前往步骤S59,其中,随机目标生成单元35随机地选择模型存储单元22中存储的扩展HMM的一个状态,并将此状态提供给目标选择单元31。
进一步地,在步骤S59中,目标选择单元31选择来自随机目标生成单元35的状态作为目标状态,将此状态提供给动作确定单元24,并且处理返回。
注意,开放边缘检测单元37对开放边缘的检测、以及分支结构检测单元36对分支结构化状态的检测的详细内容将在后面进行描述。
对动作规划的计算
图10A至图10C是说明了图4的动作确定单元24对动作规划的计算的图。图10A示意性地示出了用于动作规划计算的学习后的扩展HMM。在图10A中,圆圈代表扩展HMM的状态,圆圈内的数字是圆圈所代表状态的下标。另外,圆圈所代表状态所标出的箭头代表可用状态转换(其状态转换概率被认为不为0的状态转换)。
就图10A中的扩展HMM而言,将状态Si放置在此状态Si所对应的观测单元的位置中。
状态转换从而可用的两个状态代表智能体可以在此两个状态所对应的两个观测单元之间移动。相应地,代表扩展HMM状态转换的箭头代表智能体可以在动作环境内移动的路径。
在图10A中,存在如下这种情形:两个(多个)状态Si和Si′以部分重叠的方式放置在一个观测单元的位置中,这代表两个(多个)状态Si和Si′对应于一个观测单元。
例如,在图10A中,状态S3和S30对应于一个观测单元,以及状态S34和S35也对应于一个观测单元。类似地,状态S21和S23、状态S2和S17、状态S37和S48、以及状态S31和S32也分别对应于一个观测单元。
在使用从配置改变的动作环境得到的观测值系列和动作系列作为被学习数据来执行对扩展HMM的学习的情形中,如图10A中所示,得到如下扩展HMM:其中,多个状态对应于一个观测单元。
具体地,在图10A中,例如,使用从具有如下这种配置的动作环境得到的观测值系列和动作系列作为被学习数据来执行对扩展HMM的学习:其中,状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间形成屏障和路径中的一个。
进一步地,在图10A中,使用从具有如下这种配置的动作环境得到的观测值系列和动作系列作为被学习数据来执行对扩展HMM的学习:其中,状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间形成屏障和路径中的另一个。
作为其结果,就图10A中的扩展HMM而言,通过状态S21和S17得到具有如下这种配置的动作环境:其中,状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间形成屏障。
也就是说,就扩展HMM而言,在状态S21和S23所对应的观测单元的状态S21与状态S2和S17所对应的观测单元的状态S17之间不执行状态转换,相应地,得到屏障阻止智能体通过的动作环境配置。
另外,就扩展HMM而言,通过状态S23和S2得到具有如下这种配置的动作环境:其中,状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间形成路径。
也就是说,就扩展HMM而言,在状态S21和S23所对应的观测单元的状态S23与状态S2和S17所对应的观测单元的状态S2之间执行状态转换,相应地,得到允许智能体通过的动作环境配置。
如上所述,就扩展HMM而言,即使在动作环境的配置改变的情形中,也可以得到该配置改变的动作环境配置。
图10B和图10C示出了动作确定单元24所计算的动作规划的实例。
在图10B和图10C中,图10A中的状态S30(或S3)是目标状态,通过将存在智能体的观测单元所对应的状态S28作为当前状态,来计算从当前状态到目标状态的动作规划。
图10B示出了动作确定单元24在时间点t=1计算的动作规划PL1。
在图10B中,图10A中的状态S28、S23、S2、S16、S22、S29和S30的系列作为从当前状态到达目标状态的最有可能的状态系列,计算出要在状态转换发生时(从而得到此最有可能的状态系列)执行动作的动作系列作为动作规划PL1。
动作确定单元24确定动作规划PL1的从第一个状态S28移动到下一个状态S23的动作为所确定的动作,并且智能体执行所确定的动作。
作为其结果,智能体向右从状态S28(当前状态)所对应的观测单元向状态S21和S23所对应的观测单元移动(执行图3A中的动作U2),且时间点t变成从时间点t=1逝去了一个时间点的时间点t=2。
在图10B中(与图10C同),在状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间形成屏障。
如上所述将得到如下这种配置的状态识别成针对状态S21和S23所对应观测单元的状态S21:其中,状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间形成屏障;并且在时间点t=2,在状态识别单元23处将当前状态识别成状态S21。
状态识别单元23针对智能体在从当前状态紧靠前的状态到当前状态的状态转换时所执行的动作,对用于执行对状态转换的抑制的抑制因子进行更新,以抑制在最后状态与除当前状态以外的状态之间的状态转换但不抑制(此后,也称作使能)在最后状态与当前状态之间的状态转换。
具体地,在此情形中,当前状态是状态S21,以及最后状态是状态S28,相应地,对抑制因子进行更新以抑制在最后状态S28与除当前状态S21以外状态之间的状态转换,即,例如,在时间点t=1处得到的动作规划PL1的第一状态S28与下一个状态S23之间的状态转换、等等。进一步地,对抑制因子进行更新以使能在最后状态S28与当前状态S21之间的状态转换。
然后,在时间点t=2处,动作确定单元24将当前状态设置为状态S21,还将目标状态设置为S30,得到从当前状态达到目标状态的最有可能的状态系列S21、S28、S27、S26、S25、S20、S15、S10、S1、S17、S16、S22、S29和S30,并计算在状态转换发生从而得到最有可能的状态系列时所执行动作的动作系列作为动作规划。
进一步地,动作确定单元24确定动作规划的从第一个状态S21移动到下一个状态S28的动作为所确定的动作,并且智能体执行所确定的动作。
作为其结果,智能体向左从状态S21(当前状态)所对应的观测单元向状态S28所对应的观测单元移动(执行图3A中的动作U4),且时间点t变成从时间点t=2逝去了一个时间点的时间点t=3。
在时间点t=3处,在状态识别单元23处将当前状态识别成状态S28。
然后,在时间点t=3处,动作确定单元24将当前状态设置为状态S28,还将目标状态设置为S30,得到从当前状态达到目标状态的最有可能的状态系列,并计算在状态转换发生从而得到最有可能的状态系列时所执行动作的动作系列作为动作规划。
图10C示出了在时间点t=3处动作确定单元24所计算的动作规划PL3。
在图10C中,得到状态S28、S27、S26、S25、S20、S15、S10、S1、S17、S16、S22、S29和S30的系列作为最有可能的状态系列,并计算在状态转换发生从而得到最有可能的状态系列时所执行动作的动作系列作为动作规划PL3。
也就是说,在时间点t=3处,尽管当前状态是与时间点t=1的情形中一样的状态S28,以及,目标状态是与时间点t=1的情形中一样的状态S30,但是计算出与时间点t=1的情形中的动作规划PL1不同的动作规划PL3。
即,如上所述,因为在时间点t=2处,对抑制因子进行更新以抑制在状态S28与S23之间的状态转换,从而,在时间点t=3处,在得到最有可能的状态系列时,抑制了状态S23被选择成起于状态S28(当前状态)的状态转换的转换终点,并且选择了状态S27(可借以执行起点为状态S28的状态转换的状态)而非状态S23。
动作确定单元24在对动作规划PL3的计算之后确定其动作规划PL3的从第一个状态S28移动到下一个状态S27的动作为所确定的动作,且智能体执行所确定的动作。
作为其结果,智能体向下从状态S28(当前状态)所对应的观测单元向状态S27所对应的观测单元移动(执行图3A中的动作U3),此后,类似地,在每个时间点处执行对动作规划的计算。
使用抑制因子对状态转换概率的校正
图11是说明了动作确定单元24在图8的步骤S37中使用抑制因子所执行的对扩展HMM的状态转换概率的校正的图。
动作确定单元24如图11中所示通过将扩展HMM的状态转换概率Altm乘以抑制因子Ainhibit对扩展HMM的状态转换概率Altm进行校正,得到校正后的转换概率Astm(校正之后的状态转换概率Altm)。
然后,动作确定单元24使用校正后的转换概率Astm作为扩展HMM的状态转换概率来计算动作规划。
此处,在计算动作规划时,通过抑制因子对用于其计算的状态转换概率进行校正是因为如下原因。
具体地,学习之后扩展HMM的状态可能包括分支结构化状态(由于该状态,在执行一个动作的情形中可以执行到不同状态的状态转换)。
例如,在以上图10A的状态S29中,在执行用于将智能体向左(图3A)移动的动作U4的情形中,与到左侧的状态S3的状态转换类似,可以执行到左侧的状态S30的状态转换。
因此,在状态S29中,在执行一个动作的情形中会发生不同的状态转换,则状态S29是分支结构化状态。
当针对某动作会发生不同状态转换时,即,例如,在执行某动作的情形中,当到某状态的状态转换会发生、到另一状态的状态转换也会发生时,抑制因子在会发生的不同状态转换中抑制产生除其一个状态转换以外的状态转换,以只产生一个状态转换。
也就是说,如果假定针对某动作要产生的不同状态转换将称作分支结构,则在使用从其配置改变的动作环境得到的观测值系列和动作系列作为被学习数据来执行对扩展HMM的学习的情形中,扩展HMM得到动作环境配置的改变作为分支结构,作为其结果,出现分支结构化状态。
因此,分支结构化状态出现,因此,即使在动作环境的配置变成各种配置的情形中,扩展HMM也得到其动作环境的所有各种配置。
此处,扩展HMM所得到的配置改变的动作环境的各种配置是不被遗忘而在长期的基础上被存储的信息,因此,得到这种信息的扩展HMM(特别地,扩展HMM的状态转换概率)还将称作长期存储。
在当前状态是分支结构化状态的情形中,作为分支结构化状态的不同状态转换中的任一个状态转换是否可以作为起点为当前状态的状态转换来执行,取决于配置改变的动作环境的当前配置。
具体地,根据作为长期存储的扩展HMM的状态转换概率,取决于配置改变的动作环境的当前配置,即使可用状态转换可能也无法执行。
因此,智能体基于通过对智能体当前情形的识别要得到的当前状态、独立于长期存储地更新抑制因子。然后,智能体通过使用抑制因子对作为长期存储的扩展HMM的状态转换概率进行校正,用动作环境的当前配置来抑制不可用的状态转换,并且还得到使能可用状态转换的校正的转换概率(校正之后的状态转换概率),并使用其校正的转换概率来计算动作规划。
此处,校正的转换概率是通过使用要基于在每个时间点的当前状态被更新的抑制因子对作为长期存储的状态转换概率进行校正而要在每个时间点得到的信息,并且是要在短期的基础上被存储的信息,因此,还称作短期存储。
就动作确定单元24(图4)而言,用于通过使用抑制因子对扩展HMM的状态转换概率进行校正来得到校正的转换概率的处理将执行如下。
具体地,在扩展HMM的所有状态转换概率Altm由诸如图6B中所示的三维表来表示的情形中,抑制因子Ainhibitor也由尺寸与扩展HMM的状态转换概率Altm的三维表的尺寸一样的三维表来表示。
此处,表现扩展HMM的状态转换概率Altm的三维表还将称作状态转换概率表。另外,表现抑制因子Ainhibitor的三维表还将称作抑制因子表。
在扩展HMM状态的数量为N、智能体可以执行的动作的数量为M的情形中,状态转换概率表是宽×长×深为N×N×M个元素的三维表。因此,在此情形中,抑制因子表也是具有N×N×M个元素的三维表。
注意,除了抑制因子Ainhibitor,校正的转换概率Astm也由具有N×N×M个元素的三维表来表示。表现校正的转换概率Astm的三维表还将称作校正的转换概率表。
例如,如果假定在状态转换概率表中从顶部数第i个、从左边数第j个且在深度方向上从近侧数第m个的位置用(i,j,m)来表示,则动作确定单元24通过根据表达式(15)将作为状态转换概率表位置(i,j,m)的元素的状态转换概率Altm(即,aij(Um))与作为抑制因子表位置(i,j,m)的元素的抑制因子Ainhibitor相乘,来得到作为校正的转换概率表位置(i,j,m)的元素的校正的转换概率Astm。
Astm=Altm×Ainhibit …(15)
注意,在每个时间点在智能体的状态识别单元23(图4)处对抑制因子更新如下。
也就是说,状态识别单元23针对智能体在从当前状态Sj紧靠前的状态Si到当前状态Sj的状态转换时所执行的动作Um对抑制因子进行更新,以抑制在最后状态Si与除当前状态Sj以外的状态之间的状态转换,但不抑制(此后,也称作使能)在最后状态Si与当前状态Sj之间的状态转换。
具体地,如果假定通过用垂直于动作轴的平面在动作轴的位置m处截断抑制因子表所得到的平面还将称作针对动作Um的抑制因子平面,则状态识别单元23在针对动作Um的抑制因子平面的宽×长的N×N个抑制因子中,用1.0覆写作为从顶部数第i个并且从左边数第j个的位置(i,j)的元素的抑制因子,而在被置于从顶部数第i个的一行中的N个抑制因子中,用0.0覆写作为除位置(i,j)以外位置的元素的抑制因子。
作为其结果,根据通过使用抑制因子对状态转换概率进行校正所得到的校正的转换概率,在起点为分支结构化状态的状态转换(分支结构)中,最近的经历,即,只有最近所执行的状态转换可以执行,而非其他状态转换。
此处,扩展HMM表现智能体直到现在所经历的(通过学习所得到的)动作环境的配置。进一步地,在动作环境的配置变成各种配置的情形中,扩展HMM将其动作环境的各种配置表示成分支结构。
另一方面,抑制因子表现作为长期存储的扩展HMM具有的多个状态转换(分支结构)中哪个状态转换对动作环境的当前配置进行了建模。
因此,即使在通过将作为长期存储的扩展HMM的状态转换概率乘以抑制因子以对状态转换概率进行校正、并使用校正的转换概率(短期存储)(其校正之后的状态转换概率)计算动作规划来改变动作环境配置的情况下,也可以得到如下这种动作规划:其中,将其改变后的配置(当前配置)考虑在内,而不使用扩展HMM重新学习其改变后的配置。
具体地,在动作环境改变后的配置是扩展HMM已经得到的配置的情形中,基于当前状态对抑制因子进行更新,并使用其更新之后的抑制因子对扩展HMM的状态转换概率进行校正,从而,可以得到如下这种动作规划:其中,将动作环境改变后的配置考虑在内,而不执行扩展HMM的重新学习。
也就是说,可以高速有效地得到适用于动作环境配置改变的动作规划,同时抑制运算成本。
注意,在动作环境变成扩展HMM未得到的配置的情形中,为了在具有改变后配置的动作环境中确定合适的动作,必须使用在改变后的动作环境中观测到的观测值系列和动作系列来执行扩展HMM的重新学习。
另外,在如同在动作确定单元24处一样使用扩展HMM的状态转换概率来计算动作规划的情形中,假设即使当动作环境的当前配置是如下这种配置时:其中,作为分支结构的多个状态转换中的只有一个状态转换可以执行,而非其他状态转换;也可以根据维特比算法执行作为分支结构的所有多个状态转换,则计算出从当前状态st到目标状态Sgoal的最有可能的状态系列的状态转换发生时所执行的动作系列作为动作规划。
另一方面,在如下这种情形中:就动作确定单元24而言,通过抑制因子对扩展HMM的状态转换概率进行校正,并使用校正的转换概率(其校正之后的状态转换概率)来计算动作规划;假设被抑制因子抑制的状态转换不能执行,则计算出从当前状态st到目标状态Sgoal的最有可能的状态系列的状态转换发生时(未包括在以上状态转换中)所执行的动作系列作为动作规划。
具体地,例如,在以上图10A中,在执行智能体向右移动的动作U2时,状态S28处于分支结构化状态中,其中,可以执行到状态S21或者可以执行到状态S23的状态转换。
另外,在图10B中,如上所述,在时间点t=2处,状态识别单元23针对智能体在从当前状态S21紧靠前的状态S28到当前状态S21的状态转换时所执行的智能体向右移动的动作U2,对抑制因子进行更新,用以抑制从最后状态S28到除当前状态S21以外状态S23的状态转换,还用以使能从最后状态S28到当前状态S21的状态转换。
作为其结果,在图10C的时间点t=3处,尽管当前状态是状态S28,目标状态是S30,因此,当前状态和目标状态均与图10B的时间点t=1的情形中一样,但是,通过抑制因子抑制了执行智能体向右移动的动作U2时的、从状态S28到除状态S21以外的状态S23的状态转换,以及相应地,得到与时间点t=1的情形不同的状态系列,即,状态系列S28、S27、S26、S25、…、S30(从而,不执行从状态S28到状态S23的状态转换),作为从当前状态到达目标状态的最有可能的状态系列,并且,计算出在状态转换(从而得到此状态系列)发生时所执行动作的动作系列作为动作规划PL3。
顺便提及的是,执行对抑制因子的更新,以使能作为分支结构的多个状态转换中智能体已经历的状态转换,并且,以抑制除此状态转换以外的其它状态转换。
具体地,针对智能体在从当前状态紧靠前的状态到当前状态的状态转换时所执行的动作,对抑制因子进行更新,用以抑制在最后状态与除当前状态以外的状态之间的状态转换(从最后状态到除当前状态以外状态的状态转换),还用以使能在最后状态与当前状态之间的状态转换(从最后状态到当前状态的状态转换)。
在执行对抑制因子的更新以使能作为分支结构的多个状态转换中智能体已经历的状态转换并且还用以抑制除此状态转换以外的其它状态转换的情形中,仍对被更新的抑制因子所抑制的状态转换进行抑制,直到智能体经历此状态转换。
在如下这种情形中:如上所述在动作确定单元24处根据要使用校正的转换概率(通过抑制因子对扩展HMM的状态转换概率进行校正)所计算的动作规划来执行对智能体要执行动作的确定,不计算包括如下这些动作的动作规划:由于这些动作,被抑制因子抑制的状态转换发生,因此,通过使用除使用动作规划的方法以外的方法或者通过偶然方式来执行对接下来要执行动作的确定,仍对抑制因子所抑制的状态转换进行抑制,除非智能体经历抑制因子所抑制的状态转换。
相应地,即使动作环境的配置从不能执行抑制因子所抑制的状态转换的配置变成可以执行此状态转换的配置,直到智能体幸运地经历了抑制因子所抑制的状态转换之前,也不能够计算出包括如下这种动作的动作规划:由于该动作,此转换状态发生。
因此,作为对抑制因子的更新,状态识别单元23使能作为分支结构的多个状态转换中智能体所经历的状态转换,并且,还抑制其它状态转换,以及额外地,根据时间的过去缓解对状态转换的抑制。
也就是说,状态识别单元23对抑制因子进行更新,用以使能作为分支结构的多个状态转换中智能体所经历的状态转换,还用以抑制其它状态转换,以及额外地,对抑制因子进行更新以根据时间的过去缓解对状态转换的抑制。
具体地,状态识别单元23对抑制因子进行更新以根据时间的过去收敛在1.0上,例如,按照表达式(16)将时间点t处的抑制因子Ainhibit(t)更新为时间点t+1处的抑制因子Ainhibit(t+1)。
Ainhibit(t+1)=Ainhibit(t)+c(1-Ainhibit(t))(0≤c≤1)
…(16)
其中,系数c是大于0.0但小于1.0的值,系数c越大,抑制因子收敛在1.0上越快。
根据表达式(16),随着时间的过去,逐渐缓解对一度抑制的状态转换(抑制因子设置为0.0的状态转换)的抑制,且尽管智能体尚未经历此状态转换,但是可以计算出包括如下这种动作的动作规划:由于该动作,此状态转换发生。
现在,用以随时间缓解对状态转换的抑制要执行的对抑制因子的更新,将称作自然衰减所致遗忘所对应的更新。
对抑制因子的更新
图12是说明了图4的状态识别单元23在图8的步骤S35中所执行的抑制因子更新处理的流程图。
注意,在图8的识别动作模式处理的步骤S31中,在时间点t被初始化成1时将抑制因子初始化成初始值1.0。
就抑制因子更新处理而言,在步骤S71,状态识别单元23针对模型存储单元22中存储的所有抑制因子Ainhibit,执行自然衰减所致遗忘所对应的更新,即,根据表达式(16)的更新,并且处理前往步骤S72。
在步骤S72中,状态识别单元23基于模型存储单元22中存储的扩展HMM(的状态转换概率),确定当前状态Sj紧靠前的状态Si是否是分支结构化状态,并且,还确定当前状态Sj是否是如下这些不同状态中的一个状态:能够从作为最后状态Si的分支结构化状态通过执行同一动作进行状态转换的不同状态。
此处,可以按与分支结构检测单元36检测分支结构化状态的情形一样的方式来确定最后状态Si是否是分支结构化状态。
在步骤S72中确定最后状态Si不是分支结构化状态的情形中,或者在步骤S72中确定最后状态Si是分支结构化状态、但当前状态Sj不是如下这些不同状态中的一个状态的情形中:能够从作为最后状态Si的分支结构化状态通过执行同一动作进行状态转换的不同状态,处理跳过步骤S73和S74并返回。
另外,在步骤S72中确定最后状态Si是分支结构化状态并且当前状态Sj是如下这些不同状态中的一个状态的情形中:能够从作为最后状态Si的分支结构化状态通过执行同一动作进行状态转换的不同状态,处理前往步骤S73,其中,状态识别单元23针对模型存储单元22中存储的抑制因子Ainhibit的最后动作Um,将从最后状态Si到当前状态Sj的状态转换的抑制因子(抑制因子表的位置(i,j,m)中的抑制因子)hij(Um)更新为1.0,并且处理前往步骤S74。
在步骤S74中,状态识别单元23针对模型存储单元22中存储的抑制因子Ainhibit的最后动作Um,将从最后状态Si到除当前状态Sj以外的状态Sj′的状态转换的抑制因子(抑制因子表的位置(i,j′,m)中的抑制因子)hi j′(Um)更新为0.0,并且处理返回。
现在,就根据相关领域的动作确定方法而言,执行对诸如HMM等的状态转换概率模型的学习基于如下这种假设:执行了对静态配置的建模;因此,在要接受学习的配置在对状态转换概率模型的学习之后改变的情形中,必须以改变后的配置作为目标来执行对状态转换概率模型的重新学习,因此,用于处理要接受学习的配置的改变的运算成本大。
另一方面,在扩展HMM得到动作环境配置的改变作为分支结构、并且最后状态是分支结构化状态的情形中,图4中的智能体针对智能体在从最后状态到当前状态的状态转换时所执行的动作,对抑制因子进行更新,以抑制最后状态与除当前状态以外的状态之间的状态转换,使用此更新之后的抑制因子对扩展HMM的状态转换概率进行校正,并基于校正的转换概率(校正之后的状态转换概率)来计算动作规划。
因此,在动作环境的配置改变的情形中,可以通过少量运算成本(无需执行对扩展HMM的重新学习)计算出适用于(按照)要改变配置的动作规划。
另外,对抑制因子进行更新,以根据时间的过去缓解对状态转换的抑制,因此,即使智能体没有偶然地经历过去所抑制的状态转换,也可以随着时间的过去计算出包括如下这种动作的动作规划:由于该动作,过去所抑制的状态转换发生;以及作为其结果,在动作环境的配置变成与状态转换过去被抑制时的配置不同的配置的情形中,可以迅速计算出适于改变后配置的动作规划。
对开放边缘的检测
图13是说明了扩展HMM的状态(图4中开放边缘检测单元37所检测到的开放边缘)的图。
就扩展HMM而言,在事先理解智能体未经历的状态转换将会发生(某状态作为转换起点)时,开放边缘粗略地来说是此转换起点的状态。
具体地,在对某状态的状态转换概率以及另一状态(分配了用于观测与该状态一样的观测值的观测概率(0.0以外(不视为0.0)的值))的状态转换概率进行比较的情形中,状态等同于开放边缘:其中,尽管理解的是在执行某动作时可以执行到下一个状态的状态转换,但是在此状态中尚未执行此动作,因此,未向其分配状态转换概率(认为是0.0),且状态转换不能执行。
因此,就扩展HMM而言,当检测到如下这种另一状态时:其中,观测到与预定观测值同样的观测值,具有以观测到预定观测值的状态作为转换起点可以执行的状态转换中未执行的状态转换,此另一状态是开放边缘。
开放边缘从概念上说,如图13中所示,例如是:通过将智能体放置在房间中并且以此房间的某范围作为对象来执行学习,在以扩展HMM得到的配置的边缘部分(房间内被学习范围中的边缘部分)或者智能体所放置房间的整个范围作为对象来执行学习之后,去往新房间的入口等所对应的状态,此状态通过添加与该房间邻接的新房间(智能体从而可以移动)而出现。
当检测到开放边缘时,可以理解是否在扩展HMM得到的配置的哪个部分的末端扩展了智能体的未知区域。相应地,以开放边缘作为目标状态来计算动作规划,相应地,智能体积极执行动作,以进一步进入未知区域。作为其结果,智能体可以有效地得到如下这种经验:用于广泛学习动作环境的配置(得到观测值系列和动作系列作为用于对动作环境配置进行学习的被学习数据),并且增强就扩展HMM而言未得到配置的模糊部分(动作环境开放边缘的状态所对应的观测单元周围的配置)。
为了对开放边缘进行检测,开放边缘检测单元37首先生成动作模板。在生成动作模板时,开放边缘检测单元37使扩展HMM的观测概率B={bi(Ok)}经受阈值处理,并且,列出每个观测值Ok的以阈值或更大的概率观测到其观测值Ok的状态Si。
图14A和图14B是说明了开放边缘检测单元37列出其中以等于阈值或更大的概率观测到观测值Ok的状态Si的图。图14A示出了扩展HMM的观测概率B的实例。具体地,图14A示出了扩展HMM(状态Si的数量N为5,以及观测值Ok的数量为3)的观测概率B的实例。
开放边缘检测单元37例如以阈值为0.5等来执行用于对等于或大于阈值的观测概率B进行检测的阈值处理。
在此情形中,在图14A中,对于状态S1,从而观测到观测值O3的观测概率b1(O3)=0.7,对于状态S2,从而观测到观测值O2的观测概率b2(O2)=0.8,对于状态S3,从而观测到观测值O3的观测概率b3(O3)=0.8,对于状态S4,从而观测到观测值O2的观测概率b4(O2)=0.7,对于状态S5,从而观测到观测值O1的观测概率b5(O1)=0.9,这些中的每个均由阈值处理检测到。
然后,对于观测值O1、O2和O3中的每个观测值,开放边缘检测单元37从而以列出的方式检出以等于或大于阈值的概率观测到观测值Ok的状态Si。
图14B示出了对于观测值O1、O2和O3中的每个观测值要列出的状态Si。对于观测值O1列出状态S5,作为以等于或大于阈值的概率观测到观测值O1的状态,以及对于观测值O2列出状态S2和S4,作为以等于或大于阈值的概率观测到观测值O2的状态。另外,对于观测值O3列出状态S1和S3,作为以等于或大于阈值的概率观测到观测值O3的状态。
然后,开放边缘检测单元37使用扩展HMM的状态转换概率A={aij(Um)},针对观测值Ok中的每个观测值,为动作Um中每个动作计算转换概率对应值(以有关该观测值Ok列出的状态Si为起点的状态转换的状态转换概率aij(Um)中最大值的状态转换概率aij(Um)所对应的值),并针对观测值Ok中的每个观测值,取为动作Um中的每个动作计算的转换概率对应值作为观测到观测值Ok时执行动作Um的动作概率,以生成动作模板C(以动作概率为元素的矩阵)。
图15是说明了用于使用对于观测值Ok列出的状态Si来生成动作模板C的方法的图。开放边缘检测单元37通过三维状态转换概率表,从状态转换(以对于观测值Ok列出的状态Si为起点的状态转换)的列(水平)方向(j轴方向)排列的状态转换概率中检测最大状态转换概率。
也就是说,例如,现在假定观测到观测值O2,对于观测值O2列出状态S2和S4。
在此情形中,开放边缘检测单元37关注以如下方式得到的针对状态S2的动作平面:通过用垂直于i轴的平面在i轴的位置i=2处截断三维表;并且检测针对其状态S2的动作平面的、当执行动作U1时发生的以状态S2为起点的状态转换的状态转换概率a2j(U1)的最大值。
也就是说,开放边缘检测单元37在针对状态S2的动作平面的动作轴m=1的位置处,检测j轴方向上排列的状态转换概率a2,1(U1)、a2,2(U1)、…、a2,N(U1)的最大值。
类似地,开放边缘检测单元37从针对状态S2的动作平面中检测当执行另一动作Um时发生的、以状态S2为起点的状态转换的状态转换概率的最大值。
进一步地,针对状态S4(也对于观测值O2列出的另一状态),类似地,开放边缘检测单元37从针对状态S4的动作平面中检测当执行每个动作Um时发生的、以状态S4为起点的状态转换的状态转换概率的最大值。
如上所述,开放边缘检测单元37针对对于观测值O2列出的状态S2和S4的每一个检测当执行每个动作Um时发生的状态转换的状态转换概率的最大值。
然后,开放边缘检测单元37对于每个动作Um、针对对于观测值O2列出的状态S2和S4取诸如上述所检测到的状态转换概率最大值的平均值,并将其取平均值所得到的平均值作为针对观测值O2的状态转换概率最大值所对应的转换概率对应值。
对于每个动作Um得到针对观测值O2的转换概率对应值,但针对观测值O2所得到的对于每个动作Um的此转换概率对应值代表观测到观测值O2时执行动作Um的概率(动作概率)。
还针对另一观测值Ok,类似地,开放边缘检测单元37得到作为对于每个动作Um的动作概率的转换概率对应值。
然后,开放边缘检测单元37生成如下这种矩阵:将观测到观测值Ok时执行动作Um的动作概率作为从顶部数第k个且从左边数第m个处的元素,作为动作模板C。
因此,动作模板C由K行和M列的矩阵形成,其中,行的数量等于观测值Ok的数量K,以及列的数量等于动作Um的数量M。
在生成动作模板C之后,开放边缘检测单元37使用其动作模板C、基于观测概率来计算动作概率D。
图16是说明了用于基于观测概率来计算动作概率D的方法的图。现在,如果假定以在状态Si中观测到观测值Ok的观测概率bi(Ok)作为第i行第k列的元素的矩阵是观测概率矩阵B,则观测概率矩阵B由N行和K列的矩阵形成,其中,行的数量等于状态Si的数量N,以及列的数量等于观测值Ok的数量K。
开放边缘检测单元37根据表达式(17)将N行K列的观测概率矩阵B乘以动作模板C(K行M列的矩阵),从而基于观测概率来计算动作概率D(以观测到观测值Ok的状态Si中将会执行动作Um的概率作为第i行第m列处的元素的矩阵)。
D=BC …(17)
开放边缘检测单元37例如如上所述的基于观测概率来计算动作概率D,并额外地基于状态转换概率来计算动作概率E。
图17是说明了用于基于状态转换概率来计算动作概率E的方法的图。开放边缘检测单元37针对动作Um中的每个动作,把关于在由i轴、j轴和动作轴形成的三维状态转换概率表A的i轴方向上的状态Si中每个状态的状态转换概率aij(Um)相加,从而基于状态转换概率来计算动作概率E(以状态Si中将会执行动作Um的概率作为第i行第m列处的元素的矩阵)。
具体地,开放边缘检测单元37得到由i轴、j轴和动作轴形成的状态转换概率表A的水平方向(列方向)上排列的状态转换概率aij(Um)的和,即,在关注i轴的某位置i并且在动作轴的某位置m的情形中,得到穿过点(i,m)的在与j轴平行的直线上排列的状态转换概率aij(Um)的和,并将此和作为第i行第m列处的元素,从而基于状态转换概率来计算动作概率E(N行M列的矩阵)。
在如上所述基于观测概率计算出动作概率D、并基于状态转换概率计算出动作概率E之后,开放边缘检测单元37根据表达式(18)计算差值动作概率F(基于观测概率的动作概率D与基于状态转换概率的动作概率E之间的差值)。
F=D-E…(18)
差值动作概率F与基于观测概率的动作概率D、以及基于状态转换概率的动作概率E同样地由N行M列的矩阵形成。
图18是示意性地示出了差值动作概率F的图。
在图18中,小方形代表矩阵中的元素。另外,没有图案的方形代表被认为是0.0的元素,以及填成黑色的方形代表0.0以外(不认为是0.0)值的元素。
根据差值动作概率F,在存在多个状态作为观测到观测值Ok的状态的情形中,已经熟知的是,可以从多个状态的部分状态(智能体执行了动作Um的状态)执行动作Um,但可以检测到其余状态(智能体未执行动作Um的状态),在所述其余状态下执行该动作Um时发生的状态转换未反映在状态转换概率aij(Um)上,即,可以检测到开放边缘。
也就是说,在执行动作Um时发生的状态转换已反映在状态Si的状态转换概率aij(Um)上的情形中,基于观测概率的动作概率D的第i行第m列处的元素、以及基于状态转换概率的动作概率E的第i行第m列处的元素具有相似的值。
另一方面,在执行动作Um时发生的状态转换未反映在状态Si的状态转换概率aij(Um)上的情形中,基于观测概率的动作概率D的第i行第m列处的元素受到观测到与状态Si一样的观测值并执行了动作Um的状态的状态转换影响,具有不视为0.0的值,某等级的值,但基于状态转换概率的动作概率E的第i行第m列处的元素具有0.0(包括被视为0.0的小的值)。
因此,在执行动作Um时发生的状态转换未反映在状态Si的状态转换概率aij(Um)上的情形中,差值动作概率F的第i行第m列处的元素具有不视为0.0的值(绝对值),因此,可以通过检测具有不认为是0.0的值的差值动作概率F的元素来检测开放边缘以及在开放边缘处未执行的动作。
也就是说,在差值动作概率F的第i行第m列处元素的值为不视为0.0的值的情形中,开放边缘检测单元37将状态Si检测为开放边缘,并还将动作Um检测为在状态Si(开放边缘)未执行的动作。
图19是说明了通过图4的开放边缘检测单元37在图9的步骤S53中所执行的用于检测开放边缘的处理的流程图。
在步骤S81中,开放边缘检测单元37使模型存储单元22(图4)中存储的扩展HMM的观测概率B={bi(Ok)}接受阈值处理,从而,如图14A和图14B中所示,对于观测值Ok中的每个观测值,列出以等于或大于阈值的概率观测到观测值Ok的状态Si。
随步骤S81之后,处理前往步骤S82,其中,如参照图15所描述的,开放边缘检测单元37使用扩展HMM模型的状态转换概率A={aij(Um)}针对观测值Ok中的每个观测值来为动作Um中的每个动作计算转换概率对应值(以对于观测值Ok所列出状态Si为起点的状态转换的状态转换概率aij(Um)中最大值的状态转换概率aij(Um)所对应的值),并针对观测值Ok中的每个观测值将为动作Um中的每个动作所计算的转换概率对应值作为观测到观测值Ok时执行动作Um的动作概率,以生成动作模板C(以动作概率为元素的矩阵)。
然后,处理从步骤S82前往步骤S83,其中,开放边缘检测单元37根据表达式(17)将观测概率矩阵B乘以动作模板C,从而基于观测概率来计算动作概率D,并且处理前往步骤S84。
在步骤S84中,如参照图17所描述的,开放边缘检测单元37针对动作Um中的每个动作,把关于在三维状态转换概率表A的i轴方向上的状态Si中每个状态的状态转换概率aij(Um)相加,从而基于状态转换概率来计算动作概率E(以状态Si中将会执行动作Um的概率作为第i行第m列处的元素的矩阵)。
然后,处理从步骤S84前往步骤S85,其中,开放边缘检测单元37根据表达式(18)计算差值动作概率F(基于观测概率的动作概率D与基于状态转换概率的动作概率E之间的差值),并且处理前往步骤S86。
在步骤S86中,开放边缘检测单元37使差值动作概率F接受阈值处理,从而将值等于或大于预定阈值的差值动作概率F的元素检测为检出对象的检出对象元素。
进一步地,开放边缘检测单元37把检出对象元素的行i和列m检出,将状态Si检测为开放边缘,还将动作Um检测为在开放边缘Si未执行的未经历动作,并返回。
智能体在开放边缘执行未经历的动作,因此,可以开辟接续开放边缘末端的未知区域。
现在,就根据相关领域的动作确定方法而言,通过同等地处理已知区域(学习到的区域)和未知区域(未被学习的区域)而不考虑智能体的经历来确定智能体的目标。因此,为了获得对未知区域的经历,必须执行许多动作,作为其结果,对动作环境配置的广泛学习在大量时间上进行了许多试错。
另一方面,就图4中的智能体而言,对开放边缘进行检测,并以其开放边缘作为目标状态来确定动作,因此,可以有效地学习动作环境的配置。
具体地,开放边缘是扩展了智能体未经历的未知区域的状态,因此,智能体可以通过对开放边缘进行检测并以其开放边缘作为目标状态确定动作,来积极进一步进入未知区域。因此,智能体可以有效地获得用于广泛学习动作环境配置的经历。
对分支结构化状态的检测
图20是说明了用于通过图4的分支结构检测单元36对分支结构化状态进行检测的方法的图。
扩展HMM得到动作环境的配置改变的部分作为分支结构化状态。可以通过参考扩展HMM的状态转换概率(长期存储)来检测智能体已经经历的配置改变所对应的分支结构化状态。如果已检测到分支结构化状态,则智能体可以认识到存在配置改变的动作环境部分。
在存在动作环境的配置改变的部分的情形中,针对这种部分,期望在定期或不定期的基础上积极确认当前配置、并将此反映在抑制因子上(结果是,作为短期存储的校正的转换概率)。
因此,就图4中的智能体而言,可以在分支结构检测单元36处检测分支结构化状态,以及可以在目标选择单元31处选择分支结构化状态作为目标状态。
分支结构检测单元36诸如图20中所示检测分支结构化状态。也就是说,对状态转换概率表A的动作Um每个动作的状态转换概率平面进行归一化,以使得每行水平方向(列方向)的和变成1.0。
因此,就针对动作Um的状态转换概率平面而言,在关注某行i的情形中,当状态Si不是分支结构化状态时,第i行的状态转换概率aij(Um)的最大值是1.0或者非常接近1.0的值。
另一方面,当状态Si是分支结构化状态时,第i行的状态转换概率aij(Um)的最大值是充分小于1.0的值(如,图20中所示的0.6或0.5),并且,还大于在通过状态数量N均等地分割其和为1.0的状态转换概率的情形中的值(平均值)1/N。
因此,按照表达式(19),在针对动作Um每个动作的状态转换概率平面的每行i的状态转换概率aij(Um)的最大值小于阈值amax_th(小于1.0)、并且还大于平均值1/N的情形中,分支结构检测单元36将状态Si检测为分支结构化状态。
其中,就三维状态转换概率表A而言,Aijm表示状态转换概率aij(Um),其中,在i轴方向上的位置是从顶部数第i个,在j轴方向上的位置是从左边数第j个,并且在动作轴方向上的位置是从近侧数第m个。
另外,在表达式(19)中,就三维状态转换概率表A而言,max(Aijm)表示A1,S,U至AN,S,U(a1,S(U)至aN,S(U))的N个状态转换概率的最大值,其中,在j轴方向上的位置是从左边数第S个(从状态Si开始的状态转换的转换终点的状态是状态S),并且在动作轴方向上的位置是从近侧数第U个(在从状态Si开始的状态转换发生时要执行的动作是动作U)。
注意,在表达式(19)中,可以根据将分支结构化状态的检测灵敏度设置到哪个等级来在1/N<amax_th<1.0的范围中调整阈值amax_th,其中,阈值amax_th设置得距1.0越近,可以越灵敏地检测分支结构化状态。
在已检测到一个或更多个分支结构化状态的情形中,分支结构检测单元36(诸如图9中所描述的)将此一个或更多个分支结构化状态提供给目标选择单元31。
进一步地,目标选择单元31参考逝去时间管理表存储单元32的逝去时间管理表来识别来自分支结构检测单元36的一个或更多个分支结构化状态的逝去时间。
然后,目标选择单元31从来自分支结构检测单元36的一个或更多个分支结构化状态中检测出具有最长逝去时间的状态,并选择此状态作为目标状态。
如上所述,从一个或更多个分支结构化状态中选择出具有最长逝去时间的状态,并选择此状态作为目标状态,从而,可以执行动作(其中,通过在时间上平均地将一个或更多个分支结构化状态中的每个分支结构化状态作为目标状态来确认配置是如何对应于分支结构化状态的)。
现在,就根据相关技术的动作确定方法而言,确定目标而不关注分支结构化状态,因此,频繁地将除分支结构化状态以外的状态作为目标。因此,在对动作环境的最新配置进行识别的情形中,频繁地执行浪费动作。
另一方面,就图4中的智能体而言,以分支结构化状态为目标状态来确定动作,从而,分支结构化状态所对应部分的最新配置可以早早识别出并反映在抑制因子上。
注意,在将分支结构化状态确定为目标状态的情形中,在到达作为目标状态的分支结构化状态(所对应的观测单元)之后,智能体可以通过基于扩展HMM确定如下这种动作并执行此动作来从分支结构中的该状态移动:由于该动作,可以执行到不同状态的状态转换;因此可以识别(理解)分支结构化状态所对应部分的配置,即,可以从分支结构化状态向其进行状态转换的状态。
仿真
图21A和图21B是示出了本发明人所执行的用于针对图4的智能体进行仿真的动作环境的图。
具体地,图21A示出了具有第一配置的动作环境,以及图21B示出了具有第二配置的动作环境。
就具有第一配置的动作环境而言,路径中包括位置pos1、pos2和pos3,其中,智能体可以通过这些位置,但另一方面,就具有第二配置的动作环境而言,位置pos1至pos3被包括在阻止智能体通过这些位置的屏障中。
注意,位置pos1至pos3中的每个位置可以各自被包括在路径或屏障中。
仿真使得智能体以反射动作模式(图5)在具有第一配置的动作环境和具有第二配置的动作环境中的每个动作环境处执行动作,从而,得到了作为被学习数据的4000个步长(时间点)价值的观测系列和动作系列,并执行了对扩展HMM的学习。
图22是示意性地示出了学习之后的扩展HMM的图。在图22中,圆圈代表扩展HMM的状态,且圆圈内的数字是圆圈所代表状态的下标。另外,表明圆圈所代表状态的箭头代表可用状态转换(状态转换概率被认为不为0的状态转换)。
就图22中的扩展HMM而言,将状态Si放置在其状态Si所对应的观测单元的位置中。
状态转换从而可用的两个状态代表智能体可以在此两个状态分别所对应的两个观测单元之间移动。因此,代表扩展HMM状态转换的箭头代表智能体可以在动作环境内移动的路径。
在图22中,存在如下这种情形:两个(多个)状态Si和Si′以部分重叠的方式放置在观测单元的一个观测单元的位置中,这代表两个(多个)状态Si和Si′对应于其观测单元中的一个观测单元。
在图22中,以与在图10A中的情形一样的方式,状态S3和S30对应于观测单元中的一个观测单元,以及状态S34和S35也对应于观测单元中的一个观测单元。类似地,状态S21和S23、状态S2和S17、状态S37和S48、以及状态S31和S32也分别对应于观测单元中的一个观测单元。
另外,在图22中,分别地,在执行了智能体向左移动的动作U4(图3B)的情形中,可以执行到不同状态S3和S30的状态转换的状态S29是分支结构化状态;在执行了智能体向右移动的动作U2的情形中,可以执行到不同状态S34和S35的状态转换的状态S39是分支结构化状态;在执行了智能体向左移动的动作U4的情形中,可以执行到不同状态S34和S35的状态转换的状态S28(状态S28还是如下这种状态:在执行了智能体向右移动的动作U2的情形中,可以执行到不同状态S21和S23的状态转换)是分支结构化状态;在执行了智能体向上移动的动作U1的情形中,可以执行到不同状态S2和S17的状态转换的状态S1是分支结构化状态;在执行了智能体向下移动的动作U3的情形中,可以执行到不同状态S2和S17的状态转换的状态S16是分支结构化状态;在执行了智能体向左移动的动作U4的情形中,可以执行到不同状态S2和S17的状态转换的状态S12是分支结构化状态;在执行了智能体向下移动的动作U3的情形中,可以执行到不同状态S37和S48的状态转换的状态S42是分支结构化状态;在执行了智能体向下移动的动作U3的情形中,可以执行到不同状态S31和S32的状态转换的状态S36是分支结构化状态;以及在执行了智能体向左移动的动作U4的情形中,可以执行到不同状态S31和S32的状态转换的状态S25是分支结构化状态。
注意,在图22中,虚线箭头代表可以在具有第二配置的动作环境处执行的状态转换。因此,在动作环境的配置是第一配置(图21A)时,不允许智能体执行用图22中虚线箭头代表的状态转换。
就仿真而言,执行了初始化设置,其中,将图22中虚线箭头代表的状态转换所对应的抑制因子设置为0.0,以及将其它状态转换所对应的抑制因子设置为1.0,因此,在紧随仿真开始之后,智能体不能够计算出包括如下这种动作的动作规划:其中,发生只能在具有第二配置的动作环境处执行的状态转换。
图23至图29是示出了如下这种智能体的图:基于学习之后的扩展HMM计算动作规划直到它到达目标状态,并执行根据其动作规划确定的动作。
注意,在图23至图29中,动作环境内的智能体、以及目标状态(所对应的观测单元)被示出在上侧,以及扩展HMM被示出在下侧。
图23示出了在时间点t=t0处的智能体。在时间点t=t0处,动作环境的配置是第一配置,其中,路径中包括位置pos1至pos3(图21A)。
进一步地,在时间点t=t0处,目标状态(所对应的观测单元)是左下方的状态S37,且智能体被置于状态S20(所对应的观测单元)中。
然后,智能体计算出前往状态S37(目标状态)的动作规划,并执行从状态S20(当前状态)向左的移动,作为根据其动作规划所确定的动作。
图24示出了在时间点t=t1(>t0)处的智能体。在时间点t=t1处,动作环境的配置从第一配置变成如下这种配置:其中,智能体可以通过路径中包括的位置pos1,但无法通过屏障中包括的位置pos2和pos3。
进一步地,在时间点t=t1处,目标状态按照与在时间点t=t0的情形中一样的方式是左下方的状态S37,以及智能体被置于状态S31中。
图25示出了在时间点t=t2(>t1)处的智能体。在时间点t=t2处,动作环境的配置变成如下这种配置(此后,还称作“改变后的配置”):其中,智能体可以通过路径中包括的位置pos1,但无法通过屏障中包括的位置pos2和pos3。
进一步地,在时间点t=t2处,目标状态是上侧的状态S3,以及智能体被置于状态S31中。
然后,智能体计算出前往状态S3(目标状态)的动作规划,并试图执行从状态S31(当前状态)向上的移动,作为根据其动作规划所确定的动作。
此处,在时间点t=t2处,计算出如下这种动作规划:其中,状态系列S31、S36、S39、S35和S3的状态转换发生。
注意,在动作环境具有第一配置的情形中,状态S37和S48所对应的观测单元与状态S31和S32所对应的观测单元之间的位置pos1(图21A和图21B)、状态S3和S30所对应的观测单元与状态S34和S35所对应的观测单元之间的位置pos2、以及状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间的位置pos3均被包括在路径中,因此,智能体可以通过位置pos1至pos3。
然而,在动作环境具有改变后的配置的情形中,位置pos2和pos3被包括在屏障中,相应地,阻止了智能体通过位置pos2和pos3。
如上所述,就仿真的初始化设置而言,只有对应于只能在具有第二配置的动作环境处执行的状态转换的抑制因子被设置为0.0,并且在时间点t=t2处,不抑制可以在具有第一配置的动作环境处执行的状态转换。
因此,在时间点t=t2处,状态S3和S30所对应的观测单元与状态S34和S35所对应的观测单元之间的位置pos2被包括在屏障中,相应地,阻止了智能体通过位置pos2,但智能体已经计算出了包括如下这种动作的动作规划:其中,从状态S35到状态S3的状态转换发生,通过了状态S3和S30所对应的观测单元与状态S34和S35所对应的观测单元之间的位置pos2。
图26示出了在时间点t=t3(>t2)处的智能体。在时间点t=t3处,动作环境的配置仍是改变后的配置。
进一步地,在时间点t=t3处,目标状态是上侧的状态S3,以及智能体被置于状态S28中。
然后,智能体计算出前往状态S3(目标状态)的动作规划,并试图执行从状态S28(当前状态)向右的移动,作为根据其动作规划所确定的动作。
此处,在时间点t=t3处,计算出如下这种动作规划:其中,状态系列S28、S23、S2、S16、S22、S29和S3的状态转换发生。
在时间点t=t2处以及此后,智能体通过计算出与在时间点t=t2所计算出的、状态系列S31、S36、S39、S35和S3的状态转换发生的动作规划(图25)类似的动作规划、并执行根据此动作规划所确定的动作,移动到状态S35所对应的观测单元,但此时,认识到难以通过在状态S3(和S30)所对应的观测单元与状态S34(和S35)所对应的观测单元之间的位置pos2,即,认识到通过执行根据动作规划所确定的动作从状态系列S31、S36、S39、S35和S3中的状态S39到达的状态不是状态S39之后的状态S35而是状态S34,并将未执行的从状态S39到状态S35的状态转换所对应的抑制因子更新为0.0。
作为其结果,在时间点t=t3处,计算出如下这种动作规划:其中,状态系列S28、S23、S2、S16、S22、S29和S3的状态转换发生,其是智能体不可能通过位置pos2且从状态S39到状态S35的状态转换不发生的动作规划。
注意,在动作环境具有改变后的配置的情形中,状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间的位置pos3(图21A和图21B)被包括在屏障中,这阻止了智能体通过位置pos3。
如上所述,就仿真的初始化设置而言,只有对应于只能在具有第二配置(其中,位置pos1至pos3被包括在屏障中,阻止了智能体通过这些位置)的动作环境处执行的状态转换的抑制因子被设置为0.0,以及在时间点t=t3处,不抑制可以在具有第一配置的动作环境处执行的、通过位置pos3所对应的从状态S23到状态S2的状态转换。
因此,在时间点t=t3处,智能体计算出如下这种动作规划:其中,从状态S23到状态S2的状态转换发生,通过状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间的位置pos3。
图27示出了在时间点t=t4(即,t3+1)处的智能体。在时间点t=t4处,动作环境的配置是改变后的配置。
进一步地,在时间点t=t4处,目标状态是上侧的状态S3,并且智能体被置于状态S21中。
智能体通过执行根据在时间点t=t3处计算出的动作规划(图26)(其中,状态系列S28、S23、S2、S16、S22、S29和S3的状态转换发生)所确定的动作,从状态S28所对应的观测单元移动到状态S21和S23所对应的观测单元,但此时,智能体识别出:通过执行根据动作规划所确定的动作,从对应于该动作规划的状态系列S28、S23、S2、S16、S22、S29和S3中的状态S28到达的状态不是状态S28之后的状态S23而是状态S21,并且将从状态S28到状态S23的状态转换所对应的抑制因子更新为0.0。
作为其结果,在时间点t=t4处,计算出如下这种动作规划:不包括从状态S28到状态S23的状态转换(进一步地,作为其结果,不通过状态S21和S23所对应的观测单元与状态S2和S17所对应的观测单元之间的位置pos3)。
此处,在时间点t=t4处,计算出如下这种动作规划:其中,状态系列S28、S27、S26、S25、S20、S15、S10、S1、S2、S16、S22、S29和S3的状态转换发生。
图28示出了在时间点t=t5(即,t4+1)处的智能体。在时间点t=t5处,动作环境的配置是改变后的配置。
进一步地,在时间点t=t5处,目标状态是上侧的状态S3,并且智能体被置于状态S28中。
智能体通过执行根据在时间点t=t4处计算出的动作规划(图27)(其中,状态系列S28、S27、S26、S25、S20、S15、S10、S1、S2、S16、S22、S29和S3的状态转换发生)所确定的动作,从状态S21所对应的观测单元移动到状态S28所对应的观测单元。
图29示出了在时间点t=t6(>t5)处的智能体。在时间点t=t6处,动作环境的配置是改变后的配置。
进一步地,在时间点t=t6处,目标状态是上侧的状态S3,并且智能体被置于状态S15中。
然后,智能体计算出前往状态S3(目标状态)的动作规划,并试图执行从状态S15(当前状态)向右侧方向的移动作为根据其动作规划所确定的动作。
此处,在时间点t=t6处,计算出如下这种动作规划:其中,状态系列S10、S1、S2、S16、S22、S29和S3的状态转换发生。
如上所述,即使在动作环境的配置改变的情况下,智能体也可以对其改变后的配置进行观测(得到(识别)当前状态是哪个状态),并对抑制因子进行更新。然后,智能体可以通过使用更新之后的抑制因子来再次计算动作规划而最终到达目标状态。
智能体的应用
图30是示出应用了图4中智能体的清扫机器人的概况的图。在图30中,清扫机器人51持有作为清扫器的部件、等同于图4中智能体的致动器12和传感器13的部件、以及用于执行无线通信的部件。在图30中,清扫机器人以起居室作为动作环境来执行作为动作的移动,并执行对起居室的清扫。
主计算机52作为图4中所示的反射动作确定单元11、历史存储单元14、动作控制单元15、以及目标确定单元16(包括等同于反射动作确定单元11、历史存储单元14、动作控制单元15、以及目标确定单元16的部件)。
另外,主计算机52连接到安装在起居室或其它房间中的接入点53,接入点53用于控制通过无线LAN(局域网)等进行的无线通信。
主计算机53通过经由接入点53执行与清扫机器人51的无线通信来交换要使用的数据,从而,清扫机器人51执行作为与图4中智能体一样的动作的移动。
注意,在图30中,为了实现对清扫机器人51尺寸的减小,同时考虑到无法容易地提供足够的功率和运算性能,只将等同于致动器12和传感器13的部件(形成图4中智能体的部件中的基本部件)提供给清扫机器人51,而将其它部件提供给与清扫机器人51分离的主计算机52。
然而,是否将形成图4中智能体的部件中的哪个部件提供给主计算机52和清扫机器人51中的每一个,则不限于以上部件。
具体地,例如,可以做出如下这种布置:其中,除了致动器12和传感器13,等同于反射动作确定单元11的部件(不需要那么高级的运算功能)也被提供给清扫机器人51,并且,将等同于历史存储单元14、动作控制单元15、以及目标确定单元16的部件(需要高级运算功能和大存储容量)提供给主计算机53。
根据扩展HMM,就在不同位置的观测单元中观测到同一观测值的动作环境而言,使用观测值系列和动作系列识别出智能体的当前情形,可以唯一地确定当前状态,并且因此可以唯一地确定放置智能体的观测单元(地点)。
图4中的智能体根据当前状态对抑制因子进行更新,并在使用更新后的抑制因子对扩展HMM的状态转换概率进行校正的同时逐次计算出动作规划,从而,即使就其配置随机改变的动作环境而言,也可以到达目标状态。
例如,这种智能体可以应用于诸如清扫机器人等的实用机器人,它在人居住的居住环境(其配置随人的居住活动而动态改变)内进行动作。
例如,就诸如房间等的居住环境而言,配置有时因为开/关房间门、房间内家具布置的改变等而改变。
然而,房间的形状不变,并且因此,配置改变的部分、以及未改变的部分同时存在于居住环境中。
根据扩展HMM,可以按分支结构化状态的形式存储配置改变的部分,并且因此,可以有效地(通过小存储容量)表示包括配置改变的部分的居住环境。
另一方面,就居住环境而言,为了实现清扫整个房间的目标,用作由人所操作的清扫器的替代设备的清扫机器人需要确定清扫机器人自身的位置,以在其配置随机改变的房间(其配置可能改变的房间)里面移动的同时以适应性的方式变换路线。
因此,就配置随机改变的居住环境而言,为了在确定清扫机器人自身的位置并以适应性的方式变换路线的同时实现目标(清扫整个房间),图4中的智能体是特别有用的。
注意,从减小清扫机器人制造成本的角度来看,期望避免将如下这些设备装配在清扫机器人上作为用于对观测值进行观测的单元:作为高级传感器的摄像装置、以及用于执行图像处理(诸如对从摄像装置输出的图像进行识别)的图像处理设备。
具体地,为了减小清扫机器人的制造成本,期望采用便宜的单元,诸如用于通过在多个方向上执行输出(诸如超声波、激光等)来测量距离的距离测量设备等,以用于清扫机器人对观测值进行观测。
然而,在采用诸如距离测量设备等的便宜单元作为用于对观测值进行观测的单元的情形中,在居住环境的不同位置处观测到同一观测值的情形数量增加,并且因此,只通过时间点处的观测值无法容易地唯一确定清扫机器人的位置。
因此,即使就只通过时间点处的观测值无法容易地唯一确定清扫机器人的位置的居住环境而言,根据扩展HMM,使用观测值系列和动作系列也可以唯一地确定位置。
一个状态一个观测值的约束
就图4中的学习单元21而言,使用被学习数据执行对扩展HMM的学习,以根据Baum-Welch重估方法使观测到被学习数据的可能性最大化。Baum-Welch重估方法基本上是用于通过梯度方法使模型参数经历收敛的方法,并且因此,模型参数会落入局部最小值。
存在初始值相关性,其中,模型参数是否落入局部最小值取决于模型参数的初始值。
就本实施例而言,采用具有特别大的初始值相关性的遍历HMM作为扩展HMM。
就学习单元21(图4)而言,为了减小初始值相关性,可以在一个状态一个观测值的约束下执行对扩展HMM的学习。此处,一个状态一个观测值的约束是如下这种约束:使得在扩展HMM(包括扩展HMM的HMM)的一个状态中只观测到一个观测值。
注意,就配置改变的动作环境而言,当执行对扩展HMM的学习而没有任何类型的约束时,就学习之后的扩展HMM而言,通过具有关于观测概率的分布来表示动作环境配置改变的情形、以及通过具有状态转换的分支结构配置来表示动作环境配置改变的情形可以混合。
此处,通过具有关于观测概率的分布来表示动作环境配置改变的情形是如下这种情形:在某状态中观测到多个观测值。另外,通过具有状态转换的分支结构配置来表示动作环境配置改变的情形是由于同一动作引起到不同状态的状态转换的情形(在执行某动作的情形中,可能执行从当前状态到某状态的状态转换,或者可能执行到与前述某状态不同状态的状态转换)。
根据一个状态一个观测值的约束,就扩展HMM而言,只通过具有状态转换的分支结构来表示动作环境配置的改变。
注意,在动作环境的配置未改变的情形中,可以执行对扩展HMM的学习而不加置一个状态一个观测值的约束。可以通过在对扩展HMM的学习中引入对状态的分割(进一步优选地,对状态的合并(整合))来加置一个状态一个观测值的约束。
对状态的分割
图31A和图31B是说明了用于实现一个状态一个观测值约束的状态分割的概况的图。就状态的分割而言,根据Baum-Welch重估方法,在如下这种情形中将状态分割成多个状态(其数量与多个观测值的数量一样):就其中状态转换概率aij(Um)和观测概率bi(Ok)收敛的扩展HMM而言,在一个状态中观测到多个观测值;以使得多个观测值中的每个观测值都在一个状态中被观测到。
图31A示出了紧接在通过Baum-Welch重估方法使模型参数收敛之后的扩展HMM(的一部分)。在图31A中,扩展HMM包括三个状态S1、S2和S3,其中,可以在状态S1与S2之间、以及在状态S2与S3之间执行状态转换。
进一步地,在图31A中,做出如下这种布置:其中,分别地,在状态S1观测到一个观测值O15,在状态S2中观测到两个观测值O7和O13,以及在状态S3中观测到一个观测值O5。
在图31A中,在状态S2中观测到两个观测值O7和O13,并且因此,将状态S2分割成两个状态(其数量与两个观测值O7和O13一样)。
图31B示出了状态分割之后的扩展HMM(的一部分)。在图31B中,将图31A中分割之前的状态S2分割成分割之后的状态S2、以及状态S4(就紧接在使模型参数收敛之后的扩展HMM而言无效的状态(例如,状态转换概率和观测概率都被设置为(被认为是)0.0的状态)中的一个状态)这两者。
进一步地,在图31B中,在分割之后的状态S2中,只观测到观测值O13(在分割之前的状态S2中观测到的两个观测值O7和O13中的一个),并且在分割之后的状态S4中,只观测到观测值O7(在分割之前的状态S2中观测到的两个观测值O7和O13中的一个)。
另外,在图31B中,针对分割之后的状态S2,以与分割之前的状态S2一样的方式,可以执行与状态S1和S3之间的相互状态转换。同样针对分割之后的状态S4,以与分割之前的状态S2一样的方式,可以执行与状态S1和S3之间的相互状态转换。
在状态分割时,学习单元21(图4)首先将其中观测到多个观测值的状态检测为作为就学习之后(紧接在使模型参数收敛之后)的扩展HMM而言的分割对象的状态。
图32是说明了用于检测作为分割对象的状态的方法的图。具体地,图32示出了扩展HMM的观测概率矩阵B。
如在图16中所描述的,观测概率矩阵B是以在状态Si中观测到观测值Ok的观测概率bi(Ok)作为第i行第k列元素的矩阵。
针对于对扩展HMM(包括扩展HMM的HMM)的学习,就观测概率矩阵B而言,在某状态Si中,对观测到观测值O1至OK的观测概率bi(O1)至bi(OK)的每一个进行归一化,以使得观测概率bi(O1)至bi(OK)的和变成1.0。
因此,在一个状态Si中(单独)观测到一个观测值的情形中,此状态Si的观测概率bi(O1)至bi(OK)的最大值被认为是1.0,并且除最大值以外的观测概率被认为是0.0。
另一方面,在一个状态Si中观测到多个观测值的情形中,此状态Si的观测概率bi(O1)至bi(OK)的最大值充分小于1.0(诸如图32中所示的0.6或0.5),并且还大于其和为1.0的观测概率以观测值O1至OK的数量K平均分割的情形中的值(平均值)1/K。
因此,可以根据表达式(20)通过针对各状态Si查找小于阈值bmax_th(该阈值小于1.0)并且还大于平均值1/K的观测概率Bik=bi(Ok)来检测作为分割对象的状态。
其中,Bik表示观测概率矩阵B的第i行第k列的元素,且等于在状态Si中观测到观测值Ok的观测概率bi(Ok)。
另外,在表达式(20)中,arg find(1/K<Bik<bmax_th)表示:在状态Si的下标i为S的情形中,当可以查找到(找到)满足圆括号内的条件表达式1/K<Bik<bmax_th的观测概率BSk时,满足圆括号内的条件表达式1/K<Bik<bmax_th的所有观测概率BSk的下标k。
注意,在表达式(20)中,可以根据作为分割对象的状态的检测灵敏度被设置到哪个等级来在1/K<bmax_th<1.0的范围中调整阈值bmax_th,其中,阈值bmax_th被设置得距1.0越近,可以越灵敏地检测到作为分割对象的状态。
学习单元21(图4)在可以查找到(找到)满足表达式(20)中圆括号内的条件表达式1/K<Bik<bmax_th的观测概率BSk时,将其中下标i为S的状态检测为作为分割对象的状态。
进一步地,学习单元21将用表达式(20)表示的所有下标k的观测值Ok检测为在作为分割对象的状态(其中下标i为S的状态)中观测到的多个观测值。
然后,学习单元21将作为分割对象的状态分割成多个状态(其数量与在此作为分割对象的状态中观测到的多个观测值的数量一样)。
现在,如果假定在作为分割对象的状态被分割之后的各状态将会称作分割后状态,则可以采用作为分割对象的状态作为分割后状态中的一个,且可以采用在分割时就扩展HMM而言无效的状态作为其余的分割后状态。
具体地,例如,在将作为分割对象的状态分割成三个分割后状态的情形中,可以采用作为分割对象的状态作为三个分割后状态中的一个,并且可以采用在分割时就扩展HMM而言无效的状态作为其余的两个状态。
另外,可以采用在分割时就扩展HMM而言无效的状态作为多个分割后状态的所有分割后状态。然而,在此情形中,需要在状态分割之后将作为分割对象的状态设置为无效状态。
图33A和图33B是说明了用于将作为分割对象的状态分割成分割后状态的方法的图。在图33A和图33B中,扩展HMM包括七个状态S1至S7(其中,两个状态S6和S7是无效状态)。
进一步地,在图33A和图33B中,将状态S3取作其中观测到两个观测值O1和O2的、作为分割对象的状态,并且将作为分割对象的状态S3分割成其中观测到观测值O1的分割后状态S3、以及其中观测到观测值O2的分割后状态S6。
学习单元21(图4)如下将作为分割对象的状态S3分割成两个分割后状态S3和S6。
具体地,学习单元21将例如观测值O1(多个观测值O1和O2中的一个观测值)分配给从作为分割对象的状态S3中分割出的分割后状态S3,并且在分割后状态S3中,将其中观测到分配给此分割后状态S3的观测值O1的观测概率设置为1.0,另外,将其中观测到其它观测值的观测概率设置为0.0。
进一步地,学习单元21将以分割后状态S3作为转换起点的状态转换的状态转换概率a3j(Um)设置为以作为分割对象的状态S3作为转换起点的状态转换的状态转换概率a3j(Um),还将以分割后状态S3作为转换终点的状态转换的状态转换概率设置为通过如下方式得到的值:通过分配给分割后状态S3的观测值的、在作为分割对象的状态S3中的观测概率,对以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率进行校正。
学习单元21同样设置针对另一分割后状态S6的状态转换概率和观测概率。
图33A是说明了分割后状态S3和S6的观测概率的设置的图。在图33A和图33B中,将观测值O1(在作为分割对象的状态S3中观测到的两个观测值O1和O2中的一个观测值)分配给分割后状态S3(通过对作为分割对象的状态S3进行分割所得到的两个分割后状态S3和S6中的一个分割后状态),并且将另一观测值O2分配给另一分割后状态S6。
在此情形中,诸如图33A中所示,学习单元21在分配了观测值O1的分割后状态S3中将其中观测到其观测值O1的观测概率设置为1.0,还将其中观测到其它观测值的观测概率设置为0.0。
进一步地,诸如图3A中所示,学习单元21在分配了观测值O2的分割后状态S6中将其中观测到其观测值O2的观测概率设置为1.0,还将其中观测到其它观测值的观测概率设置为0.0。
以上观测概率的设置用表达式(21)来表示。
B(S3,:)=0.0
B(S3,O1)=1.0
B(S6,:)=0.0
B(S6,O2)=1.0 …(21)
其中,B(,)是二维矩阵,并且矩阵的元素B(S,O)表示在状态S中观测到观测值O的观测概率。
另外,其附标为冒号(:)的矩阵表示用其冒号所表示的维度的所有元素。因此,在表达式(21)中,例如,表达式B(S3,:)=0.0表示:在状态S3中,将其中观测到观测值O1至OK中各个观测值的所有观测概率设置为0.0。
根据表达式(21),在状态S3中,将其中观测到观测值O1至OK中各个观测值的所有观测概率设置为0.0(B(S3,:)=0.0),此后,只将其中观测到观测值O1的观测概率设置为1.0(B(S3,O1)=1.0)。
进一步,根据表达式(21),在状态S6中,将其中观测到观测值O1至OK中各个观测值的所有观测概率设置为0.0(B(S6,:)=0.0),此后,只将其中观测到观测值O2的观测概率设置为1.0(B(S6,O2)=1.0)。
图33B是说明了分割后状态S3和S6的状态转换概率的设置的图。对于以分割后状态S3和S6中的每个分割后状态作为转换起点的状态转换,需要执行与以作为分割对象的状态S3作为转换起点的状态转换一样的状态转换。
因此,如图33B中所示,学习单元21将以分割后状态S3作为转换起点的状态转换的状态转换概率设置为以作为分割对象的状态S3作为转换起点的状态转换的状态转换概率。进一步地,诸如图33B中所示,学习单元21还将以分割后状态S6作为转换起点的状态转换的状态转换概率设置为以作为分割对象的状态S3作为转换起点的状态转换的状态转换概率。
另一方面,对于分配了观测值O1的分割后状态S3、以及分配了观测值O2的分割后状态S6每一个的状态转换,需要执行状态转换(诸如通过如下方式得到的状态转换):以在该作为分割对象的状态S3中观测到观测值O1和O2中每个观测值的观测概率的百分比(比率),来分割以作为分割对象的状态S3作为转换终点的状态转换。
因此,诸如图33B中所示,学习单元21将以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率乘以分配给分割后状态S3的观测值O1的、在作为分割对象的状态S3中的观测概率,从而对以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率进行校正,以得到校正后的值(作为通过观测值O1的观测概率被校正的状态转换概率的校正结果)。
然后,学习单元21将以分配了观测值O1的分割后状态S3作为转换终点的状态转换的状态转换概率设置为校正后的值(作为通过观测值O1的观测概率被校正的状态转换概率的校正结果)。
进一步地,诸如图33B中所示,学习单元21将以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率乘以分配给分割后状态S6的观测值O2的、在作为分割对象的状态S3中的观测概率,从而对以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率进行校正,以得到校正后的值(作为通过观测值O2的观测概率被校正的状态转换概率的校正结果)。
然后,学习单元21将以分配了观测值O2的分割后状态S6作为转换终点的状态转换的状态转换概率设置为校正后的值(作为通过观测值O2的观测概率被校正的状态转换概率的校正结果)。
诸如以上所述的状态转换概率的设置用表达式(22)来表示。
A(S3,:,:)=A(S3,:,:)
A(S6,:,:)=A(S3,:,:)
A(:,S3,:)=B(S3,O1)A(:,S3,:)
A(:,S6,:)=B(S3,O2)A(:,S3,:)…(22)
其中,A(,,)是三维矩阵,其中,矩阵的元素A(S,S′,U)表示将会以状态S作为转换起点来执行到状态S′的状态转换的状态转换概率。
另外,包括附标冒号(:)的矩阵表示以与表达式(21)的情形一样的方式用其冒号所表示的维度的所有元素。
因此,在表达式(22)中,例如,A(S3,:,:)表示在执行了各个动作的情形中以状态S3作为转换起点的、到各个状态S的状态转换的所有状态转换概率。另外,在表达式(22)中,例如,A(:,S3,:)表示在执行了各个动作的情形中以状态S3作为转换终点的、从各个状态S到状态S3的状态转换的所有状态转换概率。
根据表达式(22),针对所有动作,将以分割后状态S3作为转换起点的状态转换的状态转换概率设置为以作为分割对象的状态S3作为转换起点的状态转换的状态转换概率(A(S3,:,:)=A(S3,:,:))。
另外,针对所有动作,将以分割后状态S6作为转换起点的状态转换的状态转换概率同样设置为以作为分割对象的状态S3作为转换起点的状态转换的状态转换概率(A(S6,:,:)=A(S3,:,:))。
进一步地,根据表达式(22),针对所有动作,将以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率A(:,S3,:)乘以分配给分割后状态S3的观测值O1的、在作为分割对象的状态S3中的观测概率B(S3,O1),并且因此,得到校正后的值B(S3,O1)A(:,S3,:)(以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率A(:,S3,:;)的校正结果)。
然后,针对所有动作,将以分配了观测值O1的分割后状态S3作为转换终点的状态转换的状态转换概率A(:,S3,:)设置为校正后的值B(S3,O1)A(:,S3,:)(A(:,S3,:)=B(S3,O1)A(:,S3,:))。
另外,根据表达式(22),针对所有动作,将以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率A(:,S3,:)乘以分配给分割后状态S6的观测值O2的、在作为分割对象的状态S3中的观测概率B(S3,O2),并且因此,得到校正后的值B(S3,O2)A(:,S3,:)(以作为分割对象的状态S3作为转换终点的状态转换的状态转换概率A(:,S3,:)的校正结果)。
然后,针对所有动作,将以分配了观测值O2的分割后状态S6作为转换终点的状态转换的状态转换概率A(:,S6,:)设置为校正后的值B(S3,O2)A(:,S3,:)(A(:,S6,:)=B(S3,O2)A(:,S3,:))。
…状态的合并
图34A和图34B是示出了用于实现一个状态一个值约束的状态合并的概况的图。就状态合并而言,在具有Baum-Welch重估所致的收敛模型参数的扩展HMM中,在针对执行了的某动作存在多个状态(不同的状态)作为以单个状态作为转换起点的状态转换的转换终点状态、并且在多个状态中存在其中观测到同一观测值的状态的情况下,将观测到同一观测值的多个状态合并成一个状态。
另外,就状态合并而言,在具有收敛模型参数的扩展HMM中,在针对执行了的某动作存在多个状态作为以单个状态作为转换终点的状态转换的转换起点状态、并且在多个状态中存在其中观测到同一观测值的状态的情况下,将观测到同一观测值的多个状态合并成一个状态。
也就是说,就状态合并而言,在具有收敛模型参数的扩展HMM中,在针对每个动作发生的以同一状态为转换起点或转换终点的状态转换下存在多个状态、并且还观测到同一观测值的情况下,这多个状态是冗余的并因此被合并成一个状态。
现在,状态合并包括前向合并(其中,在存在多个状态作为以执行动作处的单个状态为起点的状态转换的转换终点处的状态的情况下,将转换终点处的多个状态合并)、以及后向合并(其中,在存在执行动作处的多个状态作为到单个状态的状态转换的转换起点处状态的情况下,将转换起点处的多个状态合并)。
图34A示出了前向合并的实例。在图34A中,扩展HMM具有状态S1至S5,使能了从状态S1到状态S2和S3的状态转换、从状态S2到状态S4的状态转换、以及从状态S3到状态S5的状态转换。进一步地,其转换终点为多个状态S2和S3的、以状态S1为起点的状态转换(即,其转换终点为状态S2的、以状态S1为起点的状态转换以及其转换终点为状态S3的、以状态S1为起点的状态转换)在状态S1处执行同一动作的情况下执行。而且,在状态S2和S3处都观测到同一观测值O5。
在此情形中,学习单元21(图4)将多个状态S2和S3(其是以单个状态S1为起点的状态转换的转换终点,并且,在其中观测到同一观测值O5)取作作为合并对象的状态,并将作为合并对象的状态S2和S3合并成一个状态。
现在,通过将作为合并对象的多个状态合并所得到的一个状态也将会称作“代表性状态”。在图34A中,将作为合并对象的两个状态S2和S3合并成一个代表性状态S2。
另外,在执行某动作时,从某状态到其中观测到同一观测值的各状态发生的多个状态转换呈现为从一个转换起点状态到多个转换终点状态的分支,所以,这种状态转换还称作前向分支。在图34A中,从状态S1到状态S2和状态S3的状态转换是前向分支。注意,在前向分支中,分支起点状态是转换起点状态S1,并且分支终点状态是观测到同一观测值的转换终点状态S2和S3。分支终点状态S2和S3(也是转换终点状态)是作为合并对象的状态。
图34B示出了后向合并的实例。在图34B中,扩展HMM具有状态S1至S5,使能了从状态S1到状态S3的状态转换、从状态S2到状态S4的状态转换、从状态S3到状态S5的状态转换、以及从状态S4到状态S5的状态转换。进一步地,其转换起点为多个状态S3和S4的、到状态S5的状态转换(即,其转换起点为状态S3的、从状态S3到状态S5的状态转换以及其转换起点为状态S4的、到状态S5的状态转换)在状态S3和S4处执行同一动作的情况下执行。而且,在状态S3和S4处都观测到同一观测值O7。
在此情形中,由于执行了同一动作,学习单元21(图4)将多个状态S3和S4(其是到单个状态S5的状态转换的转换起点,并且,在其中观测到同一观测值O7)取作作为合并对象的状态,并将作为合并对象的状态S3和S4合并成一个代表性状态。在图34B中,状态S3(作为合并对象的状态S3和S4中的一个状态)是代表性状态。
另外,在执行某动作的情况下,以其中观测到同一观测值的多个状态为起点并且以同一状态作为转换终点而发生的状态转换呈现为从一个转换终点状态到多个转换起点状态的分支,所以,这种状态转换还称作后向分支。在图34B中,从状态S3和状态S4到状态S5的状态转换是后向分支。注意,在后向分支中,分支起点状态是转换终点状态S5,并且分支终点状态是其中观测到同一观测值的转换起点状态S3和S4。分支终点状态S3和S4(也是转换起点状态)是作为合并对象的状态。
在状态合并时,学习单元21(图4)在学习之后(紧接使模型参数收敛之后)的扩展HMM中首先将作为分支终点状态的多个状态检测为作为合并对象的状态。
图35A和图35B是说明了用于检测作为合并对象的状态的方法的图。学习单元21将扩展HMM中的多个状态(在执行预定动作的情况下作为状态转换的转换起点或转换终点)检测为作为合并对象的状态,其中,在多个状态中的各个状态处观测到的最大观测概率的观测值匹配。
图35A示出了用于将多个状态(前向分支的分支终点)检测为作为合并对象的状态的方法。也就是说,图35A示出了针对某动作Um的状态转换概率平面A和观测概率矩阵B。
就针对每个动作Um的状态转换概率平面A而言,针对每个状态Si对状态转换概率进行了归一化,以使得状态Si为转换起点的状态转换概率aij(Um)的总和(其中下标i和m固定而下标j从1至N变化的aij(Um)的总和)为1.0。因此,在不存在状态Si为转换起点的前向分支的情况下,针对某动作Um的状态Si为转换起点的状态转换概率(在针对动作Um的状态转换概率平面A上以水平方向排列在某行i上的状态转换概率)的最大值为1.0(或者可以被认为是1.0的值),并且除最大值以外的状态转换概率为0.0(或者可以被认为是0.0的值)。
另一方面,在存在以状态Si作为分支起点的前向分支的情况下,针对某动作Um的、某状态Si为转换起点的状态转换概率的最大值充分小于1.0,如可以参见图35A中所示的0.5,而大于通过在N个状态S1至SN之间均等分总和为1.0的状态转换概率所得到的值1/N(平均值)。
因此,可以按与检测上述分支结构状态一样的方式、按照表达式(19)通过查找如下这种状态Si来检测作为前向分支的分支起点的状态:在针对动作Um的状态转换概率平面上行i处的状态转换概率aij(Um)(即Aijm)的最大值小于阈值amax_th(该阈值小于1.0)、并且还大于平均值1/N。
注意,在此情形中,在表达式(19)中,可以根据作为前向分支的分支起点的状态的检测灵敏度程度,在1/N<amax_th<1.0的范围内调整阈值amax_th,并且阈值amax_th设置得距1.0越近,作为分支起点的状态的检测灵敏度将会越高。
在如上所述检测到作为前向分支中的分支起点的状态(此后,还称作“分支起点状态”)后,学习单元21(图4)检测作为从分支起点状态开始的前向分支的分支终点的多个状态。也就是说,学习单元21按照表达式(23)(其中,动作Um的下标m为U,并且前向分支的分支起点状态Si的下标i为S),检测作为从分支起点状态开始的前向分支的分支终点的多个状态。
现在,在表达式(23)中,Aijm表示在三维状态转换概率表上的状态转换概率aij(Um)(在i轴方向上从顶部数第i个位置,在j轴方向上从左边数第j个位置,并且在动作轴方向上从近侧数第m个位置)。
另外,在表达式(23)中,arg find(amin_th1<Aijm)表示:在已成功查找到(找到)满足圆括号中条件表达式amin_th1<Aijm的状态转换概率AS,j,U时,满足圆括号中条件表达式amin_th1<Aijm的状态转换概率AS,j,U的所有下标j,其中,动作Um的下标m为U,并且分支起点状态Si的下标i为S。
另外注意,在表达式(23)中,可以根据作为前向分支的分支终点的多个状态的检测灵敏度程度,在0.0<amin_th1<1.0的范围内调整阈值amin_th1,并且阈值amin_th1设置得距1.0越近,可以越灵敏地检测到作为前向分支的分支终点的多个状态。
学习单元21(图4)在已成功查找到(找到)满足表达式(23)中圆括号中的条件表达式amin_th1<Aijm的状态转换概率Aijm时,将具有下标j的状态Sj取作作为前向分支的分支终点的状态(还称作“分支终点状态”)的候选。然后,在将多个状态检测为针对前向分支的分支终点的候选的情况下,学习单元21确定在多个分支终点状态候选中的各个分支终点状态候选处观测到的观测概率最大的观测值是否匹配。学习单元21随后在多个分支终点状态候选中将具有最大观测概率的观测值匹配的候选取作前向分支的分支终点状态。
也就是说,学习单元21针对多个分支终点状态候选中的每个分支终点状态候选,按照表达式(24)得到具有最大观测概率的观测值Omax。
其中,Bik表示在状态Si中观测到观测值Ok的观测概率bi(Ok),并且argmax(Bik)表示针对在观测概率矩阵B中状态Si的下标为S的状态的最大观测概率BS,k的下标k。
关于作为多个分支终点状态候选的多个状态Si中各个状态的下标i,在通过表达式(24)所得到的最大观测概率BS,k的下标k匹配的情况下,学习单元21将多个分支终点状态候选中通过表达式(24)所得到的下标k匹配的那些候选检测为前向分支的分支终点状态。
现在,在图35A中,状态S3已被检测为前向分支的分支起点状态,并且状态S2和S4(都具有为0.5的从分支起点状态S3开始的状态转换的状态转换概率)被检测为前向分支的分支终点状态候选。作为前向分支的分支终点状态候选的状态S1和S4具有在状态S1中观测到的、其观测概率为1.0(最大值)的观测值O2以及在状态S4中观测到的、其观测概率为0.9(最大值)的观测值O2(这些观测值是匹配的),所以,状态S1和S4被检测为前向分支的分支终点状态。
图35B示出了用于将作为后向分支的分支终点的多个状态检测为作为合并对象的状态的方法。也就是说,图35B示出了针对某动作Um的状态转换概率平面A和观测概率矩阵B。
如参照图35A所描述的,就针对每个动作Um的状态转换概率平面A而言,对于每个状态Si,对状态转换概率进行归一化,使得以状态Si作为转换起点的状态转换概率aij(Um)的总和为1.0,但尚未执行使得以状态Si作为转换终点的状态转换概率aij(Um)的总和(具有下标j和m固定且下标i从1至N改变的aij(Um)的总和)为1.0的归一化。
然而要注意,在存在从状态Si至状态Sj的状态转换的可能性的情况下,以状态Sj作为其转换终点的状态转换概率aij(Um)是不为0.0(或者可以被认为是0.0的值)的正值。因此,可以按照表达式(25)来检测能够作为后向分支的分支起点状态的状态、以及分支终点状态候选。
现在,在表达式(25)中,Aijm表示在三维状态转换概率表上的状态转换概率aij(Um)(在i轴方向上从顶部数第i个位置,在j轴方向上从左边数第j个位置,并且在动作轴方向上从近侧数第m个位置)。
另外,在表达式(25)中,argfind(amin_th2<Aijm)表示:在已成功查找到(找到)满足圆括号中条件表达式amin_th2<Aijm的状态转换概率Ai,S,U时,满足圆括号中条件表达式amin_th2<Aijm的状态转换概率Ai,S,U的所有下标i,其中,动作Um的下标m为U,并且转换终点状态Sj的下标j为S。
另外注意,在表达式(25)中,可以根据分支终点状态候选和后向分支的分支起点状态的检测灵敏度程度,在0.0<amin_th2<1.0的范围内调整阈值amin_th2,并且阈值amin_th2设置得距1.0越近,可以越灵敏地检测到分支终点状态候选和后向分支的分支起点状态。
学习单元21(图4)在已成功查找到(找到)满足表达式(25)中圆括号中的条件表达式amin_th2<Aijm的多个状态转换概率Aijm时,将具有为S的下标j的状态取作可以作为后向分支的分支起点状态的状态。进一步地,在已成功查找到满足表达式(25)中圆括号中的条件表达式amin_th2<Aijm的多个状态转换概率Aijm的情况下,学习单元21将作为多个状态转换概率Aijm所对应的状态转换的转换起点的多个状态检测为分支终点状态候选(即,在已成功查找到满足条件表达式amin_th2<Aijm的多个状态转换概率Ai,S,U的情况下,学习单元21将具有满足圆括号中的条件表达式amin_th2<Aijm的多个状态转换概率Ai,S,U中的每个i作为其下标的多个状态Si检测为分支终点状态候选)。
然后,学习单元21确定在后向分支的多个分支终点状态候选中的各个分支终点状态候选处观测到的具有最大观测概率的观测值是否匹配。以与在检测前向分支的分支终点状态候选时一样的方式,学习单元21在多个分支终点状态候选中将其中具有最大观测概率的观测值匹配的候选检测为后向分支的分支终点状态。
现在,在图35B中,状态S2已被检测为后向分支的分支起点状态,并且状态S2和S5(都具有为0.5的到分支起点状态S2的状态转换的状态转换概率)被检测为后向分支的分支终点状态候选。作为后向分支的分支终点状态候选的状态S2和S5具有在状态S2中观测到的、其观测概率为1.0(最大值)的观测值O3以及在状态S5中观测到的、其观测概率为0.8(最大值)的观测值O3(这些观测值是匹配的),所以,状态S2和S5被检测为后向分支的分支终点状态。
在如此检测到前向和后向分支的分支起点状态、以及从分支起点状态分支的多个分支终点状态后,学习单元21将多个分支终点状态合并成一个代表性状态。
此处,学习单元21在多个分支终点状态中将具有例如最小下标的分支终点状态取作代表性状态,并将多个分支终点状态合并成该代表性状态。也就是说,在已将三个状态检测为从某分支起点状态分支的多个分支终点状态的情况下,学习单元21将具有其最小下标的分支终点状态作为代表性状态,并将多个分支终点状态合并成该代表性状态。
另外,学习单元21将三个分支终点状态中未被取作代表性状态的其余两个状态设置为无效状态。注意,对于状态的合并,可以从并非分支终点状态的无效状态中选择代表性状态。在此情形中,在多个分支终点状态被合并成代表性状态之后,将多个分支终点状态全部设置为无效。
图36A和图36B是说明了用于将从某分支起点状态分支的多个分支终点状态合并成一个代表性状态的方法的图。在图36A和图36B中,扩展HMM具有七个状态S1至S7。进一步地,在图36A和图36B中,两个状态S1和S4是作为合并对象的状态,其中,作为合并对象的两个状态S1和S4被合并成一个代表性状态S1,在作为合并对象的两个状态S1和S4中将具有较小下标的状态S1取作代表性状态。
学习单元21(图4)将作为合并对象的两个状态S1和S4如下合并成一个代表性状态S1。也就是说,学习单元21把在代表性状态S1处将会观测到每个观测值Ok的观测概率b1(Ok)设置为在状态S1和S4(作为合并对象的多个状态)处将会观测到每个观测值Ok的观测概率b1(Ok)和b4(Ok)的平均值,并且还把在状态S4(状态S1和S4(作为合并对象的多个状态)中除代表性状态S1的状态)处将会观测到每个观测值Ok的观测概率b4(Ok)设置为0。
另外,学习单元21将以代表性状态S1作为其转换起点的状态转换的状态转换概率a1,j(Um)设置为以多个状态S1和S4分别作为其转换起点的状态转换的状态转换概率a1,j(Um)和a4,j(Um)的平均值,并将以代表性状态S1作为其转换终点的状态转换的状态转换概率ai,1(Um)设置为以多个状态S1和S4分别作为其转换终点的状态转换的状态转换概率ai,1(Um)和ai,4(Um)的和。
进一步地,学习单元21将状态S4(状态S1和S4(作为合并对象的多个状态)中除代表性状态S1以外的状态)为其转换起点的状态转换的状态转换概率a4,j(Um)、以及状态S4为其转换终点的状态转换的状态转换概率ai,4(Um)设置为0。
图36A是说明了针对状态合并执行的观测概率的设置的图。学习单元21将在代表性状态S1处将会观测到观测值O1的观测概率b1(O1)设置为在作为合并对象的状态S1和S4中的各个状态处将会观测到观测值O1的观测概率b1(O1)和b4(O1)的平均值(b1(O1)+b4(O1))/2。学习单元21还以同样的方式对在代表性状态S1处将会观测到其他观测值Ok的观测概率b1(Ok)进行设置。
进一步地,学习单元21还将在状态S4(状态S1和S4(作为合并对象的状态)中除代表性状态S1以外的状态)处将会观测到每个观测值Ok的观测概率b4(Ok)设置为0。对观测概率的这种设置可以如表达式(26)中所示来表示。
B(S1,:)=(B(S1,:)+B(S4,:))/2
B(S4,:)=0.0 …(26)
其中,B(,)是二维矩阵,并且矩阵的元素B(S,O)表示在状态S中将会观测到观测值O的观测概率。
另外,其中附标被写成冒号(:)的矩阵表示针对该冒号的维度的所有元素。因此,在表达式(26)中,例如公式B(S4,:)=0.0意思是:在状态S4中将会观测到观测值中各个观测值的所有观测概率被设置为0。
根据表达式(26),在代表性状态S1处将会观测到每个观测值Ok的观测概率b1(Ok)被设置为在作为合并对象的状态S1和S4中的各个状态处将会观测到每个观测值Ok的观测概率b1(Ok)和b4(Ok)的平均值(B(S1,:)=(B(S1,:)+B(S4,:))/2)。进一步地,在表达式(26)中,在状态S4(状态S1和S4(作为合并对象的状态)中除代表性状态S1以外的状态)处将会观测到每个观测值Ok的观测概率b4(Ok)被设置为0。
图36B是说明了在状态合并中所执行的状态转换概率的设置的图。以作为合并对象的多个状态中的各个状态作为转换起点的状态转换并不全体一致。其转换起点为通过将作为合并对象的状态合并所得到的代表性状态的状态转换应当能够进行以作为合并对象的多个状态中的各个状态作为转换起点的状态转换。因此,如图36B中所示,学习单元21将以代表性状态S1作为转换起点的状态转换的状态转换概率a1,j(Um)设置为以作为合并对象的状态S1和S4作为各自的转换起点的状态转换的状态转换概率a1,j(Um)和a4,j(Um)的平均值。
另一方面,以作为合并对象的多个状态中的各个状态作为转换终点的状态转换并不全体一致。其转换终点为通过将作为合并对象的状态合并所得到的代表性状态的状态转换应当能够进行以作为合并对象的多个状态中的各个状态作为转换终点的状态转换。因此,如图36B中所示,学习单元21将以代表性状态S1作为转换终点的状态转换的状态转换概率ai,1(Um)设置为以作为合并对象的状态S1和S4作为各自的转换终点的状态转换的状态转换概率ai,1(Um)和ai,4(Um)的和。
注意,相对于以代表性状态S1作为转换起点的状态转换的状态转换概率a1,j(Um)采用以作为合并对象的状态S1和S4作为各自的转换起点的状态转换的状态转换概率a1,j(Um)和a4,j(Um)的平均值,以代表性状态S1作为转换终点的状态转换的状态转换概率ai,1(Um)采用以作为合并对象的状态S1和S4作为各自的转换终点的状态转换的状态转换概率ai,1(Um)和ai,4(Um)的和的原因在于:在针对每个动作Um的状态转换概率平面A处对状态转换概率aij(Um)已进行了归一化,使得以状态Si作为转换起点的状态转换概率aij(Um)的总和为1.0,而尚未执行使得以状态Sj作为转换终点的状态转换概率aij(Um)的总和为1.0的归一化。
除了对其转换起点为代表性状态S1的状态转换概率以及其转换终点为代表性状态S1的状态转换概率进行设置,学习单元21还把作为合并对象的状态S4(作为合并对象的状态中除代表性状态以外的状态)将会作为转换起点的状态转换概率、以及作为转换终点的状态转换概率设置为0,因为作为合并对象的状态S1和S4被合并成了代表性状态S1,所以该状态S4在动作环境的结构的表达中不再是必需的。对状态转换概率的这种设置表示成如表达式(27)中所示。
A(S1,:,:)=(A(S1,:,:)+A(S4,:,:))/2
A(:,S1,:)=A(:,S1,:)+A(:,S4,:)
A(S4,:,:)=0.0
A(:,S4,:)=0.0 …(27)
在表达式(27)中,A(,,)表示三维矩阵,并且矩阵的元素A(S,S′,U)表示在执行动作U的情况下以状态S作为转换起点的、到状态S′的状态转换的状态转换概率。另外,以与表达式(26)一样的方式,其中附标被写成冒号(:)的矩阵表示针对该冒号的维度的所有元素。
因此,在表达式(27)中,例如A(S1,:,:)表示在执行每个动作的情况下以状态S1作为转换起点的、到每个状态的状态转换的状态转换概率。另外,在表达式(27)中,例如A(:,S1,:)表示在执行每个动作的情况下以状态S1作为转换终点的、从每个状态到状态S1的转换的所有状态转换概率。
另外,在表达式(27)中,针对所有动作,把以代表性状态S1作为转换起点的转换的状态转换概率设置成以作为合并对象的状态S1和S4作为转换起点的状态转换的状态转换概率a1,j(Um)和a4,j(Um)的平均值,即,A(S1,:,:)=(A(S1,:,:)+A(S4,:,:))/2。进一步地,针对所有动作,将以代表性状态S1作为转换终点的状态转换的状态转换概率设置成以作为合并对象的状态S1和S4作为转换终点的状态转换的状态转换概率ai,1(Um)和ai,4(Um)的和值,即,A(:,S1,:)=A(:,S1,:)+A(:,S4,:)。
此外,在表达式(27)中,针对所有动作,把作为合并对象的状态S4(因为作为合并对象的状态S1和S4被合并成了代表性状态S1,所以在动作环境的结构的表达中不再是必需的)将会作为转换起点的状态转换概率、以及作为转换终点的状态转换概率设置为0,即,A(S4,:,:)=0.0,A(:,S4,:)=0.0。
如上所述,通过将作为合并对象的状态S4(因为作为合并对象的状态S1和S4被合并成了代表性状态S1而在动作环境的结构的表达中不再是必需的)将会作为转换起点的状态转换概率、以及作为转换终点的状态转换概率设置为0.0,并且通过将在作为合并对象的状态S4(不再是必需的)处将会观测到每个观测值的观测概率设置为0.0,作为合并对象且不再必需的状态S4从而变成无效的状态。
在一个状态一个观测值约束下的扩展HMM学习
图37是说明了图4中所示学习单元21在一个状态一个观测值约束下所执行的扩展HMM学习的处理的流程图。
在步骤S91中,学习单元21使用历史存储单元14中存储的作为学习数据的观测值系列和动作系列、按照Baum-Welch重估执行针对扩展HMM的初始学习,即,执行与图7中步骤S21至S24一样的处理。在扩展HMM的模型参数在步骤S91中的初始学习中收敛后,学习单元21将扩展HMM的模型参数存储于模型存储单元22(图4)中,并且处理前往步骤S92。
在步骤S92中,学习单元21从模型存储单元22中存储的扩展HMM中检测作为分割对象的状态,并且处理前往步骤S93。然而,在学习单元21在步骤S92中未检测到作为分割对象的任何状态的情况下,即,在模型存储单元22中存储的扩展HMM中不存在作为分割对象的状态的情况下,处理跳过步骤S93和S94,并且前往步骤S95。
在步骤S93中,学习单元21执行用于将在步骤S92中检测到的作为分割对象的状态分割成多个分割后状态的状态分割,并且处理前往步骤S94。
在步骤S94中,学习单元21使用历史存储单元14中存储的作为学习数据的观测值系列和动作系列、按照Baum-Welch重估执行针对模型存储单元22中存储的扩展HMM(在紧靠前步骤S93中针对其已执行了状态分割)的学习,即,执行与图7中步骤S22至S24一样的处理。注意,就步骤S94(以及后面所描述的步骤S97)中的学习而言,模型存储单元22中存储的扩展HMM的模型参数不做任何改变地用作模型参数的初始值。在扩展HMM的模型参数在步骤S94中的学习中收敛后,学习单元21在模型存储单元22(图4)中存储(覆写)扩展HMM的模型参数,并且处理前往步骤S95。
在步骤S95中,学习单元21从模型存储单元22中存储的扩展HMM中检测作为合并对象的状态,并且处理前往步骤S96。然而,在学习单元21在步骤S95中未检测到作为合并对象的任何状态的情况下,即,在模型存储单元22中存储的扩展HMM中不存在作为合并对象的状态的情况下,处理跳过步骤S96和S97,并且前往步骤S98。
在步骤S96中,学习单元21执行将已在步骤S95中检测到的、作为合并对象的状态合并为代表性状态的状态合并,并且处理前往步骤S97。
在步骤S97中,学习单元21使用历史存储单元14中存储的作为学习数据的观测值系列和动作系列、按照Baum-Welch重估执行针对模型存储单元22中存储的扩展HMM(在紧靠前步骤S96中针对其已执行了状态合并)的学习,即,执行与图7中步骤S22至S24一样的处理。在扩展HMM的模型参数在步骤S97中的学习中收敛后,学习单元21在模型存储单元22(图4)中存储(覆写)扩展HMM的模型参数,并且处理前往步骤S98。
在步骤S98中,学习单元21确定在前面的用于检测作为分割对象的状态的步骤S92中的处理中是否尚未检测到作为分割对象的状态,并且进一步地确定在用于检测作为合并对象的状态的紧靠前步骤S95的处理中是否尚未检测到作为合并对象的状态。在步骤S98中检测到作为分割对象的状态或者作为合并对象的状态的情况下,处理返回步骤S92,并且此后重复同样的处理。另一方面,在步骤S98中既未检测到作为分割对象的状态也未检测到作为合并对象的状态的情况下,针对扩展HMM学习的处理结束。
如上所述,重复进行状态分割、状态分割之后的扩展HMM学习、状态合并、以及状态合并之后的扩展HMM学习,直到既检测不到作为分割对象的状态也检测不到作为合并对象的状态为止,从而执行满足一个状态一个观测值约束的学习,并且可以得到其中在一个状态中观测到一个且仅一个观测值的扩展HMM。
图38是说明了图4中所示学习单元21在图37的步骤S92中所执行的、用于检测作为分割对象的状态的处理的流程图。
在步骤S111中,学习单元21将代表状态Si下标的变量i初始化成例如1,并且处理前往步骤S112。
在步骤S112中,学习单元21将代表观测值Ok下标的变量k初始化成例如1,并且处理前往步骤S113。
在步骤S113中,学习单元21确定在状态Si中将会观测到观测值Ok的观测概率Bik=bi(Ok)是否满足表达式(20)中圆括号中的条件表达式1/K<Bik<bmax_th。在步骤S113中确定观测概率Bik=bi(Ok)不满足条件表达式1/K<Bik<bmax_th的情况下,处理跳过步骤S114,并且前往步骤S115。
另一方面,在步骤S113中确定观测概率Bik=bi(Ok)满足条件表达式1/K<Bik<bmax_th的情况下,处理前往步骤S114,其中,学习单元21将观测值Ok取作作为分割对象的观测值(要给每个分割后状态分配一个的观测值),与状态Si相关联,并暂时存储于未示出的存储器中。
然后,处理从步骤S114前往步骤S115,其中,做出针对如下内容的确定:下标k是否等于观测值的数量K(在下文中还称作“符号的数量”)。在步骤S115中确定下标k不等于符号的数量K的情况下,处理前往步骤S116,并且学习单元21将下标k递增1。处理随后从步骤S116返回步骤S113,并且此后重复同样的处理。
另外,在步骤S115中确定下标k等于符号的数量K的情况下,处理前往步骤S117,其中,做出针对如下内容的确定:下标i是否等于状态的数量N(扩展HMM状态的数量)。
在步骤S117中确定下标i不等于状态的数量N的情况下,处理前往步骤S118,并且学习单元21将下标i递增1。处理从步骤S118返回步骤S112,并且此后重复同样的处理。
在步骤S117中确定下标i等于状态的数量N的情况下,处理前往步骤S119,并且学习单元21将与作为分割对象的观测值相关联的、步骤S114中存储的各个状态Si检测成作为分割对象的状态,并且处理返回。
图39是说明了学习单元21(图4)在图37的步骤S93中执行的、对状态进行分割(对作为分割对象的状态的分割)的处理的流程图。
在步骤S131中,学习单元21在作为分割对象的状态中选择一个尚未被取作关注状态的状态作为关注状态,并且处理前往步骤S132。
在步骤S132中,学习单元21将与关注状态相关联的作为分割对象的观测值的数量取作关注状态的分割后状态的数量(在下文中还称作“分割的数量”)CS,并从扩展HMM的状态中选择关注状态、以及从无效的状态中选择CS-1个状态,总共CS个状态作为分割后状态。
然后,处理从步骤S132前往步骤S133,其中,学习单元21给CS个分割后状态中的每个分割后状态分配与关注状态相关联的作为分割对象的CS个观测值中的一个观测值,并且处理前往步骤S134。
在步骤S134中,学习单元21将用以对CS个分割后状态进行计数的变量c初始化成例如1,并且处理前往步骤S135。
在步骤S135中,学习单元21选择CS个分割后状态的第c个分割后状态作为关注的分割后状态,并且处理前往步骤S136。
在步骤S136中,学习单元21针对关注的分割后状态,将会观测到已分配给关注的分割后状态的、作为分割对象的观测值的观测概率设置为1.0,将会观测到另一观测值的观测概率设置为0.0,并且处理前往步骤S137。
在步骤S137中,学习单元21将以关注的分割后状态作为转换起点的状态转换的状态转换概率设置为以关注状态作为转换起点的状态转换的状态转换概率,并且处理前往步骤S138。
如通过图33所描述的,在步骤S138中,学习单元21使用在关注状态处将会观测到作为分割对象的状态的观测值(被分配给关注的分割后状态)的观测概率,对以关注状态作为其转换终点的状态转换的状态转换概率进行校正,并得到针对状态转换概率的校正值,并且处理前往步骤S139。
在步骤S139中,学习单元21将以关注的分割后状态作为转换终点的状态转换的状态转换概率设置为在紧靠前步骤S138中得到的校正值,并且处理前往步骤S140。
在步骤S140中,学习单元21确定变量c是否等于分割的数量CS。在步骤S140中确定变量c不等于分割的数量CS的情况下,处理前往步骤S141,其中,学习单元21将变量c递增1,并且处理返回步骤S135。
另外,在步骤S140中确定变量c等于分割的数量CS的情况下,处理前往步骤S142,其中,学习单元21确定是否作为分割对象的所有状态都被选择为关注状态。在步骤S142中确定作为分割对象的所有状态尚未都被选择作为关注状态的情况下,处理返回步骤S131,并且此后重复同样的处理。另一方面,在步骤S142中确定作为分割对象的所有状态都已被选择作为关注状态的情况下,即,在完成了对作为分割对象的所有状态的分割的情况下,处理返回。
图40是说明了图4中所示学习单元21在图37的步骤S95中所执行的、用于对作为合并对象的状态进行检测的处理的流程图。
在步骤S161中,学习单元21将代表动作Um下标的变量m初始化成例如1,并且处理前往步骤S162。
在步骤S162中,学习单元21将代表状态Si下标的变量i初始化成例如1,并且处理前往步骤S163。在步骤S163中,学习单元21针对模型存储单元22中存储的扩展HMM中的动作Um,检测以状态Si作为转换起点的、到状态Sj的状态转换的状态转换概率Aijm=aij(Um)的最大值max(Aijm),并且处理前往步骤S164。
在步骤S164中,学习单元21确定最大值max(Aijm)是否满足表达式(19),即,是否满足1/N<max(Aijm)<amax_th。
在步骤S164中确定最大值max(Aijm)不满足表达式(19)的情况下,处理跳过步骤S165,并且前往步骤S166。
另外,在步骤S164中确定最大值max(Aijm)满足表达式(19)的情况下,处理前往步骤S165,并且学习单元21将状态Si检测为前向分支的分支起点状态。
进一步地,从针对动作Um的以状态Si作为前向分支的分支起点状态的状态转换中,学习单元21将状态Sj(其中状态转换概率Aijm=aij(Um)满足表达式(23)中圆括号内的条件表达式amin_th1<Aijm的状态转换的转换终点)检测为前向分支的分支终点状态,并且处理从步骤S165前往步骤S166。
在步骤S166中,学习单元21确定下标i是否等于状态的数量N。在步骤S166中确定下标i不等于状态的数量N的情况下,处理前往步骤S167,其中,学习单元21将下标i递增1,并且处理返回步骤S163。另一方面,在步骤S166中确定下标i等于状态的数量N的情况下,处理前往步骤S168,其中,学习单元21将代表状态Sj下标的变量j初始化成例如1,并且处理前往步骤S169。
在步骤S169中,学习单元21确定在针对动作Um的、以状态Sj作为其转换终点的开始于状态Si′的状态转换中,是否存在具有如下这种状态转换的多个转换起点状态Si′:状态转换概率Ai′jm=ai′j(Um)满足表达式(25)中圆括号内的条件表达式amin_th2<Ai′jm。
在步骤S169中确定不存在具有满足表达式(25)中圆括号内的条件表达式amin_th2<Ai′jm的状态转换的多个转换起点状态Si′的情况下,处理跳过步骤S170,并且前往步骤S171。在步骤S169中确定存在具有满足表达式(25)中圆括号内的条件表达式amin_th2<Ai′jm的状态转换的多个转换起点状态Si′的情况下,处理前往步骤S170,并且学习单元21将状态Sj检测为后向分支的分支起点状态。
进一步地,学习单元21从针对动作Um的以作为后向分支的分支起点的状态Sj作为其转换终点的、开始于状态Si′的状态转换中,将其中状态转换概率Ai′jm=ai′j(Um)满足表达式(25)中圆括号内的条件表达式amin_th2<Ai′jm的状态转换的多个转换起点状态Si′检测为后向分支的分支终点状态,并且处理从步骤S170前往步骤S171。
在步骤S171中,学习单元21确定下标j是否等于状态的数量N。在步骤S171中确定下标j不等于状态的数量N的情况下,处理前往步骤S172,并且学习单元21将下标j递增1,并且处理返回步骤S169。
另一方面,在步骤S171中确定下标j等于状态的数量N的情况下,处理前往步骤S173,并且学习单元21确定下标m是否等于动作Um的数量M(在下文中还称作“动作的数量”)。
在步骤S173中确定下标m不等于动作的数量M的情况下,处理前进到步骤S174,其中,学习单元21将下标m递增1,并且处理返回步骤S162。
另外,在步骤S173中确定下标m等于动作的数量M的情况下,处理前进到图41(接在图40之后的流程图)中的步骤S191。
在图41中的步骤S191中,学习单元21从通过图40的步骤S161至S174的处理所检测到的但尚未被取作关注状态的分支起点状态中,选择一个作为关注状态,并且处理前往步骤S192。
在步骤S192中,学习单元21按照表达式(24),对于针对关注状态检测到的多个分支终点状态(候选)(即,以关注状态作为其分支起点进行分支的多个分支终点状态(候选))中的每个分支终点状态,检测出在分支终点状态处其被观测到的观测概率最大的观测值Omax(在下文中还称作“最大概率观测值”),并且处理前往步骤S193。
在步骤S193中,学习单元21确定在针对关注状态检测到的多个分支终点状态中是否存在其中最大概率观测值Omax匹配的分支终点状态。在步骤S193中确定在针对关注状态检测到的多个分支终点状态中不存在其中最大概率观测值Omax匹配的分支终点状态的情况下,处理跳过步骤S194,并且前往步骤S195。
在步骤S193中确定在针对关注状态检测到的多个分支终点状态中存在最大概率观测值Omax匹配的分支终点状态的情况下,处理前往步骤S194,并且学习单元21将针对关注状态检测到的多个分支终点状态中的、其中最大概率观测值Omax匹配的多个分支终点状态检测成一组作为合并对象的状态,并且处理前往步骤S195。
在步骤S195中,学习单元21确定是否所有分支起点状态都已被选择作为关注状态。在步骤S195中确定不是所有分支起点状态都被选择作为关注状态的情况下,处理返回步骤S191。另一方面,在步骤S195中确定所有分支起点状态都已被选择作为关注状态的情况下,处理返回。
图42是说明了图4中所示学习单元21在图37的步骤S96中执行的用于状态合并(作为合并对象的状态的合并)的处理的流程图。
在步骤S211中,学习单元21在作为合并对象的状态组中,选择尚未被取作关注组的组作为关注组,并且处理前往步骤S212。
在步骤S212中,学习单元21在关注组中作为合并对象的多个状态中,选择例如具有最小下标的作为合并对象的状态作为关注组的代表性状态,并且处理前往步骤S213。
在步骤S213中,学习单元21将在代表性状态中将会观测到每个观测值的观测概率设置为在关注组中作为合并对象的多个状态中的各个状态中将会观测到每个观测值的观测概率的平均值。
进一步地,在步骤S213中,学习单元21将在除关注组的代表性状态以外的、作为合并对象的状态中将会观测到每个观测值的观测概率设置为0.0,并且处理前往步骤S214。
在步骤S214中,学习单元21将以代表性状态作为其转换起点的状态转换的状态转换概率设置为以关注组中作为合并对象的各个状态为其转换起点的状态转换的状态转换概率的平均值,并且处理前往步骤S215。
在步骤S215中,学习单元21将以代表性状态作为其转换终点的状态转换的状态转换概率设置为以关注组中作为合并对象的各个状态为其转换终点的状态转换的状态转换概率的和,并且处理前往步骤S216。
在步骤S216中,学习单元21将以除关注组的代表性状态以外的作为合并对象的状态作为转换起点的状态转换、以及以除关注组的代表性状态以外的作为合并对象的状态作为转换终点的状态转换的状态转换概率设置为0.0,并且处理前往步骤S217。
在步骤S217中,学习单元21确定是否作为合并对象的所有组都已被选择作为关注组。在步骤S217中确定作为合并对象的所有组尚未都被选择作为关注组的情况下,处理返回步骤S211。另一方面,在步骤S217中确定作为合并对象的所有组都已被选择作为关注组的情况下,处理返回。
图43A至图43C是说明了本发明人在一个状态一个观测值约束下进行的对扩展HMM的学习仿真的图。图43A是示出了对于仿真所采用的动作环境的图。对于仿真,为动作环境选择了其中配置转变成第一配置和第二配置的环境。
就根据第一配置的动作环境而言,位置pos是屏障且不可穿过,而就根据第二配置的动作环境而言,位置pos是通道且可穿过。在仿真中,执行扩展HMM学习,从而在根据第一和第二配置的每个动作环境中得到观测系列和动作系列以作为学习数据。
图43B示出了作为在没有一个状态一个观测值约束的情况下所执行学习的结果而得到的扩展HMM,并且图43C示出了作为在有一个状态一个观测值约束的情况下所执行学习的结果而得到的扩展HMM。在图43B和图43C中,圆圈代表扩展HMM的状态,并且圆圈内的数字是圆圈所代表状态的下标。进一步地,以圆圈表示的状态之间的箭头代表可能的状态转换(其状态转换概率可以被认为不为0的状态转换)。另外,在竖直方向上排列在图43B和图43C左侧的代表状态的圆圈代表在扩展HMM中无效的状态。
在图43B的扩展HMM中,就没有一个状态一个观测值约束的学习而言,在具有改变的配置的动作环境的第一和第二配置由具有分布的观测概率来表示的情形、以及具有改变的配置的动作环境的第一和第二配置由通过具有状态转换的分支配置来表示的情形下的学习后扩展HMM混合起来的情况下,模型参数变得陷入局部最小值。结果是,可以看出,其配置改变没有通过扩展HMM的状态转换适当地表示的动作环境的配置。
另一方面,在图43C的扩展HMM中,就有一个状态一个观测值约束的学习而言,在学习后的扩展HMM中,只通过具有状态转换的分支配置来表示具有改变的配置的动作环境的第一和第二配置。结果是,可以看出,其配置改变通过扩展HMM的状态转换适当地表示的动作环境的配置。
在有一个状态一个观测值约束的学习中,在动作环境配置改变的情形中,配置不改变的部分共同存储于扩展HMM中,并且配置改变的部分在扩展HMM中通过状态转换的分支结构(也就是说,针对在已执行了某动作的情形中发生的状态转换,存在到不同状态的多个状态转换)来表示。
因此,可以通过单个扩展HMM合适地表示其中配置改变的动作环境,而非为每个结构都准备模型,所以,可以通过更少的存储资源来执行对其中环境改变的动作环境的建模。
用于识别动作模式以用于根据预定策略来确定动作的处理
现在,就图8中的识别动作模式处理而言,识别出智能体的当前情形,确定当前状态(当前情形所对应的扩展HMM状态)、以及用于从当前状态到达目标状态的动作,假设图4中所示智能体在动作环境中位于已知区域(使用在该区域处观测到的观测值系列和动作系列,已执行了对扩展HMM的学习的情况下的该区域(被学习的区域))中。然而,智能体并非总是处于已知区域,也会处于未知区域(未被学习的区域)。
在智能体位于未知区域中的情况下,参照图8描述确定的动作可能不是用于到达目标状态的合适动作;相反,该动作可能是在未知区域中徘徊的无用或冗余的动作。
现在,智能体可以在识别动作模式中确定智能体的当前情形是未知情形(其中正在得到迄今为止尚未观测到的观测值系列和动作系列的情形,即,通过扩展HMM未捕获到的情形)、还是已知情形(其中正在得到已经观测到的观测值系列和动作系列的情形,即,通过扩展HMM捕获到的情形),并且基于确定结果可以确定适当的动作。
图44是说明了这种识别动作模式处理的流程图。就图44中的识别动作模式而言,智能体执行与图8中步骤S31至S33一样的处理。
然后,处理前进到步骤S301,其中,通过从历史存储单元14中读取系列长度(形成系列的值的数量)q为预定长度Q的最新观测值系列、以及在观测到该观测值系列的观测值时所执行动作的动作系列作为要用于识别智能体当前情形的识别用的观测值系列和动作系列,智能体的状态识别单元23(图4)得到系列长度(形成系列的值的数量)q为预定长度Q的最新观测值系列、以及在观测到该观测值系列的观测值时所执行动作的动作系列。
处理随后从步骤S301前往步骤S302,其中,状态识别单元23在模型存储单元22中存储的学习后的扩展HMM中对观测值系列和动作系列进行观测,并基于维特比算法、按照上述表达式(10)和(11),得到最佳状态概率δt(j)(在时间点t处位于状态Sj的状态概率的最大值)、以及最佳路径ψt(j)(其中得到最佳状态概率δt(j)的状态系列)。
进一步地,状态识别单元23对识别用的观测值系列和动作系列进行观测,并根据表达式(11)的最佳路径ψt(j)得到最有可能的状态系列(在时间点t处表达式(10)中的最佳状态概率δt(j)最大的情况下到达状态Sj的状态系列)。
然后,处理从步骤S302前进到步骤S303,其中,状态识别单元23基于最有可能的状态系列来确定智能体的当前情形是已知情形还是未知情形。
此处,识别用观测值系列(或者识别用的观测值系列和动作系列)将会由O来表示,并且其中观测到识别用观测值系列O和动作系列的最有可能的状态系列将会由X来表示。注意,形成最有可能的状态系列X的状态数量等于识别用观测值系列O的系列长度q。
另外,例如在观测到识别用观测值系列O的第一个观测值的时间点t为1的情况下,在时间点t处最有可能的状态系列X的状态将会由Xt来表示,并且从时间点t处的状态Xt到时间点t+1处的状态Xt+1的状态转换的状态转换概率将会表示成A(Xt,Xt+1)。而且,在最有可能的状态系列X中将会观测到识别用观测值系列O的可能性将会表示成P(O|X)。
在步骤S303中,状态识别单元23确定是否满足表达式(28)和(29)。
A(Xt,Xt+1)>Threstrans(0<t<q) …(28)
P(O|X)>Thresobs…(29)
其中,表达式(28)中的Threstrans是用于在是否可以存在从状态Xt到状态Xt+1的状态转换之间进行区分的阈值,并且表达式(29)中的Thresobs是用于在最有可能的状态系列X中是否可以存在对识别用观测值系列O的观测之间进行区分的阈值。例如通过仿真等来为阈值Threstrans和Thresobs设置能适当地执行这种区分的值。
在表达式(28)和(29)中至少一个表达式不满足的情况下,状态识别单元23在步骤S303中确定智能体的当前情形是未知情形。另一方面,在表达式(28)和(29)都满足的情况下,状态识别单元23在步骤S303中确定智能体的当前情形是已知情形。在步骤S303中确定智能体的当前情形是已知情形的情况下,状态识别单元23得到(估算出)最有可能的状态系列X的最后状态作为当前状态st,并且处理前往步骤S304。
在步骤S304中,状态识别单元23以与图8中步骤S34的情形一样的方式,基于当前状态st对逝去时间管理表存储单元32(图4)中存储的逝去时间管理表进行更新。此后,就智能体而言,以与图8中步骤S35及之后一样的方式来执行处理。
另一方面,在步骤S303中确定智能体的当前情形是未知情形的情况下,处理前往步骤S305,其中,状态识别单元23基于模型存储单元22中存储的扩展HMM来计算当前状态系列(用于使智能体到达当前情形的状态系列)的一个或更多个候选。进一步地,状态识别单元23将当前状态系列的一个或更多个候选提供给动作确定单元24(图4),并且处理从步骤S305前往步骤S306。
在步骤S306中,动作确定单元24基于预定策略,使用来自状态识别单元23的当前状态系列的一个或更多个候选来确定智能体接下来要执行的动作。此后,就智能体而言,以与图8中步骤S40及之后一样的方式来执行处理。
如上所述,在当前情形是未知情形的情况下,智能体计算出当前状态系列的一个或更多个候选,并按照预定策略,使用当前状态系列的一个或更多个候选来确定智能体的动作。也就是说,在当前情形是未知情形的情况下,智能体从在学习后的扩展HMM处发生的状态转换的状态系列(在下文中还称作“经历过的状态系列”)中,得到其中观测到某个系列长度q的最新观测值系列以及动作系列的状态系列作为当前状态系列的候选。智能体随后按照预定策略、使用(再次使用)当前状态系列(经历过的状态系列)来确定智能体的动作。
对当前状态系列候选的计算
图45是说明了在图44的步骤S305中执行的、用于使状态识别单元23计算出当前状态系列候选的处理的流程图。
在步骤S311中,状态识别单元23从历史存储单元14(图4)中得到系列长度q为预定长度Q′的最新观测值系列、以及在观测到该观测值系列的每个观测值时所执行动作的动作系列(针对智能体已执行了的动作的、系列长度q为预定长度Q′的最新动作系列、以及在执行该动作系列的动作时在智能体处所观测到观测值的观测值系列),作为识别用的观测值系列和动作系列。
注意,例如,状态识别单元23在步骤S311中得到的识别用观测值系列的系列长度q的长度Q′是短于在图44的步骤S301中得到的观测值系列的系列长度q的长度Q的,诸如是1等。
也就是说,如上所述,智能体从经历过的状态系列中得到其中观测到作为识别用的观测值系列和动作系列的最新观测值系列和动作系列的状态系列,作为当前状态系列的候选,但是,存在识别用的观测值系列和动作系列的系列长度q太长的情形,作为结果,在经历过的状态系列中不存在其中观测到如此长的系列长度q的识别用的观测值系列或动作系列的状态系列(或者,这样的可能性在实践上没有)。
因此,在步骤S311中,状态识别单元23得到具有短系列长度q的识别用的观测值系列和动作系列,以使得可以从经历过的状态系列中得到其中观测到识别用的观测值系列和动作系列的状态系列。
接步骤S311之后,处理前往步骤S312,其中,状态识别单元23在模型存储单元22中存储的学习后的扩展HMM处对步骤311中得到的识别用的观测值系列和动作系列进行观测,并基于维特比算法、按照上述表达式(10)和(11)得到最佳状态概率δt(j)(在时间点t处是处于状态Sj的状态概率的最大值)、以及最佳路径ψt(j)(其中得到最佳状态概率δt(j)的状态系列)。也就是说,状态识别单元23从经历过的状态系列中得到最佳路径ψt(j)(其中观测到识别用的观测值系列和动作系列的、其系列长度q为Q′的状态系列)。
现在,作为基于维特比算法所得到的(估算出的)最佳路径ψt(j)的状态系列还称作“识别用状态系列”。在步骤S312中,针对扩展HMM的N个状态Sj中的每个状态,得到最佳状态概率δt(j)和识别用状态系列(最佳路径ψt(j))。
在步骤S312中,在得到识别用状态系列后,处理前往步骤S313,其中,状态识别单元23从步骤S312中得到的识别用状态系列中选择一个或更多个识别用状态系列,作为当前状态系列的候选,并且处理返回。注意,在步骤S313中,选择具有大于等于阈值的可能性(即,最佳状态概率δt(j))的识别用状态系列,作为当前状态系列的候选,阈值例如是最佳状态概率δt(j)的最大值(最大可能性)的0.8倍的值。可替选地,选择最佳状态概率δt(j)中从上面数的R(其中,R是大于或等于1的整数)个识别用状态系列作为当前状态系列的候选。
图46是说明了图4中所示的状态识别单元23在图44中的步骤S305中执行的、用于对当前状态系列的候选进行计算的处理的另一实例的流程图。就图45中用于计算当前状态系列的候选的处理而言,识别用的观测值系列和动作系列的系列长度q固定为短的长度Q′,所以得到了长度Q′的识别用状态系列,并且因此得到了长度Q′的当前状态系列的候选。
相反地,就图46中用于计算当前状态系列的候选的处理而言,智能体自主调整识别用的观测值系列和动作系列的系列长度q,并且因此,得到与在扩展HMM所捕获到的动作环境配置中智能体的当前位置的配置更接近的配置(即,在经历过的状态系列中的具有最长系列长度q的、其中观测到识别用的观测值系列和动作系列(最新识别用的观测值系列和动作系列)的状态系列)作为当前状态系列的候选。
就图46中用于计算当前状态系列的候选的处理而言,在步骤S321中,状态识别单元23(图4)将系列长度q初始化成例如最小值1,并且处理前往步骤S322。
在步骤S322中,状态识别单元23从历史存储单元14(图4)中读取出系列长度为q的最新观测值系列、以及在观测到观测值系列的每个观测值时所执行动作的动作系列,作为识别用的观测值系列和动作系列,并且处理前往步骤S323。
在步骤S323中,状态识别单元23在模型存储单元22中存储的学习过的扩展HMM中对系列长度为q的识别用的观测值系列和动作系列进行观测,并基于维特比算法、按照上述表达式(10)和(11)得到最佳状态概率δt(j)(在时间点t处将会处于状态Sj的状态概率的最大值)、以及最佳路径ψt(j)(其中得到最佳状态概率δt(j)的状态系列)。
进一步地,状态识别单元23对识别用的观测值系列和动作系列进行观测,并根据表达式(11)的最佳路径ψt(j)得到最有可能的状态系列(在时间点t处表达式(10)中的最佳状态概率δt(j)最大的情况下到达状态Sj的状态系列)。
然后,处理从步骤S323前进到步骤S324,其中,状态识别单元23以与图44中步骤S303的情形一样的方式,基于最有可能的状态系列来确定智能体的当前情形是已知情形还是未知情形。在步骤S324中确定当前情形是已知情形(即,可以从经历过的状态系列中得到具有系列长度q的、其中观测到识别用的观测值系列和动作系列(最新识别用的观测值系列和动作系列)的状态系列)的情况下,处理前往步骤S325,并且状态识别单元23将系列长度q递增1。处理随后从步骤S325返回步骤S322,并且此后,重复同样的处理。
另一方面,在步骤S324中确定当前情形是未知情形(即,从经历过的状态系列中不能得到具有系列长度q的、其中观测到识别用的观测值系列和动作系列(最新识别用的观测值系列和动作系列)的状态系列的情况下),处理前往步骤S326,并且状态识别单元23在步骤S326至S328中,得到在经历过的状态系列中的具有最长系列长度的、其中观测到识别用的观测值系列和动作系列(最新识别用的观测值系列和动作系列)的状态系列,作为当前状态系列的候选。
也就是说,在步骤S322至S325中,基于观测到识别用的观测值系列和动作系列的最有可能的状态系列,在确定智能体的当前情形是已知还是未知的那个时间,每次把识别用观测值系列和动作系列的系列长度q递增一。
因此,在步骤S324中,紧接在对当前情形已做出是未知情形的确定之后,系列长度为q-1(其中,系列长度q已递减了1)的、其中观测到识别用的观测值系列和动作系列的最有可能的状态系列作为具有最长系列长度(或最长之中的一个)的、其中观测到识别用的观测值系列和动作系列的状态系列存在于经历过的状态系列中。
因此,在步骤S326中,状态识别单元23从历史存储单元14(图4)中读取出系列长度为q-1的最新观测值系列、以及在观测到观测值系列的每个观测值时所执行动作的动作系列,作为识别用的观测值系列和动作系列,并且处理前往步骤S327。
在步骤S327中,状态识别单元23在模型存储单元22中存储的学习过的扩展HMM中对在步骤S326中得到的系列长度为q-1的识别用的观测值系列和动作系列进行观测,并基于维特比算法、按照上述表达式(10)和(11)得到最佳状态概率δt(j)(在时间点t处于状态Sj的状态概率的最大值)、以及最佳路径ψt(j)(其中得到最佳状态概率δt(j)的状态系列)。
也就是说,状态识别单元23从学习过的扩展HMM中发生的状态转换的状态系列中,得到作为其系列长度是q-1的、其中观测到识别用的观测值系列和动作系列的状态系列的最佳路径ψt(j)(识别用状态系列)。
在步骤S327中得到识别用状态系列后,处理前往步骤S328,其中,状态识别单元23以与图45中步骤S313的情形一样的方式,从步骤S327中得到的识别用状态系列中选择一个或更多个识别用状态系列,作为当前状态系列的候选,并且处理返回。
如上所述,紧接在对当前情形已做出是未知情形的确定之后,通过递减系列长度q并得到系列长度为q-1的识别用的观测值系列和动作系列(其中,系列长度q已递减了1),可以从经历过的状态系列中得到当前状态系列的适当候选(与智能体在扩展HMM已捕获到的动作环境配置中的当前位置的配置更接近的配置相对应的状态系列)。
也就是说,在为用于得到当前状态系列的候选的识别用的观测值系列和动作系列固定了系列长度的情况下,如果固定的系列长度太短或太长,则可能无法得到当前状态系列的适当候选。
具体地,在识别用的观测值系列和动作系列的系列长度太短的情况下,在经历过的状态系列中将会存在大量以高可能性观测到具有这种系列长度的识别用的观测值系列和动作系列的状态系列,所以,将会得到大量具有高可能性的识别用观测值系列。从这大量具有高可能性的识别用观测值系列中选择当前状态系列的候选将会导致以下概率更高:更好地表示当前情形的状态系列未从经历过的状态系列中被选择作为当前状态系列的候选。
另一方面,在识别用的观测值系列和动作系列的系列长度太长的情况下,较大的可能性是在经历过的状态系列中将不会存在以高可能性观测到具有这种过长系列长度的识别用的观测值系列和动作系列的状态系列,并且因此,很有可能无法为当前状态系列得到候选。
对比这些情况,就参照图46描述的布置而言,估算出最有可能的状态系列(观测到识别用的观测值系列和动作系列的可能性最高的状态转换发生的状态系列)。基于最有可能的状态系列确定智能体的当前情形是扩展HMM已捕获到的已知情形还是扩展HMM尚未捕获到的未知情形,同时重复对识别用的观测值系列和动作系列的系列长度进行递增,直到确定智能体的当前情形是未知情形为止。估算出一个或更多个如下这种识别用状态系列:其中观测到系列长度为q-1(比在确定智能体的当前情形是未知情形时的系列长度q短一个样本)的识别用的观测值系列和动作系列的状态转换发生的状态系列。从一个或更多个识别用状态系列中选择一个或更多个当前状态系列候选,从而可以得到与智能体在扩展HMM已捕获到的动作环境配置中的当前位置的配置更接近的配置的状态系列作为当前状态系列候选。结果是,可以最大限度地使用经历过的状态系列来确定动作。
按照策略的动作确定
图47是说明了图4中所示的动作确定单元24在图44的步骤S306中执行的用于按照策略确定动作的处理的流程图。在图47中,动作确定单元24从在扩展HMM处捕获到的已知情形中按照第一策略(用于执行智能体在与智能体当前情形类似的已知情形中已执行过的动作)确定出动作。
也就是说,在步骤S341中,动作确定单元24从来自状态识别单元23(图4)的一个或更多个当前状态系列候选中选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且处理前往步骤S342。
在步骤S342中,动作确定单元24基于模型存储单元22中存储的扩展HMM,针对关注的状态系列,为每个动作Um得到其转换起点为该关注状态系列的最后的状态(在下文中还称作“最后状态”)的状态转换的状态转换概率的和,作为用于表示(按照第一策略)执行动作Um的合适性的动作合适性。
也就是说,将最后状态表示成SI(此处,I是1与N之间的整数)的情况下,动作确定单元24得到排列在针对每个动作Um的状态转换概率平面的j轴方向(水平方向)上的状态转换概率aI,1(Um)、aI,2(Um)、…aI,N(Um)的和,作为动作合适性。
然后,处理从步骤S342前往步骤S343,其中,动作确定单元24从已得到动作合适性的M个(种)动作U1至UM中,将针对其动作合适性低于阈值的动作Um所得到的动作合适性取为0.0。也就是说,动作确定单元24将针对其动作合适性低于阈值的动作Um所得到的动作合适性设置为0.0,从而针对关注的状态系列,将其动作合适性低于阈值的动作Um从按照第一策略要执行的下一个动作的候选中排除,结果是,选择其动作合适性处于或高于阈值的动作Um,作为按照第一策略要执行的下一个动作的候选。
在步骤S343之后,处理前往步骤S344,其中,动作确定单元24确定是否所有当前状态系列候选都已被取作关注的状态系列。在步骤S344中确定所有当前状态系列候选尚未都被取作关注的状态系列的情况下,处理返回步骤S341。在步骤S341中,动作确定单元24从来自状态识别单元23的一个或更多个当前状态系列中,新选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且此后重复同样的处理。
另一方面,在步骤S344中确定所有当前状态系列候选都被取作关注的状态系列的情况下,处理前往步骤S345,其中,动作确定单元24基于针对来自状态识别单元23的一个或更多个当前状态系列候选中的各个当前状态系列候选得到的针对动作Um的动作合适性,从下一个动作的候选中确定下一个动作,并且处理返回。也就是说,动作确定单元24确定其动作合适性最大的候选作为下一个动作。
可替选地,动作确定单元24可以得到针对每个动作Um的动作合适性的预期值(平均值),并基于预期值来确定下一个动作。具体地,动作确定单元24可以为每个动作Um得到与一个或更多个当前状态系列候选中的各个当前状态系列候选相对应得到的、针对每个动作Um的动作合适性的预期值(平均值),并基于每个动作Um的预期值来确定例如具有最大预期值的动作Um作为下一个动作。
可替选地,动作确定单元24可以基于每个动作Um的预期值,通过例如SoftMax方法确定下一个动作。也就是说,动作确定单元24对应于根据以整数m作为其下标的动作Um的预期值的概率,随机生成范围为1至M(对应于M个动作U1至UM的下标)的整数m,并确定以所生成整数m为其下标的动作Um作为下一个动作。
如上所述,在按照第一策略来确定动作的情况下,智能体执行智能体在与当前情形类似的已知情形下已执行过的动作。因此,就第一策略而言,在智能体处于未知情形中、并且智能体期望执行与已知情形下采取的动作一样的动作的情况下,可以使智能体执行合适的动作。就按照此第一策略的动作确定而言,不仅可以在智能体处于未知情形中的情况下确定动作,还可以例如在智能体到达上述开放端的情况下确定动作。
现在,在智能体处于未知情形中并且执行与已知情形下采取的动作一样的动作的情况下,智能体可以在动作环境中徘徊。当智能体在动作环境中徘徊时,存在智能体将会返回已知位置(区域)的可能性(意味着当前情形将会变成已知情形),并且存在智能体将会开拓未知位置的可能性(意味着当前情形将会保持为未知情形)。
因此,如果智能体期望返回已知位置,或者,如果智能体期望开拓未知位置,则智能体在动作环境中徘徊情形下的动作距期望很远。因此,动作确定单元24被布置成以使得能够基于除了第一策略以外的第二和第三策略(在下面进行描述)来确定下一个动作。
图48是示出了按照第二策略的动作确定的概况的图。第二策略是其中增加了用以实现对智能体当前情形进行识别的信息的策略,并且通过按照此第二策略来确定动作,合适的动作可以确定为用于使智能体返回已知位置的动作,并且因此,智能体可以有效率地返回已知位置。也就是说,就按照第二策略的动作确定而言,动作确定单元24例如如图48中所示,把如下动作确定为下一个动作:其中生成了从来自状态识别单元23的一个或更多个当前状态系列候选中的最后状态st到紧靠最后状态st之前的紧靠前状态St-1的状态转换的动作。
图49是说明了图4中所示的动作确定单元24在图44的步骤S306中执行的、用于按照第二策略的动作确定的处理的流程图。
在步骤S351中,动作确定单元24从来自状态识别单元23的一个或更多个当前状态系列候选中,选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且处理前往步骤S352。
此处,在来自状态识别单元23的当前状态系列候选的系列长度为1、并且不存在紧靠最后状态之前的紧靠前状态的情况下,动作确定单元24参考在执行步骤S351中的处理之前模型存储单元22中存储的扩展HMM(或者其状态转换概率),以针对来自状态识别单元23的一个或更多个当前状态系列候选中的每一个得到最后状态可以作为状态转换的转换终点的状态。动作确定单元24针对来自状态识别单元23的一个或更多个当前状态系列候选中的每个当前状态系列候选,将其中排列有最后状态可以作为状态转换的转换终点的状态、以及最后状态的状态系列处理成当前状态系列的候选。这对于后面所描述的图51也适用。
在步骤S352中,动作确定单元24针对关注的状态系列,为每个动作Um得到从关注的状态系列的最后状态到紧靠最后状态之前的紧靠前状态的状态转换的状态转换概率,作为表示(按照第二策略)执行动作Um的合适性的动作合适性。也就是说,动作确定单元24得到在执行动作Um的情况下从最后状态Si到紧靠前状态Sj的状态转换的状态转换概率aij(Um),作为动作Um的动作合适性。
然后,处理从步骤S352前进到S353,其中,动作确定单元24将针对M个(种)动作U1至UM中除动作合适性最大的动作以外的动作所得到的动作合适性设置为0.0。也就是说,动作确定单元24将除动作合适性最大的动作以外的动作的动作合适性设置为0.0,结果是,选择具有最大动作合适性的动作,作为按照第二策略的关注的状态系列要执行的下一个动作的候选。
接步骤S353之后,处理前进到步骤S354,其中,动作确定单元24确定是否所有当前状态系列候选都已被取作关注的状态系列。在步骤S354中确定所有当前状态系列候选尚未都被取作关注的状态系列的情况下,处理返回步骤S351。在步骤S351中,动作确定单元24从来自状态识别单元23的一个或更多个当前状态系列候选中,新选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且此后重复同样的处理。
另一方面,在步骤S354中确定所有当前状态系列候选都已被取作关注的状态系列的情况下,处理前往步骤S355,其中,动作确定单元24基于针对来自状态识别单元23的一个或更多个当前状态系列候选中的各个当前状态系列候选得到的、针对动作Um的动作合适性,从下一个动作的候选中确定下一个动作,并且处理返回。也就是说,动作确定单元24以与图47中步骤S345的情形一样的方式,确定其动作合适性最大的候选作为下一个动作,并且处理返回。
如上所述,在按照第二策略确定动作的情况下,智能体执行动作以折回它所来自的路径,结果是,增加了使得智能体的情形可识别的信息(观测值)。因此,就第二策略而言,如果智能体处于未知情形中并且期望使智能体返回已知位置,则智能体可以执行合适的动作。
图50是示出了按照第三策略的动作确定的概况的图。第三策略是其中增加了在扩展HMM处未捕获的未知情形的信息(观测值)的策略,并且通过按照此第三策略来确定动作,合适的动作可以确定为用于使智能体开拓未知位置的动作,并且因此,智能体可以有效率地开拓未知地点。也就是说,就按照第三策略的动作确定而言,动作确定单元例如如图50中所示,把如下动作确定为下一个动作:其中生成了从来自状态识别单元23的一个或更多个当前状态系列的最后状态st到除紧靠最后状态st之前的紧靠前状态St-1之外状态的状态转换的动作。
图51是说明了图4中所示的动作确定单元24在图44的步骤S306中执行的、用于按照第三策略的动作确定的处理的流程图。
在步骤S361中,动作确定单元24从来自状态识别单元23的一个或更多个当前状态系列候选中,选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且处理前往步骤S362。
在步骤S362中,动作确定单元24针对关注的状态系列,为每个动作Um得到从关注的状态系列的最后状态到紧靠最后状态之前的紧靠前状态的状态转换的状态转换概率,作为表示(按照第二策略)执行动作Um的合适性的动作合适性)。也就是说,动作确定单元24得到在执行动作Um的情况下从最后状态Si到紧靠前状态Sj的状态转换的状态转换概率aij(Um),作为动作Um的动作合适性。
然后,处理从步骤S362前进到S363,其中,动作确定单元24将针对M个(种)动作U1至UM所得到的动作合适性最大的动作,检测为生成使状态返回到紧靠前状态的状态转换的动作(还称为“返回动作”)。
接步骤S363之后,处理前进到步骤S364,其中,动作确定单元24确定是否所有当前状态系列候选都已被取作关注的状态系列。在步骤S364中确定所有当前状态系列候选尚未都被取作关注的状态系列的情况下,处理返回步骤S361。在步骤S361中,动作确定单元24从来自状态识别单元23的一个或更多个当前状态系列候选中,新选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且此后重复同样的处理。
另一方面,在步骤S364中确定所有当前状态系列候选都已被取作关注的状态系列的情况下,动作确定单元24将所有当前状态系列候选都已被取作关注的状态系列的事实复位,并且处理前往步骤S365。在步骤S365中,以与步骤S361一样的方式,动作确定单元24从来自状态识别单元23的一个或更多个当前状态系列候选中,选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且处理前往步骤S366。
在步骤S366中,以与图47中步骤S342的情形一样的方式,动作确定单元24基于模型存储单元22中存储的扩展HMM,针对关注的状态系列,为每个动作Um得到其转换起点为关注的状态系列的最后状态的状态转换的状态转换概率的和,作为针对每个动作Um的动作合适性(用于表示(按照第三策略)执行动作Um的合适性)。
然后,处理从步骤S366前往步骤S367,其中,动作确定单元24从已得到动作合适性的M个(种)动作U1至UM中,将针对其动作合适性低于阈值的动作Um所得到的动作合适性、以及针对返回动作所得到的动作合适性取为0.0。也就是说,动作确定单元24将针对其动作合适性低于阈值的动作Um所得到的动作合适性设置为0.0,从而针对关注的状态系列,将其动作合适性低于阈值的动作Um从按照第一策略要执行的下一个动作的候选中排除。动作确定单元24还将针对其动作合适性处于阈值或在阈值以上的动作Um中的返回动作所得到的动作合适性设置为0.0,结果是,选择除返回动作以外的动作,作为按照第三策略要执行的下一个动作的候选。
在步骤S367之后,处理前进到步骤S368,其中,动作确定单元24确定是否所有当前状态系列候选都已被取作关注的状态系列。在步骤S368中确定所有当前状态系列候选尚未都被取作关注的状态系列的情况下,处理返回步骤S365。在步骤S365中,动作确定单元24从来自状态识别单元23的一个或更多个当前状态系列候选中,新选择尚未被取作关注的状态系列的候选作为关注的状态系列,并且此后重复同样的处理。
另一方面,在步骤S368中确定所有当前状态系列候选都已被取作关注的状态系列的情况下,处理前往步骤S369,其中,动作确定单元24以与图47中步骤S345的情形一样的方式,基于针对来自状态识别单元23的一个或更多个当前状态系列候选中的各个当前状态系列候选得到的、针对动作Um的动作合适性,从下一个动作的候选中确定下一个动作,并且处理返回。
如上所述,在按照第三策略来确定动作的情况下,智能体执行除返回动作以外的动作,即,开拓未知位置的动作,结果是,增加了在扩展HMM处未捕获的未知情形的信息。因此,就第三策略而言,如果智能体处于未知情形中并且期望使智能体开拓未知位置,则智能体可以执行合适的动作。
如上所述,基于扩展HMM计算出当前状态系列(通往智能体当前情形的状态系列)的候选,并按照预定策略使用状态系列候选来确定智能体接下来要执行的动作,所以,即使没有针对要采取的动作的规则(如,用于计算动作所对应报酬的报酬函数),智能体也可以基于扩展HMM捕获到的经验来决定动作。
注意,作为解决了情形模糊性的动作确定技术,例如日本未审查专利申请公报No.2008-186326描述了利用一个报酬函数来确定动作的方法。图44中的识别动作模式处理与根据日本未审查专利申请公报No.2008-186326的动作确定技术的不同之处在于:例如,基于扩展HMM计算出当前状态系列(智能体借以到达当前情形的状态系列)的候选,并且当前状态系列候选被用来确定动作;并且不同之处还在于:可以得到其中观测到识别用的观测值系列和动作系列的、智能体已经历过的状态系列中其系列长度q最长的状态系列,作为当前状态系列的候选(图46);并且不同之处进一步在于:如后面所描述的,可以变换确定动作所遵循的策略(从多个策略中选择的),等等。
现在,如上所述,第二策略是用于增加用以实现对智能体状态的识别的信息的策略,并且第三策略是用于增加在扩展HMM处未捕获的未知情形的信息的策略,所以,第二和第三策略均为增加了某种信息的策略。除了参照图48至图51所描述的方法,还可以如下所述地执行根据增加了某种信息的第二和第三策略的动作确定。
在智能体在某时间点t执行动作Um的情况下将会观测到观测值O的概率Pm(O)由表达式(30)来表示。
其中,ρi代表在时间点t处于状态Si中的状态概率。
如果我们假定发生概率由概率Pm(O)所代表的信息量由I(Pm(O))来表示,则按照增加了某种信息的策略所确定的动作Um′的下标m′如表达式(31)中所示。
其中,argmax{I(Pm(O))}代表在动作Um的下标m中使圆括号中的信息量I(Pm(O))最大化的下标m′。
现在,如果我们采用能够实现对智能体情形识别的信息(在下文中还称作“识别实现信息”)作为信息,则按照表达式(31)来确定动作Um′意思是:按照增加了识别实现信息的第二策略来确定动作。另外,如果我们采用扩展HMM未捕获到的未知情形的信息(在下文中还称作“未知情形信息”)作为信息,则按照表达式(31)来确定动作Um′意思是:按照增加了未知情形信息的第三策略来确定动作。
现在,如果我们用Ho(Pm)来表示其发生概率由概率Pm(O)表示的信息的熵,则可以将表达式(31)等价地表示如下,即,熵Ho(Pm)可以由表达式(32)来表示。
在表达式(32)中的熵Ho(Pm)大的情况下,将会观测到观测值O的概率Pm(O)在各个观测值处是一致的,引起如下这种模糊性:其中,不知道将会观测到何种观测值,并且因此,不知道智能体在哪。因此,捕获仿佛其所在的未知世界中智能体不知道的信息的概率较高。
因此,较大的熵Ho(Pm)增加了未知情形信息,所以,可以等价地通过表达式(33)来表示用于按照第三策略(用于增加未知情形信息)来确定动作的表达式(31),其中,使熵Ho(Pm)最大化。
其中,argmax{Ho(Pm)}代表动作Um的下标m中使圆括号中熵Ho(Pm)最大化的下标m′。
另一方面,在表达式(32)中的熵Ho(Pm)小的情况下,将会观测到观测值O的概率Pm(O)只在特定观测值处高,解除了如下这种模糊性:其中,不知道将会观测到何种观测值,并且因此,不知道智能体在哪。因此,更容易确定智能体的地点。
因此,较小的熵Ho(Pm)增加了识别实现信息,所以,可以等价地通过表达式(34)来表示用于按照第二策略(用于增加识别实现信息)来确定动作的表达式(31),其中,使熵Ho(Pm)最小化。
其中,argmin{Ho(Pm)}代表动作Um的下标m中使圆括号中熵Ho(Pm)最小化的下标m′。
可替选地,针对概率Pm(O)的最大值和阈值的大小关系,例如,可以确定使概率Pm(O)最大化的动作Um作为下一个动作。在概率Pm(O)的最大值大于(或大于等于)阈值的情况下,确定使概率Pm(O)最大化的动作Um作为下一个动作的意思是:确定动作以解除模糊性,即,按照第二策略来确定动作。另一方面,在概率Pm(O)的最大值等于或小于(或小于)阈值的情况下,确定使概率Pm(O)最大化的动作Um作为下一个动作的意思是:确定动作以增加模糊性,即,按照第三策略来确定动作。
在上述布置中,使用在智能体在某个时间点t执行动作Um的情况下将会观测到观测值O的概率Pm(O)来确定动作,但可替选地,可以进行如下这种布置:使用在智能体在某个时间点t执行动作Um的情况下从状态Si到状态Sj的状态转换将会发生的表达式(35)的概率Pmj来确定动作。
也就是说,在按照用于增加信息量I(Pmj)(其发生的概率由概率Pmj来表示)的策略来确定动作的情形中,动作Um′的下标m′由表达式(36)来表示。
其中,argmax{I(Pmj)}代表动作Um的下标m中使圆括号中信息量I(Pmj)最大化的下标m′。
现在,如果我们采用识别实现信息作为信息,则按照表达式(36)来确定动作Um′的意思是:按照增加了识别实现信息的第二策略来确定动作。另外,如果我们采用未知情形信息作为信息,则按照表达式(36)来确定动作Um′的意思是:按照增加了未知情形信息的第三策略来确定动作。
现在,如果我们用Hj(Pm)来表示其发生概率由概率Pmj表示的信息的熵,则可以将表达式(36)等价地表示如下,即,熵Hj(Pm)可以由表达式(37)来表示。
在表达式(37)中的熵Hj(Pm)大的情况下,从状态Si到状态Sj的状态转换将会发生的概率Pmj在各个观测值处是一致的,引起如下这种模糊性:其中,不知道将会观测到何种观测值,并且因此,不知道智能体在哪。因此,捕获未知世界中智能体不知道的信息的概率较高。
因此,较大的熵Hj(Pm)增加了未知情形信息,所以,可以等价地通过表达式(38)来表示用于按照第三策略(用于增加未知情形信息)来确定动作的表达式(36),其中,使熵Hj(Pm)最大化。
其中,argmax{Hj(Pm)}代表动作Um的下标m中使圆括号中熵H(Pm)最大化的下标m′。
另一方面,在表达式(37)中的熵Hj(Pm)小的情况下,从状态Si到状态Sj将会发生状态转换的概率Pmj只在特定状态转换处高,解除了如下这种模糊性:其中,不知道将会观测到何种观测值,并且因此,不知道智能体在哪。因此,更容易确定智能体的地点。
因此,较小的熵Hj(Pm)增加了识别实现信息,所以,可以等价地通过表达式(39)来表示用于按照第二策略(用于增加识别实现信息)来确定动作的表达式(36),其中,使熵Ho(Pm)最小化。
其中,argmin{H(Pmj)}代表动作Um的下标m中使圆括号中熵Hj(Pm)最小化的下标m′。
可替选地,针对概率Pmj的最大值和阈值的大小关系,例如,可以确定使概率Pmj最大化的动作Um作为下一个动作。在概率Pmj的最大值大于(或大于等于)阈值的情况下,确定使概率Pmj最大化的动作Um作为下一个动作的意思是:确定动作以解除模糊性,即,按照第二策略来确定动作。另一方面,在概率Pmj的最大值小于等于(或小于)阈值的情况下,确定使概率Pmj最大化的动作Um作为下一个动作的意思是:确定动作以增加模糊性,即,按照第三策略来确定动作。
就又一布置而言,确定动作以使得模糊性解除(即,按照第二策略来确定动作)可以使用在观测到观测值O时处于状态Sx的后验概率P(X|O)来执行。表达式(40)中表示了后验概率P(X|O)。
按照第二策略来确定动作可以通过将后验概率P(X|O)的熵表示成H(P(X|O))、并确定动作以使得熵H(P(X|O))小来实现。也就是说,按照第二策略来确定动作可以通过按照表达式(41)确定动作Um来实现。
其中,表达式(41)中的argmin{}代表动作Um的下标m中使括号中的值最小化的下标m′。
表达式(41)中的argmin{}中括号内的∑P(O)H(P(X|O))是:将会观测到观测值O的概率P(O)与在观测到观测值O时处于状态Sx的后验概率P(X|O)的熵H(P(X|O))的乘积的、在观测值O从观测值O1至OK变化时的总和,代表了在执行动作Um时观测到观测值O1至OK的整个熵。
根据表达式(41),将使熵∑P(O)H(P(X|O))最小化的动作(即,针对其唯一确定观测值O的概率高的动作)确定为下一个动作。因此,按照表达式(41)来确定动作的意思是:确定动作以解除模糊性,即,按照第二策略来确定动作。
另外,确定动作以增加模糊性(即,按照第三策略来确定动作)可以通过将后验概率P(X|O)的熵H(P(X|O))对于处于状态Sx的先验概率P(X)的熵H(P(X))的减小量作为未知情形信息的量、并使该减小量最大化来执行。先验概率P(X)如表达式(42)中所示。
使后验概率P(X|O)的熵H(P(X|O))对于处于状态Sx的先验概率P(X)的熵H(P(X))的减小量最大化的动作Um′可以按照表达式(43)确定。
其中,表达式(43)中的argmax{}代表动作Um的下标m中使括号中的值最大化的下标m′。
根据表达式(43),将先验概率P(X)(在观测值O未知的情况下处于状态Sx的状态概率)的熵H(P(X))与后验概率P(X|O)(在执行动作Um的情况下处于状态Sx并且观测到观测值O)的熵H(P(X|O))之间的差值乘以将会观测到观测值O的概率P(O),以得到乘积值P(O)(H(P(X))-H(P(X|O))),并且,将利用观测值O从观测值O1至OK变化而求得的总和∑P(O)(H(P(X))-H(P(X|O)))取作通过已执行的动作Um增加了的未知情形信息量,并且,确定使未知情形信息量最大化的动作为下一个动作。
选择策略
如参照图47至图51所描述的,智能体可以按照第一至第三策略来确定动作。在确定动作时要按照的策略可以事先设置,或者,可以从多个策略(即,第一至第三策略)中适应性地选择。
图52是说明了使智能体从多个策略中选择在确定动作时所要按照的策略的处理的流程图。现在,根据第二策略,确定动作以使得识别实现信息增加并且解除模糊性,即,以使得智能体返回已知位置(区域)。另一方面,根据第三策略,确定动作以使得未知情形信息增加并且模糊性增加,即,以使得智能体开拓未知位置。根据第一策略,不知道智能体将会返回已知位置还是开拓未知位置,但是,执行在与智能体的当前情形类似的已知情形下智能体已执行的动作。
现在,为了广泛地捕获动作环境的配置,即,为了增加智能体的知识(已知世界),需要确定动作以使得智能体开拓未知位置。
另一方面,为了使智能体捕获未知位置作为已知位置,智能体需要从未知位置返回已知位置并执行扩展HMM学习(额外的学习)以将未知位置与已知位置相连。这意味着,为了使智能体能够捕获未知位置作为已知位置,智能体需要确定动作以返回已知位置。
在确定动作以使得智能体将会开拓未知位置与确定动作以返回已知位置之间的良好平衡,实现了对动作环境整个配置的有效率地扩展HMM建模。可以为此做出如下这种布置:其中,智能体基于从智能体的情形变成未知情形的点逝去时间的量,从第二和第三策略中选择确定动作时要遵循的策略,如图52中所示。
在步骤S381中,动作确定单元24(图4)基于在状态识别单元23处对当前情形的识别结果,得到从智能体的情形变成未知情形的点逝去时间的量(在下文中还称作“未知情形逝去时间”),并且处理前往步骤S382。
注意,“未知情形逝去时间”是指状态识别单元23产生出当前情形是未知情形的识别结果的连续次数,并且在得到当前情形是已知情形的识别结果的情况下,将未知情形逝去时间复位成0。因此,未知情形逝去时间在当前情形不是未知情形的情况(已知情形的情况)下是0。
在步骤S382中,动作确定单元24确定未知情形逝去时间是否大于预定阈值。在步骤S382中确定未知情形逝去时间不大于预定阈值的情况下,即,在从智能体的情形变成未知情形以来逝去时间的量不那么大的情况下,处理前往步骤S383,其中,动作确定单元24从第二和第三策略中,选择增加未知情形信息的第三策略作为用于确定动作所要按照的策略,并且处理返回步骤S381。
在步骤S382中确定未知情形逝去时间大于预定阈值的情况下,即,在从智能体的情形变成未知情形以来逝去时间的量相当大的情况下,处理前往步骤S384,其中,动作确定单元24从第二和第三策略中,选择增加识别实现信息的第二策略作为用于确定动作所要按照的策略,并且处理返回步骤S381。
虽然参照图52描述了基于从智能体的情形变成未知情形以来逝去时间的量来确定在确定动作时所要按照的策略,但可以做出除此之外的布置:其中,基于例如已知情形中的时间或未知情形中的时间在预定时段的最近时间中的比率来确定在确定动作时所要按照的策略。
图53是说明了用于基于已知情形中的时间或未知情形中的时间在预定时段的最近时间中的比率来选择用于确定动作所要按照的策略的处理的流程图。
在步骤S391中,动作确定单元24(图4)从状态识别单元23得到在预定时段的最近时间内当前情形的识别结果,根据识别结果来计算情形为未知情形的比率(在下文中,还称作“未知百分比”),并且处理前往步骤S392。
在步骤S392中,动作确定单元24确定未知百分比是否大于预定阈值。在步骤S392中确定未知百分比不大于预定阈值的情况下,即,在智能体的情形为未知情形的比率不那么大的情况下,处理前往步骤S393,其中,动作确定单元24从第二和第三策略中,选择增加未知情形信息的第三策略作为用于确定动作所要按照的策略,并且处理返回步骤S391。
在步骤S392中确定未知百分比大于预定阈值的情况下,即,在智能体的情形为未知情形的比率相当大的情况下,处理前往步骤S394,其中,动作确定单元24从第二和第三策略中,选择增加识别实现信息的第二策略作为用于确定动作所要按照的策略,并且处理返回步骤S391。
虽然参照图53描述了基于识别结果中智能体的情形为未知情形在预定时段的最近时间中的比率(未知百分比)来确定在确定动作时所要按照的策略,但可以做出除此之外的布置:其中,基于识别结果中智能体的情形为已知情形在预定时段的最近时间中的比率(在下文中还称作“已知百分比”)来确定在确定动作时所要按照的策略。在基于已知百分比来执行策略选择的情况下,在已知百分比大于阈值的情况下选择第三策略作为用于确定动作的策略,以及在已知百分比不大于预定阈值的情况下选择第二策略。
在图52的步骤S383以及图53的步骤S393中还可以做出如下这种布置:其中,每隔预定次数,选择第一策略(而非第三策略)作为用于确定动作的策略,等等。
如上所述对策略的选择实现了对动作环境整个配置的有效率地扩展HMM建模。
对应用了本发明的计算机的描述
现在,上述一系列处理可以通过硬件或者通过软件来执行。在一系列处理通过软件执行的情况下,将形成软件的程序安装在通用计算机等中。
图54示出了安装了用于执行上述一系列处理的程序的计算机实施例的配置实例。程序可以事先记录在硬盘105或ROM 103(作为计算机内置的记录媒介)中。
可替选地,程序可以存储(记录)在可拆除记录介质111中。这种可拆除记录介质111可以按所谓套装软件的形式来提供。可拆除记录介质111的实例包括软盘、CD-ROM(光盘只读存储器)盘、MO(磁光)盘、DVD(数字多功能盘)、磁盘、半导体存储器等。
除了如上所述从可拆除记录介质111安装到计算机,程序可以经由通信网络或广播网络下载到计算机,并安装到内置硬盘105。也就是说,程序可以例如经由数字广播卫星从下载站点以无线的方式传送到计算机,或者,经由诸如LAN(局域网)或因特网等通过线缆传送到计算机。
计算机内置有CPU(中央处理单元)102,其中,输入/输出接口110经由总线101连接到CPU 102。经由输入/输出接口110通过被用户操作的输入单元107等输入命令后,CPU 102执行ROM(只读存储器)中存储的程序,或者,将硬盘105中存储的程序加载到RAM(随机访问存储器)104并执行程序。
因此,通过CPU 102执行按照上述流程图的处理、或者上述方框图配置所执行的处理。根据情况,CPU 102例如经由输入/输出接口110从输出单元106输出其处理结果,或者,从通信单元108发送处理结果,或者,进一步记录在硬盘105中,等等。
输入单元107由键盘、鼠标、麦克风等配置。输出单元106由LCD(液晶显示器)、扬声器等配置。
应当理解,就本说明书而言,计算机按照程序执行的处理并非必定以按照流程图中所描述次序的时序来执行;而是,计算机按照程序执行的处理也包括并行或个别执行的处理,例如,并行处理或者面向对象的处理。
另外,程序可以由单个计算机(处理器)来处理,或者,可以由多个计算机进行的分散处理来处理。此外,程序可以传送到远程计算机并执行。
应当理解,本发明的实施例不限于上述实施例,并且在不脱离本发明精神和范围的情况下可以做出各种修改。
本申请包含与2009年6月11日提交日本专利局的日本在先专利申请JP 2009-140065中公开的主题相关的主题,其全部内容经引用并入本文。
本领域技术人员应当理解,根据设计需要及其它因素可以进行各种修改、组合、子组合和替选,只要它们在所附权利要求或其等同物的范围内。
Claims (16)
1.一种信息处理设备,包括:
计算装置,被配置成基于状态转换概率模型来计算当前状态系列候选,所述当前状态系列候选是使能够进行动作的智能体到达当前状态的状态系列,其中通过使用所述智能体所执行的动作和当所述智能体执行动作时在所述智能体处观测到的观测值来执行对由如下内容规定的所述状态转换概率模型的学习,而得到所述状态转换概率模型:
状态将会根据能够进行动作的智能体所执行动作中的每个动作而转换的状态转换概率,以及
从所述状态将会观测到预定观测值的观测概率;以及
确定装置,被配置成根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
2.如权利要求1所述的信息处理设备,其中,所述确定装置根据如下策略来确定动作:增加在所述状态转换概率模型处未得到的未知情形的信息的策略。
3.如权利要求2所述的信息处理设备,其中,所述计算装置:以所述智能体所执行动作的动作系列、以及当执行所述动作时在所述智能体处所观测到的观测值的观测值系列作为用来识别智能体情形的识别用的动作系列和观测值系列,估算一个或更多个识别用状态系列,所述识别用状态系列是其中观测到所述识别用的动作系列和观测值系列的状态转换发生的状态系列;并且,从一个或更多个所述识别用状态系列中选择所述当前状态系列的一个或更多个候选;
以及其中,所述确定装置:针对所述当前状态系列的一个或更多个候选中的每个候选,将从最后状态到紧靠前状态的状态转换的状态转换概率最大的动作检测为返回动作,所述最后状态是所述当前状态系列候选的最后状态,所述紧靠前状态是紧靠所述最后状态之前的状态,在所述返回动作中发生使状态返回到所述紧靠前状态的状态转换;针对所述当前状态系列的一个或更多个候选中的每个候选,为每个动作得到以所述最后状态作为转换起点的状态转换的状态转换概率之和,作为表示执行该动作的合适性的动作合适程度;针对所述当前状态系列的一个或更多个候选中的每个候选,得到其所述动作合适程度等于或大于预定阈值的动作中除所述返回动作以外的动作,作为接下来要执行的动作候选;并且,从所述接下来要执行的动作候选中确定接下来要执行的动作。
4.如权利要求1所述的信息处理设备,其中,所述确定装置根据如下策略来确定动作:增加凭其能识别所述智能体的情形的信息的策略。
5.如权利要求4所述的信息处理设备,其中,所述计算装置:以所述智能体所执行动作的动作系列、以及当执行所述动作时在所述智能体处所观测到的观测值的观测值系列作为用来识别智能体情形的识别用的动作系列和观测值系列,估算一个或更多个识别用状态系列,所述识别用状态系列是其中观测到所述识别用的动作系列和观测值系列的状态转换发生的状态系列;并且,从一个或更多个所述识别用状态系列中选择所述当前状态系列的一个或更多个候选;
以及其中,所述确定装置:针对所述当前状态系列的一个或更多个候选中的每个候选,将从最后状态到紧靠前状态的状态转换的状态转换概率最大的动作检测为接下来要执行的动作候选,所述最后状态是所述当前状态系列候选的最后状态,所述紧靠前状态是紧靠所述最后状态之前的状态;并且,从所述接下来要执行的动作候选中确定接下来要执行的动作。
6.如权利要求1所述的信息处理设备,其中,所述确定装置根据如下策略来确定动作:用于执行所述智能体在所述状态转换概率模型处得到的已知情形中的、与所述智能体的当前情形类似的已知情形中所执行动作的策略。
7.如权利要求6所述的信息处理设备,其中,所述计算装置:以所述智能体所执行动作的动作系列、以及当执行所述动作时在所述智能体处所观测到的观测值的观测值系列作为用来识别智能体情形的识别用的动作系列和观测值系列,估算一个或更多个识别用状态系列,所述识别用状态系列是其中观测到所述识别用的动作系列和观测值系列的状态转换发生的状态系列;并且,从一个或更多个所述识别用状态系列中选择出所述当前状态系列的一个或更多个候选;
以及其中,所述确定装置:针对所述当前状态系列的一个或更多个候选中的每个候选,为每个动作得到以最后状态作为转换起点的状态转换的状态转换概率之和,作为用于表示执行该动作的合适性的动作合适程度,所述最后状态是所述当前状态系列候选的最后状态;针对所述当前状态系列的一个或更多个候选中的每个候选,得到其所述动作合适程度等于或大于预定阈值的动作,作为接下来要执行的动作候选;并且,从所述接下来要执行的动作候选中确定接下来要执行的动作。
8.如权利要求1所述的信息处理设备,其中,所述确定装置从多个策略中选择用于确定动作的策略,并且根据该策略来确定动作。
9.如权利要求8所述的信息处理设备,其中,所述确定装置从如下策略中选择出用于确定动作的策略:用于增加在所述状态转换概率模型处未得到的未知情形的信息的策略,以及用于增加凭其能识别所述智能体的情形的信息的策略。
10.如权利要求9所述的信息处理设备,其中,所述确定装置基于从在所述状态转换概率模型处未得到的未知情形起逝去的时间来选择策略。
11.如权利要求9所述的信息处理设备,其中,所述确定装置基于如下内容来选择策略:在最近预定时间中的在所述状态转换概率模型处得到的已知情形的时间,或者在所述状态转换概率模型处未得到的未知情形的时间在最近预定时间中的百分比。
12.如权利要求1所述的信息处理设备,其中,所述计算装置重复以下操作:以所述智能体所执行动作的动作系列、以及当执行所述动作时在所述智能体处所观测到的观测值的观测值系列作为用来识别智能体情形的识别用的动作系列和观测值系列,估算最有可能的状态系列,所述最有可能的状态系列是其中观测到所述识别用的动作系列和观测值系列的可能性最高的状态转换发生的状态系列;并且,基于所述最有可能的状态系列,确定所述智能体的情形是在所述状态转换概率模型处得到的已知情形、还是在所述状态转换概率模型处未得到的未知情形,同时增加所述识别用的动作系列和观测值系列的系列长度,直到确定所述智能体的情形是所述未知情形为止;
所述计算装置:估算一个或更多个识别用状态系列,所述识别用状态系列是其中系列长度比当所述智能体的情形被确定为所述未知情形时的所述系列长度仅短一个样本量的所述识别用的动作系列和所述观测值系列被观测到的状态转换发生的状态系列;并且,从一个或更多个所述识别用状态系列中选择所述当前状态系列的一个或更多个候选;
以及其中,所述确定装置使用所述当前状态系列的一个或更多个候选来确定动作。
13.一种信息处理方法,包括如下步骤:
基于状态转换概率模型来计算当前状态系列候选,所述当前状态系列候选是使能够进行动作的智能体到达当前状态的状态系列,其中通过使用所述智能体所执行的动作以及当所述智能体执行动作时在所述智能体处观测到的观测值来执行对由如下内容规定的所述状态转换概率模型的学习,而得到所述状态转换概率模型:
状态将会根据能够进行动作的智能体所执行动作中的每个动作而转换的状态转换概率,以及
从所述状态将会观测到预定观测值的观测概率;以及
根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
14.一种程序,使得计算机作为:
计算装置,被配置成基于状态转换概率模型来计算当前状态系列候选,所述当前状态系列候选是使能够进行动作的智能体到达当前状态的状态系列,其中通过使用所述智能体所执行的动作以及当所述智能体执行动作时在所述智能体处观测到的观测值来执行对由如下内容规定的所述状态转换概率模型的学习,而得到所述状态转换概率模型:
状态将会根据能够进行动作的智能体所执行动作中的每个动作而转换的状态转换概率,以及
从所述状态将会观测到预定观测值的观测概率;以及
确定装置,被配置成根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
15.一种信息处理设备,包括:
计算单元,被配置成基于状态转换概率模型来计算当前状态系列候选,所述当前状态系列候选是使能够进行动作的智能体到达当前状态的状态系列,其中通过使用所述智能体所执行的动作以及当所述智能体执行动作时在所述智能体处观测到的观测值来执行对由如下内容规定的所述状态转换概率模型的学习,而得到所述状态转换概率模型:
状态将会根据能够进行动作的智能体所执行动作中的每个动作而转换的状态转换概率,以及
从所述状态将会观测到预定观测值的观测概率;以及
确定单元,被配置成根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
16.一种程序,使得计算机作为:
计算单元,被配置成基于状态转换概率模型来计算当前状态系列候选,所述当前状态系列候选是使能够进行动作的智能体到达当前状态的状态系列,其中通过使用所述智能体所执行的动作以及当所述智能体执行动作时在所述智能体处观测到的观测值来执行对由如下内容规定的所述状态转换概率模型的学习,而得到所述状态转换概率模型:
状态将会根据能够进行动作的智能体所执行动作中的每个动作而转换的状态转换概率,以及
从所述状态将会观测到预定观测值的观测概率;以及
确定单元,被配置成根据预定策略、使用所述当前状态系列候选来确定所述智能体接下来要执行的动作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009140065A JP2010287028A (ja) | 2009-06-11 | 2009-06-11 | 情報処理装置、情報処理方法、及び、プログラム |
JP2009-140065 | 2009-06-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101923662A true CN101923662A (zh) | 2010-12-22 |
CN101923662B CN101923662B (zh) | 2013-12-04 |
Family
ID=43307218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010199034XA Expired - Fee Related CN101923662B (zh) | 2009-06-11 | 2010-06-04 | 信息处理设备、信息处理方法以及程序 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20100318478A1 (zh) |
JP (1) | JP2010287028A (zh) |
CN (1) | CN101923662B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156856A (zh) * | 2015-03-31 | 2016-11-23 | 日本电气株式会社 | 用于混合模型选择的方法和装置 |
CN106612088A (zh) * | 2015-10-19 | 2017-05-03 | 发那科株式会社 | 机械学习装置及方法、校正值计算装置及马达驱动装置 |
CN106814606A (zh) * | 2015-11-27 | 2017-06-09 | 发那科株式会社 | 机械学习器、电动机控制系统以及机械学习方法 |
CN108256540A (zh) * | 2016-12-28 | 2018-07-06 | 中国移动通信有限公司研究院 | 一种信息处理方法及系统 |
CN113872924A (zh) * | 2020-06-30 | 2021-12-31 | 中国电子科技集团公司电子科学研究院 | 一种多智能体的动作决策方法、装置、设备及存储介质 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012079178A (ja) * | 2010-10-04 | 2012-04-19 | Sony Corp | データ処理装置、データ処理方法、及び、プログラム |
JP5714298B2 (ja) * | 2010-10-29 | 2015-05-07 | 株式会社キーエンス | 画像処理装置、画像処理方法および画像処理プログラム |
JP2013058059A (ja) * | 2011-09-08 | 2013-03-28 | Sony Corp | 情報処理装置、情報処理方法、及び、プログラム |
JP2013058120A (ja) | 2011-09-09 | 2013-03-28 | Sony Corp | 情報処理装置、情報処理方法、及び、プログラム |
US9283678B2 (en) * | 2014-07-16 | 2016-03-15 | Google Inc. | Virtual safety cages for robotic devices |
JP6511333B2 (ja) * | 2015-05-27 | 2019-05-15 | 株式会社日立製作所 | 意思決定支援システム及び意思決定支援方法 |
CN107256019B (zh) * | 2017-06-23 | 2018-10-19 | 杭州九阳小家电有限公司 | 一种清洁机器人的路径规划方法 |
US10474149B2 (en) * | 2017-08-18 | 2019-11-12 | GM Global Technology Operations LLC | Autonomous behavior control using policy triggering and execution |
CN109313450B (zh) * | 2017-08-25 | 2021-07-30 | 深圳市大富智慧健康科技有限公司 | 人工智能终端及其行为控制方法 |
US10676022B2 (en) | 2017-12-27 | 2020-06-09 | X Development Llc | Visually indicating vehicle caution regions |
US11616813B2 (en) * | 2018-08-31 | 2023-03-28 | Microsoft Technology Licensing, Llc | Secure exploration for reinforcement learning |
US10846594B2 (en) * | 2019-01-17 | 2020-11-24 | Capital One Services, Llc | Systems providing a learning controller utilizing indexed memory and methods thereto |
US20220083884A1 (en) * | 2019-01-28 | 2022-03-17 | Mayo Foundation For Medical Education And Research | Estimating latent reward functions from experiences |
US20200334560A1 (en) * | 2019-04-18 | 2020-10-22 | Vicarious Fpc, Inc. | Method and system for determining and using a cloned hidden markov model |
CN113110558B (zh) * | 2021-05-12 | 2022-04-08 | 南京航空航天大学 | 一种混合推进无人机需求功率预测方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1716280A (zh) * | 2004-06-29 | 2006-01-04 | 索尼株式会社 | 用光学信息进行情形识别的方法及装置 |
US20070265811A1 (en) * | 2006-05-12 | 2007-11-15 | International Business Machines Corporation | Using stochastic models to diagnose and predict complex system problems |
CN101410855A (zh) * | 2006-03-28 | 2009-04-15 | 爱丁堡大学评议会 | 用于自动表征一个或多个对象的行为的方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7689321B2 (en) * | 2004-02-13 | 2010-03-30 | Evolution Robotics, Inc. | Robust sensor fusion for mapping and localization in a simultaneous localization and mapping (SLAM) system |
US7263472B2 (en) * | 2004-06-28 | 2007-08-28 | Mitsubishi Electric Research Laboratories, Inc. | Hidden markov model based object tracking and similarity metrics |
JP4321455B2 (ja) * | 2004-06-29 | 2009-08-26 | ソニー株式会社 | 状況認識装置、システム |
US7359836B2 (en) * | 2006-01-27 | 2008-04-15 | Mitsubishi Electric Research Laboratories, Inc. | Hierarchical processing in scalable and portable sensor networks for activity recognition |
US20090180668A1 (en) * | 2007-04-11 | 2009-07-16 | Irobot Corporation | System and method for cooperative remote vehicle behavior |
US8136154B2 (en) * | 2007-05-15 | 2012-03-13 | The Penn State Foundation | Hidden markov model (“HMM”)-based user authentication using keystroke dynamics |
-
2009
- 2009-06-11 JP JP2009140065A patent/JP2010287028A/ja not_active Abandoned
-
2010
- 2010-06-01 US US12/791,240 patent/US20100318478A1/en not_active Abandoned
- 2010-06-04 CN CN201010199034XA patent/CN101923662B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1716280A (zh) * | 2004-06-29 | 2006-01-04 | 索尼株式会社 | 用光学信息进行情形识别的方法及装置 |
CN101410855A (zh) * | 2006-03-28 | 2009-04-15 | 爱丁堡大学评议会 | 用于自动表征一个或多个对象的行为的方法 |
US20070265811A1 (en) * | 2006-05-12 | 2007-11-15 | International Business Machines Corporation | Using stochastic models to diagnose and predict complex system problems |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106156856A (zh) * | 2015-03-31 | 2016-11-23 | 日本电气株式会社 | 用于混合模型选择的方法和装置 |
CN106612088A (zh) * | 2015-10-19 | 2017-05-03 | 发那科株式会社 | 机械学习装置及方法、校正值计算装置及马达驱动装置 |
CN106612088B (zh) * | 2015-10-19 | 2018-10-26 | 发那科株式会社 | 机械学习装置及方法、校正值计算装置及马达驱动装置 |
US10148211B2 (en) | 2015-10-19 | 2018-12-04 | Fanuc Corporation | Machine learning apparatus and method for learning correction value in motor current control, correction value computation apparatus including machine learning apparatus and motor driving apparatus |
CN106814606A (zh) * | 2015-11-27 | 2017-06-09 | 发那科株式会社 | 机械学习器、电动机控制系统以及机械学习方法 |
CN106814606B (zh) * | 2015-11-27 | 2018-07-24 | 发那科株式会社 | 机械学习器、电动机控制系统以及机械学习方法 |
CN108256540A (zh) * | 2016-12-28 | 2018-07-06 | 中国移动通信有限公司研究院 | 一种信息处理方法及系统 |
CN113872924A (zh) * | 2020-06-30 | 2021-12-31 | 中国电子科技集团公司电子科学研究院 | 一种多智能体的动作决策方法、装置、设备及存储介质 |
CN113872924B (zh) * | 2020-06-30 | 2023-05-02 | 中国电子科技集团公司电子科学研究院 | 一种多智能体的动作决策方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101923662B (zh) | 2013-12-04 |
JP2010287028A (ja) | 2010-12-24 |
US20100318478A1 (en) | 2010-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101923662B (zh) | 信息处理设备、信息处理方法以及程序 | |
CN101923663B (zh) | 信息处理设备、信息处理方法和程序 | |
Beck et al. | A survey of meta-reinforcement learning | |
Tuggener et al. | Automated machine learning in practice: state of the art and recent results | |
Bai et al. | A model-based reinforcement learning with adversarial training for online recommendation | |
JP5832644B2 (ja) | 殊にガスタービンまたは風力タービンのような技術システムのデータドリブンモデルを計算機支援で形成する方法 | |
Silva et al. | odNEAT: An algorithm for decentralised online evolution of robotic controllers | |
Fox et al. | Robot introspection through learned hidden markov models | |
Ma et al. | Discriminative particle filter reinforcement learning for complex partial observations | |
Whiteson et al. | Critical factors in the empirical performance of temporal difference and evolutionary methods for reinforcement learning | |
US8738555B2 (en) | Data processing device, data processing method, and program | |
JP2008538429A (ja) | ゼータ統計を用いるモデル最適化方法及びシステム | |
Akrour et al. | Local Bayesian optimization of motor skills | |
CN114387503A (zh) | 用于使用元学习初始化进行对抗性训练的方法和系统 | |
Laili et al. | Interference probability matrix for disassembly sequence planning under uncertain interference | |
US20220222493A1 (en) | Device and method to improve reinforcement learning with synthetic environment | |
Banerjee et al. | Optimal actor-critic policy with optimized training datasets | |
Steccanella et al. | Hierarchical representation learning for markov decision processes | |
Kent et al. | BOP-Elites, a Bayesian Optimisation Approach to Quality Diversity Search with Black-Box descriptor functions | |
CN115270616A (zh) | 复合材料激光打孔加工参数确定方法和装置 | |
Chatzidimitriou et al. | A neat way for evolving echo state networks | |
Wurm et al. | Improved Simultaneous Localization and Mapping using a Dual Representation of the Environment. | |
Iba et al. | GP-RVM: Genetic programing-based symbolic regression using relevance vector machine | |
Yang et al. | Towards behavior control for evolutionary robot based on RL with ENN | |
Karras et al. | AutoML with Bayesian Optimizations for Big Data Management. Information 2023, 14, 223 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131204 Termination date: 20150604 |
|
EXPY | Termination of patent right or utility model |