• 人工智能理论实践的结合
  • 2013/01/02 09:16
  • 序言:
    哲学及其他所有学科的认识都建立在智能上.即其复杂的认知学习能力.于是,我们追求本原欲突破极限再造智能,谓之曰人工智能.
    对象:

    智能搭建的前提(欲望)
    智能体数据类型(数据结构)
    遍历数据库的相关算法
    自然语言处理(NLP)
    汉语语法归纳
    模型建立
    解析
    自编程
    机器学习

    实践:
    一.智能的本质
    未出生的小孩虽然没有智慧却有智能,他能从身边的事物中学到并形成认知记忆,后来通过记忆形成条件反射.因此,我们说:
    智能的基础是记忆,智能的本质就是超复杂的条件反射.
    按照生物角度,反射分为条件反射和非条件反射,条件反射为后天形成.非条件反射为先天遗传,也就是说非条件反射是人体大脑无法察觉的机械运动.我们的人工智能设置一怎样一个机械运动是十分重要的.
    1.非条件反射活动设置
    一个智能体的本能:求生,欲望(七情六欲)[心理本能]
    在计算机中,这些本能只能用数值表示,通过对人的究底,我们得出一个计算公式:
    Q=e+k+w
    Q为求生欲,e为心情,k为知识程度,w为世界观.Q无上线,越大则求生欲越强,越小意志越低沉直至触发自身关机.
    世界观是一个大的结构体,里面包括如下成员:
    金钱观,社会观,亲情观,爱情观,责任观,是非观[价值观].
    和以往不同的是,这些成员也都是结构体,它包括一个值(Value)和一个描述(description).描述是为了在反馈信息时调用,因为:
    意识就是系统将信息指向自身的过程和结果.
    例:
    //金钱观结构体
    struct SenseOfWorth{
    int values;
    char description;};
    //社会观结构体
    struct SocialValues{
    int values;
    char description;};
    //各个子集集合的大的世界观结构体(只做2个示例)
    struct ViewOfWorld{
    struct SenseOfWorth;//金钱观
    struct SocialValues;//社会观
    };

    初始值全部为0,褒义时越大越好,贬义时越小越好.

    七情六欲结构体(基本感受和自我感受)
    #define STRMAX 10000000000
    #define OBJNUM 10000 //对象了解程序序列最大上限(暂定)
    struct SelfCondition{ //自身状态
    int havehandled; //已处理对象数
    int ishanding; //正在处理的对象数
    int hd_one; //单个对象已完成行动数
    int hd_condition; //完成程度
    int hd_total; //完成行动数
    int hd_dif; //总完成行动难度
    int id_dif; //正在执行的行动难度
    int wait_dif; //等待执行的行动的难度
    int wait_num; //等待行动的个数
    int selfmood; //自身的情绪指数
    int rea; //与处理对象的关系 数字越大越好
    int rea_feeling; //对处理关系的好感度
    int rea_spe; //特殊属性
    int obj_rea; //与涉及对象的位从关系
    int obj_feeling; //对涉及对象的好感度
    int obj_spe; //对象特殊属性
    int objs;}; //对各类对象的了解程度
    struct SubCondition{ //外界环境
    char nowtime; //所处时间点/时间段
    char obj_postion; //交流对象所在地理位置
    char obj_tempo; //当地气候状况
    char obj_p_fes; //所处节日时令
    char obj_p_cus; //对应习俗
    int self_know_sub; //程序自身对环境的了解程度
    int obj_know_sub; //对象对环境的了解程度
    int obj_know_self; //对象对程序的认知程度
    int obj_self_feeling; //对象(用户)对程序的好感
    int obj_self_hate; //对象(用户)对程序的敌对表现
    char obj_know_team[OBJNUM]; //对象之间的了解程度序列
    char obj_eachother_feeling[OBJNUM][OBJNUM]; //对象之间的相互看法——好感度 1维代表用户 二维代表看法
    char obj_eachother_rea[OBJNUM][OBJNUM]; //对象之间的身份位置关系 1维代表用户 二维代表看法
    char obj_love_show; //各种对象的偏好表现程度
    char obj_each_con; //各种对象的状态指数(情绪)
    char obj_comments; //交流对象对程序的整体评价水平
    char other_wpe;}; //其他外界环境的特殊属性
    struct BasicCondition{ //基本状态元素
    int delight; //愉悦指数
    int sadness; //伤感指数
    int active; //活跃指数
    int sleepy; //休眠指数
    int annoyed; //愤怒指数
    int calm; //冷静指数
    int frinendly; //友好指数
    int hateful; //敌意指数
    int find; //探索指数
    int escape; //退避指数
    int sure; //肯定指数
    int deny; //否定指数
    int sccept; //接受指数
    int change; //变化指数
    int show; //表现指数
    int timely;}; //时间指数
    struct BasicImpression{
    int faimp; //实际情绪模式
    int soimp; //表现情绪模式
    int realevel; //友好关系水平
    int valble; //有益性价值
    int dangerous; //危险性指数
    int way; //用途性价值
    int socialrel; //射秽身份水平
    int farel; //实际关系水平
    int filetotal; //总体资料完整度
    int havetalkedtime; //已交流时间
    int resttime; //剩余可交流时间
    int envsamediff;}; //所处环境异同指数

    一个自反馈的示例:
    // 自反馈程序.cpp : Defines the entry point for the console application.
    //输入->输出
    #include \"stdafx.h\"
    #include
    #include \"stdlib.h\"
    #define MAX 10
    #define EXPRESSIONS_MAX 8
    using namespace std;
    struct input{
    int ans[MAX];//ans保存答案
    char des[EXPRESSIONS_MAX];};//des保存算数表达式
    int _tmain(int argc, _TCHAR* argv[])
    {
    struct input ip;int i=0;
    const char *dp = \"+\";//定义字符串分隔符
    const char *de = \"=\";//定义字符串分隔符
    char *p;
    cout<<\"Please input 10 numbers:\"< while(i<10){
    cin>>ip.ans[i];
    i+=1;}
    cout<<\"Please input an expression:\"< cin>>ip.des;
    p = strtok(ip.des,dp);
    while(p){
    cout<<\"EXPLAINING...\"< cout< p=strtok(NULL,de);
    while(p){
    cout< p=strtok(NULL,de);
    }
    p=strtok(NULL,dp);
    }
    system(\"pause\");
    return 0;
    }

  • 人工智能C/C++