minecraft吧 关注:2,541,332贴子:31,782,959
  • 11回复贴,共1

【数据】人工矿道树形挖矿下分支矿道的最佳间隔

取消只看楼主收藏回复

几个月前做好的成果了,一直没时间发出来
今天终于有时间整理了。。
楼层比较多,大家尽量不要插楼


1楼2014-04-09 09:15回复
    众所周知挖矿有探索天然矿洞和开人工矿道两种方法
    由于天然矿洞深度和表面积都很随机
    因此如果目标是获取高级矿物的话,在低y值开树形人工矿道可以较高效率的稳定开采
    最常见的高度是在y=11,避免了大部分的y=10及以下的岩浆湖,并且处于钻石层中间
    注意到,矿物是以矿脉进行生成的(绿宝石除外),几个连续的矿物方块形成一个矿脉
    考虑到矿脉体积都比较大,很常见的一个应用就是分支矿道的间隔使用3格而不是2格
    尽管间隔2格可以得到100%的矿物,而3格会有中间的一列失去视野
    但是由于矿脉的分布,即使中间一列中有矿物,矿脉也会延伸到两侧的分支矿道里
    从而尽管间隔为3格但是也同样收获了绝大部分的矿物,进而提高了人工矿道的效率
    接下来我们延伸这个思想,考虑一下其他矿物的情况
    以钻石为例,平均一个chunk里会刷出3.10个钻石矿,而钻石矿矿脉大小为1-10
    也就是说,平均一个chunk里大概会有1个钻石矿脉左右
    如果我们矿道之间间隔3的话,一个chunk里就有很多矿道是根本不可能遇到钻石矿脉的
    也就是说,如果目标是钻石的话,这些矿道就根本没有效益,降低了效率
    假如我们把矿道间隔提高到一定大小,让矿道尽量少,但是仍然能遇到大部分的钻石矿脉
    那么就相当于提高了人工矿道的效率
    因此本帖的研究目标就是
    针对一种矿物的情况下,分支矿道间的间隔为多大才可以达到最高效率?
    或者另外一种可能,分支矿道间的间隔对效率根本没有影响?


    7楼2014-04-09 09:37
    收起回复
      接下来就是进行研究的设计了
      既然要研究不同分支矿道间隔对效率的影响,那么就需要进行多次挖矿
      由于世界生成器有随机性的,那么要进行很长的挖矿才能对效率下定论
      这样的话,人工进行挖矿测试肯定是不现实的
      而在游戏中进行挖矿模拟(例如命令方块统计)也并不现实
      因此最后确定下来的方案就是
      使用MC生成样本地图之后,用第三方工具把地图的方块数据取出来
      接下来自己编写软件对数据进行模拟挖矿并分析


      9楼2014-04-09 09:45
      回复(13)
        第二步,把样本世界转换为方便读取的数据
        最后要进行编程模拟挖矿的话
        那么就需要把样本世界的数据处理成方便编程处理的数据
        虽然说可以直接读写存档文件来获取方块信息
        但是已经有很多现成的工具可以提供类似信息了
        使用Minutor这个工具,可以观察存档中某个y平面的截面图
        利用这个工具可以很轻松的获取y平面的方块数据
        对这个工具进行截图,编程读取即可
        下面是第二个样本世界y=11处的截图
        同样的进行了所有4个世界的y=6到y=15的所有截图
        这些截图可以很简单的进行编程读取


        16楼2014-04-09 10:10
        收起回复
          因此最后的数据就出来啦
          下面是钻石的数据:

          2 60832 411.5 0.676%
          3 46234 358.9 0.776%
          4 37528 285.1 0.760%
          5 31770 247.0 0.778%
          6 27678 217.3 0.785%
          7 24466 184.6 0.755%
          8 22176 168.0 0.758%
          9 20110 152.8 0.760%
          10 18580 139.1 0.749%
          11 17306 136.3 0.788%
          12 16146 127.7 0.791%
          13 15262 116.3 0.762%
          14 14350 109.7 0.764%
          15 13570 97.2 0.716%
          16 12928 100.2 0.775%
          17 12430 95.0 0.764%
          18 11916 93.1 0.781%
          19 11386 86.6 0.761%
          20 11010 83.8 0.761%
          图中横轴为分支矿道间隔,从2到20
          深蓝色是发掘率,计算方法是矿物产量/矿道体积
          浅蓝色为发掘量,以分支矿道为2时的矿物产量为100%计算
          下面数字数据第一列为分支矿道间隔,第二列为矿道体积,第三列为平均产量,第四列为发掘率
          从图中可以看出,分支间隔为6时是一个产率小高峰,0.785%
          而在分支间隔为12时是最高峰,0.791%
          因此目标钻石的话分支矿道间隔最佳为12(面积有限制的话间隔6也可以)


          34楼2014-04-09 10:48
          收起回复
            红石:

            2 60832 3371.7 5.543%
            3 46234 2944.3 6.368%
            4 37528 2406.8 6.413%
            5 31770 2031.7 6.395%
            6 27678 1782.6 6.440%
            7 24466 1564.8 6.396%
            8 22176 1422.8 6.416%
            9 20110 1286.5 6.397%
            10 18580 1194.4 6.429%
            11 17306 1104.5 6.382%
            12 16146 1055.4 6.537%
            13 15262 998.2 6.541%
            14 14350 935.9 6.522%
            15 13570 883.0 6.507%
            16 12928 836.3 6.469%
            17 12430 796.2 6.405%
            18 11916 756.9 6.352%
            19 11386 728.5 6.398%
            20 11010 703.7 6.391%
            分支间隔12:6.537%
            分支间隔13:6.541%


            36楼2014-04-09 10:54
            收起回复
              绿宝石:

              2 60832 169.4 0.279%
              3 46234 128.2 0.277%
              4 37528 104.5 0.278%
              5 31770 87.3 0.275%
              6 27678 79.0 0.285%
              7 24466 66.3 0.271%
              8 22176 62.4 0.281%
              9 20110 56.3 0.280%
              10 18580 51.8 0.279%
              11 17306 48.2 0.278%
              12 16146 45.0 0.278%
              13 15262 43.6 0.286%
              14 14350 40.5 0.282%
              15 13570 36.3 0.268%
              16 12928 36.8 0.285%
              17 12430 34.7 0.279%
              18 11916 33.2 0.278%
              19 11386 32.2 0.283%
              20 11010 31.9 0.289%
              分支间隔6、16:0.285%
              分支间隔13:0.286%


              38楼2014-04-09 10:58
              收起回复
                金:

                2 60832 494.9 0.813%
                3 46234 435.4 0.942%
                4 37528 359.8 0.959%
                5 31770 299.3 0.942%
                6 27678 256.7 0.927%
                7 24466 229.4 0.937%
                8 22176 212.9 0.960%
                9 20110 189.1 0.940%
                10 18580 166.0 0.893%
                11 17306 164.3 0.949%
                12 16146 147.5 0.914%
                13 15262 134.2 0.879%
                14 14350 133.6 0.931%
                15 13570 126.0 0.929%
                16 12928 124.7 0.964%
                17 12430 119.2 0.959%
                18 11916 114.4 0.960%
                19 11386 103.7 0.911%
                20 11010 96.0 0.872%
                分支间隔6:0.959%
                分支间隔8:0.960%
                分支间隔16:0.964%


                39楼2014-04-09 11:00
                收起回复
                  总结
                  对于比较稀有的矿物来说,分支间隔的确对产率有影响
                  以钻石为例,平均产率是0.766%,而在分支间隔12时产率为0.791%,提高了3.3%的效率
                  除了红石以外,其他矿物通过改变分支间隔都可以提高3%左右的效率
                  红石最高只有1.7%的效率提升,但是仍然是个不错的数字
                  这对于经常使用人工挖矿的同学来说是个很不错的效率提升
                  因此在重新开人工矿道的可以考虑一下不同的分支矿道间隔
                  以提高目标产物的产率


                  44楼2014-04-09 11:14
                  收起回复
                    终于写完了。。
                    个人对这次研究的感觉,很不错的编程和解决方案的设计练习
                    实际应用的话,对于原版的初期来说应该有很不错的应用
                    而对于后期建起了刷铁厂之后就很少再下矿了的话,实际应用也不怎么样
                    总之对于喜欢人工矿道或者目前使用人工矿道的人应该会有所帮助吧
                    好吧就是这样了 = =


                    48楼2014-04-09 11:19
                    收起回复