最近我们小组做了建模训练,选择的题目是21年的国赛C题,我负责软件部分,这题我刚好会做,第一次独自完成了代码,有点激动,和大家分享一下,共同学习,不过因为我个人比较懒,讲解的不怎么多。。。不过会分享一下完整的代码
其实我的代码还有点问题,转运方案没有按照它的要求,当时没注意到这个问题,所以输出的结果和题目给的表格不太一样。
我路子可能比较野,写的代码有点杂乱无章,感觉算小屎堆了(悲)
因为事后没有整理,所以代码会有一些多余的部分,是当时用过后发,之后又不用的。。。
我也是个建模新手,还有很多不足的地方,欢迎大家指出我的错误,一起交流
大家会看到一个Excel,叫‘问题1评分排名.xlsx’,当时鬼迷心窍弄成这样,现在一看实属脱裤子放屁。这个表格大家复制就能用了
供应商ID | 材料成本 | 总供货量 | 订单数 | 达标率 | 评分 | 排名 |
S001 | 1.1 | 49 | 25 | 0.208791 | 6.15234E-05 | 289 |
S002 | 1.2 | 273 | 71 | 0.673684 | 0.000692156 | 105 |
S003 | 1 | 13138 | 191 | 0.854271 | 0.036944482 | 43 |
S004 | 1.1 | 64 | 33 | 0.203883 | 0.000103899 | 245 |
S005 | 1.2 | 6912 | 107 | 0.903509 | 0.019399394 | 54 |
S006 | 1 | 30 | 13 | 0.2 | 1.01257E-05 | 387 |
S007 | 1.2 | 6948 | 240 | 0.866667 | 0.019501409 | 53 |
S008 | 1 | 41 | 15 | 0.25 | 3.79261E-05 | 313 |
S009 | 1.1 | 31 | 19 | 0.15 | 1.51885E-05 | 348 |
S010 | 1.1 | 170 | 32 | 0.227273 | 0.000400748 | 129 |
S011 | 1 | 85 | 32 | 0.651163 | 0.00016209 | 187 |
S012 | 1.2 | 29 | 12 | 0.147059 | 8.21066E-06 | 397 |
S013 | 1 | 44 | 20 | 0.655172 | 4.70146E-05 | 304 |
S014 | 1.2 | 28 | 16 | 0.592593 | 1.05163E-05 | 381 |
S015 | 1.2 | 28 | 15 | 0.277778 | 9.81485E-06 | 388 |
S016 | 1.2 | 37 | 17 | 0.727273 | 2.77322E-05 | 324 |
S017 | 1.2 | 138 | 25 | 0.313433 | 0.000310438 | 153 |
S018 | 1.1 | 66 | 31 | 0.347222 | 0.00010913 | 233 |
S019 | 1.1 | 109 | 12 | 0.155172 | 0.00022839 | 173 |
S020 | 1 | 72 | 33 | 0.235955 | 0.000126006 | 210 |
S021 | 1.2 | 80 | 42 | 0.629032 | 0.000149329 | 195 |
S022 | 1.2 | 140 | 16 | 0.19697 | 0.000315793 | 150 |
S023 | 1 | 1631 | 133 | 0.60625 | 0.00451823 | 59 |
S024 | 1.1 | 124 | 45 | 0.441558 | 0.000272282 | 163 |
S025 | 1 | 375 | 126 | 0.859259 | 0.000981768 | 91 |
S026 | 1.2 | 28 | 14 | 0.823529 | 9.11532E-06 | 392 |
S027 | 1.2 | 81 | 30 | 0.595745 | 0.000150732 | 193 |
S028 | 1.1 | 106 | 19 | 0.346939 | 0.000220167 | 175 |
S029 | 1.1 | 68 | 29 | 0.211111 | 0.000114417 | 228 |
S030 | 1.2 | 162 | 28 | 0.965517 | 0.000378089 | 133 |
S031 | 1.1 | 41207 | 240 | 0.925 | 0.11604338 | 30 |
S032 | 1 | 71 | 30 | 0.390625 | 0.000122868 | 215 |
S033 | 1 | 30 | 17 | 0.842105 | 1.25537E-05 | 364 |
S034 | 1 | 30 | 14 | 0.090909 | 1.07151E-05 | 379 |
S035 | 1.2 | 144 | 55 | 0.42 | 0.000329074 | 145 |
S036 | 1.1 | 124 | 49 | 0.87037 | 0.000272614 | 162 |
S037 | 1 | 50686 | 157 | 0.900621 | 0.142755327 | 25 |
S038 | 1.2 | 36 | 22 | 0.1875 | 2.69251E-05 | 327 |
S039 | 1 | 385 | 45 | 0.634921 | 0.001006506 | 87 |
S040 | 1.1 | 31905 | 240 | 0.904167 | 0.089830187 | 31 |
S041 | 1 | 71 | 28 | 0.322581 | 0.000122644 | 216 |
S042 | 1.2 | 138 | 25 | 0.339286 | 0.000310438 | 152 |
S043 | 1.2 | 39 | 18 | 0.220588 | 3.32102E-05 | 318 |
S044 | 1 | 30 | 14 | 0.764706 | 1.07163E-05 | 377 |
S045 | 1.1 | 31 | 20 | 0.219512 | 1.57757E-05 | 346 |
S046 | 1.2 | 197 | 140 | 0.654088 | 0.000486107 | 119 |
S047 | 1.1 | 66 | 28 | 0.202247 | 0.000108744 | 237 |
S048 | 1.1 | 65 | 26 | 0.44 | 0.000105729 | 243 |
S049 | 1.2 | 38 | 19 | 0.44186 | 3.08765E-05 | 320 |
S050 | 1.1 | 66 | 29 | 0.90625 | 0.000108869 | 235 |
S051 | 1.2 | 29 | 15 | 0.196721 | 1.02113E-05 | 385 |
S052 | 1.2 | 54 | 25 | 0.533333 | 7.51754E-05 | 271 |
S053 | 1.2 | 77 | 31 | 1 | 0.000139675 | 200 |
S054 | 1.1 | 413 | 113 | 0.744186 | 0.001087772 | 70 |
S055 | 1.1 | 24041 | 240 | 0.9 | 0.067669324 | 35 |
S056 | 1.2 | 28 | 17 | 0.295455 | 1.12168E-05 | 375 |
S057 | 1.1 | 50 | 22 | 0.344828 | 6.37202E-05 | 285 |
S058 | 1.1 | 34 | 20 | 0.210526 | 2.15241E-05 | 337 |
S059 | 1 | 47 | 47 | 0.346939 | 6.25025E-05 | 288 |
S060 | 1 | 86 | 10 | 0.36 | 0.000163567 | 186 |
S061 | 1 | 84 | 30 | 0.373134 | 0.000159113 | 189 |
S062 | 1.2 | 75 | 5 | 0.235294 | 0.000132477 | 203 |
S063 | 1 | 30 | 21 | 0.207792 | 1.51106E-05 | 350 |
S064 | 1.2 | 397 | 126 | 0.902985 | 0.001043531 | 80 |
S065 | 1.2 | 189 | 64 | 0.613636 | 0.000455845 | 123 |
S066 | 1.2 | 388 | 132 | 0.851064 | 0.001018631 | 84 |
S067 | 1 | 233 | 169 | 0.988166 | 0.000589569 | 112 |
S068 | 1 | 42 | 16 | 0.15942 | 4.08295E-05 | 309 |
S069 | 1.1 | 169 | 70 | 0.561224 | 0.000400273 | 130 |
S070 | 1 | 46 | 26 | 0.742857 | 5.36666E-05 | 300 |
S071 | 1.2 | 191 | 12 | 0.083333 | 0.000459402 | 122 |
S072 | 1.2 | 28 | 17 | 0.317073 | 1.12168E-05 | 374 |
S073 | 1.1 | 32 | 17 | 0.73913 | 1.59024E-05 | 345 |
S074 | 1 | 13051 | 171 | 0.721311 | 0.03669927 | 44 |
S075 | 1.2 | 390 | 125 | 0.850746 | 0.001023817 | 83 |
S076 | 1 | 376 | 197 | 0.915423 | 0.00099024 | 89 |
S077 | 1.1 | 128 | 12 | 0.172414 | 0.000281908 | 161 |
S078 | 1.2 | 8553 | 101 | 0.794393 | 0.024023726 | 50 |
S079 | 1.1 | 64 | 24 | 0.403846 | 0.000102722 | 248 |
S080 | 1 | 19237 | 240 | 0.875 | 0.054131604 | 37 |
S081 | 1.1 | 49 | 23 | 0.677419 | 6.11551E-05 | 290 |
S082 | 1.2 | 58 | 27 | 0.277778 | 8.64829E-05 | 263 |
S083 | 1.2 | 28 | 14 | 0.375 | 9.11406E-06 | 393 |
S084 | 1 | 70 | 18 | 0.211268 | 0.000118955 | 220 |
S085 | 1 | 46 | 23 | 0.357143 | 5.3017E-05 | 301 |
S086 | 1 | 17949 | 206 | 0.842105 | 0.050501943 | 39 |
S087 | 1.2 | 64 | 27 | 0.657895 | 0.000103073 | 246 |
S088 | 1.1 | 425 | 139 | 0.823529 | 0.001122924 | 64 |
S089 | 1.2 | 141 | 25 | 0.55814 | 0.00031888 | 149 |
S090 | 1 | 145 | 29 | 0.627907 | 0.000330292 | 144 |
S091 | 1.2 | 73 | 29 | 0.519231 | 0.000128321 | 206 |
S092 | 1.1 | 398 | 126 | 0.884615 | 0.001046339 | 77 |
S093 | 1.2 | 36 | 12 | 0.169492 | 2.38267E-05 | 333 |
S094 | 1 | 41 | 24 | 0.411765 | 4.00253E-05 | 311 |
S095 | 1.1 | 32 | 13 | 0.140845 | 1.40651E-05 | 358 |
S096 | 1.2 | 73 | 28 | 0.462963 | 0.000128216 | 208 |
S097 | 1.2 | 63 | 30 | 0.297297 | 0.000100704 | 249 |
S098 | 1.1 | 413 | 206 | 0.92823 | 0.001094404 | 68 |
S099 | 1.2 | 60 | 25 | 0.536585 | 9.17327E-05 | 259 |
S100 | 1 | 42 | 16 | 0.098901 | 4.08295E-05 | 310 |
S101 | 1.2 | 56 | 25 | 0.232877 | 8.06782E-05 | 266 |
S102 | 1.2 | 131 | 50 | 0.5 | 0.000292281 | 158 |
S103 | 1 | 30 | 18 | 0.253968 | 1.31827E-05 | 363 |
S104 | 1.2 | 155 | 25 | 0.263889 | 0.000358284 | 137 |
S105 | 1.1 | 120 | 25 | 0.345455 | 0.000259803 | 167 |
S106 | 1.2 | 77 | 37 | 0.923077 | 0.00014037 | 197 |
S107 | 1 | 69 | 29 | 0.365079 | 0.000117194 | 224 |
S108 | 1.1 | 240950 | 240 | 0.945833 | 0.678923185 | 4 |
S109 | 1.2 | 36 | 19 | 0.321429 | 2.58355E-05 | 328 |
S110 | 1 | 426 | 128 | 0.707792 | 0.001125096 | 63 |
S111 | 1.1 | 31 | 16 | 0.368421 | 1.34925E-05 | 361 |
S112 | 1.1 | 123 | 5 | 0.3125 | 0.000267727 | 165 |
S113 | 1 | 385 | 126 | 0.901515 | 0.001009839 | 86 |
S114 | 1.2 | 10931 | 229 | 0.852814 | 0.030725282 | 45 |
S115 | 1.2 | 398 | 121 | 0.723404 | 0.001046052 | 79 |
S116 | 1.2 | 75 | 23 | 0.594595 | 0.000133342 | 202 |
S117 | 1.1 | 123 | 61 | 0.438776 | 0.000270995 | 164 |
S118 | 1.1 | 66 | 28 | 0.357143 | 0.000108744 | 236 |
S119 | 1.2 | 29 | 9 | 0.170213 | 6.27734E-06 | 401 |
S120 | 1.1 | 33 | 16 | 0.40625 | 1.75815E-05 | 343 |
S121 | 1.2 | 137 | 26 | 0.444444 | 0.000307664 | 154 |
S122 | 1.2 | 73 | 31 | 0.644444 | 0.000128543 | 205 |
S123 | 1.2 | 6449 | 240 | 0.808333 | 0.018095272 | 56 |
S124 | 1.1 | 34 | 14 | 0. |