WEBVTT
00:12:48.000 --> 00:12:58.000
okay. So now, let me move to the topic. So so you know, as you deal with more complex and realistic systems.
00:12:58.000 --> 00:13:06.000
Well, you are forced to deal with numerous numerous unknowns and effects of unpredictable events.
00:13:06.000 --> 00:13:11.000
The from accidents on on roads leading to bottlenecks to maybe climate.
00:13:11.000 --> 00:13:20.000
2 extreme weather events, and that disrupt our power networks and you don't even have to go there even in more structure.
00:13:20.000 --> 00:13:32.000
Environments like where you have factory floors, maybe where you have robots deployed with humans, there may be some unexpected things that may lead to casualties.
00:13:32.000 --> 00:13:50.000
So under this circumstance you, we are faced with the main question, which is how to how we can ensure that our control designs, our control decisions retain the performance that we intended and are better than any random control action.
00:13:50.000 --> 00:13:57.000
Okay, So this is a question that has been approached from different sites from optimization.
00:13:57.000 --> 00:14:12.000
You can just start with a basic stochastic optimization by which you try to and minimize the spectral value of a cost where expectation is taken with respect to some uncertainty.
00:14:12.000 --> 00:14:22.000
Very well. Okay. So usually in the standard formulation. you consider this model of uncertainty is known and given by a certain probability distribution.
00:14:22.000 --> 00:14:35.000
Okay, So that's great. However, in those complex situations that's a strong assumption to make this distribution is typically not known as clearly to cope with this.
00:14:35.000 --> 00:14:53.000
You may think well, I mean, maybe we can consider a robust optimization formulation by which you replace the spectral operator by a worst case, a supremeum operator. So in that way the uncertainty belongs to a certain set which
00:14:53.000 --> 00:14:59.000
is representing the possible support of the unknown distribution.
00:14:59.000 --> 00:15:12.000
Okay, So this is a bit better in the same that you don't have to know exactly what the shape of the distribution is to solve this problem, but still you have to make some assumptions.
00:15:12.000 --> 00:15:24.000
You have to know the support. set even. and then, of course, that could be something that you take a conservative approach.
00:15:24.000 --> 00:15:30.000
Take a very large set which results into solutions that are conservative.
00:15:30.000 --> 00:15:37.000
In addition, our problems are a bit in general a bit harder to to solve.
00:15:37.000 --> 00:15:41.000
Okay. So now, what? so? So in this situation there are several things you can do.
00:15:41.000 --> 00:15:52.000
But now, with the whole drive for considering data, the week era, you know the big data era is that that we are in right.
00:15:52.000 --> 00:16:02.000
So all of us are, or many of us have, looking into considering approximations that make use of data to construct more informed solutions. Right?
00:16:02.000 --> 00:16:12.000
So how can we do that? And so, going back to stochastic optimization, what you can do is to replace your uncertainty.
00:16:12.000 --> 00:16:23.000
Your Pdf with something that is an empirical distribution, using data and replacing the specter operator by sample.
00:16:23.000 --> 00:16:38.000
Average approximation. And okay, And so, if we if we do that, if you take samples that are identically distributed, we know that eventually this is gonna work. The sense that as the number of samples goes to infinity, this problem is going
00:16:38.000 --> 00:16:42.000
to approximate it's going to converse to the original one.
00:16:42.000 --> 00:16:56.000
The problem here is that you don't know exactly How much data you require in order to have a solution that it is robust to data points that you haven't seen yet 100.
00:16:56.000 --> 00:17:07.000
This is the issue of generalization that is studied in machine learning, and you know there's been lots of things to pretend about it right?
00:17:07.000 --> 00:17:10.000
And that, you know, is just a lack of robustness.
00:17:10.000 --> 00:17:15.000
And this was something that, for example, was shown in this example.
00:17:15.000 --> 00:17:28.000
This is a classification example, and this is a paper by good fellow and others where, you know, they train a classifier using a set of data.
00:17:28.000 --> 00:17:39.000
However, once you have the result, if you use those variables in that, you got from the classification to predict 200, some other data, right?
00:17:39.000 --> 00:17:44.000
What it is in this case is the image of a panda plus some 2 perturbation of these right.
00:17:44.000 --> 00:17:48.000
So the result was 200, you know, was was off.
00:17:48.000 --> 00:17:50.000
It was not at all a phenomenon. Right?
00:17:50.000 --> 00:18:02.000
So. So this is this lack of robustness that i'm talking about, or pull out of sample performance. all right. So to address this, there's a new approach.
00:18:02.000 --> 00:18:08.000
This is called a distributionally robust optimization, or you can also call it ambiguous.
00:18:08.000 --> 00:18:18.000
Stochastic optimization. By means of this you are referringulate your problem as a minimization over the worst case.
00:18:18.000 --> 00:18:25.000
Expectation where the distribution here belongs to something that is called an ambiguity.
00:18:25.000 --> 00:18:36.000
Set something that you construct using data. Okay, So so where is this? Exactly So It is a set of probability distributions.
00:18:36.000 --> 00:18:44.000
And to be sure that you are doing the right thing. You would like this set to contain the through the distribution with high confidence.
00:18:44.000 --> 00:18:54.000
There are various ways of picking this set, For example, what you can do is you can take P is the set of 4 of your 260 probability distributions.
00:18:54.000 --> 00:19:02.000
You and the final function over this set like divergence, and then you construct this ambiguity set.
00:19:02.000 --> 00:19:21.000
There are, you know, different different different ways of doing this. Now one particular approach relies on using that Westerstein or optimal transport metric, which is just a metric on this set of probability distributions on in Lp You
00:19:21.000 --> 00:19:29.000
have different wps that you can use. But anyway, once you have a metric, what you can do is construct this ambiguity.
00:19:29.000 --> 00:19:37.000
Wall, the ambiguity set as a ball center at the empirical distribution, and with a certain radius.
00:19:37.000 --> 00:19:45.000
Now there are recent concentration of measure results that tell you how you should take the wall.
00:19:45.000 --> 00:19:50.000
What should the radius be? And the radius is Even here is a function of the data set.
00:19:50.000 --> 00:19:57.000
You have, and the conf confidence you would like to have 200 on the wall. right?
00:19:57.000 --> 00:20:04.000
So that this property happens. Okay, So what you would like to do is you would like to have.
00:20:04.000 --> 00:20:13.000
Is that the true probability distribution that generates the samples is in this ambiguity set with high confidence.
00:20:13.000 --> 00:20:21.000
And here the probabilities with respect to the valueization of the of the samples in constructing the video.
00:20:21.000 --> 00:20:28.000
Okay, 2. So in other words, here, what you would like is to have a very large one minus better.
00:20:28.000 --> 00:20:33.000
So a large confidence Also, what you would like to do is have a very small radius.
00:20:33.000 --> 00:20:39.000
So you are really close. Some empirical is really close to the true distribution.
00:20:39.000 --> 00:20:44.000
I have a plot of how this function goes but i'm I'm gonna explain later.
00:20:44.000 --> 00:20:54.000
Better. what's the functional expression? one way of making these radios small is by increasing your number of data points.
00:20:54.000 --> 00:21:00.000
N: Okay, So you you fix that confidence. You increase and you you make this radio small.
00:21:00.000 --> 00:21:10.000
Okay, great. Now, these sets are also useful in reformulating the arrow problems in a tractor way. Right?
00:21:10.000 --> 00:21:14.000
So you have these problems. These are infinite dimensional problems.
00:21:14.000 --> 00:21:30.000
So how can you solve them right? And so it was as Farhanie and Kun, who came up with a way of reformulating them by means of using a sample average approximation associated with empirical together with a
00:21:30.000 --> 00:21:35.000
constraint set that really comes from the ambiguity of the water-time board.
00:21:35.000 --> 00:21:42.000
So they show that under some conditions the distribution has to be light. tail.
00:21:42.000 --> 00:21:57.000
And this is really for a special type of functions. so you can prove the following robustness Result: that says that if you solve the equivalent problem
00:21:57.000 --> 00:22:02.000
I know, fain a decision and a cost value right for a given data set.
00:22:02.000 --> 00:22:13.000
Then the probability that when you use that decision that calculate the decision on the true problem, you get 200 cost that is higher than the calculator.
00:22:13.000 --> 00:22:22.000
Cost right. the probability of that going to be very small. So this very small is given by this beta.
00:22:22.000 --> 00:22:32.000
Okay, so that's good robustness. performance Okay, great So now, at this point I can tell you what problem we look at here.
00:22:32.000 --> 00:22:38.000
So this is the whole motivation. why we consider this problem now.
00:22:38.000 --> 00:22:47.000
What we wanted to do to do is use this in dynamic environments where you have access to data progressively.
00:22:47.000 --> 00:22:52.000
Maybe this data, you know, is a streaming somehow, and you would like to incorporate it.
00:22:52.000 --> 00:23:04.000
A little while later. Right? Maybe something we can exploit is if we know we have some knowledge of the uncertainty, evolution, the dynamics of this uncertainty.
00:23:04.000 --> 00:23:09.000
Then we can fuse this data together and have a way of updating dynamically.
00:23:09.000 --> 00:23:18.000
This ambiguity. sets that that's really what i'm gonna talk about and of course once you have a good ambiguity set.
00:23:18.000 --> 00:23:23.000
Then you can use this together with some robust optimization.
00:23:23.000 --> 00:23:27.000
In this sense there is a question of online learning and online optimization.
00:23:27.000 --> 00:23:33.000
And this is something that we have looked at. but i'm not going to talk about here.
00:23:33.000 --> 00:23:42.000
So Okay. So with these background, let me just tell you what what the talk is about.
00:23:42.000 --> 00:23:57.000
So Yeah. So we we all the sky for you what's how to dynamically update these ambiguity sets when you have some knowledge of the dynamics of the uncertainty, and we are going to use classical
00:23:57.000 --> 00:24:08.000
tools in systems and controls. to do this i'll start progressively considering a case of full-state measurements, then I will assume perfect dynamics.
00:24:08.000 --> 00:24:20.000
Then i'm going to relax this this condition. and that's going to lead to a trade-off between that data simulation and quality of the ambiguity ball.
00:24:20.000 --> 00:24:31.000
Then it's not hard to see how to deal with partial measurements. And finally, after this i'll explain what how the noisy person measurement case result.
00:24:31.000 --> 00:24:39.000
Okay, now, to fix ideas, to give you a context, so consider the following problem.
00:24:39.000 --> 00:24:48.000
Suppose you have a valley? Okay, and you have a blue via collar blue uav that tries to fly through this valley on the way.
00:24:48.000 --> 00:24:57.000
There are several dread us that are trying to detect this blue uav right trying to to find it.
00:24:57.000 --> 00:25:03.000
So now the problem you can consider is well, how can the blue uav go through this?
00:25:03.000 --> 00:25:12.000
Go through this valley minimizing the chance of being the detected and also the blue uav doesn't know anything about this Red Ui business.
00:25:12.000 --> 00:25:18.000
But maybe the dynamics of the radio is are known because it's of the same type.
00:25:18.000 --> 00:25:22.000
However, what is unknown is where they are deployed from.
00:25:22.000 --> 00:25:38.000
Okay, So if the Blue Java takes information from all of these radio Is access flies through it can use this data to construct this ambiguity ball and update it dynamically.
00:25:38.000 --> 00:25:44.000
Okay, and then maybe solve a taste at every time it goes from one square to the next.
00:25:44.000 --> 00:25:56.000
So an associated robust optimization. we are open okay so that's gives you some set in mind, and so that that's what we will do.
00:25:56.000 --> 00:26:00.000
So suppose that you know this is kind of the uav dynamics.
00:26:00.000 --> 00:26:08.000
You have some dynamics. they are dynamics are known but you don't know the initial condition.
00:26:08.000 --> 00:26:19.000
So where where they start from 200. Now, suppose you have independent samples collected across the different tractor realizations of this dynamics? right?
00:26:19.000 --> 00:26:26.000
This is going like going to induce so it's going to correspond to a certain probability distribution at a given time.
00:26:26.000 --> 00:26:37.000
And now suppose that you have all of this, and the objective is to construct a good ambiguity. evolve at the final time. T.
00:26:37.000 --> 00:26:46.000
When you solve an optimization problem. Okay, so that that's it And we would like to do that with high confidence.
00:26:46.000 --> 00:26:55.000
Right now. a question here is that, of course, as you encounter different trajectories, and you sample at different times.
00:26:55.000 --> 00:26:59.000
These samples, just like that are not identically distributed.
00:26:59.000 --> 00:27:03.000
Okay, so you have to somehow align those samples together. Okay.
00:27:03.000 --> 00:27:12.000
So if you know the dynamics there's an easy way of doing this, So i'm going to explain next.
00:27:12.000 --> 00:27:16.000
Now this this is what it will be like an insufficient approach. right?
00:27:16.000 --> 00:27:23.000
So if these are, or each trajectory of its uav right?
00:27:23.000 --> 00:27:26.000
If you just, you know, if you just focus on the last time.
00:27:26.000 --> 00:27:33.000
Of course you have the the uncertainty variable corresponding to the right time. Right?
00:27:33.000 --> 00:27:42.000
But maybe this is not sufficient. You will have a rough 100 radio. Okay, So what we would like is to take advantage of all of the observations from all of the trajectories.
00:27:42.000 --> 00:27:49.000
But then we have to align them okay so that's that's what we do right.
00:27:49.000 --> 00:27:58.000
So we introduce this alignment. We solve this alignment problem by basically as exploring, integrating the dynamics that you have.
00:27:58.000 --> 00:28:15.000
Okay. So if in this case you perfectly know the dynamic equations, you can in theory, you can construct the flow map, and then you can push all of these measurements forward and align them at the right time, where all of these
00:28:15.000 --> 00:28:21.000
measurements will correspond will be examples of the same distribution at the right time.
00:28:21.000 --> 00:28:33.000
Okay. So if we do that, we can easily construct a new empirical center of this ambiguity wall in the future.
00:28:33.000 --> 00:28:41.000
Okay, so that's pretty clear I think Now, another thing is the radius of the of the ambiguity.
00:28:41.000 --> 00:28:53.000
And then to see how this is. Have data. Well, you you have to look into the this expression of the radius, and so there can be calculated making some assumptions.
00:28:53.000 --> 00:29:06.000
So, for example, assuming that the distributions are compactly supported, and it is the combat set of the support. assume that the they have a certain diameter.
00:29:06.000 --> 00:29:20.000
Okay. And and then what will? basically the the result one can obtain is that this epsilon, which is this radius of the wall, goes like this as a function of the diameter.
00:29:20.000 --> 00:29:24.000
The confidence and the number of samples. Where this Pr.
00:29:24.000 --> 00:29:30.000
Is something that depends on the dimension of the problem. 200, the type of waste-time metric that that you use.
00:29:30.000 --> 00:29:41.000
And this has to hold. Okay, so as you can observe here as you take and going to infinity, this radius should go down okay.
00:29:41.000 --> 00:29:50.000
And also, as you take better going going to one also. the radius goes down.
00:29:50.000 --> 00:30:03.000
But then better go into One means you have a low confidence. So you don't really want to do that the other element that appears here is Roti, which is changing with time and this can grow and you know contract expand it depends on your
00:30:03.000 --> 00:30:08.000
dynamics. In addition, there is a. This is of the order of.
00:30:08.000 --> 00:30:15.000
There is a way of computing the exact constants, and this is something that that we did also as part of this whole work.
00:30:15.000 --> 00:30:23.000
So then a question that you may ask in first place, is the following: Okay?
00:30:23.000 --> 00:30:33.000
So if I want to have a vote that eventually captures the true distribution at the future time, Well, what do I need for this to happen?
00:30:33.000 --> 00:30:43.000
So. in other words, as I want to see where conditions guarantee that as time goes to infinity, the radius of my ball goes to see to 0.
00:30:43.000 --> 00:30:52.000
So this means that the estimation is going well. And so, as I said, this depends on this row of T, and that depends on the dynamics.
00:30:52.000 --> 00:31:03.000
So one can take, put on a hat of dynamic systems and apply it to typical leepu of method to address this question.
00:31:03.000 --> 00:31:09.000
Okay, So this is a lepon of type of condition that will help you say, Yes, this happens right?
00:31:09.000 --> 00:31:23.000
So if you find a Lebanon function that is essentially is like a our power of a norm whose growth this is the leader derivative right of the Lapun of function is upper bounded in this way.
00:31:23.000 --> 00:31:28.000
So it's sort of it's allowing to grow but not too much right.
00:31:28.000 --> 00:31:37.000
The queue here is less than one. So then I I may have some hope, you know, to bound these these disturbances in time.
00:31:37.000 --> 00:31:55.000
Right. So that's indeed the case under these additional conditions. Okay, you can. You can upper around how much the disturbance will grow in time, and you can ensure, because of the expression of the ambiguity world radios
00:31:55.000 --> 00:31:59.000
that. Yeah, as time goes to infinity, this radio 6 is going to 0.
00:31:59.000 --> 00:32:13.000
So the right thing is happening now, of course, not always possible to compute exactly the flow map. Even if you do it numerically, there will be numerical errors.
00:32:13.000 --> 00:32:17.000
There can be some model disturbance disturbances in the dynamics.
00:32:17.000 --> 00:32:35.000
And so what's the effect of this well the fact of this is that as you push forward through this brown flow right, the samples, the observations that you have obtained previously will be 2 of from what really needs to be so
00:32:35.000 --> 00:32:40.000
What do you really need to do to construct the center of this empirical right?
00:32:40.000 --> 00:32:45.000
So then there is a trade-off here to come consider right.
00:32:45.000 --> 00:33:02.000
So you want to find the right amount of time, right so so how much you have to go in time, so that you decrease as much as possible the radius without increasing it back due to the imperfections in the form of
00:33:02.000 --> 00:33:20.000
computation. So there's a this i'm going to set quality sample history trade off. And so we looked into this into a simple case of a dynamics that is global ellipseids, for which you can also you can
00:33:20.000 --> 00:33:27.000
quantify new numerically, or your error, so the difference between the true and the approximator flow.
00:33:27.000 --> 00:33:32.000
Suppose it is given like this right by this exponential term.
00:33:32.000 --> 00:33:41.000
So then, Okay, So what's How is this going to affect the ambiguity raises So you can break it down in 2 parks.
00:33:41.000 --> 00:33:51.000
So there are 2 competing contributions here. On the one hand, you have a term that is like the perfect radius under perfect conditions.
00:33:51.000 --> 00:33:56.000
On the other hand, you have a term that is coming from the disturbance.
00:33:56.000 --> 00:34:03.000
Okay, and the effect of this is very easy to see. You have this graphs here and here.
00:34:03.000 --> 00:34:10.000
These surfaces represent this site, which is this new type of radius. right?
00:34:10.000 --> 00:34:20.000
And over here you have n number of samples. Delta is actually the inter sampling time from, you know, at which we take different measurements.
00:34:20.000 --> 00:34:25.000
And so what what do you tries to show? Is that okay?
00:34:25.000 --> 00:34:37.000
Yes, there's going to be a time where you will be able to decrease the ambiguity radius, because basically the decrease nominates because this term is decreasing.
00:34:37.000 --> 00:34:44.000
But then this one is going to decrease but then this other term is going to kick in and increase the hard use.
00:34:44.000 --> 00:34:50.000
Okay, so that's that's yeah the captured by these 2 terms, and you can.
00:34:50.000 --> 00:34:54.000
You could calculate numerically. Okay, what is the best?
00:34:54.000 --> 00:34:59.000
And so that is shown by means of these magenta lines.
00:34:59.000 --> 00:35:10.000
Here right. that will be, you know. given a sampling time, for example, on this side even a inter sampling time and a certain diameter for the uncertainty right?
00:35:10.000 --> 00:35:15.000
It tells you what is the optimal n that you need to choose to maximally decrease this radio.
00:35:15.000 --> 00:35:25.000
So that that's always going to be there and intuitively. It makes sense, and it's something that i'll replace it later in the talk.
00:35:25.000 --> 00:35:34.000
Okay, Now the next question would be alright. So what if you have parallel measurements?
00:35:34.000 --> 00:35:39.000
So if you have a type of observability it's not you know the extension is not that hard.
00:35:39.000 --> 00:35:52.000
Okay, for example, we with that, we standard with time varying continuous time, continuous time linear systems that are called sample of observable.
00:35:52.000 --> 00:35:57.000
Okay, So you take measurements of different instance of times, right?
00:35:57.000 --> 00:36:05.000
And you know that you need to take the samples correctly, so that you still have observability right?
00:36:05.000 --> 00:36:08.000
So there's 200. This is a typical example of a pendulum right?
00:36:08.000 --> 00:36:25.000
And you know that if you take samples precisely at the multiples of the period of the of the pendulum, right, then you wouldn't be able to reconstruct the state Okay, you need to impose some 2
00:36:25.000 --> 00:36:39.000
100 conditions. Okay? So if you have this condition, if you meet this condition, then all you have to do is reconstruct the State with the person measurements reconstruct and then push forward again.
00:36:39.000 --> 00:36:58.000
So that's not a super big deal right? we did this with linear time varying observable systems the sample data observability, property just guarantees that if you have several trajectories right these are
00:36:58.000 --> 00:37:04.000
a different triangular realizations. Then you can collect for each trajectory.
00:37:04.000 --> 00:37:21.000
You need to stack, collect together different measurements, and then, once you have them, if the system is output, 100 sample data observable, then it means that you can basically in where through a certain matrix here, which is given over here,
00:37:21.000 --> 00:37:29.000
right. So there's a so the inverse that you take and once you have the state there, you can 200 push it forward through the flow. right?
00:37:29.000 --> 00:37:41.000
So so it's not Yeah, it's just this additional step you have to do to be able to find the right empirical center of the ball.
00:37:41.000 --> 00:37:44.000
The radius is not affected by this operation. Okay.
00:37:44.000 --> 00:37:51.000
So, coming back to our toy problem, right? So we call again.
00:37:51.000 --> 00:38:02.000
Suppose you want to solve these 2 situation? You want to fly this blue Java through in this valley where there is this all their priorities.
00:38:02.000 --> 00:38:05.000
You want to minimize the tension chance for the do.
00:38:05.000 --> 00:38:13.000
Avs: consider a simple second order dynamics. It basically making the Uavs goes over.
00:38:13.000 --> 00:38:21.000
Yeah, periodic circular trajectory. you have a state that is 5 dimensional right data.
00:38:21.000 --> 00:38:31.000
Here is the face initial face of the It's Red Uav and that's what is uncertain about the Uavs.
00:38:31.000 --> 00:38:50.000
What is the initial phase that's the unknown distribution? Then suppose that as the blue Java goes through from square to square, is able to just gather 3 position samples to to reconstruct the whole State of
00:38:50.000 --> 00:39:01.000
the Uav and move forward. Okay, the control will be the yeah. the simple, this: the and Uav dynamics would be very simple.
00:39:01.000 --> 00:39:06.000
It's just a first order model you have to design a velocity.
00:39:06.000 --> 00:39:12.000
It's a piecewise constant which is represented the motion from square to square.
00:39:12.000 --> 00:39:17.000
Okay, and there are some velocity constraints on them.
00:39:17.000 --> 00:39:23.000
All right, so what you can do is minimize the detection.
00:39:23.000 --> 00:39:27.000
You can post it as a geometric optimization problem if you like.
00:39:27.000 --> 00:39:35.000
Right, so we will say, Well, the uav minimizes detection if it maximizes the the worst case.
00:39:35.000 --> 00:39:43.000
Distance from the Uav. it. Just so, right. So over here, and it will minimize those plus the sum.
00:39:43.000 --> 00:39:50.000
The worst case distance from the specter. worst case expected distance to the next Uav.
00:39:50.000 --> 00:40:00.000
It hasn't seen yet? Okay, so that's that's a sequence of problems that that you Ab. is solving blue.
00:40:00.000 --> 00:40:06.000
Do I be somebody? Okay, And here you say comparison of what's the performance?
00:40:06.000 --> 00:40:17.000
If you do this dynamic updates of level, as called with the just static updates, so just use the latest set of data to construct
00:40:17.000 --> 00:40:27.000
The ambiguity. And yeah, So those dynamic versus static this center of this world, right?
00:40:27.000 --> 00:40:39.000
Right represents the blue uav position, and the radius represents the yeah. the the other objective, right?
00:40:39.000 --> 00:40:47.000
You want to minimize this radio. So this is equivalent to minimizing, to maximize minimizing detection charts.
00:40:47.000 --> 00:40:54.000
Okay, So over here, i'm going to show you a movie So let's see if I can open it.
00:40:54.000 --> 00:41:08.000
So hopefully, you can see it right? Okay, So i'm gonna play it, And you can see how how the problem changes how this balls shrink or or grow right growing.
00:41:08.000 --> 00:41:13.000
The ball is good, because then we are minimizing detection.
00:41:13.000 --> 00:41:19.000
Chance right? and you see that overall right here now here in the in the plots below.
00:41:19.000 --> 00:41:27.000
So i'm showing the cn curves correspond to the dynamic case, the dark blue correspond to the static case.
00:41:27.000 --> 00:41:37.000
You can compare each color, and you will see that in general detection chance is is better achieved.
00:41:37.000 --> 00:41:43.000
Right. You are minimizing these detection times better with the dynamic as opposed to the static case.
00:41:43.000 --> 00:41:59.000
And also you see that the piecewise constant solution over here right results in costs that lower bound the true cost right, which is given by this curves going up and down.
00:41:59.000 --> 00:42:02.000
Okay, So this is showing the robustness of the method.
00:42:02.000 --> 00:42:10.000
Okay, here is is again the same, the same picture with a static snapshot.
00:42:10.000 --> 00:42:16.000
I guess. Okay, so sounds good. Now let me go to the noisy partial measure.
00:42:16.000 --> 00:42:24.000
My case so, which is solved in a different way. So suppose now that okay, what I said sounds good.
00:42:24.000 --> 00:42:35.000
But how about if you have a case where your data is dynamically very inconsider, a linear time, invariant, discretized, discrete time system this time?
00:42:35.000 --> 00:42:40.000
Okay like this, and you have measurements that are all. See?
00:42:40.000 --> 00:42:51.000
Also noisy. Okay, So here we may have access to different realizations of these dynamics from different initial conditions.
00:42:51.000 --> 00:42:59.000
Okay, this internal noise distribution is also unknown, and then we have access to this noisy measurements.
00:42:59.000 --> 00:43:10.000
Okay, So let me see if I can yeah Okay, here. Yes, I don't know why this is not working very well.
00:43:10.000 --> 00:43:26.000
Okay, there you go. So again, our goal is to build an ambient set right containing the the State distribution with high confidence, using just a collected samples.
00:43:26.000 --> 00:43:30.000
So let me tell you, Okay, what is the next? What are the assumptions?
00:43:30.000 --> 00:43:41.000
Why is this not working? Well, my lights are livestock Let's see.
00:43:41.000 --> 00:43:48.000
Okay, sorry about this. Okay? So what are the assumptions on the distributions?
00:43:48.000 --> 00:43:56.000
So. So again, So they initial distribution of of the initial condition is going to be unknown also.
00:43:56.000 --> 00:44:04.000
The internal distribution, the internal dynamics distribution and the measurement noise distributions are unknown.
00:44:04.000 --> 00:44:12.000
Okay. but we have certain assumptions on how they change, how they can change through realization and their support.
00:44:12.000 --> 00:44:29.000
Okay, So here, what you can see is that what we assume is that every time we find a new trajectory of this uncertain, variable at every time the internal noise distribution is going to be the same.
00:44:29.000 --> 00:44:37.000
It's distributed in the same way. so you can see that it here, over different examples, and also the initial condition.
00:44:37.000 --> 00:44:41.000
The distribution of the initial condition is always going to be the same.
00:44:41.000 --> 00:44:58.000
3 in addition. We are going to ask the supports of this distribution, to read distributions, to be compact, as you see here, other than that we do not assume anything else on the distributions, 2 and then regarding the measurement.
00:44:58.000 --> 00:45:06.000
Noise distributions. These have to be light tail. Okay, but then they can change across different values. No problem.
00:45:06.000 --> 00:45:13.000
250, and then there is a final condition of independence between 2 these distributions.
00:45:13.000 --> 00:45:19.000
They state distributions have to be independent from the noise measurement distributions.
00:45:19.000 --> 00:45:30.000
Okay, that's what this means. Okay, good now, I mean now we cannot do apply exactly the same approach as before. right?
00:45:30.000 --> 00:45:36.000
We We don't have this reconstruction direct construction option right?
00:45:36.000 --> 00:45:42.000
We have a non-trivial kernel given by this measurement mapping H.
00:45:42.000 --> 00:45:52.000
Linear but you know It's not one to one So we cannot easily go back and forth between okay measurement and state
00:45:52.000 --> 00:46:08.000
So we have that any, you know, any any possible value on an affine space which is the inverse of this mapping right, could have generated the measurement that we observe.
00:46:08.000 --> 00:46:12.000
But, moreover, I mean since there are noises it's not really exactly anything.
00:46:12.000 --> 00:46:16.000
Those are find some spaces, but it is off. Okay?
00:46:16.000 --> 00:46:21.000
So. yeah, So so we don't have that property as kind of we had before.
00:46:21.000 --> 00:46:26.000
So what can we do? Well, what you can do is what you can imagine.
00:46:26.000 --> 00:46:34.000
You can do using observers. right? So what we do is we will have a new way of constructing this ball.
00:46:34.000 --> 00:46:37.000
We will have an empirical center on a radius.
00:46:37.000 --> 00:46:46.000
However, the empirical center now is going to be an estimated empirical distribution.
00:46:46.000 --> 00:46:51.000
Okay, so it's honest estimator and physical distribution given by some people.
00:46:51.000 --> 00:46:59.000
So an average of estimator states that are constructed using a linear off server here.
00:46:59.000 --> 00:47:03.000
Okay, So here we we know A. We know H. We have to find our K.
00:47:03.000 --> 00:47:09.000
So that this is a good approximation of the state that generated the the measurement.
00:47:09.000 --> 00:47:15.000
And so this picture tries to illustrate this right we don't have.
00:47:15.000 --> 00:47:23.000
We don't have a knowledge. precise knowledge of what these sides are, but what we can do is we can estimate them by m means of a linear observation.
00:47:23.000 --> 00:47:33.000
Okay, So that choice is going to have an effect on the ball of the ambiguity world radius.
00:47:33.000 --> 00:47:44.000
Okay. And so this is a way of trying to quantify this right is also going to have an effect on the confidence that you have on this board.
00:47:44.000 --> 00:47:50.000
So what you can do is take your original confidence one minus beta, and you can factor it.
00:47:50.000 --> 00:48:05.000
You can describe it as a factor of 2 terms, one term over here that will correspond to the confidence that you usually have in in the nominal case.
00:48:05.000 --> 00:48:16.000
When you have a perfect access to those samples. Okay, this one, on the other hand, you have another factor that corresponds to
00:48:16.000 --> 00:48:24.000
Well, the fact that you have not perfect measurements, Okay, and you know, have perfect samples of the State.
00:48:24.000 --> 00:48:34.000
Okay, this is a noise confidence, if you like. And then, thanks to the fact that Warserstein is really a metric, you can use a triangle inequality here.
00:48:34.000 --> 00:48:41.000
And you can break down this distance into 2 terms. We one first term is the usual.
00:48:41.000 --> 00:48:46.000
The distance between the 2 through distribution and the true empirical distribution.
00:48:46.000 --> 00:48:52.000
And then over here you have a distance between the true empirical distribution and the estimator.
00:48:52.000 --> 00:48:56.000
Empirical distribution. Okay, so you can decompose it like this.
00:48:56.000 --> 00:49:07.000
And now what we can do is we can apply this concentration of measured results with respect to this side, and then we can deal with this site better, because these are just samples.
00:49:07.000 --> 00:49:12.000
So we can freely do computations 200, and we use the observer.
00:49:12.000 --> 00:49:16.000
Other dynamics. Okay, so that's how you put this together.
00:49:16.000 --> 00:49:28.000
So for a second. Suppose that you have found already an Epsilon hat noise that will guarantee that with high confidence.
00:49:28.000 --> 00:49:35.000
The distance between the 2 and period. The true empirical and estimator spirit empirical is a small Okay.
00:49:35.000 --> 00:49:40.000
With this high confidence one minus Latinos. Okay, So suppose you have it.
00:49:40.000 --> 00:50:02.000
Then using the concentration of measure result, you can get the the second result that tells you that if you take a san ambiguity radius, this combination of Epsilons right, which should remind you to what happens in the imperfect
00:50:02.000 --> 00:50:05.000
measurement case in the in the previous part of the talk.
00:50:05.000 --> 00:50:14.000
Right. So if you take that radius to be like this, then you will have the high confidence that you are looking for.
00:50:14.000 --> 00:50:20.000
Okay. Now, let me, let me explain. And this really comes from triangular.
00:50:20.000 --> 00:50:26.000
The triangle inequality. Now, if I I can show you what is the expression?
00:50:26.000 --> 00:50:31.000
A little bit more the expression of this radii. Okay, and it looks like this.
00:50:31.000 --> 00:50:36.000
So this is the nominal radius is like the first radius I showed you.
00:50:36.000 --> 00:50:43.000
We have a certain constant here, we can calculate, and this is a noise.
00:50:43.000 --> 00:50:51.000
Radius is almost like this. right? So if you look inside this alpha function, the the expression right?
00:50:51.000 --> 00:50:57.000
That depends on Beta and N. is very similar to this one over here.
00:50:57.000 --> 00:51:08.000
So these are similar functions, and you can say that if you increase the number of the the the number of data points. This part is going to 0.
00:51:08.000 --> 00:51:11.000
But there's always going to be a constant that you cannot reduce no matter what.
00:51:11.000 --> 00:51:20.000
And this is because you know the internal noise, dynamics and the measurement noise, so that that is cannot be used anymore.
00:51:20.000 --> 00:51:30.000
Okay, now, how do we find this? and what? How can we choose our gain in the best possible way? Right?
00:51:30.000 --> 00:51:38.000
So how can we do this? So So we can just directly calculate this distance?
00:51:38.000 --> 00:51:43.000
Because this looks very complicated is an optimal transport thing.
00:51:43.000 --> 00:51:54.000
But really, when you have empiricals, right this computation can be upper bounded by some lp norm computation.
00:51:54.000 --> 00:52:02.000
Okay, so that that's that's nicecc and then we can go here and bound these errors using our our dynamics.
00:52:02.000 --> 00:52:11.000
Okay, You've seen our a plus kh matrices that we have the We can bound this and that's how we can bound 200.
00:52:11.000 --> 00:52:15.000
We can found this Epsilon radius with some computations.
00:52:15.000 --> 00:52:20.000
Okay. Now, there are some some constants here that appear the C one c.
00:52:20.000 --> 00:52:24.000
2 and previous constant. So all of these constants depend on this.
00:52:24.000 --> 00:52:34.000
The matrices of your your system, the length of the horizon, where you have to look up to the support of the distributions.
00:52:34.000 --> 00:52:43.000
The initial distribution and internal distribution, and also they how that the decay tales of the measurement, noise, distribution.
00:52:43.000 --> 00:52:46.000
So all of that is playing into this 250.
00:52:46.000 --> 00:52:51.000
Okay, and will give you exactly this constant values as a corollary.
00:52:51.000 --> 00:52:55.000
You may want to ask, Well, how do I choose the game?
00:52:55.000 --> 00:53:02.000
So that I have a nice small, you know stable wall the end of the day, right?
00:53:02.000 --> 00:53:16.000
And well here, just using the narrow servers frame. So if your system is detectable, you can prove that actually this this noise radius will be uniformly bounded with respect to L.
00:53:16.000 --> 00:53:24.000
So you would have this type of convergence Okay, I don't know if I have a lot of time left.
00:53:24.000 --> 00:53:32.000
I have an example here of how to do that is not really showing this dynamic, this nice convergence.
00:53:32.000 --> 00:53:50.000
But it's rather using the results in an optimization problem right? where you have It's an optimal power dispatch problem where you have a different batteries that you can choose and That's very the dynamics and you
00:53:50.000 --> 00:54:02.000
have. The uncertainty is that you know the state of these batteries right? And we have several of these batteries, and we observe 200 different output measurements of the batteries.
00:54:02.000 --> 00:54:10.000
Okay, so essentially, that's that's the problem okay it's a binary problem.
00:54:10.000 --> 00:54:20.000
But we relax it, and we look into you know what how the solution, how the solution performs as compared with some collaborates.
00:54:20.000 --> 00:54:33.000
So that that's really the illustration here and I just want, you know this this figure just confirms what what we we know about the arrow.
00:54:33.000 --> 00:54:50.000
I think so in a way. using this wall, right? you optimize over , yeah, over the 7 Pdf rate. And then by taking different samples, you see how some of the results change.
00:54:50.000 --> 00:55:00.000
So okay. So from this picture, just notice this. So This line over here corresponds to the true cost of the problem.
00:55:00.000 --> 00:55:08.000
If you knew the distribution of the uncertainty. Okay, which are the 2 batteries? Initial States?
00:55:08.000 --> 00:55:16.000
2. Okay, Then you have blue stars, red stars, green circles, magenta circles.
00:55:16.000 --> 00:55:23.000
Okay, So they blue stars correspond to the problem.
00:55:23.000 --> 00:55:35.000
Cost when you use the diro formulation. Okay, you use a sample number of samples, even, you know, by these, and you calculate this.
00:55:35.000 --> 00:55:44.000
You solve this problem you've seen the concentration on you know the ambiguity of all and that's the cost that you get. okay.
00:55:44.000 --> 00:55:57.000
All of these blue stars. Now, what you can do is you can take this decision and implement it on the Parliament, using the true distribution, and then you can compare the the costs.
00:55:57.000 --> 00:56:04.000
And so you will see dread stars, which are the result of doing this. Okay?
00:56:04.000 --> 00:56:12.000
And so you kind of serve that the red stars are almost always below the blue stars.
00:56:12.000 --> 00:56:17.000
So this is showing. this robustness is out of some poor guarantees.
00:56:17.000 --> 00:56:26.000
Okay that you are not promising by solving the problem in this robust way a step for some instances right where this is not happening.
00:56:26.000 --> 00:56:31.000
But that's, you know, is normal, because you can only have guarantees with high probability.
00:56:31.000 --> 00:56:42.000
So sometimes it will be violated 2 in contrast. you can see the comparison between the green and the magenta circles.
00:56:42.000 --> 00:56:49.000
The magenta circles is the calculator cost juicing just a sample.
00:56:49.000 --> 00:57:09.000
Average approximation and the resulting decision value right? and the red circle is when you use that decision on the true cost, right with no approximations on the distribution. and you can see that there is a lot of our promising so
00:57:09.000 --> 00:57:14.000
many times you expect to get a cost but this cost is much lower than what you really get.
00:57:14.000 --> 00:57:26.000
So that's the that's the difference and then? you can also ask, Well, what is the relationship with the true optimal cost? which is this horizontal line over here?
00:57:26.000 --> 00:57:42.000
And you can see that well, in both the sample average and the arrow case implementing the those approximated decisions using data actually much and produce the cost. That is a true one.
00:57:42.000 --> 00:57:48.000
So that's good, and those are other figures that kind of you know.
00:57:48.000 --> 00:57:57.000
Go over the same guarantees and robustness results that i'm going to skip, and that's it.
00:57:57.000 --> 00:58:09.000
That's the talk. So what I wanted to show you is well introduce you to this to this distributional robust optimization in case you didn't know about it.
00:58:09.000 --> 00:58:17.000
And this is ambiguity balls which are really interesting as a artifact on their own, I think, for estimating certain variables. Right?
00:58:17.000 --> 00:58:25.000
So we we covered different situations of parcel measurements, computation errors.
00:58:25.000 --> 00:58:39.000
On the noisy case. So what we are looking at right now is well bringing these calculations to to be performed over networks by multiple agents.
00:58:39.000 --> 00:58:47.000
Okay, and also reducing the conservativeness of this ambiguity radii.
00:58:47.000 --> 00:58:53.000
And we also looked into Mpc lack of problems. right but maybe that's the subject of another talk.
00:58:53.000 --> 00:59:01.000
So thank you very much for your attention and for hanging on here, despite the soon beautiful environment.
00:59:01.000 --> 00:59:11.000
And these are papers where this this has been well, brief and published or submitted.
00:59:11.000 --> 00:59:20.000
Okay, all right. So thanks very much, and hopefully you are still here, and if you have questions i'll be happy to take them.
00:59:20.000 --> 00:59:30.000
Thanks, Sonya, for for the nice talk. any questions from the audience.
00:59:30.000 --> 00:59:39.000
I hope this was not too messy for a Friday afternoon.
00:59:39.000 --> 00:59:44.000
I think we are used it in control seminar. Okay.
00:59:44.000 --> 01:00:07.000
Great. Okay, Thanks can ask a quick question. Maybe this is like, not that much related.
01:00:07.000 --> 01:00:24.000
But, like this sampling type, ideas are used a lot in in like filtering right particle filters are all based on sampling, but they don't necessarily try to fit the sets and distributions.
01:00:24.000 --> 01:00:29.000
Is there a relation there that yes, so that's a very good question.
01:00:29.000 --> 01:00:40.000
It's a question that anyone should have because I think I view this as a type of a particle filter.
01:00:40.000 --> 01:00:52.000
Right. So if you have a some distribution of the state of your robot, right, you can always, even if this is not fully unknown, Right?
01:00:52.000 --> 01:00:59.000
You can sample it, and then the particle filter will give you an update of the distribution with time, right?
01:00:59.000 --> 01:01:13.000
And so mit Well, if you have you know dynamics and distributions, you know updating, and and you don't have Gaussian noises right?
01:01:13.000 --> 01:01:18.000
So updating this through time is hard, right? And this is a way.
01:01:18.000 --> 01:01:27.000
This is a mechanism of doing this right with additional guarantees of, you know the end.
01:01:27.000 --> 01:01:42.000
Final distribution. So the thing is that here you are not using resampling and waiting right as if you stupid, do in a particle filter, right?
01:01:42.000 --> 01:01:49.000
You just use a standard of certain linear observer, and then you have to take care of these of these radios.
01:01:49.000 --> 01:01:55.000
But so you can be with as a method that you could use in that context for sure.
01:01:55.000 --> 01:02:02.000
And a question we would like to look at is well when you have no linear dynamics.
01:02:02.000 --> 01:02:07.000
What? What can you do here? right? Yeah, Absolutely. This was my next question.
01:02:07.000 --> 01:02:14.000
Is there a nice middle ground in between, so that these ideas can be used for nonlinear systems?
01:02:14.000 --> 01:02:25.000
So that's something we would really like to to Look into There are there are some difficulties because of all of the Waserstein stuff and calculations.
01:02:25.000 --> 01:02:39.000
But yeah, we are. We are working on it. We are also considering different ways of of calculating approximator ambiguity balls, you know.
01:02:39.000 --> 01:02:46.000
You've seen wavelets actually and that's something we just submitted to to Cdc.
01:02:46.000 --> 01:02:52.000
Because precisely for the nonlinear case, we think it will be helpful.
01:02:52.000 --> 01:02:59.000
But yeah, So and absolutely yeah, that's not open open question and it's interesting, I think.
01:02:59.000 --> 01:03:15.000
Yeah. Okay, Thanks. Other questions. Okay, awesome. Maybe I can ask one more question.
01:03:15.000 --> 01:03:20.000
If you had a time. So is there a control version of this problem?
01:03:20.000 --> 01:03:30.000
Can it help its control, design and planning? little version of the problem?
01:03:30.000 --> 01:03:36.000
Yeah, Exactly. so. So I haven't thought about it but there should be right.
01:03:36.000 --> 01:03:45.000
So so like you have some robust control type of result that's a great question. No, I don't know I but it should be possible.
01:03:45.000 --> 01:03:51.000
Right. Yes, from yes, from duality. right I guess so there's an answer.
01:03:51.000 --> 01:03:56.000
Positive facts. I should report so we function but I haven't seen it.
01:03:56.000 --> 01:04:05.000
Okay, cool. Yeah, thanks. let's thank Sonya again for this talk.
01:04:05.000 --> 01:04:13.000
And thank you. Thank you. Thank you for listening. I know his stuff, and we hope we can be.
01:04:13.000 --> 01:04:17.000
We can host you in person at some point as well in the future.
01:04:17.000 --> 01:04:33.000
Yeah, Yeah, Yeah, I yes, I hope so. and then, Okay, i'll see you in conferences.