自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小柴柴是也的博客

渣博进化史

  • 博客(42)
  • 资源 (1)
  • 收藏
  • 关注

原创 MADDPG中环境怎么配置,multiagent包解决

一、环境提供MADDPG: https://github.com/starry-sky6688/MADDPG (pytorch版本)MPE环境:https://github.com/openai/multiagent-particle-envs论文:《Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments》https://arxiv.org/abs/1706.0227二、环境配置过程首先下载MPE环境,然后解

2022-04-14 17:24:56 3915 6

原创 latex学习篇【三】论文中的表格技巧Q&A

latex中表格是一个大头和公式一样,推荐一个好用的工具!https://www.tablesgenerator.com/latex_tables这个网站可以在线编辑表格,直接生成代码,粘贴过去就可以啦!!!但是关于细节还有很多要调整的。前前后后改了很多,都是现场百度的,悔恨没及时记下来,现在想不起来改了些啥了,先这样吧...

2022-04-14 16:06:01 908

原创 LATEX学习篇【二】:论文中的公式技巧Q&A

一些latex公式编辑技巧,符号大全和好用的工具

2022-04-14 11:35:27 565

原创 latex学习篇【一】论文中的图片技巧Q&A

LATEX专栏第一篇:在Latex模板中引入各种图片的问题。...

2022-04-14 11:20:03 981

原创 yaml报错TypeError: load() missing 1 required positional argument: ‘Loader‘

添加一下命令即可:我的操作:return yaml.load(config)改为return yaml.full_load(config)问题完美解决

2021-11-18 20:37:07 1012

原创 ValueError( Shape(4, ?, 1, 20) and () are incompatible

报错:解决:将文件中的 return tf.concat(axis, tensors)改为: return tf.concat(tensors, axis)问题完美解决

2021-11-09 10:47:32 357

原创 No module named ‘__main__.common‘; ‘__main__‘ is not a package

今天在调通代码时遇到一个难缠的bug,源代码如下:from .common import _FLOATX, _EPSILON结果报错:问题原因:也就是说,这是相对导入,只有在父模块在当前运行环境中被导入过才能用。这揭示了报错的缘由,相对导入基于当前模块的名称,因为主模块总被命名为"main"。当我们从主模块启动时,Python就识图用"main"替换".",于是那句话实际便成了from main.commom import common,这当然是找不到的。我的目录:解决方法:将引用语

2021-11-09 10:30:28 1424

原创 module ‘tensorflow_core.compat.v1‘ has no attribute ‘contrib‘问题的完美解决

问题描述:Instructions for updating:Use keras.layers.Dense instead.Traceback (most recent call last): File "run_cnn.py", line 200, in <module> model = TextCNN(config) File "D:\MY DATA\学习资料\研究生\深度学习\text-classification-cnn-rnn-master\cnn_model.p

2021-09-14 21:33:27 3086

原创 【强化学习】一文带你理清强化学习

一文带你理清强化学习这个图描述的比较清晰,蓝框里是整个强化学习的一些概念基础了,橙色是一些学习方法,可以选择性的选择一些,废话不多说,接下来就按照这个路线图展开。马尔可夫链马尔科夫链:用来描述智能体和环境互动的过程...

2021-09-09 22:39:23 1086

原创 从拉格朗日乘数法到KKT条件

从拉格朗日乘数法到KKT条件最近看论文遇到了Karush–Kuhn–Tucker (KKT)条件,想搞清楚这是个什么东东,因此就把这个东西认真学习一下并且分享出来,希望对大家有用。学习KKT就不得不先学习一下拉格朗日乘数法,于是不得不重新翻出被记忆尘封的高数~~1.拉格朗日乘数法在数学最优问题中,拉格朗日乘数法是一种寻找变量受一个或多个条件所限制的多元函数的极值的方法。这种方法将一个有n 个变量与k 个约束条件的最优化问题转换为一个有n + k个变量的方程组的极值问题,其变量不受任何约束。这种方法引入

2021-06-18 19:16:57 239

原创 【强化学习】可视化学习tensorboard

tensorflow定义了一个图结构:代码:a = tf.constant(3.0, name="a")b = tf.constant(4.0, name="b")c = tf.add(a, b, name="add")var = tf.Variable(tf.random_normal([2, 3], mean=0.0, stddev=1.0), name="variable")print(a, var)# 必须做一步显示的初始化opinit_op = tf.global_v

2021-05-21 14:53:10 1019

原创 【强化学习】PPO代码注释版本

# PPO主要通过限制新旧策略的比率,那些远离旧策略的改变不会发生# import tensorflow as tfimport tensorflow.compat.v1 as tftf.compat.v1.disable_eager_execution()import numpy as npimport matplotlib.pyplot as pltimport gym# 定义一些超级参量EP_MAX = 1000 # 最大步数EP_LEN = 200GAMMA = 0.9

2021-05-21 11:23:30 3012 8

原创 【强化学习】A3C代码注释版本

########################################### A3C做出的改进:# 解决AC难以收敛的问题# 不一样的地方:#import threading# import tensorflow as tfimport tensorflow.compat.v1 as tftf.compat.v1.disable_eager_execution()import numpy as npimport gymimport osimport shutilimp

2021-05-21 11:21:29 1076

原创 【强化学习】A3C原理

先解释一下什么叫异步、什么叫并发:**异步:**和同步相对,同步是顺序执行,而异步是彼此独立,在等待某个事件的过程中继续做自己的事,不要等待这一事件完成后再工作。线程是实现异步的一个方式,异步是让调用方法的主线程不需要同步等待另一个线程的完成,从而让主线程干其他事情。**并发:**同一时间段有几个程序都处于已经启动到运行完毕之间,并且这几个程序都在同一个处理机上运行,并发的两种关系是同步和互斥。**多线程:**多线程是进程中并发运行的一段代码,能够实现线程之间的切换执行;**异步和多线程:**不是同

2021-05-21 11:20:16 8675 1

原创 【强化学习】AC注释版本

## 强化学习 Actor-critic# 和PG比起来主要的变化:# 评估点由状态价值变成了TD_error,网络形式变了# learn函数长得不一样# action有一个优化函数,优化的是价值函数,希望最大化期望的reward,Critic网络也有一个reward,希望最小化现实和估计的误差(即td——error)# Actor使用我们上一节讲到的策略函数,负责生成动作(Action)并和环境交互。而Critic使用我们之前讲到了的价值函数,负责评估Actor的表现,并指导Actor下一阶段的

2021-05-21 11:13:45 311

原创 【强化学习】Actor Critic原理

PG算法是一种只基于policy的一种方法,存在的问题就是该算法需要完整的状态序列,且单独对策略函数进行迭代更新,不太容易收敛。Actor-critic方法呢是一种将 策略(Policy Based)和价值(Value Based)相结合的方法。下面继续来理一下AC方法的思路!Actor-Critic算法包括两部分,Actor网络使用PG里的策略函数,负责生成动作,和环境交互,Critic网络使用价值函数,负责评估Actor的表现,并指导Actor下一阶段的动作。PG中我们用的是蒙特卡罗法来计算每一步

2021-05-21 11:12:22 517

原创 【强化学习】Policy Gradients代码注释版本

import gym #import tensorflow as tfimport numpy as np# Hyper ParametersGAMMA = 0.95 # discount factor 折扣因子LEARNING_RATE = 0.01 # 学习率class Policy_Gradient(): # 咱们来搞一下大头! def __init__(self, env): # 初始化 # 先初始化一些参量 self.

2021-05-21 11:09:16 277

原创 【强化学习】Policy Gradient原理

1.Policy Gradient和DQN系列强化算法最大的区别在于:DQN系列基于Value,也就是说执行完所有的动作并保存所得到的价值,根据这些价值计算出最优价值函数,并以此选择动作,最终获得一个特定的策略。Policy Gradient基于策略来选择动作,Value Based方法中将动作价值函数进行近似,引入了一个动作价值函数q^,状态s和动作a为输入,价值函数输出,得到近似的动作价值。PG中采用类似的思路,将策略表示成一个连续的函数之后,使用连续函数的优化方法寻找最优策略。2.Policy

2021-05-21 11:05:55 468

原创 一些python函数及其用法

1.np.ravel()方法ravel是将数组维度拉成一维数组,也就是将矩阵向量化x = np.array{ [ [ 1 , 2 , 3 ] , [ 4 , 5 , 6 ] ] }print(np.ravel(x))输出[ 1 2 3 4 5 6 ]2.b = a[np.newaxis,:]import numpy as npa = np.arange(0, 10)print('a.shape',a.shape)print('a',a)b = a[np.newaxis,:]c =

2021-04-26 11:23:30 168

原创 Python列表推导式

列表推导式是Python构建列表(list)的一种快捷方式,可以使用简洁的代码就创建出一个列表,即循环创建列表.for可以用来创建列表,列表推导式就相当于是for循环的简化版1. 最简单的情况values = [10, 21, 5, 7, 12]squares = []for x in values: squares.append(x**2)print squares运行结果:[100, 441, 25, 49, 144]可以变成values = [10, 21, 5, 7

2021-04-16 21:22:59 140 2

原创 Opnet入门

一、opnet快速入门1.系统界面&文件菜单说明2.常用文件名后缀及描述3.Opnet建模层次用户只有一种节点域模型三、 OPNET Modeler网络仿真机制1.事件的属性每次点击next会出现以下界面:2.事件的执行调度型:按照正常程序调度事件强制性:事件比较特殊,主动强制仿真核心停下来执行这个事件安静型:和强制型的区别是,也需要处理这个事件,但没必要把当前的任务停下来3.事件的分类...

2021-04-13 17:30:15 12155 3

原创 博弈论与纳什均衡

三十分钟理解博弈论“纳什均衡” – Nash Equilibriumhttps://blog.csdn.net/xbinworld/article/details/50932559纳什均衡(Nash equilibrium)及经典案例https://blog.csdn.net/u010420283/article/details/83927742论文:[1] 刘帅军. 卫星通信系统中动态资源管理技术研究[J]. 北京: 北京邮电大学, 2018.[2] 移动卫星通信网络边缘计算架构研究.张玉迪

2021-03-19 11:33:19 696

原创 卫星通信系统概述

卫星通信系统指通过在轨人造卫星作为中继站对无线电信号进行转发,实现地面及空间等用户之间信息传输的系统。卫星通信系统组成包括空间段及地面段,系统组成如图所示。其中空间段主要指在轨卫星、对在轨卫星进行操控的地面站,这些地面站主要实现跟踪、遥测、遥控等功能,提供必要的卫星管理及控制以保证卫星正常在轨运行。地面段主要指通过卫星进行通信的用户终端,包括固定终端、机动终端和移动终端。其中,固定终端包括私营网络中使用的甚小口径终端(Very Small Aperature Terminal, VSAT)、安装于屋顶用于接

2021-01-23 21:11:31 16284 1

原创 【强化学习】一些网站整理

莫烦教程https://mofanpy.com/tutorials/machine-learning/reinforcement-learning/Deep-Q-Network 学习笔记https://www.cnblogs.com/cjnmy36723/p/7017549.html强化学习和自适应控制https://www.cnblogs.com/qpswwww/p/9337740.html贪心算法https://blog.csdn.net/gaoruowen1/article/detail

2021-01-10 12:16:38 518

原创 Java学习 第三章 数组(三)排序算法

**Java学习 第三章 数组(三)排序算法**主要内容:排序算法、排序算法横向比较、Arrays工具类的使用、数组常见异常1.数组中涉及到的常见算法:排序算法1.1 排序算法分类:内部排序和外部排序1.2 十大内部排序算法冒泡排序、快速排序:会手写堆排序、归并排序:知道排序思想2.冒泡排序:实现过程:public class BubbleSortTest { public static void main(String[] args) {

2021-01-06 17:54:20 89

原创 Java学习 第三章 数组(二)多维数组

多维数组的使用由数组构成的数组二维数组:① 二维数组的声明和初始化② 如何调用数组的指定位置的元素③ 如何获取数组的长度④ 如何遍历数组⑤ 数组元素的默认初始化值 :见ArrayTest1.java数组元素是整形:0数组元素是浮点型:0.0数组元素是char型:0或‘\u0000’数组元素是布尔型:false数组元素是引用数据类型时:null⑥ 数组的内存解析 :见ArrayTest1.java① 二维数组的声明int[] arr = new int[]{1,2,3}; /

2020-12-29 20:50:34 181

原创 我的2020(年终总结)

我的20202020对每个人来说可能都是极不平凡的一年,对我尤其是。这一年我整个的人心境发生了极大的变化。总结来说,有这么几件大事:复试、毕设、大学毕业、研究生开学、分手、再脱单、疫情在家。今天坐在实验室也不知道该干点什么,自从考完试就有一种放假既视感,现在在等着被老师叫去干活,趁这个机会把我这一年复盘一下吧!① **复试。**去年的主旋律是考研,准确来讲应该是考研初试,今年才是接收宣判的主战场。二月份收到成绩,五月份复试,中间找了三个月的调剂,同时积极准备复试,中间经历了各种各样的波折,各种各样的委屈

2020-12-29 17:01:43 1214 3

原创 几个有用的word小技巧,保准提升效率~

这几天改报告改到头秃。年底了,实验室各种项目在结项,作为一名研一新生,理所应当地承担起了体力活的工作。主要负责项目报告的研究背景调研、报告汇总、格式调整等。格式调整,看起来非常简单的一项工作,却是最费时费力的,掌握一定的word操作技巧可以帮助我们省去很多的时间,很大的提升效率。好了废话不多说,直奔主题,带大家感受下这几天学会的“大招”!1.最常用的几个快捷键:CTRL+C:复制CTRL+V:粘贴CTRL+X:剪切CTRL+Z:撤销这几个是用的最多的,大家一般都熟悉,但是有一个问题。如果你复制

2020-12-18 22:43:53 272 1

原创 Java学习 第三章 数组(一)一维数组

第三章 数组3-1 数组的概述数组:多个相同类型数据按一定的顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。数组相关概念:数组名、下标(索引、角标)、元素、数组的长度数组特点:1.数组是有序排列的2.数组本身是引用数据类型,而数组中的元素既可以是基本数据类型,也可以是引用数据类型3.创建数据对象时会在内存中开辟一整块连续的空间4.数组的长度一旦确定,就不能更改数组分类(1)按照维数:一维数组,二维数组。。。。(2)按照数组元素的类型:基本数据类型元素的数组

2020-11-28 18:48:11 147

原创 MATLAB入门(三)

求平均值两种方法生成列向量读取文件将数据保存到小数点后两位result = round(M,2);将矩阵中的每个元素都三次方x3 = x.^3将矩阵中的数据按照升序排序sort(data)创建一个行变量计算每一个列变量的平均值avg = mean(data)diff函数Y = diff(X) 计算沿大小不等于 1 的第一个数组维度的 X 相邻元素之间的差分:Y = diff(X,n) 通过递归应用 diff(X) 运算符 n 次来计算第...

2020-11-16 18:59:15 836

原创 MATLAB入门(二)

可以使用 plot 函数在一张图上绘制两个相同长度的向量。plot(x,y)plot 函数接受一个附加参数。使用该参数,您可以通过在引号中包含不同符号的方式来指定与之对应的颜色、线型和标记样式。plot(x,y,"r--o")以上命令将会绘制一条红色 ® 虚线 (–),并使用圆圈 (o) 作为标记。请注意,每个绘图命令都创建了一个单独的绘图。要在一张图上先后绘制两条线,请使用 hold on 命令保留之前的绘图,然后添加另一条线。启用保留状态时,将继续在同一坐标区上绘图。要恢复默认绘图行为,

2020-11-16 18:29:42 911 1

原创 Matlab入门(一)

MATLAB学习笔记本系列主要内容来源:matlab官方付费课程的学习笔记截图较多,之后更新会尽量增加文字说明matlab简单常用的命令数组round:四舍五入函数。...

2020-11-16 17:25:16 135

原创 第二章 Java基本语法(三)

本文主要内容:循环结构、特殊关键字break和continue的使用,质数问题的优化循环结构:Boolean类型程序编写:从键盘输入两个正整数m和n,找出他们的最大公约数和最小公倍数。import java.util.Scanner;public class test { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System

2020-11-16 17:02:35 129

原创 第二章 Java基本语法(二)

本文主要内容:运算符、if-else、switch-case一、位运算符运算符之五:位运算符每左移一位,相当于是在原来的基础上乘2.int i = 21;System.out.println(“i<<2:”+(i<<2));输出:i<<2:84结论:1.位运算符操作的都是整形的数据2.<<:在一定范围内,每向左移一位,相当于*23.>>: 在一定范围内,每向右移一位,相当于/2交换两个变量的值:方式一:定义临时变量i

2020-11-16 16:35:27 172

原创 第二章 Java基本语法(一)

比如:类名,变量名,方法名,接口名,包名。。。小技巧:直接在我的电脑输入cmd,就可以打开命令窗口Java语言区分大小写类名,接口名:class后面的常量名:圆周率之类的常量变量名:int x; 这个x就是变量如果不遵守以上规则,编译可以通过,但是应该养成这样的习惯定义变量的格式:数据类型 变量名 = 变量值说明:变量必须先声明,在使用②变量都定义在其作用域内,在作用域内,它是有效地,换句话说,处了作用域,就失效了③,同一个作用域内,不能声明两个同名的变量。变量数据类...

2020-10-22 19:11:38 148

原创 Java语言学习概述

md:创建新的文件夹上面这行作用:将name:Tom,age=12写入到文件1.doc中,也就是说先建个文档,再把这句话写进去。del *.txt 作用:删除以txt结尾的所有文件rd team2 作用:删除team2文件夹(且这个目录必须是空文件)编译指令注释//单行注释, 如下语句表示XXXX/*这个中间都表示多行注释/单行注释和多行注释的作用:1.对所写的程序进行解释说明,增强可读性,方便自己,方便他人2.可以调试所写的代码(加两杠注释掉)单行注释和多行注..

2020-10-22 17:56:58 100

原创 Java学习:类的封装、继承和多态

【3.1】声明日期类及使用日期对象public class MyDate{ //类声明int year,month,day; //成员变量,表示年月日void set(int y,int m,int d) //成员方法、设计日期值{year=y;month=m;day=d;}void set(MyDate d) //将当前对象值设置为参数值,重载{set(d.year,d.month,d.day); //调用重载的同名成员方法

2020-09-16 19:37:56 283

原创 Java学习、简单代码编译

【2.1】求明天是星期几public class study {public static void main(String args[]){short i=7;short tomorrow,yesterday;tomorrow = (short) ((i+1) % 7);yesterday = (short)((i-1+7) % 7);System.out.print(“tomorrow:”+tomorrow+" “+”\n");System.out.print(“yesterday:”

2020-09-09 17:23:57 261

原创 2020-08-24 光纤通信第五章知识点整理

第五章 无源光器件和WDM技术目录5.1 无源器件的几个常用性能参数 15.2 光纤和波导型无源光器件 25.2.1 光连接器和光耦合器 25.2.2 偏振控制器 35.2.3 光纤布拉格光栅 45.2.4 Mach-Zahnder滤波器 55.2.5 非线性环路镜 55.3 光学无源器件 65.3.1 偏振分束器 65.3.2 光隔离器 75.3.3 光环行器 75.3.4 自聚焦透镜 85.3.5 F-P腔滤波器 95.3.6 光栅 95.4 波分复用、解复用器件 10

2020-08-24 11:32:17 5421 1

原创 2020-08-21 光纤通信第四章知识点整理

第四章 光纤通信系统目录4.1 模拟光纤通信 24.2 数字光纤通信系统和总体设计 34.2.1 数字光纤通信系统基本组成 34.2.2 数字光纤通信系统总体设计 44.3 数字光纤传输系统的性能指标 74.3.1 误码性能 74.3.2 抖动、漂移性能 84.3.3 可用性 84.4 光纤放大器及其在光纤通信系统中的应用 94.4.1 掺铒光纤放大器 94.4.2 喇曼光纤放大器 124.5 光载无线技术 134.5.1 光载无线技术简介 134.5.2 ROF系统的关键技

2020-08-23 19:18:03 3902

c++八数码问题

//八数码问题广度优先算法 //有缺陷:如果问题过于复杂会超出内存。 #include<stdio.h> struct point { int a[3][3]; int direction; }; struct point sh[102],end; int count=1; void init() {printf("请输入起始节点的位置:\n"); int i,j; for (i=0;i<3;i++) for (j=0;j<3;j++) scanf("%d",&sh;[0].a[i][j]); sh[0].direction = -1;printf("输入目标节点的位置:\n"); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d", &sh;[101].a[i][j]); sh[101].direction=-1; }

2018-07-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除