第二章 小球宇宙:认识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学习笔记相关推荐

  1. NetLogo学习笔记5 —— 物种与传染病模型

    NetLogo学习笔记5 -- 物种与传染病模型 (模型经过一些修改,与标准SIR模型有些出入) 在上一篇文章,我们学习了随机选择.伪并发.ifelse和of语法.实现了用于解释隔离现象的谢林模型 这 ...

  2. NetLogo学习笔记3 —— 集合操作与生命游戏

    NetLogo学习笔记3 -- 集合操作与生命游戏 (这篇新知识点略多) 上一篇文章我们了解NetLogo模型的基本要素,学习了函数定义与ask语法.并编写了我们的第一个程序! 这一次,我们来编写一个 ...

  3. PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call

    您的位置 首页 PyTorch 学习笔记系列 PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 发布: 2017年8月4日 7,195阅读 ...

  4. 容器云原生DevOps学习笔记——第三期:从零搭建CI/CD系统标准化交付流程

    暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...

  5. 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移

    暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...

  6. 2020年Yann Lecun深度学习笔记(下)

    2020年Yann Lecun深度学习笔记(下)

  7. 2020年Yann Lecun深度学习笔记(上)

    2020年Yann Lecun深度学习笔记(上)

  8. 知识图谱学习笔记(1)

    知识图谱学习笔记第一部分,包含RDF介绍,以及Jena RDF API使用 知识图谱的基石:RDF RDF(Resource Description Framework),即资源描述框架,其本质是一个 ...

  9. 计算机基础知识第十讲,计算机文化基础(第十讲)学习笔记

    计算机文化基础(第十讲)学习笔记 采样和量化PictureElement Pixel(像素)(链接: 采样的实质就是要用多少点(这个点我们叫像素)来描述一张图像,比如,一幅420x570的图像,就表示 ...

最新文章

  1. 使用 ViS2005 进行单元测试
  2. python turtle库画图案-Python如何使用turtle库绘制图形
  3. 沃流量 android,沃流量管家的身世之谜
  4. oracle执行sql痕迹,Oracle 查询刚执行的SQL
  5. Windows10 cmd输入python打开的是应用商店
  6. 苹果iOS 14系统面板截图曝光:加入新墙纸设置
  7. python中直方图bins是什么意思_Python 中下划线的 5 种含义都是什么?
  8. 找到软件供应链的薄弱链条
  9. Property工具类,Properties文件工具类,PropertiesUtils工具类
  10. office2016+visio2016
  11. javascript animation lib greensock gsap介绍
  12. c 登录窗口 oracle,C语言实现图形界面登陆窗口
  13. http://dongxicheng.org/
  14. 算24(递归)--算法学习
  15. 详解Gem5模拟器的4种CPU模型
  16. templete_SPFA()
  17. CopyOnWrite
  18. eja变送器故障代码al01_EJA的差压变送器三种常见故障
  19. YOLOv5 修改detect模块以方便调用(单类型目标)
  20. Jquery利用淘宝接口判断手机运营商和归属地

热门文章

  1. windows下载安装mysql教程
  2. VS2019 C1083 无法打开包括文件: “QSqlDatabase”
  3. 用python实现解常微分方程组的简单示例以及用odeint解常微分方程的范例
  4. 江苏大学计算机与通信工程学院宿舍,江苏大学计算机科学与通信工程学院
  5. Beef加载msf插件---metasploit对IE浏览器的极光漏洞进行渗透利用
  6. 华为数通笔记-网络管理协议
  7. SoO of EIGRP
  8. 【IoT】产品设计:不得不说的「硬件黑话」
  9. 山西2021高考成绩查询任玥,高考倒计时60天!华师为你加油!
  10. 合同诈骗罪中“一女多嫁”的诈骗认定