• 内网端口转发控制面板

    背景需求:

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

  • hexo-gittalk问题总结

    在使用gitalk的时候,遇到了点击初始化gitalk后跳转到首页的问题,经过搜索和试验后发现:新建的文章文件名不能有中文,否则无法编码和转码。 参考:
  • vs code remote ssh 使用x11转发显示远程图像

    需求

    本人的开发环境:代码的运行环境一般都是远程主机,本地使用一台台式机或者使用笔记本来进行远程开发,开发环境使用visual studio code,但是,由于是远程,对于输出一些结果图片,比如用到matplotlib之类的库,不是很方便。

    后来了解到visual studio code具有一些插件:remote ssh,remote x11等可以转发x11。记录一下远程转发x11的过程。

  • 使用本地服务器结合github action推送github pages

    需求

    网上很多人使用github action,借助github的服务器来进行博客的推送,但是,当你博客文章数量较多,且使用了国内的CDN,例如本博客使用了阿里云CDN,本站的解析是国外IP访问的是github仓库的网站,国内用户访问的是阿里云CDN的节点,在使用github action的时候,发现推送速度非常慢,原因是github的服务器在国外,往阿里云服务器推送的时候速度很慢。所以,每次更新博客,往往需要10分钟的时间才能推送好。这是不能忍受的。。。

  • 服务器被黑记录

    背景及环境

    实验室服务器,装的Proxmox虚拟机,我开了一台LXC,系统是Debian10,上面搭建了强化学习的环境,我11日晚上将它映射到路由器的公网IP上了,端口是22

    12号凌晨03:25,被黑了,我是在13号早上,发现服务器的htop显示着所有的CPU的核心都是满载,但是我并没有跑什么程序,想着应该是被入侵了,打开SSH尝试连接,发现果然连不上去了。

  • PPO算法公式推导

    论文:

    [1] Schulman, J., Levine, S., Moritz, P., Jordan, M. I. & Abbeel, P. Trust Region Policy Optimization. arXiv:1502.05477 [cs] (2017).

    [2] Schulman, J., Wolski, F., Dhariwal, P., Radford, A. & Klimov, O. Proximal Policy Optimization Algorithms. arXiv:1707.06347 [cs] (2017).

    [3] Heess, N. et al. Emergence of Locomotion Behaviours in Rich Environments. arXiv:1707.02286 [cs] (2017).

    第一、二篇是openai的,第三篇是deepmind的

    Trust Region Policy Optimization算法是在2015年由UCB/Openai的John Schulman提出的,基本思想就是在传统的Policy Gradient算法中对梯度的更新增加一个信赖域,来保证梯度更新前后的策略相差不超过一定的阈值,用两个概率分布的KL散度来衡量这个阈值,TRPO算法的表达形式中有一个硬约束,这给求解最优问题带来了困难,而PPO则是在2017年由UCB/Openai的John Schulman提出的,是TRPO的近似算法,将TRPO的软约束转化成目标函数中的一个惩罚项,以此来简化计算,方便实现。

  • 使用PPO设计线性系统控制器

    论文《Policy Iteration Adaptive Dynamic Programming Algorithm for Discrete-Time Nonlinear Systems》

    这几天读了ADP相关的几篇论文,早期08年-14年都是用Policy Iteration方法进行求解,14-18年,Policy Gradient方法多了起来。

  • 非线性系统的最优控制器论文整理

    非线性系统的最优控制器论文整理

    仿射非线性系统:

    Al-Tamimi, A., Lewis, F. L. & Abu-Khalaf, M. Discrete-Time Nonlinear HJB Solution Using Approximate Dynamic Programming: Convergence Proof. IEEE Trans. Syst., Man, Cybern. B 38, 943–949 (2008).

    这篇文章的主要贡献是给出了使用值迭代的启发式算法求解仿射非线性系统的收敛性的证明

  • 健身房计划制定与动作

    这篇文章整理我用到的训练计划和训练动作与健身记录。

  • 检查强化学习自定义环境是否符合Gym的API

    虽然Openai Gym给我们提供了很多有趣的环境,但是,针对实际问题,我们一般都需要建立自己的强化学习环境,也就是说,建立一个函数,输入是action,输出是next_state, reward, done, info,建立这样一个环境的时候最好按照Gym的API来设计,这样方便代码的编写与调试,很多网上实现的算法都是按照Gym的环境进行设计的,同时,Gym的API本身设计的就比较合理的。

    本文总结了Gym的环境的格式,同时给出了一个能够检查强化学习自定义环境的工具。