NetLogo学习笔记
第二章 小球宇宙:认识NetLogo
1、进入官网,下载并安装好NetLogo
官网地址:http://ccl.northwestern.edu/netlogo/
2、小球宇宙描述:
1、在一个桌面上,一大堆小球飞快运动又撞来撞去
2、假设小球之间没有相互作用,当它们相遇时会穿越过去
3、不考虑小球和桌面之间的摩擦力,小球始终保持匀速直线运动
4、假设这个宇宙是循环的
5、就像一堆小球星体保持自己的速度遨游在一个浩瀚的宇宙内
3、搭建宇宙框架
1、基本介绍
左上方有界面、信息、代码
界面——现在使用的界面
信息——用于写说明文档
代码——用于编写程序
turtle:Netlogo语言灵感来源于乐高玩具,早期乐高机器人的形状像一个海龟,因此就把智能主体(agent)命名为turtle
2、小球宇宙初始化
点击 ”添加“(注意右侧下拉框,应选择”按钮“)—>命令框输入 setup—>点击”确定“——此时setup是红色,表示没有任何功能
3、创建小球
A、点击“代码”,输入以下代码,点击“检查”——setup按钮变黑,但是单击后仍没有反应,因为还没有写具体可执行的指令
to setupend
B、输入执行的指令,点击“检查”——在宇宙中创建50个小球——点击“界面”—>点击“setup”——发现好像只有一个球在中心位置,放大这个球,发现它是由许多小三角堆叠而成的——turtle默认是一个小三角形,默认位置在屏幕中心
create-turtles 50[]
C、回到代码界面,随机生成小球坐标——代码如下——点击检查——回到界面,点击setup,发现随机生成50个小球
create-turtles 50[setxy random-xcor random-ycor
]
D、多次点击setup,发现小球数量不断增加——增加清除命令,使得每次点击setup,会将上一次生成的小球清除,代码如下
#在create-turtles前面增加如下代码:
clear-all
E、改变小球形状,代码如下
#在create-turtles前面增加如下代码:
set-default-shape tutles "circle"
4、让小球动起来
1、点击”添加“——命令框输入go——勾选“持续执行”(使go程序循环执行)——点击”确定“
2、切换“代码界面”,输入以下代码,点击检查
在执行go的每一个循环周期内,遍历所有的turtles,让每一个小球向前移动一个单位
to go ask turtles[ forward 1]
end
3、通过调节速度滑块可以观察小球的运行轨迹——小球宇宙中的小球是在一个环面上运行的
5、完整代码
to setupclear-allset-default-shape turtles "circle"create-turtles 50[setxy random-xcor random-ycor]
endto go ask turtles[ forward 1]
end
6、修改宇宙属性
1、鼠标点击黑色的屏幕,选择edit
2、参数
原点位置:默认中心
max-pxcor:横坐标最大值——改变模拟世界的宽度
max-pycor:纵坐标最大值——改变模拟世界的高度
边界循环条件:水平方向世界回绕、竖直方向世界回绕
嵌块:patch,也称瓦片
7、学习资源
点击“文件”——“模型库”,可以看到许多以及做好的案例模型提供学习
NetLogo学习笔记相关推荐
- NetLogo学习笔记5 —— 物种与传染病模型
NetLogo学习笔记5 -- 物种与传染病模型 (模型经过一些修改,与标准SIR模型有些出入) 在上一篇文章,我们学习了随机选择.伪并发.ifelse和of语法.实现了用于解释隔离现象的谢林模型 这 ...
- NetLogo学习笔记3 —— 集合操作与生命游戏
NetLogo学习笔记3 -- 集合操作与生命游戏 (这篇新知识点略多) 上一篇文章我们了解NetLogo模型的基本要素,学习了函数定义与ask语法.并编写了我们的第一个程序! 这一次,我们来编写一个 ...
- PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call
您的位置 首页 PyTorch 学习笔记系列 PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 发布: 2017年8月4日 7,195阅读 ...
- 容器云原生DevOps学习笔记——第三期:从零搭建CI/CD系统标准化交付流程
暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...
- 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移
暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...
- 2020年Yann Lecun深度学习笔记(下)
2020年Yann Lecun深度学习笔记(下)
- 2020年Yann Lecun深度学习笔记(上)
2020年Yann Lecun深度学习笔记(上)
- 知识图谱学习笔记(1)
知识图谱学习笔记第一部分,包含RDF介绍,以及Jena RDF API使用 知识图谱的基石:RDF RDF(Resource Description Framework),即资源描述框架,其本质是一个 ...
- 计算机基础知识第十讲,计算机文化基础(第十讲)学习笔记
计算机文化基础(第十讲)学习笔记 采样和量化PictureElement Pixel(像素)(链接: 采样的实质就是要用多少点(这个点我们叫像素)来描述一张图像,比如,一幅420x570的图像,就表示 ...
最新文章
- 使用 ViS2005 进行单元测试
- python turtle库画图案-Python如何使用turtle库绘制图形
- 沃流量 android,沃流量管家的身世之谜
- oracle执行sql痕迹,Oracle 查询刚执行的SQL
- Windows10 cmd输入python打开的是应用商店
- 苹果iOS 14系统面板截图曝光:加入新墙纸设置
- python中直方图bins是什么意思_Python 中下划线的 5 种含义都是什么?
- 找到软件供应链的薄弱链条
- Property工具类,Properties文件工具类,PropertiesUtils工具类
- office2016+visio2016
- javascript animation lib greensock gsap介绍
- c 登录窗口 oracle,C语言实现图形界面登陆窗口
- http://dongxicheng.org/
- 算24(递归)--算法学习
- 详解Gem5模拟器的4种CPU模型
- templete_SPFA()
- CopyOnWrite
- eja变送器故障代码al01_EJA的差压变送器三种常见故障
- YOLOv5 修改detect模块以方便调用(单类型目标)
- Jquery利用淘宝接口判断手机运营商和归属地
热门文章
- windows下载安装mysql教程
- VS2019 C1083 无法打开包括文件: “QSqlDatabase”
- 用python实现解常微分方程组的简单示例以及用odeint解常微分方程的范例
- 江苏大学计算机与通信工程学院宿舍,江苏大学计算机科学与通信工程学院
- Beef加载msf插件---metasploit对IE浏览器的极光漏洞进行渗透利用
- 华为数通笔记-网络管理协议
- SoO of EIGRP
- 【IoT】产品设计:不得不说的「硬件黑话」
- 山西2021高考成绩查询任玥,高考倒计时60天!华师为你加油!
- 合同诈骗罪中“一女多嫁”的诈骗认定