 So there's a couple of options for improvement. We could add another feature. I think two should suffice for now. It's okay for making some mistakes. It's fine. Just try to learn, which is how we can improve the centroid function. And also a funny centroid, it wasn't a standard one. Yeah, MOM is the minimum of a mean of maximum. Centroid of area would be obviously a more standard thing to use. Yeah, we actually expected it to work with a centroid. Everything should be more or less standard. The white detection error went from 102. Yeah, now square doesn't ever give square. We also need to monitor the features for each selected waveform. One of the features of JavaScript should be pretty straightforward because most of the stuff we're doing in the back end is not ideal for a binary chaos. Should all be doing everything on the front end, on the client side. Then you'll have options to do more on the back end, on the server side. That's, yeah, server can be costly. And considering these tools are free, I want you to spend electricity and not overload my server as much as possible. So if we load all the code in theory, we should have been able to use this workspace. Can you explain the link between the files in the workspace? So it's getting a errors when using workspace. It's essentially collecting too much stuff or something. I don't know what's up. I don't know what's up with that. I bet it will work on Windows. Can I do curious if I can just do this? Send it to a GPT, see what it says. What the problem might be I'm using Ubuntu Is this a unique problem? This array buffer allocation error failed. No, this can't be right. This can't be right. I have plenty of RAM. I think it's also happening on the server side. I do have plenty of RAM. I think the problem is happening on the server side of GitHub co-pilot. I can monitor memory usage, but that won't be it. It should be a more simple command for co-pilot. So I don't know. Anyway, it doesn't seem to work on Ubuntu properly. At least the workspace command, which meant to look at all the open files, collecting workspace structure, yeah, path allocation. No, there's nothing wrong. Yeah, it's using bug role memory on my machine. Guess we asked about each file to explain each file. Let's go back to the JavaScript. We need to modify the fuzzy logic parameters. What are we currently looking at? What are we visualizing in terms of the fuzzy logic parameters to change them to? We need to visualize other parameters. Yes, we have the membership functions, symmetry, and sharpness. We have the rule activation, splotted this, outfitted the x-axis representing this symmetry, assuming the same x-axis for all rules. OK, this is odd. And aggregated output of the fuzzy inference process to splotted as a graph on the x-axis representing symmetry. So, rule activation, the rule activation is working for both asymmetry and sharpness. Yeah, we do need to modify the fuzzy rules to change how the system makes decisions, because currently it's making a lot of mistakes. And the nature of the parameters, for example, if you want to visualize input fuzzy sets, do we need the input fuzzy sets? So we have both symmetry and sharpness parameters in low, mid, high should be able to view yet the input. It keeps saying stuff is not provided on the server side, even though we did provide the Python code. Yeah, we should be able to plot. Yeah, it's probably if the copilot doesn't have all the context that from, let's do this quickly, do it in another, in a different order. OK, can we add more visualization that will help us to modify the fuzzy logic parameters? The HTML should be pretty straight forward copilot to change the code. We have the prompt. Well, it's not quite a prompt. We should advance to turn it into a prompt. Yeah, of course, we need to modify the JavaScript and then the HTML. Yeah, I want to edit the HTML. Where do we put it? It's the output graphs. We have the input graph, output graph. We place this tool over here. I have obviously a problem of fitting everything into that one window in the JavaScript. So it's a scatter plot that makes sense. Turn this into a prompt. I don't know. Material is using GPT, but in reality, the prompt shouldn't be asking silly questions like that. I should just give it, does it know of a previous prompt? How to modify the code based on the previous prompt? Now, why are we calculating symmetry? It doesn't make any sense. We already calculated the array to have calculated. Wait, why is this? We have it in the back end. We need to pass it to the front end. When we calculate symmetry, array, can we turn it into OK? When we calculate symmetry, array, can we turn it into one number? How is current decision being made out of the array considering we should have a single value for each input waveform? Yes, essentially what I don't understand is currently we have the algorithm searching for certain waveforms through overtime. But we need a single response. It's actually calculating symmetry measures for each point in the signal. Yeah, that's not what we want to do. This is not what we want to do. Yeah, I think we need to get up what is to already place the flask first. In the current code, I haven't made any changes. Why are we calculating sharpness and symmetry for each data point in the code instead of for the whole input waveform? Yeah, so that's wrong. Generating super slowly might take a break while it's generating. Yes, that's wrong. But I don't want to force it on it. Just let this get upset. How is it possible to calculate symmetry for a single data point that you need at least two? Yeah, it does sound too complicated. The input wave is a dropdown menu to select a waveform of a specific shape. Now, the fuzzy logic algorithm should then look at the entire wave. And in the output wave, make a decision what the waveform is or which group the waveform belongs to. Can you double check the code and suggest how to fix this issue? We also have an option to add noise to the signal. Can we somehow make sure that sharpness is not affected by the noise too much? The noise is much higher frequency than the changes in the whole waveform. It should be somehow embedded into the sharpness calculation. Yeah, so we don't want to use low pass filtering because, yes, it will be getting rid of the noise. But we want to feed the noisy signal into the fuzzy logic and just see how it's able to deal with it. Or not, that's OK if it's not. We want to see at what threshold of noise it starts making mistakes. Yeah, I want to ignore this for now. That's OK. I want to try something I haven't tried before. I want to generate prompts. I potentially generate prompts from GPT-4 and actually ask the co-pilot to do the code changes that work any better. And let's see, is it calculate waveform symmetry? Let's check if there's anything. So before, yeah, before we had an array, right, because it was calculating for each data point, let's just have it in the code. Let's try this. Let's call it this. And now we have calculate waveform symmetry function to assess the symmetry of the entire waveform. It sounds better this function should take the entire signal input, split it in half and compare the two halves, calculate the symmetry as an average difference between corresponding points and the two halves also include handling odd number of points. What? It's already like hallucinating, I just said. Calculate waveform symmetry function. So I'm just taking it from the code above. OK, midpoint, right half, left half, there are three, giving three different options. On this stage, 54 and again, 1. Yeah, return symmetry is OK. Turning symmetry, just 1 minus symmetry measure or 0 if that lands. So is it handling? Well, yeah, it's returning as 0. It's kind of handling it, but yeah. So I like that the front is nice and clear. But why is this something weird? Everything like a keyboard thing, when I go control, I might have a function, find peaks, find vectors, features. OK, that's bad shit. Peaks, find peaks, drops, find drops. Again, suggesting a couple of options that are actually quite different. Returning sharpness. This is what the file finds the logic function. Develop find peaks. Five drops, I should take peaks and throws and wait for. Join this function and revise it to noise. I really ended up finding significant peaks and throws. With symmetry array, we don't need to calculate symmetry array anymore, hopefully, because we also need to modify the fuzzy logic function. Do it in the chat. OK, now it's going places, isn't it? But we're really doing that. Again, always refating to use triangular membership functions instead of trapezoidal ones. Please check bodykills.com if you haven't done so already. Provide your feedback. This is what we're doing this live streams. So don't forget to comment, subscribe, so you don't miss the next live stream. And I'll see you in a bit. Bye.