Yeah, right. Beat Sonny on that. And I'll talk about my, really my one trick which is factor graphs. But today I'll talk about factor graphs for action. Is this too loud, by the way? Is this good? All right, So quick outline. If you're not familiar with factor graphs and we're going to give it a quick intro. I'll talk a little bit about deep factors which are exciting because everything with deep is exciting disease. But then I'll talk about factor graphs for action. So we've done some work in our lab. But motion planning, we extended it to a keynote, dynamics and we're applying it also to art in a project that I share with sets and sang from the design school. So what are factor graphs? Well, factor graphs are a magical graphical model that you can use for basically any estimation and planning problem in robotics. So just remember that, okay, that's one takeaway. So you can do tracking, you can do switching systems. I'll talk about that a little bit. So optimal control, pull, slam, slam, and structure from motion, which is a 3D reconstruction. And all of them have the same structure really, it's a graph of unknowns and factors. And the factors represents probabilistic constraints or cost functions in the case of optimal control. And you want to make the variables, you want to change variables around to make the factors as happy as possible. So in optimal control, you're minimizing costs In, in a tracking probably are minimizing error on your emotion models and observations. In slam, you're trying to also minimize the re-projection error from landmarks. So there also are basically the same mathematical problem, okay? In the same graphical framework. And they expose factor graphs, the opportunities for raw speed because if you know the structure of this graph, you can make them fast. Specifically the sparsity of the graph at how to graph is connected. You can play with that to create very fast computations and even increments of computation. And that's what I've been doing for the last 10, 15 years here at Georgia Tech in other places. So, so we've applied this in many different application domains. Typically slam a structure for motion. So underwater Slam of sunken coral reefs, multi quadrotor, navigation, underwater robots. And Scottie, oh, I've, I've helped build the most powerful autonomous drone in the world, which is to schedule a drone. And it's using factor graphs throughout. Lately, we've also been playing with deep factors and other people have been playing with deep factor. So this has not worked by us. The factor graphs have been picked up by people in perception and robotics. And so this is from Imperial College, a guy, young Karnofsky who is now going to actually work for Boston Dynamics. So he created factor graphs for doing sort of incremental slam real-time then slam using learned factors. So that's that's using data-driven approaches. And we have our own approach. We had a collaboration with Google called Swift fusion, where we use the language Swift's, which has a deep integration with TensorFlow to create fats automatically differentiated factors. And so we're combining probabilistic estimation with optimal control to do, to cool stuff. So an example of, of, of the work that we do there is work by var1 and fan in my lab. You can use folds are discrete modes in assistance as factor graphs. So here's a Bayes nets, but the corresponding hybrid system, which is a hybrid switching system, has some discrete modes and a continuous Markov chain with a bunch of factors governing this system over time. So this is a layout in time. And then you can, in theory, you can just give this to an elimination algorithm to solve this, okay? However, elimination in discrete factor graphs is, has exponential complexity. So the work that we've been looking at is to turn this mess of an illuminated graph into a tree, a hypothesis tree, which has actually a very old idea in estimation. So you, your layouts all possible ways that modes it could, it could have been evolved over time in a tree. But we make this into a smoothing problem rather than a filtering. So you see this typically in filtering. Nuts insert a large, larger scale optimization problems. So 11 example application if you want to see a robot, see it. Here is an animal. Robots from, from company in Switzerland. And so an application is to figure out purely from proprioceptive signals what the step sequence watts over time. So it can we get the discrete modes. Here is the sub-sequence of the robot. And you want to integrate that with, with powerful state estimation algorithms that make use of IMU and kinematics and everything. But I promised to talk about factor graphs for action. So this will all estimation is sort of setting the stage. In my lab. We've been doing motion planning and this is joint work with Byron boots and some joint students I had with Byron before he abandoned us for Northwest. So you can actually do trajectory optimization and layout a trajectory optimization problem as a factor graph. And then that becomes an optimal control problem in a way, right? So, and so it'll be optimized for both controls and states at the same time. And this is competitive and beats other approaches like chomp for trajectory control, trajectory optimization. And because we came from a slam backgrounds, we also know how to incrementally optimize which these people didn't know about. So now we have an incremental emotion Planner. Builds on sort of slam technology, right? And we can of course put the two together. And so the two together, it's sort of state estimation or trajectory estimation and planning at the same time. And that is a paper that we did in 2018. Byron and macadam and my students Xing Dong, on steep. And so steep is, is, is something that I'm very proud of and that we can use in a variety of different applications, including with spit Panos and I'm regard to do something in space with seep. So motion planning is typically sort of a kinematic question, but, but, but, but if you want to add dynamics to it, so, so people have been using factor graphs also to model bipedal locomotion. And this is still state estimation, but it's really nice to see that people have used factor graphs to model kinematics. Okay? Also a quadrupeds kinematics. And then fuse it in a flexor. And these are not my figures. Okay, These are figures from other people that wrote estimation pipelines in quadrupeds with IMU pre integration, which is, which also came out of our lab, stereo, visual inputs. And then have factors that more sort of model kinematics and contact n-bits. My students, Mandy, she, we extended this factor graph approach to model kinematics to dynamics. So we took basically Lynch and park, which is the coolest robotics book In, in, in the current literature. Set is upset because he has his own book which, which, which, which competes with this. But Lincoln Park has, is beautiful mathematical manifold. It's really the book that I would recommend to learn about manifold optimization and things like that in the context of robotics. And so be poured out into a factor graph and then just keep it to GT sandwiches are affected graph optimization library and routines like kinda, kinda dynamic motion planning. And so this is a cookie arm which takes into account sort of the joint angles and the torque limits of this arm to plan emotion which first goes to closer to center of mass in and extend upwards. Rotterdam, an infeasible motion that doesn't know about dynamics. Of course, you can also use that in the context of state estimation. So if you can model the dynamics of say, a quadrotor in this case using a factor graph. And how the dynamics derives from motor commands, then you can optimize for both controls and states at the same time and recovered the unknown, the hidden motor commands that were given to the quadrotor. And this is work by var1 and Varun a. Publish that in the crests or you can read that paper. We're not working bits I image the HMC, which is an outfit in Florida Pensacola, which has a lot of outlets, robots and other robots. And also Oxford and extending these ideas to then legged robots, which are dynamically, of course, much more complicated. And I'll end in the last two minutes on what we're applying this to here at Georgia Tech at an art. So these aren't my phone, some of my favorite paintings across a couple of centuries. So it's Botticelli from the, from the 15th century. Mayor from the 16th century. And this is a lesser, lesser number is Alma Tadoma. He was at 1, the most expensive painter in Victorian England. And then a 100 years later you could, you could buy there his paintings for the price of the frame. Okay. Unfortunately that time is over because I would love and ulna Tata, my in my house. But I think this one goes for like a million or so on. So it's so arts can go up and down. Now we started a little bit less ambitious with graffiti. So this is, this is just our fetch creating some, not tie-dye but graffiti t-shirts. I said it was our very first endeavor into art. This is work by Jerry Chen in my lab who has designed a cable robot to do graffiti. So this is a simulation of how a cable robot could create graffiti art and lots of dynamic stair. So we hope to apply factor graphs and optimal control there. Unfortunately, reality is still a little bits are sent to real gap. So here is one of our sort of experiments and trying to do this in, in real life. And clearly we're still quite a ways ahead. Quite a ways to go but, but, but we're getting there and the pandemic has put in a bit of a dent in our experimental plans, but we're getting there. We also played around with sculpture. This we've only been able to do well in simulation when we tried it in real time. It was really horrible. I won't even show you the pictures. But we did publish an Irish paper on calligraphy so that this fetch robot, we actually switch. You're not a robot because this fetches on rubber wheels and that's not great. But you can give me any Unicode character or we can give it to append that robots. And it will paint the, the character. And it does that by optimizing polynomial trajectories for each stroke using, using G2M. Here also, there is a seem to real gap because e is actually the optimization that we do to try and figure out what's the optimal trajectory, isn't it? It has a modal of what the robot would do with the brush in the loop. But if she doesn't really do it with robots, you can still see that that there is a Taiwanese friend of mine said this is sorta calligraphy at the level of an eight-year-old. Okay? With very good geometry DO execution, right? So anyway, that's, that's where we are now. So I hope to get to Botticelli in my lifetime. But we'll see. All right, thanks a lot. It was super clear. So alrighty. Thank you. Oh, there's a question. I'm sorry. So let's get off your Horace Mann. The he's still bitter about that. So two, there's a 2017 sort of send a journal paper that Michael case and myself wrote called factor graphs for robot perception. And there is a 2021 annual reviews paper. But she's actually linked as my pin tweet. So you can follow me on Twitter, f del act. And my pin tweet is that paper. So yeah. Thanks again.