The timeline was later published to their YouTube channel 4 days ago [2].
[1]: https://www.facebook.com/Avid/videos/-the-full-editing-timel... [2]: https://www.youtube.com/watch?v=upTs-HTThMM
1,167 karma · joined June 22, 2023
The timeline was later published to their YouTube channel 4 days ago [2].
[1]: https://www.facebook.com/Avid/videos/-the-full-editing-timel... [2]: https://www.youtube.com/watch?v=upTs-HTThMM
Practically speaking, I would recommend encoding as much model information as possible before pulling out the I term: for instance, if you know the velocity of your tracked object and assume an intertidal model, you can just include some of that data in your feed forward rather than the controller, which simplifies things greatly.
I've gotten a little negative feedback, but that's by far in the minority. Most people on the internet are very nice and I've gotten lots of friendly emails from people I've never met. Definitely give it a try - I would suggest doing a github.io page to get started, but you can of course go the self-hosted route if you're into that sort of thing.
Steam also has family library sharing, which allows games to be shared across accounts (with some restrictions).
First of all, I explicitly signed up to teach. At my university, fewer than ten undergraduates per semester teach a class, and typically it's for students who want to hang out and teach something they like. In order to teach, they have to take an introductory class on pedagogy first, which mostly covers assignment and syllabus design.
The student-taught-course program at my university exists far more for the (undergraduate) instructors' benefit than to teach students; its job is to give students a chance to experiment with teaching early on.
Yes, I'm fully aware of the fact that teaching isn't really a priority in academia - for that reason, I probably won't be reviving my class in the near future. I really do like teaching, but it doesn't get me much closer to any of my current goals.
I know there's a nontrivial overhead to using index-based references, especially since CPUs can't easily predict load operations. This gives me an idea: create a CPU architecture where pointers are actually (object, offset) tuples, enabling better on-metal performance with index-based references. I've neither the time, money, expertise, nor energy to implement such a thing, but it would be really cool if it existed - maybe CHERI is a close approximation, though I haven't looked very closely at it.
I actually haven't read that paper! Thanks for sharing it. What I'm doing is slightly different - it looks like they're building a conservative GC with an unsafe API, much like one might for C. My intent was closer toward building a GC which can be used with any safe Rust code more or less unconditionally.
https://arxiv.org/pdf/2307.01850.pdf
The paper is quite approachable and worth a quick scan. In essence, reusing output from previous generations results in rather wonky results which are clearly separable from the original training data.
https://web.archive.org/web/20230710192244/https://semianaly...
The authors of that post also don't seem to have any links to OpenAI, or any real credibility on the topic other than "trust me bro."
Yam Peleg's LinkedIn post appears to have been deleted, and even if it still existed, he's not exactly an insider to OpenAI. Without any real verification of these claims, it's hard to believe.
Unfortunately maker-spaces (the only kinds of places where you could get cheap access to good 3+ axis CNC mills) seem to have gone out of fashion. CNC mills in general cost about 5 digits just for the machine, and usually that again for the tooling.
I think the closest one can get to learning some DFM without working on a machine would be watching machinists on YouTube. Back in the day NYC CNC was great, but I think they post more hype content these days.
I'm far from an expert on the topic, but I spent a decent amount of time designing for and then fabricating stuff on CNC machines over the last couple years. To my knowledge, operations are cheap while setups are expensive: if you can design a part around a fixed orientation in a machine, it saves a lot of operator time.
The final result was that a `const` lookup table yielded +19 Elo over dynamic magic generation, while a `static` one yielded only +10 in a tournament between all three. Elo is non-linear and dependent on the set of competitors, so that's why it has no relation to the +6.6 from the end of my post.
My suspicion is that moving to `static` removes the ability to optimize against the magic table when the query is known at compile time, since I often use magic lookups from fixed squares and occupancies in places other than move generation.
I also found that it yielded no change in compile time or binary size, so it was basically all disadvantages to use `static`.
Some background: I taught a class on chess engines this spring (at some point, I'll write up a postmortem on it, maybe). This post was originally derived from my lecture notes for the class, and was (if I remember correctly) the 5th lecture, so I could make more assumptions about the students being steeped in chess-engine lingo.
Josh Triplett is entirely correct here on the masking technique. There are two steps to sliding-piece move generation: first, creating the set of squares a piece can "see," and then the set that it can attack. Magic bitboards are used for generating the set of squares a piece can see.
In terms of where magic bitboards come from: there's not that much in terms of logical derivation. You just have to kind of squint and say, "yeah, I believe that'll work." Magic numbers are found by brute force trial-and-error.
Collisions are caused when the magic multiply doesn't actually yield a perfect bit extraction. Imagine if O * M >> 59 was instead some gross expression of all five bits. The magic number for B1 here is actually an exception - things are not usually so easy. However, if two different positions have the same attack set, and they get sent to the same index by a magic multiply, it doesn't matter that they collided because they map to the same value.