zoukankan      html  css  js  c++  java
  • 人工智能(七)逻辑Agent

    一、逻辑

    逻辑是一种可以从中找出结论的形式化语言。

    • 句法(规则)用语言定义句子。
    • 语义定义句子的含义。定义一个句子的真假性。



    二、蕴含
    即一个事情逻辑上是另一个事情的必然结果:KB ╞ α
    知识库KB蕴含句子α,当且仅当α在所有KB为真的世界里均为真。


    蕴含是基于语法的句子关系。


    三、命题逻辑
    • 命题逻辑是最简单的逻辑——只能表明基础的思想
    命题符号P1,P2等都是句子,则:
    如果S1是句子,那么 !S也是句子(否定)
    如果S1和S2都是句子,那么 S1 ^ S2也是句子(合取)
    如果S1和S2都是句子,那么 S1 V S2也是句子(析取)
    如果S1和S2都是句子,那么 S1 -> S2也是句子(蕴含)
    如果S1和S2都是句子,那么 S1 <-> S2也是句子(双向蕴含)



    • 命题逻辑语义

    对每个命题符号的模型均有真/假两种可能的取值,对与P1,2 , P2,2 , P3,1三个命题,可以通过枚举的形式自动地给出8个模型.







    • 逻辑的永真性和可满足性
    一个句子在某些模型中为真,则它是可满足的。
    e.g., A V B, C
    一个句子没有模型为真,则它是不可满足的。
    e.g., A ^ !A




    四、归结
    合取范式一些析取式的合取式。

    • 对与命题逻辑来说归结法是可靠的,也是完备的。




    转换规则






    五、有效的命题推理

    两个有效的命题推理算法家族:
           完备的回溯搜索算法
                 戴维斯-普特南算法DPLL(Davis, Putnam, Logemann, Loveland)
          不完全局部搜索算法
                 WalkSAT 算法



    1、戴维斯-普特南算法DPLL
    DPLL算法以合取范式形式的子句集作为输入。(反证法)
    (思想)改进真值表枚举法:
    (1)及早终止当一个子句的一个文字为真,则该子句为真。如,(A V !B)中A为真,则(A V !B)为真当一个子句为假,则该句子(合取范式)为假。
    (2)纯文字(删除)启发所谓纯文字就是在子句集里,只有一种符号的文字。如,子句集中A和B都只有一种符号,而C就有互补的文字。设纯文字为真。
    (3)单元子句启发(优先)只有一个文字的子句优先只有一个文字的子句必须为真(否则,子句集为假)趋势:使归结往目标的方向进行,无论是寻找结果还是寻找矛盾。



    2、WalkSat算法
    思想:
    对于逻辑命题,我们寻找满足每一个子句集的一个赋值。因此,设计统计未满足子句的数量的评价函数。算法采用每次反转一个符号真值的方法。
    性能:
    • 不完备:局部搜索算法。
    • 评价函数:最小冲突启发,最小不满足子句个数。
    • 在贪婪和随机中找平衡。







  • 相关阅读:
    expect简介和使用例子(转)
    openshift网络
    openstack相关
    SDN的开源方案sonic
    OpenStack Neutron ML2 Deep Dive
    2017双11技术揭秘—阿里数据库计算存储分离与离在线混布
    es的gui工具
    django orm中blank和null的区别
    断关联多表关系阐述
    视图使用
  • 原文地址:https://www.cnblogs.com/bryce1010/p/9387116.html
Copyright © 2011-2022 走看看