人工智能基础复习1——人工智能概述

01 Intro

课程大纲

- 第一部分:人工智能概述/Introduction and Agents(chapters 1,2)
- 第二部分:问题求解/Search(chapters 3,4,5,6)
- 第三部分:知识与推理/Logic(chapters 7,8,9,10)
- 第四部分:不肯定知识与推理/Uncertainty(chapters 13-17)
- 第五部分:学习/Learning(chapters 18-21)

概论
- 什么是AI
- AI的历史
- AI的现状

什么是AI
- 像人同样思考:认知模型
- 合理地思考:思想的准则,逻辑系统倾向于在不肯定性存在的状况下作错误的事情
- 像人同样行动:图灵测试,知识,推理,语言理解,学习
- 合理地行动:合理Agent

Agent是可以感知和行动的一个实体。本课程就是有关如何设计合理Agent(rational agent)的
抽象地说,一个Agent就是从感知历史到行动的一个函数:[ f: P*→A ]
在任何给定的环境和任务下,咱们寻求性能最优的Agent

AI前史
哲学:逻辑、推理方法、头脑做为学习的物理系统基础、语言、合理性
数学:形式化表示和算法证实、计算、(不)可决定性、(不)易处理性、可能性
经济学:效用、决策理论
神经科学:脑活动的物理底层
心理学:感知和运动神经的控制现象、实验性技术
计算机工程:建造高效的计算机
控制论:设计能随时最大化目标函数(objective function)的系统
语言学:知识表示、语法

AI历史
The gestation of AI 孕育期 (-1956)
Reasoning methods 注重推理时期 (1956-1975)
Knowledge-based system 知识运用时期 (1976-1988)
Integration 集成运用 (1989-present)

The Gestation of AI
古希腊Aristotle(亚里士多德BC 384-322),给出形式逻辑的基本规律Syllogism(三段论)
英国Bacon(培根1561-1626),系统地给出Induction(概括法)
德国Leibnitz(莱布尼茨1646-1716)提出Symbolic Logic(数理逻辑)
英国Boole(布尔1815-1864)提出Boolean Algebra(布尔代数)系统,实现了思惟符号化和数学化
1936英国Turing(图灵,1912-1954):理想计算机模型Turing Machine(图灵机)
1946美国Mauchly(莫克利),Eckert(埃克特):ENIAC
1948美国Shannon(香农):Information Theory(消息论)
1950 Turing Test图灵测试

The Birth of AI(1956)
John McCarthy于1956年夏天在达特茅斯组织了一个为期两个月的研讨会,参与会议的十我的是:MaCarthy,Minsky,Rochester,Shannon,Moore,Samuel,Selfridge,Solomonff,Simon,Newell
会议中互相介绍了全部主要的人物,并采用了Artificial Intelligence做为领域的名称

AI简史
1943——McCulloch&Pitts:大脑的布尔电路模型
1950——Turing的计算机器和智能
1956——Dartmouth会议,AI这个名词获得采纳
1952-69——Look,Ma,no hands!
1950s——早期的AI程序,包括Samuel的西洋跳棋程序、Newell&Simon的逻辑理论、Gelernter的几何发动机
1965——Robinson的关于逻辑推理的完备性算法
1966-73——AI发现的计算复杂性、神经网络研究几乎消失
1969-79——基于知识系统的早期发展
1980-- ——AI开始成为一项产业
1986-- ——神经网络从新获得普及
1987-- ——AI开始成为一项科学
1995-- ——智能Agent开始出现

今日的AI
大多数是关于特定工程领域的解决方案,而非创造常规理论
表示信息和解决特定任务的工具:神经网络、隐马尔科夫模型、贝叶斯网络、启发式搜索、逻辑…
AI没有什么magic,就是关于表示、优化、可能性和算法的科学

有名的AI应用
专家系统(有机化学、医学、地质学、计算机配置)、语音识别、手写识别、游戏(象棋、西洋跳棋、围棋)、机器人(自动车、乒乓球玩家、本田机器人)、自动理论证实、网络搜索引擎、天然语言理解(机器翻译,谷歌)、物流调度(军事-人力、货物、交通)、巡航导弹、微软回答向导

02 Agents

Agent经过传感器感知环境并经过执行器对所处环境产生影响
包括人类、机器人、软件机器人、自动调温器等
人类Agent:眼睛、耳朵和其余器官等传感器,手、腿、嘴等做为执行器
机器Agent:摄像头、红外测距仪做为传感器,各类马达做为执行器

Agent和环境
Agent函数从感知历史映射到行动上: [f: P*→A ],Agent程序运行在物理结构上来产生f,agent = architecture + program
吸尘器的例子:感知:位置和状态:如[A.Dirty];行为:Left, Right, Suck, NoOp
function Reflex-Vacuum-Agent([location,status]) returns an action
    if status = Dirty then return Suck
    else if location = A then return Right
    else if location = B then return Left

理性Agent
作事正确的Agent,基于它所能感知的和所能执行的行动,所谓正确的行动,就是能让Agent更成功
性能度量:衡量一个Agent的成功行为的一项客观标准
例如,吸尘器Agent的性能度量多是:清除的灰尘数量、所花费的时间多少、所消耗的电量多少、所产生的噪音大小
理性智能体:对于每个可能的感知序列,理性智能体应该基于已知的感知序列提供的信息,和智能体已有的先验知识,选择可以使它的性能度量最大化的行为
理性(Rationality)不一样于全知(omniscience)
为修改将来的感知信息而采起行动——信息收集
理性智能体应该可以尽量地学习,以弥补不全面或不正确的先验知识
Rational ≠ omniscient(全知的)≠ clairvoyant(洞察力)=> rantional ≠ successful;Rational => exploration, learning, autonomy

PEAS
Performance measure(性能度量)、Environment(环境)、Actuators(执行器)、Sensors(传感器)
例子1:自动驾驶出租车
P:安全性、目的、收益、合法性、温馨性...
E:街道/高速公路、交通、行人、天气...
A:方向盘、加速器、刹车、喇叭、扬声器/显示器...
S:录像机、加速计、燃油表、引擎传感器、键盘、GPS...
例子2:网购Agent
P:价格、质量、适用性、效率
E:当前和将来的WWW网站、卖方、托运商
A:向用户展现商品、跟踪URL地址、填写表单
S:HTML网页(文本、图表、脚本)

环境的类型
彻底可观察的(vs.部分可观察的):Agent的传感器在每一个时间点上都能获取环境的完整状态
肯定的(vs.随机的):环境的下一个状态彻底取决于当前状态和Agent执行的动做
片断式的(vs.延续式的):Agent的经历被分红了一个个原子片断,在每一个片断中Agent感知信息并完成单个行动,下一个片断不依赖于之前的片断中采起的动做(如装配线上检测次品零件的机器人只须要把每次决策创建在当前零件基础上,不用考虑之前的决策)
静态的(vs.动态的):Agent计算时环境不变(若是环境不变可是Agent性能评价随时间变化,称为半动态的)
离散的(vs.连续的):数目上有限的确切定义的感知和行动
单Agent(vs.多Agent):在环境中独立运行的Agent
举例:
Chess with a clock:彻底可观察的、肯定的、延续式的、半动态的、离散的、多Agent的
Chess without a clock:彻底可观察的、肯定的、延续式的、静态的、离散的、多Agent的
出租车驾驶:部分可观察的、随机的、延续式的、动态的、连续的、多Agent的
真实世界是部分可观察的、随机的、延续式的、动态的、连续的、多Agent的

Agent函数和程序
Agent函数是理性的
目标:找到实现理性Agent函数的简单方式
Table-lookup agent
\input{algorithms / table-agent-algorithm}
缺点:表太大、建表时间长、不自主、学习时间长
Agent类型:均能转变为学习Agent
4种基本Agent程序:简单反射Agent、基于模型的反射Agent、基于目标的Agent、基于效用的Agent

归纳
Agent经过执行器和传感器与环境交互
Agent函数描述了Agent在什么状况下作什么事
性能度量评估环境序列
一个彻底理性的Agent最大限度提升预期性能
Agent程序实现(一些)Agent函数
PEAS描述定义了任务环境
环境分为几个方面:可观察的?肯定的?片断的?静态的?离散的?单一Agent的?
几种基本的Agent结构:reflex,reflex with state,goal-based,utility-based