地图和本地搜索的最基本技术——有限状态机和动态规划
1.智能手机导航最关键的三个问题:
a.利用卫星定位
b.地址识别
c.根据用户输入的起点和终点,在地图上规划最短路径或者最快路径
2.地址分析和有限状态机
地址的识别上下文有关文法相对简单,最有效的是有限状态机:一个有限状态机是一个特殊的有向图,包括一些节点(状态)和连接这些节点的有向弧
![](https://images2015.cnblogs.com/blog/495370/201701/495370-20170116151526802-570426750.png)
如果一个地址能从状态机的起始地址,经过若干中间状态,走到最终状态,那么这条地址就是有效的
两个问题:一个建立有效的状态机,二是给定一个状态机后,地址字串的匹配算法
而在自然语言的处理中,字串的需要进行模糊匹配,这种基于概率的有限状态机和离散的马尔科夫链基本上等效
3.全球导航和动态规划(Dynamic Programming):
i.模型化:
将地图映射为加权图:两节点间距离用弧长来代替,即是权重;导航的问题即模型化为求加权图的最短路径。
ii.解决方法:
a.原理:从起点到最短路径上任一节点的距离,都是从起点到此节点的最短路径,将“寻找全程最短路线的问题,分解为寻找局部最短路线的小问题;
b.方法:
将加权图进行切分,切分好后即可寻找起点到每个切分的最短路径
4.有限状态传感器:
i.有限状态机的数学模型:
![](https://images2015.cnblogs.com/blog/495370/201701/495370-20170116151541942-626198514.png)
![](https://images2015.cnblogs.com/blog/495370/201701/495370-20170116151554817-678234944.png)
ii.在语音识别和自然语言的理解中有着非常重要的作用,特别是加权的有限状态机传感器(Weighted Finite State Transducer,简称WFST),和离散的马尔科夫链模型一致
WFST的特殊性在于:有限状态机中的每个状态由输入和输出符号定义
![](https://images2015.cnblogs.com/blog/495370/201701/495370-20170116151648021-1504401963.png)
语音识别中,每个被识别的句子都可以用一个WFST来标识:
![](https://images2015.cnblogs.com/blog/495370/201701/495370-20170116151702974-217210232.png)
WFST中的每一条路径就是一个候选句子,概率最大的句子就是识别结果,算法的原理就是动态规划