搜索
人大经济论坛 附件下载

附件下载

所在主题:
文件名:  Optimization.rar
资料下载链接地址: https://bbs.pinggu.org/a-2430440.html
本附件包括:
  • optimization-Ex1.R
  • da01.csv
附件大小:
现在一个班级有40名学生n01--n40,考试设置10门课程 x01--x10,每科课程有不同的权重w01--w10(取值范围是(0,1)开区间),得出每个学生的加权平均成绩y1~y40, 然后给他们排名。 问题是:要想让张三、李四、王五的排名尽量靠前,权重应当怎么设置? 程序代码如下:
  1. #首先假设有10科成绩
  2. x01<-rnorm(n = 40,mean = 80,sd = 10)
  3. x02<-rnorm(n = 40,mean = 80,sd = 10)
  4. x03<-rnorm(n = 40,mean = 80,sd = 10)
  5. x04<-rnorm(n = 40,mean = 80,sd = 10)
  6. x05<-rnorm(n = 40,mean = 80,sd = 10)
  7. x06<-rnorm(n = 40,mean = 80,sd = 10)
  8. x07<-rnorm(n = 40,mean = 80,sd = 10)
  9. x08<-rnorm(n = 40,mean = 80,sd = 10)
  10. x09<-rnorm(n = 40,mean = 80,sd = 10)
  11. x10<-rnorm(n = 40,mean = 80,sd = 10)


  12. da01<-data.frame(x01,x02,x03,x04,x05,x06,x07,x08,x09,x10)


  13. #每科成绩有一个权重(权重处于(0,1),且10科权重之和等于1)
  14. w01<-0.1
  15. w02<-0.1
  16. w03<-0.1
  17. w04<-0.1
  18. w05<-0.1
  19. w06<-0.1
  20. w07<-0.1
  21. w08<-0.1
  22. w09<-0.1
  23. w10<-0.1

  24. attach(da01)
  25. #计算加权平均分
  26. da01$y<-0+
  27. x01*w01+
  28. x02*w02+
  29. x03*w03+
  30. x04*w04+
  31. x05*w05+
  32. x06*w06+
  33. x07*w07+
  34. x08*w08+
  35. x09*w09+
  36. x10*w10
  37. detach(da01)
  38. #求每一位同学的排名
  39. da01$rk<-rank(x = -da01$y,na.last = TRUE)

  40. View(da01)

  41. #问题来了,如果想让张三、李四、王五的排名尽量靠前,那么各科成绩的权重w01~w10 应该怎么设置?
  42. # 实际上就是求 min(y[1]+(y[2]+(y[3]) 的问题。
复制代码




    熟悉论坛请点击新手指南
下载说明
1、论坛支持迅雷和网际快车等p2p多线程软件下载,请在上面选择下载通道单击右健下载即可。
2、论坛会定期自动批量更新下载地址,所以请不要浪费时间盗链论坛资源,盗链地址会很快失效。
3、本站为非盈利性质的学术交流网站,鼓励和保护原创作品,拒绝未经版权人许可的上传行为。本站如接到版权人发出的合格侵权通知,将积极的采取必要措施;同时,本站也将在技术手段和能力范围内,履行版权保护的注意义务。
(如有侵权,欢迎举报)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

GMT+8, 2026-1-10 04:02