Komentáře •

  • @viviansusername
    @viviansusername Před rokem +13

    Earned a sub for this series, not many people are able to explain what you did here

  • @madman2572
    @madman2572 Před 9 měsíci

    Holy crap. What an amazing series. You repeated yourself just enough throuought to drive home the common themes but it never once felt slow. This is top univetsity lecture quality.

  • @BigBrainAFK
    @BigBrainAFK Před rokem +2

    I would love to hear how the practical encoders could be improved further.

  • @Zweiston
    @Zweiston Před rokem +6

    This series has been very interesting and gave me a lot of new ways of looking at encoders.
    Since the second episode came out I've been working on a bit of math behind those encoders as well.
    I found some of the things you mentioned in this video such as the b - 1 choose t - 1 thing for calculating the number of items per chest. Here are some more things I found that you might be interested in:
    The amount of items that can be encoded using a certain number of chests gets more efficient as the number of chests grows, since the portion of lower token codes grows as well. The encoder is thus most efficient once 1- and 2-token codes are enough to fill the chests. This happens when:
    (b - 1 choose 1 - 1) + (b - 1 choose 2 - 1) >= 54
    1 + b - 1 >= 54
    b >= 54
    So, the encoder is most efficient when the number of chests is larger or equal to the number of slots per chest.
    Using double chests, you reach maximum efficiency at 54 bits, which is enough to encode 1485 items (unlike ~4000 as was mentioned in the video).
    Each 1-token code occupies one slot per chest. However, there can only ever be one 1-token code per chest.
    That leaves us with 53 slots and 1 item per chest. Now, let's fill the rest with 2-token codes:
    Each 2-token code takes away on average two slots per chest, so dividing the remaining 53 slots by 2 shows that each chest can additionally hold 26.5 2-token codes (on average). So the total number of codes per chest at maximum efficiency is 27.5 or (slots - 1)/2 + 1 = (slots + 1)/2.
    s((s + 1)/2) = (s^2 + s)/2 is thus the threshold of items at which the encoder reaches maximum efficiency.
    In the case of 54 slots that happens at (54^2 + 54)/2 = 1485 as already mentioned.
    I hope you found these things at least somewhat interesting.
    I'd also be interested in taking a closer look at the optimized practical encoders you mentioned at the start. Are there any resources available where I could learn about those? Or do you plan on making a video about them once you've gained a better understanding of them?

    • @whitestonejazz
      @whitestonejazz Před rokem +2

      This is great. I like this perspective for chest efficiency. A 54-filter encoder would be double nice since the number of filters is also the same capacity as a double chest. Obviously not a coincidence. But it could be a matchup for automatic filter loading or something like that. As for information on the practical encoders, I don't know of any public explanation videos. I got to learn about them cause some people on discord who work on them shared their designs with me (and I don't wanna make videos explaining other people's designs). Hopefully once my discord friends finish their project they'll make a few walkthrough videos

    • @FreeAsInFreeBeer
      @FreeAsInFreeBeer Před rokem +2

      @@whitestonejazz could you namedrop the channels that would publish the walkthroughs? :) Also, this series was awesome! (especially episode 1-3) really nice application of math!

    • @whitestonejazz
      @whitestonejazz Před rokem +2

      @@FreeAsInFreeBeer yah, this person might publish more encoding info: www.youtube.com/@DatNerd

  • @designconker4796
    @designconker4796 Před rokem

    This series is phenomenal. I have never been good with coding but I recently started getting a grasp of binary (due to coders and encoders) this was a lot of great information given in an easily understandable way.
    I actually used encoders and decoders to make automatic teleportation (eye stasis chambers) that could choose a player and location, in a similar fashion to the code and groups from the last video, using custom names items and a lectern with a redcoder.
    I guess in short, I am slowly understanding coding and its use. So far this is the best series I have found that has explained it well. So thank you, you earned a like on every video and a new subscriber. 😊

  • @metamilo
    @metamilo Před rokem +2

    This was an amazing series, thanks for putting in the effort to produce it.

  • @YellowBunny
    @YellowBunny Před rokem +4

    Another way to look at why bit codes of length b with exactly t tokens contribute choose(b-1, t-1) items to the filters is to just focus on 1 of the bits. There is a certain set of codes where that bit is 0 and another set where that bit is 1. We only care about the set where it is 1. To find its size we only need to realize that there are t-1 other bits that are 1 distributed across the other b-1 bits. Thus the the set has size choose(b-1, t-1).
    If you also consider the other set which has size choose(b-1, t) you get to the recursive relationship that can be used to generate Pascal's Triangle: choose(b, t) = choose(b-1, t-1) + choose(b-1, t).
    I would also like to point out that I know what you refer to as the number of tokens of a bit string as its (Hamming) weight.

    • @whitestonejazz
      @whitestonejazz Před rokem +2

      That's a really nice way to think of the choose(b-1, t-1)

  • @demise3700
    @demise3700 Před rokem +2

    Really well made series, great explanations. Great job!

  • @Yusuf-yx7dd
    @Yusuf-yx7dd Před rokem +4

    GG's on one thousand subs!

    • @whitestonejazz
      @whitestonejazz Před rokem +1

      Thanks. I have a celebration project planned later this week 🙂

  • @nedm7128
    @nedm7128 Před rokem +1

    This is fascinating stuff. Thanks for the great content

  • @jmnero4447
    @jmnero4447 Před rokem

    Hey mate, I'm thankful for this series! I was thinking about using some item encoding for a large project I have planned.
    The videos in the series definitely shed a lot of light on the subject, and it convinced me to utilize item encoding within the project. It will certainly make things much easier, and it will reduce the processing time along with saving space.
    Kudos! (I subbed when CraftyMasterman gave you a shoutout on his community tab a month or so ago)

    • @jmnero4447
      @jmnero4447 Před rokem

      Just a follow up, have you considered making a series for decoding the bits? I bet it would be quite interesting!

  • @TheKd8lvt
    @TheKd8lvt Před rokem +1

    Proof that ((choose(b,t)*t)/t) = (choose(b-1,t-1)):
    Since the equation represents how many items are being added to one of the filter chests, we only care if the bit corresponding to the chest is ON.
    For every code where the bit is ON, there is a code where the only difference is that the bit is OFF.
    Since we don't care about any of the codes where the bit is OFF, we can safely subtract 1 from b, as that eliminates the entire set of codes where the bit is OFF.
    Additionally, since we _certainly_ don't care about any of the codes where _NONE_ of the bits are ON, we can subtract 1 from t as there is exactly one code where there are zero bits ON for any given number of bits.
    I may have reversed b and t in those last two steps... it's almost 2AM currently, and I never properly learned binomials in school 😅

  • @wChris_
    @wChris_ Před rokem +1

    this is really interesting and probably answers my questions i had on the first video of the series.

    • @whitestonejazz
      @whitestonejazz Před rokem +2

      haha, I saw your earlier comment and was wondering if I should reply or wait for you to find this video. Glad you found it

  • @WilliametcCook
    @WilliametcCook Před rokem

    7:23 We want to know how many on bits are in each column?
    Take all of the t-token b-bit numbers with the first bit on.
    How many are there? Well there's b-1 bits, and t-1 tokens left, so there's b-1 choose t-1 possible numbers with that bit on.
    Since each bit is functionally the same, and this would work with any bit, not just the first, it must be true for all of them.

  • @connor2094
    @connor2094 Před 7 měsíci

    Now i have 27 outputs compressed. But i need 27 different signals again to send shulkers full of each type of item. Idk how to decode it again

  • @sonjakollischan2665
    @sonjakollischan2665 Před 8 měsíci

    I saw all of the 5 encodeing Videos. And it helped me a lot. But math´s in english is hard to understand. Maybe i find the same kind in my Language. For my minecraft encoder.. i use a hexadecimalystem with 3 digits. Witch means i can code 4096 Items. I will not use all codes, but maybe in the future the will be some new items.

  • @arandominternetuser5614
    @arandominternetuser5614 Před rokem +1

    any chance of a world download?

  • @danielrhouck
    @danielrhouck Před rokem

    You said that this video is it for the encoder series but you also said last video you wanted to do a video on the specific encoder you were working on then but hadnʼt figured everything out for yet, and this video that even more improvements were possible; Iʼd be interested in hearing more about both of those.

    • @whitestonejazz
      @whitestonejazz Před rokem +1

      Some other technical minecraft players already had much better designs than anything I had. So it seemed easier to just wait for them to finish than try to build the final encoder myself

    • @danielrhouck
      @danielrhouck Před rokem +1

      @@whitestonejazz Makes sense. Do you have somewhere to point me to for other examples? I tried datnerd, who you suggested in a video, and pallapalla who I think used to be the best at this but hasnʼt uploaded in four years

    • @whitestonejazz
      @whitestonejazz Před rokem +1

      @@danielrhouck I'm not sure there are any in-depth explanations. In fact, the math still involves some unsolved combinatorics problems. But besides the math, the main problem is figuring out how to encode multiple items at the same time with one machine. There's some clever ways to do it where your minecarts wrap upwards in an S-shape, re-stocking the filters they just pulled from while at the same time passing under another higher up row of filters