文档库 最新最全的文档下载
当前位置:文档库 › 北京科技大学计算智能实验报告四

北京科技大学计算智能实验报告四

北京科技大学计算智能实验报告四
北京科技大学计算智能实验报告四

北京科技大学实验报告

学院:自动化学院 专业:班级:

姓名: 学号: 实验日期:2018 年 6月19日 实验名称:计算智能基础实验四

实验目的:熟悉并掌握粒子群算法的原理,作用以及算法流程,使用matlab 语言编写粒子群算法求解数学问题。

实验仪器:matlab R2014a 软件

实验原理:

假设在一个D 维搜索空间中,有m 个粒子组成一粒子群,其中第i 个粒子的空间位置为123(,,,...,)1,2,...,i i i i iD X x x x x i m ==,它是优化问题的一个潜在解,将它带入优化目标函数可以计算出其相应的适应值,根据适应值可衡量i x 的优劣;第i 个粒子所经历的最好位置称为其个体历史最好位置,记为123(,,,...,)1,2,...,i i i i iD P p p p p i m ==,相应的适应值为个体最好适应值Fi ;同时,每个粒子还具有各自的飞行速度123(,,,...,)1,2,...,i i i i iD V v v v v i m ==。所有粒子经历过的位置中的最好位置称为全局历史最好位置,记为123(,,,...,)D Pg Pg Pg Pg Pg =,相应的适应值为全局历史最优适应值。在基本PSO 算法中,对第n 代粒子,其第 d 维(1≤d ≤D )元素速度、位置更新迭代如式(4-1)、(4-2):

11122()()

n n n n n n id id id id gd id v v c r p x c r p x ω+=?+???+???(4-1) 1n n n id id id x x v +=+ (4-2) 其中:ω为惯性权值;c1 和c2 都为正常数,称为加速系数;r1 和r2 是两个在[0, 1]范围内变化的随机数。第 d 维粒子元素的位置变化范围和速度变化范

围分别限制为,min ,max ,d d X X ????和,min ,max ,d d V V ????。迭代过程中,若某一维粒子元素的id X 或id V 超出边界值则令其等于边界值。

粒子群算法流程图

基本PSO算法步骤如下:

(1)粒子群初始化;

(2)根据目标函数计算各粒子适应度值,并初始化个体、全局最优值;

(3)判断是否满足终止条件,是则搜索停止,输出搜索结果;否则继续下步;

(4)根据速度、位置更新公式更新各粒子的速度和位置;

(5)根据目标函数计算各粒子适应度值;

(6)更新各粒子历史最优值以及全局最优值;

(3)跳转至步骤3。

对于终止条件,通常可以设置为适应值误差达到预设要求,或迭代次数超过最大允许迭代次数。

实验内容:

已知函数y=f(x1,x2)=x1^2+x2^2,其中-10≤x1,x2≤10,用粒子群优化算法求解y的最小值。

实验步骤:

(1)初始化,假设种群大小为3,在搜索空间中随机初始化每个解的速度和位置,计算适应度函数值,并且得到粒子的历史最优位置和群体的全局最优位置;(2)粒子的速度和位置更新,根据自身的历史最优位置和全局的最优位置,更新每个粒子的速度和位置;

(3)评估粒子的适应度函数值,更新粒子的历史最优位置和全局的最优位置;

(4)如果满足约束条件,则输出全局最优结果并结束程序,否则转向步骤2继续执行。

实验数据处理:

PSO算法程序:

clc;

Xmax=10;

Xmin=-10;

Vmax=2;

Vmin=-2;

N=200;

c1=2.0;

c2=2.0;

w=0.5;

x=rand(3,2) * (Xmax-Xmin)+Xmin;

v=rand(3,2) * (Vmax-Vmin)+Vmin;

p=x;

pBest=ones(3,1);

for i=1:3

pBest(i)=func(x(i,:));

end

g=ones(1,2);

gBest=inf;

for i=1:3

if(pBest(i)

g=p(i,:);

gBest=pBest(i);

end

end

gB=ones(1,N);

for i=1:N

for j=1:3

if (func(x(j,:))

p(j,:)=x(j,:);

pBest(j)=func(x(j,:));

end

if(pBest(j)

g=p(j,:);

gBest=pBest(j);

end

v(j,:)=w*v(j,:)+c1*rand*(p(j,:)-x(j,:))+c2*rand*(g-x(j,:)); x(j,:)=x(j,:)+v(j,:);

for k=1:2

if (v(j,k)>Vmax)||(v(j,k)< Vmin)

v(j,k)=rand * (Vmax-Vmin)+Vmin;

end

if (x(j,k)>Xmax)||(x(j,k)< Xmin)

x(j,k)=rand * (Xmax-Xmin)+Xmin;

end

end

end

gB(i)=gBest;

end ;

plot(gB)

xlabel('迭代次数');

ylabel('函数值');

title('粒子群优化算法求函数最小值')

定义目标函数:

function result=func(x)

summ=sum(x.^2);

result=summ;

实验结果与分析:

因为粒子群算法是一种随机搜索算法,所以每次的运行结果都不一样,但是最终结果都接近于最优解。通过以上的三次运行结果来看,随着迭代次数的增加,最终函数值都无限接近于0,而函数f的理想最优解恰是0,即x1和x2都为0时有最优解,实验结果与预期结果基本符合。

实验总结与心得:

通过本次的实验,我熟悉了粒子群优化算法的原理和基本的算法编写流程,通过使用matlab编写程序实现对函数f最小值的求解,粒子群算法是一种随机的,分散式的搜索算法,具有记忆性,因而每次的实验运行结果都不相同,但是最终的极限值都是0,粒子群算法容易实现,适合在连续范围内搜索,但是在编写程序时,涉及到了许多参数变量以及循环调用。本次实验我学到了许多新的内容,也深切体会到了粒子群算法的优势所在,在接下来的学习生活中我会继续加强对粒子群算法的理解与应用,提高自己的编程能力,使用粒子群算法解决更多的关于学习和生活中的实际问题。

游戏人工智能实验报告记录四

游戏人工智能实验报告记录四

————————————————————————————————作者:————————————————————————————————日期:

实验四有限状态机实验 实验报告 一、实验目的 通过蚂蚁世界实验掌握游戏中追有限状态机算法 二、实验仪器 Windows7系统 Microsoft Visual Studio2015 三、实验原理及过程 1)制作菜单 设置参数:点击会弹出对话框,设置一些参数,红、黑蚂蚁的家会在地图上标记出来 运行:设置好参数后点击运行,毒药、食物、水会在地图上随机显示 下一步:2只红蚂蚁和2只黑蚂蚁会随机出现在地图上,窗口右方还会出现红、黑蚂蚁当前数量的统计 不断按下一步,有限状态机就会不断运行,使蚁群产生变化 2)添加加速键

资源视图中下方 选择ID和键值

3)新建头文件def.h 在AntView.cpp中加入#include"def.h" 与本实验有关的数据大都是在这里定义的 int flag=0; #define kForage 1 #define kGoHome 2 #define kThirsty 3 #define kDead 4 #define kMaxEntities 200 class ai_Entity{ public: int type; int state; int row; int col; ai_Entity(); ~ai_Entity() {} void New (int theType,int theState,int theRow,int theCol); void Forage(); void GoHome(); void Thirsty(); void Dead();

智能控制理论基础实验报告

北京科技大学 智能控制理论基础实验报告 学院 专业班级 姓名 学号 指导教师 成绩 2014 年4月17日

实验一采用SIMULINK的系统仿真 一、实验目的及要求: 1.熟悉SIMULINK 工作环境及特点 2.掌握线性系统仿真常用基本模块的用法 3.掌握SIMULINK 的建模与仿真方法 二、实验内容: 1.了解SIMULINK模块库中各子模块基本功能 微分 积分 积分步长延时 状态空间模型 传递函数模型 传输延迟 可变传输延迟 零极点模型

直接查询表 函数功能块MATLAB函数 S函数(系统函数) 绝对值 点乘 增益 逻辑运算 符号函数 相加点 死区特性 手动开关 继电器特性 饱和特性 开关模块 信号分离模块 信号复合模块 输出端口 示波器模块 输出仿真数据到文件

通过实验熟悉以上模块的使用。 2. SIMULINK 的建模与仿真方法 (1)打开模块库,找出相应的模块。鼠标左键点击相应模块,拖拽到模型窗口中即可。 (2)创建子系统:当模型大而复杂时,可创建子系统。 (3)模块的封装: (4)设置仿真控制参数。 3.SIMULINK仿真实际应用 PID控制器的仿真实现。 控制对象的开环传递函数如下图: 加入PID控制器,求系统单位负反馈闭环单位阶跃响应,要求通过调节器的作用使系统满足超调量20%,上升时间3s,调节时间10s的要求。使输出曲线如下图。要求加入的PID控制器封装成一个模块使用。 三、实验报告要求: 1.针对具体实例写出上机的结果,体会其使用方法,并作出总结。

控制对象的开环传递函数如下图: 加入PID控制器,求系统单位负反馈闭环单位阶跃响应,要求通过调节器的作用使系统满足超调量20%,上升时间3s,调节时间10s的要求。使输出曲线如下图。要求加入的PID控制器封装成一个模块使用。PID如下: 图1-PID控制器仿真 设计的PID控制器参数为,P-0.3,I-0.5,D-0.4,尽可能的达到超调量20%,上升时间3s,调节时间10s的要求,仿真曲线图如下: 图2-PID控制器仿真曲线图 才实验开始的初期,我觉得这个实验过于简单,但是上手之后,我发现它是

西北工业大学数据库实验报告

1.利用图形用户界面创建,备份,删除和还原数据库和数据表(50分,每小题5分) ●数据库和表的要求(第五版教材第二章习题 6 要求的数据库) 数据库名:SPJ,其中包含四张表:S表, P表, J表, SPJ表 ●完成以下具体操作: (1)创建SPJ数据库,初始大小为 10MB,最大为50MB,数据库自动增长,增长方 式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。 数据库的逻辑文件名和物理文件名均采用默认值。 (2)在SPJ数据库中创建如图2.1-图2.4的四张表(只输入一部分数据示意即可)。 S表: P表: J表: SPJ表:

(3)备份数据库SPJ(第一种方法):备份成一个扩展名为bak的文件。(提示: 最好先删除系统默认的备份文件名,然后添加自己指定的备份文件名) (4)备份数据库SPJ(第二种方法):将SPJ数据库定义时使用的文件(扩展名为 mdf,ldf的数据文件、日志文件等)复制到其他文件夹进行备份。 原位置: 新的位置: (5)删除已经创建的工程项目表(J表)。 (6)删除SPJ数据库。(可以在系统默认的数据存储文件夹下查看此时SPJ数据 库对应的mdf,ldf文件是否存在) 删除过后文件不存在 (7)利用备份过的bak备份文件还原刚才删除的SPJ数据库。(还原数据库)

(8)利用备份过的mdf,ldf的备份文件还原刚才删除的SPJ数据库。(附加) (9)将SPJ数据库的文件大小修改为100MB。 (10)修改S表,增加一个联系电话的字段sPhoneNo,数据类型为字符串类 型。 2.利用SQL语言创建和删除数据库和数据表(50分,每小题5分) ●数据库和表的要求 数据库名:Student,其中包含三个表:S:学生基本信息表;C:课程基本信息表;SC:学生选课信息表。 ●完成以下具体操作: (1)用SQL语句创建如图2.5-图2.7要求的数据库Student,初始大小为20MB, 最大为100MB,数据库自动增长,增长方式是按10M兆字节增长;日志文件初

人工智能实验报告大全

人工智能实验报告大 全

人工智能课内实验报告 (8次) 学院:自动化学院 班级:智能1501 姓名:刘少鹏(34) 学号: 06153034 目录 课内实验1:猴子摘香蕉问题的VC编程实现 (1) 课内实验2:编程实现简单动物识别系统的知识表示 (5)

课内实验3:盲目搜索求解8数码问题 (18) 课内实验4:回溯算法求解四皇后问题 (33) 课内实验5:编程实现一字棋游戏 (37) 课内实验6:字句集消解实验 (46) 课内实验7:简单动物识别系统的产生式推理 (66) 课内实验8:编程实现D-S证据推理算法 (78)

人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现 学院:自动化学院 班级:智能1501 姓名:刘少鹏(33) 学号: 06153034 日期: 2017-3-8 10:15-12:00

实验1:猴子摘香蕉问题的VC编程实现 一、实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。 二、编程环境 VC语言 三、问题描述 房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。 图1 猴子摘香蕉问题

四、源代码 #include unsigned int i; void Monkey_Go_Box(unsigned char x, unsigned char y) { printf("Step %d:monkey从%c走到%c\n", ++i, x, y);//x表示猴子的位置,y为箱子的位置 } void Monkey_Move_Box(char x, char y) { printf("Step %d:monkey把箱子从%c运到%c\n", ++i, x, y);//x表示箱子的位置,y为香蕉的位置 } void Monkey_On_Box() { printf("Step %d:monkey爬上箱子\n", ++i); } void Monkey_Get_Banana() { printf("Step %d:monkey摘到香蕉\n", ++i); } void main() { unsigned char Monkey, Box, Banana; printf("********智能1501班**********\n"); printf("********06153034************\n"); printf("********刘少鹏**************\n"); printf("请用a b c来表示猴子箱子香蕉的位置\n"); printf("Monkey\tbox\tbanana\n"); scanf("%c", &Monkey); getchar(); printf("\t"); scanf("%c", &Box); getchar(); printf("\t\t"); scanf("%c", &Banana); getchar(); printf("\n操作步骤如下\n"); if (Monkey != Box) { Monkey_Go_Box(Monkey, Box); } if (Box != Banana)

智能控制技术实验报告

《智能控制技术》实验报告书 学院: 专业: 学号: 姓名:

实验一:模糊控制与传统PID控制的性能比较 一、实验目的 通过本实验的学习,使学生了解传统PID控制、模糊控制等基本知识,掌握传统PID控制器设计、模糊控制器设计等知识,训练学生设计控制器的能力,培养他们利用MATLAB进行仿真的技能,为今后继续模糊控制理论研究以及控制仿真等学习奠定基础。 二、实验内容 本实验主要是设计一个典型环节的传统PID控制器以及模糊控制器,并对他们的控制性能进行比较。主要涉及自控原理、计算机仿真、智能控制、模糊控制等知识。 通常的工业过程可以等效成二阶系统加上一些典型的非线性环节,如死区、饱和、纯延迟等。这里,我们假设系统为:H(s)=20e0.02s/(1.6s2+4.4s+1) 控制执行机构具有0.07的死区和0.7的饱和区,取样时间间隔T=0.01。 设计系统的模糊控制,并与传统的PID控制的性能进行比较。 三、实验原理、方法和手段 1.实验原理: 1)对典型二阶环节,根据传统PID控制,设计PID控制器,选择合适的PID 控制器参数k p、k i、k d; 2)根据模糊控制规则,编写模糊控制器。 2.实验方法和手段: 1)在PID控制仿真中,经过仔细选择,我们取k p=5,k i=0.1,k d=0.001; 2)在模糊控制仿真中,我们取k e=60,k i=0.01,k d=2.5,k u=0.8; 3)模糊控制器的输出为:u= k u×fuzzy(k e×e, k d×e’)-k i×∫edt 其中积分项用于消除控制系统的稳态误差。 4)模糊控制规则如表1-1所示: 在MATLAB程序中,Nd用于表示系统的纯延迟(Nd=t d/T),umin用于表示控制的死区电平,umax用于表示饱和电平。当Nd=0时,表示系统不存在纯延迟。 5)根据上述给定内容,编写PID控制器、模糊控制器的MATLAB仿真程序,

数据库实验报告完整

华北电力大学 实验报告 | | 实验名称数据库实验 课程名称数据库 | | 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期:2015/7/9

《数据库原理课程设计》课程设计 任务书 一、目的与要求 1.本实验是为计算机各专业的学生在学习数据库原理后,为培养更好的解决问题和实际动手能力 而设置的实践环节。通过这个环节,使学生具备应用数据库原理对数据库系统进行设计的能力。 为后继课程和毕业设计打下良好基础。 2.通过该实验,培养学生在建立数据库系统过程中使用关系数据理论的能力。 3.通过对一个数据库系统的设计,培养学生对数据库需求分析、数据库方案设计、系统编码、界 面设计和软件调试等各方面的能力。是一门考查学生数据库原理、面向对象设计方法、软件工程和信息系统分析与设计等课程的综合实验。 二、主要内容 针对一个具有实际应用场景的中小型系统(见题目附录)进行数据库设计,重点分析系统涉及的实体、实体之间的联系,实现增加、删除、更新、查询数据记录等基本操作。大致分为如下步骤: 1. 理解系统的数据库需求,分析实体及实体间联系,画出E-R图: 1)分析确定实体的属性和码,完成对该实体的实体完整性、用户自定义完整性的定义。 2)设计实体之间的联系,包括联系类型和联系的属性。最后画出完整的E-R图。 2.根据设计好的E-R图及关系数据库理论知识设计数据库模式: 1)把E-R图转换为逻辑模式; 2)规范化设计。使用关系范式理论证明所设计的关系至少属于3NF并写出证明过程;如果不属于3NF则进行模式分解,直到该关系满足3NF为止,要求写出分解过程。 3)设计关系模式间的参照完整性,要求实现级联删除和级联更新。 4)用SQL语言完成数据库内模式的设计。 3.数据库权限的设计: 1)根据系统分析,完成授权操作; 2)了解学习收回权限的操作。 4.完成用户界面的设计,对重要数据进行加密。

游戏人工智能实验报告四

实验四有限状态机实验 实验报告 一、实验目的 通过蚂蚁世界实验掌握游戏中追有限状态机算法 二、实验仪器 Windows7系统 Microsoft Visual Studio2015 三、实验原理及过程 1)制作菜单 设置参数:点击会弹出对话框,设置一些参数,红、黑蚂蚁的家会在地图上标记出来 运行:设置好参数后点击运行,毒药、食物、水会在地图上随机显示 下一步:2只红蚂蚁和2只黑蚂蚁会随机出现在地图上,窗口右方还会出现红、黑蚂蚁当前数量的统计 不断按下一步,有限状态机就会不断运行,使蚁群产生变化 2)添加加速键 资源视图中 下方

选择ID和键值 3)新建头文件def.h 在AntView.cpp中加入#include"def.h" 与本实验有关的数据大都是在这里定义的 int flag=0; #define kForage 1 #define kGoHome 2 #define kThirsty 3 #define kDead 4 #define kMaxEntities 200 class ai_Entity{ public: int type; int state; int row; int col; ai_Entity(); ~ai_Entity() {} void New (int theType,int theState,int theRow,int theCol); void Forage(); void GoHome(); void Thirsty(); void Dead(); }; ai_Entity entityList[kMaxEntities]; #define kRedAnt 1 #define kBlackAnt 2

数据库实验报告大全 广工 蔡延光版

自动化学院自动化专业班学号 姓名实验时间2011.3.14 教师评定 实验题目数据定义 实验报告一 一、实验目的与要求 目的:使用SQL语言实现数据库的创建、删除;基本表的创建、删除、更新工作;以及索引的创建、删除工作。 要求:1、在SQL SERVER 2000查询分析器中,利用SQL语言中CREATE、DROP 命令实现数据库的创建及删除工作。 2、在SQL SERVER 2000查询分析器中,利用SQL语言中CREATE、ALTER及DROP命令进行基本表的创建、更新、删除工作,并实现基本表中各类完整性约束条件的限定。 3、在SQL SERVER 2000查询分析器中,利用SQL语言中CREATE、ALTER及DROP命令进行基本表中索引的创建、更新、删除工作。 4、完成上述工作后,在SQL SERVER 2000企业管理器中,查看是否成功创建实验所要求数据库、基本表、各类完整性约束条件及索引等内容。 二、实验方案 所有实验内容必须在SQL Server 2000的查询分析器中完成,设置查询分析器的结果区为Standard Execute(标准执行)或Executed Grid(网格执行)方式.发布执行命令.并在结果区中查看查询结果,如果结果不正确则需要进行修改,直到正确为止。要求完成如下内容: 1.定义数据库 定义一个借阅数据库,要求所定义的数据库大小为1M,且数据库名称为Labery_学号。 2.定义下列数据库基本表 在所定义的借阅数据库Labery_学号中,按要求定义如下数据库表: 1)书(book)

列名别名类型及长度是否可为空书号bno char(8)否 类别category varchar(10)否 书名title varchar(40)否 出版社press varchar(30)是 年份book_year Int否 作者author char(20)是 价格price decimal(7,2)否 总藏书量book_total Int否 2)借书证(card) 列名别名类型及长度是否可为空卡号cno char(7)否 姓名name char(8)否 单位department varchar(40)是 类别type char(1)否 3)借书记录(borrow) 列名别名类型及长度是否可为空卡号cno char(7)否 书号bno char(8)否 借书日期borrow_date smalldatetime否 还书日期return_date smalldatetime是 3.完整性约束条件: 主要内容为: 1)确定各基本表的主码; 2)确定各基本表的外码; 3)要求在定义各基本表的同时,确定如下完整性约束条件 1、定义各基本表主码,并且要求主属性不能为空; 2、如果有外码,定义各基本表外码; 3、要求检查借书证中属性Type的值是否为('T','G','U','F')); 4、借书记录borrow基本表中borrow_date默认日期为当前时间。4)确定各基本表哪些字段需要建立索引。

人工智能实验报告大全

人工智能课内实验报告 (8次) 学院:自动化学院 班级:智能1501 姓名:刘少鹏(34) 学号: 06153034

目录 课内实验1:猴子摘香蕉问题的VC编程实现 (1) 课内实验2:编程实现简单动物识别系统的知识表示 (5) 课内实验3:盲目搜索求解8数码问题 (18) 课内实验4:回溯算法求解四皇后问题 (33) 课内实验5:编程实现一字棋游戏 (37) 课内实验6:字句集消解实验 (46) 课内实验7:简单动物识别系统的产生式推理 (66) 课内实验8:编程实现D-S证据推理算法 (78)

人工智能课内实验报告实验1:猴子摘香蕉问题的VC编程实现 学院:自动化学院 班级:智能1501 姓名:刘少鹏(33) 学号: 06153034 日期: 2017-3-8 10:15-12:00

实验1:猴子摘香蕉问题的VC编程实现 一、实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子——猴子摘香蕉问题的编程实现。 二、编程环境 VC语言 三、问题描述 房子里有一只猴子(即机器人),位于a处。在c处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的b处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图1所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。要求通过VC语言编程实现猴子摘香蕉问题的求解过程。 图1 猴子摘香蕉问题 四、源代码 #include unsigned int i; void Monkey_Go_Box(unsigned char x, unsigned char y) {

同济智能控制实验报告 基于BP神经网络的自整定PID控制仿真

同济大学电子与信息工程学院实验报告 姓名:学号: 学院:专业: 实验课程名称: 任课教师: 实验项目名称:基于BP神经网络的自整定PID控制仿真实验日期:

一、实验内容: 1.熟悉神经网络的特征、结构及学习算法。 2.通过实验掌握神经网络自整定PID的工作原理。 3.了解神经网络的结构对控制结果的影响。 4.掌握用MATLAB实现实现神经网络控制系统仿真的方法。 二、实验步骤及结果演示 1.实验步骤: (1)被控对象为一时变非线性对象,数学模型可表示为 式中系数a(k)是慢时变的, (2)如图5所示确定BP网络的结构,选4-5-3型的BP网络,各层加权系数的初值取区间[-0.5,0.5]上的随机数,选定学习率η=0.25和惯性系数α=0.05. (3)在MATLAB下依据整定原理编写仿真程序并调试。 (4)给定输入为阶跃信号,运行程序,记录实验数据和控制曲线。 (5)修改神经网络参数,如学习速率、隐含层神经元个数等,重复步骤(4)。 (6)分析数据和控制曲线。 图5 BP神经网络结构

2.结果展示: (1)实验代码: xite=0.25; alfa=0.02; IN=4; H=10; Out=3; wi=[ 0.4634 -0.4173 0.3190 0.4563; 0.1839 0.3021 0.1112 0.3395; -0.3182 0.0470 0.0850 -0.0722; -0.6266 0.0846 0.3751 -0.6900; -0.3224 0.1440 -0.2873 -0.0193; -0.0232 -0.0992 0.2636 0.2011; -0.4502 -0.2928 0.0062 -0.5640; -0.1975 -0.1332 0.1981 0.0422; 0.0521 0.0673 -0.5546 -0.4830; -0.6016 -0.4097 0.0338 -0.1503]; wi_1=wi;wi_2=wi;wi_3=wi; wo=[ -0.1620 0.3674 0.1959; -0.0337 -0.1563 -0.1454; 0.0898 0.7239 0.7605; 0.3349 0.7683 0.4714; 0.0215 0.5896 0.7143; -0.0914 0.4666 0.0771; 0.4270 0.2436 0.7026; 0.0215 0.4400 0.1121; 0.2566 0.2486 0.4857; 0.0198 0.4970 0.6450 ]'; wo_1=wo;wo_2=wo;wo_3=wo; x=[0,0,0]; u_1=0;u_2=0;u_3=0;u_4=0;u_5=0; y_1=0;y_2=0;y_3=0; oh=zeros(H,1); I=oh; error_2=0; error_1=0; ts=0.001; for k=1:1:6000 time(k)=k*ts; rin(k)=1; a(k)=1.2*(1-0.8*exp(-0.1*k));

数据库实验报告

数据库实验报告 集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)

课程名称:数据库原理与应用 实验内容:数据库安全性管理 作者所在系部:网络工程系 作者所在专业:网络工程 作者所在班级: B13521 作者姓名:李文阳 作者学号: 指导教师姓名:王振夺 北华航天工业学院教务处制 实验四数据库安全性管理 一、实验目的 1、理解数据库的安全性机制; 2、掌握SQL Server 2005的验证模式、登录管理、用户管理、角色 管理以及权限管理; 二、实验内容 (一)附加上次实验所创建的数据库“db_Library”,并回顾该库的数据表信息。 (二)设置SQL Server的安全验证模式,并以两种方式尝试登录。

(三)登录账户管理 1、以管理员身份登录SQL Server,修改sa的密码。 2、使用SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。 3、使用SQL语句来修改上述登录账户的密码。 4、禁用上述登录账户连接SQL Server,并进行验证。 (四)数据库用户管理 1、使用SQL语句添加db_Library数据库用户User2,其登录账户为上题所创建的SQL Server登录账户,使用默认dbo架构,并赋予该用户能够运行Select语句的权限。 (五)权限管理 1、使用SSMS将创建数据表和创建视图的权限授予User2。 2、使用SQL语句将对db_Library数据库中图书信息表的查询、插入、以及对书名和作者列的修改权限授予用户User2。 3、使用SSMS收回User2创建数据表和创建视图的权限。 4、使用SQL语句收回User2修改书名和作者列的权限。 (六)删除上述所建立的数据库用户以及登录账户。 三、实验步骤 主要实现的SQL语句。 使用T-SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。

人工智能实验报告

实验报告 1.对CLIPS和其运行及推理机制进行介绍 CLIPS是一个基于前向推理语言,用标准C语言编写。它具有高移植性、高扩展性、 强大的知识表达能力和编程方式以及低成本等特点。 CLIPS由两部分组成:知识库、推理机。它的基本语法是: (defmodule< module-n ame >[< comme nt >]) CLIPS的基本结构: (1).知识库由事实库(初始事实+初始对象实例)和规则库组成。 事实库: 表示已知的数据或信息,用deftemplat,deffact定义初始事实表FACTLIS,由关系名、后跟 零个或多个槽以及它们的相关值组成,其格式如下: 模板: (deftemplate [] *) :: = | 事实: (deffacts [] *) 当CLIPS系统启动推理时,会把所有用deffact定义的事实自动添加到工作存储器中。常用命令如下:asser:把事实添加到事实库(工作存储器)中retract:删除指定事实 modify :修改自定义模板事实的槽值duplicate :复制事实 clear:删除所有事实 规则库 表示系统推理的有关知识,用defrule命令来定义,由规则头、后跟零个或多个条件元素以 及行为列表组成,其格式如下: (defrule [] * ; =>

浙工大过程控制实验报告

浙工大过程控制实验报告 202103120423徐天宇过程控制系统实验报告 实验一:系统认识及对象特性测试 一实验目的 1了解实验装置结构和组成及组态软件的组成使用。 2 熟悉智能仪表的使用及实验装置和软件的操作。 3熟悉单容液位过程的数学模型及阶跃响应曲线的实验方法。 4学会有实际测的得单容液位过程的阶跃响应曲线,用相关的方法分别确定它们的参数,辨识过程的数学模型。二实验内容 1 熟悉用MCGS组态的智能仪表过程控制系统。 2 用阶跃响应曲线测定单容液位过程的数学模型。三实验设备 1 AE2000B型过程控制实验装置。 2 计算机,万用表各一台。 3 RS232-485转换器1只,串口线1根,实验连接线若干。四实验原理 如图1-1所示,设水箱的进水量为Q1,出水量为Q2,水箱的液面高度为h,出水阀V2固定于某一开度值。根据物料动态平衡的关系,求得: 在零初始条件下,对上式求拉氏变换,得:

式中,T为水箱的时间常数(注意:阀V2的开度大小会影响到水箱的时间常数),T=R2*C,K=R2为单容对象的放大倍数, R1、R2分别为V1、V2阀的液阻,C 为水箱的容量系数。 阶跃响应曲线法是指通过调节过程的调节阀,使过程的控制输入产生一个阶跃变化,将被控量随时间变化的阶跃响应曲线记录下来,再根据测试记录的响应曲线求取输入输出之间的数学模型。本实验中输入为电动调节阀的开度给定值OP,通过改变电动调节阀的开度给定单容过程以阶跃变化的信号,输出为上水箱的液位高度h。电动调节阀的开度op通过组态软件界面有计算机传给智能仪表,有智能仪表输出范围为:0~100%。水箱液位高度有由传感变送器检测转换为4~20mA的标准信号,在经过智能仪表将该信号上传到计算机的组态中,由组态直接换算成高度值,在计算机窗口中显示。因此,单容液位被控对象的传递函数,是包含了由执行结构到检测装置的所有液位单回路物理关系模型有上述机理建模可知,单容液位过程是带有时滞性的一阶惯性环节,电动调节阀的开度op,近似看成与流量Q1成正比,当电动调节阀的开度op为一常量作为阶跃信号时,该单容液位过程的阶跃响应为 需要说明的是表达式(2-3)是初始量为零的情况,如果是在一个稳定的过程下进行的阶跃响应,即输入量是在原来的基础上叠加上op的变化,则输出表达式是对应原来输出值得基础上的增

数据库实验报告范本

数据库实验报告

第一章系统概述 该物流管理系统是对物流公司业务的统一信息化管理,提供在线服务。订单模块实现了业务订单的新增,查询,修改,删除等功能。用户可以以会员身份或者游客身份登陆公司进行网上下单,当完成订单之后可根据系统提供的订单号进行订单状态的查询。公司员工需要对订单审核确认,进行删改查等管理操作。 该系统是B\S结构,运用MVC模式基于J2EE平台开发的,使用Oracle 数据库。我负责的是订单模块的需求分析,系统设计,数据库设计,编码和测试。 该系统所使用的开发工具有:MyEclipse,Tomcat, Rational Rose ,PowerDesigner,PL/SQL等。 第二章系统设计 2.1订单模块功能设计 1.网上下单 本系统是BS结构的WEB系统,我们通过在线方式新增订单。 2.订单审核 因为是物流系统,在网上下单之后,顾客需要将货物送至配送点,经过工作人员审核,才能最后完成一份订单。 3.订单查询 查询功能支持模糊查询,多条件查询。可以满足顾客及工作人员的需要。

4.订单管理 管理功能包括:查看明细,修改,删除。 2.2业务逻辑设计 类图如下所示(本部分不是此次作业重点,这里不再过叙述类图的设计): 第三章数据库设计 3.1 概念模型 本系统模块包含的实体有:订单基本表,订单信息表,订单状态表,货物表,交接单,配送点。 1.各实体ER图如下图3-1到图3-6所示。

图3-1订单基本表实体E-R图 图3-2订单信息表实体E-R图

图3-3订单状态表实体E-R图 图3-4 货物表实体E-R图 图3-5 交接单实体E-R图

人工智能遗传算法实验报告

人工智能实验报告 学号: 姓名: 实验名称:遗传算法 实验日期:2016.1.5

【实验名称】遗传算法 【实验目的】 掌握遗传算法的基本原理,熟悉遗传算法的运行机制,学会用遗传算法来求解问题。 【实验原理】 遗传算法( Genetic Algorithm )是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。 遗传算法是从代表问题可能潜在的解集的一个种群开始的,而一个种群则由经过基因编码的一定数目的个体组成。每个个体实际上是染色体带有特征的实体。在一开始需要实现从表现型到基因型的映射即编码工作。由于仿照基因编码的工作很复杂,我们往往进行简化, 如二进制编码,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代演化产生出越来 越好的近似解,在每一代,根据问题域中个体的适应度大小选择个体,并借助于自然遗传学 的遗传算子进行组合交叉和变异,产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码,可以作为问题近似最优解。 遗传算法程度流程图为:

【实验名称】遗传算法 【实验目的】 掌握遗传算法的基本原理,熟悉遗传算法的运行机制,学会用遗传算法来求解问题。 【实验原理】 遗传算法( Genetic Algorithm )是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。 遗传算法是从代表问题可能潜在的解集的一个种群开始的,而一个种群则由经过基因编码的一定数目的个体组成。每个个体实际上是染色体带有特征的实体。在一开始需要实现从表现型到基因型的映射即编码工作。由于仿照基因编码的工作很复杂,我们往往进行简化, 如二进制编码,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代演化产生出越来 越好的近似解,在每一代,根据问题域中个体的适应度大小选择个体,并借助于自然遗传学 的遗传算子进行组合交叉和变异,产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码,可以作为问题近似最优解。 遗传算法程度流程图为:

(完整word版)数据库实验报告8

. 西安科技大学 《数据库原理及应用》课程设计报告 题目:寄宿学校管理信息系统的设计与实现 学院:计算机科学与技术学院 专业及班级:软件工程1202及1203班 学号:1208010206 1208010207 1208010303 姓名:李倩魏楠楠王青枝 日期:2014年7月9日

目录 1课程设计目的及意义 (2) 2设计内容及人员分工 (2) 3 需求分析 (2) 3.1 需求陈述 (2) 3.2 功能需求 (2) 3.3 数据需求 (3) 3.4 其它需求 (3) 4 数据库设计 (3) 4.1概念结构设计 (3) 4.2逻辑结构设计 (4) 4.3数据表结构设计 (4) 5 系统功能设计 (6) 6 系统实现 6.1 开发环境 (7) 6.2 数据库的创建与连接技术 (7) 4.3 主要功能的运行结果及代码 (9)

7 总结 (13) 参考文献 (13) 1、课程设计的目的和意义 课程设计目的:通过本课程设计,培养学生具有C/S模式的数据库应用软件系统的 设计和开发能力;熟练掌握SQL Server数据库的使用,熟练掌握使用VC、VB或其它开发工具开发数据库应用的能力;为毕业设计打下坚实的基础。学生根据所学的数据库原理与程序设计的知识, 通过对一个实际问题的分析,设计与实现,将原理与应用相结合,使学生学会如何把书本上学到的知识用于解决实际问题,培养学生的动手能力;另一方面,使学生能深入理解和灵活掌握教学内容。 课程设计的意义:通过对这个系统的设计,让我们更加熟悉SQL Sever 2008的相关操 作,也巩固了这学期学习的数据库的一些知识,让我们更懂得数据库的重要性无论是在生活中,还是在软件的设计和制作过程中。让我们学会了数据库的设计,经历了数据库设计的几个阶段,比如需求分析,概念结构设计,逻辑结构的设计,都让我们努力的去想,去做,懂得数据库的优化,想想怎么做才是最好的。做出一个比较满意的数据库设计。 2、设计内容及人员分工 魏楠楠:数据库的需求分析,概念设计 王青枝:数据库逻辑设计,表结构设计 李倩:数据库触发器创建实现 3、需求分析 3.1 需求陈述: 某寄宿学校需要开发一个信息管理系统,通过该管理系统可以对学生的日常事务进行管理: 校长助理:可以对学生的档案进行管理,可以进行新增、删除、查询、修改等操作。 财务人员:进行每月的收费和退费工作,每个学生的每月费用包括住宿费,伙食费220,在6-8月收取空调费20,在11-2月收取取暖费20,每个学期的开学初(3月、9月)收取书本费(不定)。住宿费分三种情况:双职工的子女为60,单职工的子女80元,父母均不在本单位工作为100元。每个班的老师在每天要申报本班学生的出勤表,由校长助理完成

数据库实验报告资料

《数据库系统概论》 实验报告 学院:数学与计算机科学/软件学院专业:软件工程(3) 小组成员: 姓名:学号: 姓名:学号: 姓名:学号:

题目:《SQL语言参考大全》实验4 姓名:陈建儿学号:221200305 日期:2014年4月25号 实验目的:学会创建数据库,以及对表的插入,删除,修改等操作。实验内容完成情况: 04.01题目:create database mrgwh--使用create database 命令创建一个名称是“mrgwh”的数据库 执行结果: 04.05题目:alter database db_mrsql add filegroup happy 执行结果: 04.13题目:use db_mrsql --使用db_mrsql数据库 create table teacher --创建“teacher”信息表 (教师编号int, 教师姓名varchar(10), 教师年龄int, 所教课程varchar(30) )

04.14题目:use db_mrsql create table shopping ( 商品编号int primary key, --使用primary key将“商品编号”字段设置为主键列 商品类别varchar(10), 商品数量int, 商品备注text ) 执行结果: 04.15:use db_mrsql --使用db_mrsql数据库 create table pupil --创建tb_pupil04数据表 ( 学生学号varchar(8), 学生姓名varchar(10) unique,--定义了具有唯一值(unique)的“学生姓名”列 --创建一个检验约束(check)检验“学生年龄”列的值是否在8到15之间 学生年龄int check(学生年龄>=8 and 学生年龄<=15), 学生性别int, 备注text ) 执行结果: 04.16题目:use db_mrsql --使用db_mrsql数据库

人工智能实验报告

人工智能课程项目报告 姓名: 班级:二班

一、实验背景 在新的时代背景下,人工智能这一重要的计算机学科分支,焕发出了他强大的生命力。不仅仅为了完成课程设计,作为计算机专业的学生, 了解他,学习他我认为都是很有必要的。 二、实验目的 识别手写字体0~9 三、实验原理 用K-最近邻算法对数据进行分类。逻辑回归算法(仅分类0和1)四、实验内容 使用knn算法: 1.创建一个1024列矩阵载入训练集每一行存一个训练集 2. 把测试集中的一个文件转化为一个1024列的矩阵。 3.使用knnClassify()进行测试 4.依据k的值,得出结果 使用逻辑回归: 1.创建一个1024列矩阵载入训练集每一行存一个训练集 2. 把测试集中的一个文件转化为一个1024列的矩阵。 3. 使用上式求参数。步长0.07,迭代10次 4.使用参数以及逻辑回归函数对测试数据处理,根据结果判断测试数 据类型。 五、实验结果与分析 5.1 实验环境与工具 Window7旗舰版+ python2.7.10 + numpy(库)+ notepad++(编辑)

Python这一语言的发展是非常迅速的,既然他支持在window下运行就不必去搞虚拟机。 5.2 实验数据集与参数设置 Knn算法: 训练数据1934个,测试数据有946个。

数据包括数字0-9的手写体。每个数字大约有200个样本。 每个样本保持在一个txt文件中。手写体图像本身的大小是32x32的二值图,转换到txt文件保存后,内容也是32x32个数字,0或者1,如下图所 示 建立一个kNN.py脚本文件,文件里面包含三个函数,一个用来生成将每个样本的txt文件转换为对应的一个向量:img2vector(filename):,一个用 来加载整个数据库loadDataSet():,最后就是实现测试。

2020年智能控制实验报告

智能控制实验报告 姓名 学院 专业自动化班级 学号 指导教师 成绩 2019 年 12 月 25 日 实验一 模糊控制在角度随动系统中的应用一、实验目的与意义学习 Matlab 中建立模糊控制器的方法;了解模糊控制在角度随动系统中的 应用。 二、实验内容在 Matlab 中建立模糊控制器,将生成的模糊规则表插入程序代码中,交叉 编译代码,下载到目标版中进行测试。 1 、Matlab 文本模式建立模糊控制器(必做) 2 、利用 Matlab 模糊逻辑工具箱建立模糊控制器(选做) 3 、模糊控制器 Simulink 仿真(必做) 4 、嵌入式程序交叉编译(选做) 三、实验结果 1 、matlab 文本模式建立模糊控制器 %Fuzzy Controller Design clear all; close all; %新建 FIS a=newfis("myfuzzy"); %输入e,范围[-48,48],7 个模糊语言,NB,NM,NS,Z,PS,PM,PB

a=addvar(a,"input","e",[-48 48]); %Parameter e a=addmf(a,"input",1,"NB","trimf",[-48 -36 -24]); a=addmf(a,"input",1,"NM","trimf",[-36 -24 -12]); a=addmf(a,"input",1,"NS","trimf",[-24 -12 0]); a=addmf(a,"input",1,"Z","trimf",[-12 0 12]); a=addmf(a,"input",1,"PS","trimf",[0 12 24]); a=addmf(a,"input",1,"PM","trimf",[12 24 36]); a=addmf(a,"input",1,"PB","trimf",[24 36 48]); %输入ec,范围[-64,64],7 个模糊语言,NB,NM,NS,Z,PS,PM,PB a=addvar(a,"input","ec",[-64 64]); %Parameter ec a=addmf(a,"input",2,"NB","trimf",[-64 -48 -32]); a=addmf(a,"input",2,"NM","trimf",[-48 -32 -16]); a=addmf(a,"input",2,"NS","trimf",[-32 -16 0]); a=addmf(a,"input",2,"Z","trimf",[-16 0 16]); a=addmf(a,"input",2,"PS","trimf",[0 16 32]); a=addmf(a,"input",2,"PM","trimf",[16 32 48]); a=addmf(a,"input",2,"PB","trimf",[32 48 64]); %输出u,范围[-90,90],7 个模糊语言,NB,NM,NS,Z,PS,PM,PB a=addvar(a,"output","u",[-90 90]); %Parameter u a=addmf(a,"output",1,"NB","trimf",[-90 -65 -45]); a=addmf(a,"output",1,"NM","trimf",[-65 -45 -25]); a=addmf(a,"output",1,"NS","trimf",[-45 -25 0]); a=addmf(a,"output",1,"Z","trimf",[-25 0 25]); a=addmf(a,"output",1,"PS","trimf",[0 25 45]); a=addmf(a,"output",1,"PM","trimf",[25 45 65]); a=addmf(a,"output",1,"PB","trimf",[45 65 90]); %模糊规则表,7*7=49 行,5 列 rulelist=[1 1 1 1 1; 1 2 1 1 1; 1 3 1 1 1; 1 4 2 1 1; 1 5 2 1 1; 1 6 3 1 1; 1 7 4 1 1;

相关文档