0%

上海交通大学有一个硕士博士学位论文系统,里面有所有的硕士博士学位论文,但是由于其网站速度非常慢(论文拆分成一张一张图片),经常打开的时候挂了,严重影响体验。所以写了这么一个批量下载某个专业所有硕士或者博士学位论文的小工具。

阅读全文 »

去年上《学术英语》课程的时候学过了科研语料库的使用,但当时没咋写论文,所以实际操作体验效果不明显,但是最近在润色之前写的一篇论文,又想到了这个语料库的使用,于是用了一下,发现效果还不错,本博客记录一下语料库的使用。同时,给出制作语料库的Python脚本。

阅读全文 »

本文主要是对《Learning-Based model predictive control: Toward Safe Learning in Control》文章中Section5中所引用的文章的笔记和理解,以及safe reinforcement learning一个简单的综述和分析。

介绍safe reinforcement learning不同的思路和方法(以2021TAC文章为例)

综述文章《Learning-based model predictive control: Toward Safe Learning in Control》,文中主要对三个方向进行阐述和介绍:1. learning the system dynamics 2. Learning the controller design 3. MPC for safe learning. 其中,前两个都是很常规的操作,对于第三个,结合当前很火的safe reinforcement learning,文中列举了几个工作。这篇文章主要是ETH的实验室的人做的工作,其引用了很多自己实验室的工作。

通常基于学习的控制算法,例如强化学习,已经在高维度的控制问题中取得了巨大进展,但是由于系统物理约束的存在,大部分的工作都不能保证安全性,尤其是在迭代学习的过程中,为了解决这个问题,2011年的一篇文章《Guaranteed safe online learning of a bounded system》提出了一个安全性框架,通过在必要的时候使用一个基于模型的控制器来进行控制,否则使用一个基于学习的控制器进行控制,来最优化损失函数。

阅读全文 »

最近在准备拟定自己的研究方向及资格考试答辩,然而,看了很多,发现实在太难确定方向了,旁人都建议说边做边找,做的过程中慢慢再挖掘并补充,且自己以前的确看的太多太杂了(虽然也是不得已而为之),现在已经是第二年快结束了,该定下来研究方向了,遂不再继续广泛挖掘,直接专注于某一个具体的小点进行深入研究。和实验室师兄一起解决SMPC的问题,这周先整理下MPC相关的笔记和理解。

阅读全文 »

《Input Convex Neural Networks》

《Optimal Control Via Neural Networks: A Convex Approach》

对于复杂系统的控制往往分为两步,对系统的辨识和控制器的设计。 深度神经网络被证明在辨识任务中取得了重大成功,但是,由于这些辨识出来的系统往往是非线性和非凸的,其控制器很难设计,所以,实际系统往往还是用线性模型去逼近,尽管这些线性模型的拟合能力很弱,因此,往往设计出来的控制器的性能都不行。

这两篇文章,主要提出了ICNN及其改进网络结构,ICNN的特点就是对于输入是凸的,第一篇文章主要提出了ICNN这一网络结构,通过将神经网络的前向通道中的权重设置为非负值,这一简单的改变,就可以将神经网络变为输入凸的,且该网络的拟合能力并为受到较大的影响。

这篇文章主要完成3点:

  1. 复现ICNN,原版的ICNN是用tensorflow写的,代码不全,且使用了较老的库版本,运行不了,在此采用pytorch进行复现出一个通用程序。
  2. 对于一个给定的函数:\(y=3x_1^2+4x_2^2\),利用普通的DNN,和ICNN进行对比,验证ICNN的拟合能力(验证的过程使用相同的网络层数,每层的节点数,学习率等参数)。
  3. 对于《Input Convex Neural Networks》中的simulation中的synthetic 2D example和《Optimal Control Via Neural Networks: A Convex Approach》中的APPENDIX中的Toy Example分别进行复现及仿真验证。
阅读全文 »

上一篇博客中,科研论文常用句式语法汇总整理,每天将所看论文中的优秀的语句进行摘录整理,经过一个月的使用(其实也就不到一周,中间春节没有学习),感觉也还是有点不得劲,所以,这篇博客是对论文的各部分的段落进行整理,翻译成中文,最好能背诵下来(笨办法,先试试看,毕竟身边没人教我hhhh)。

这篇博客将长期更新,分为5个部分,包括abstract, Introduction, method, simulation, conclusion,争取做到每天更新,每天看一篇论文,在学习其内容的同时,摘录其优秀的整段文字,并进行分类整理。

每天整理并背诵一段话。

阅读全文 »

科研论文写作和平常的写作不太一样,从我自己写下来的感觉,发现自己写的英文句式很死板,读上去没有那些native的作者的语言的感觉,因此需要进行专业训练。训练方式就是模仿那些作者的文字。

这篇博客将长期更新,分为5个部分,包括abstract, Introduction, method, simulation, conclusion,争取做到每天更新,每天看一篇论文,在学习其内容的同时,整理其值得学习借鉴的语法句式,分类整理。

对于每一篇文章,每一个section找5句有特色的句子,将其中文意思和英文表单都整理一下,因为从实际写作的角度来看,很多情况下我们无法写出合适的英文表达,有一部分原因是因为我们使用中文都无法准确将我们想要表达的内容表达出来,所以英译汉也是一个十分重要的部分。

通过不断整理,相当于整理了一个可供中文查询的数据库,例如,我想搜"关系",直接可以搜到整理到的相关的语句表达。

在阅读文献的时候,将好的语句表达用不同颜色标注一下。

阅读全文 »

最近写了一篇强化学习用于供水管网的论文,算法的训练过程中用到了Tensorboard(stable-baselines提供了tansorboard的接口)来可视化训练数据,但是,tensorboard的图直接放入到论文中会显得很难看,包括xlabel和ylabel需要重新定义,图片的风格需要修改等等操作直接在tensorboard中很难操作,需要将这些数据导出来,然后使用matplotlib和seaboarn来进行plot,这篇博客记录一下如何将tensorboard中的数据进行导出并画图。

阅读全文 »

背景需求:

办公室用的TP-Link WDR7660路由器,有公网IP,所以可以设置端口映射,但是由于局域网中的设备较多,需要映射的端口超过了TP-Link的限制(TP-Link默认只能16个端口)需要做一个端口中转服务器

阅读全文 »

在使用gitalk的时候,遇到了点击初始化gitalk后跳转到首页的问题,经过搜索和试验后发现:新建的文章文件名不能有中文,否则无法编码和转码。

参考