Dear Professor Hedengren and developers, I hope you are doing good, I am new to using Python and even more so to using Gekko, I am very interested about the topic of optimization because it's a part of my master's project and more specifically optimization of a mass damper, where my inputs are random loads recorded previously at each time step, which will not change over the entire horizon. And the thing is, I want to optimize the combination of mass and length of the damper that minimize the maximum amplitude of displacement (negative or positive) of the main structure, the combination mass and length must not change along the horizon.
During the process, I had some problems regarding this, and I would like you to clarify and help me with the following questions:
1. When my record is very large, for example 21000 data (time steps of 0.005sec), the optimizer does not calculate or takes time to calculate the number of variables, equations and others, I have to stop it, I don't know if I stop or have to wait longer.
2. I understand that m.options.NODES is the number of points interpolated between each step of time, but when I reduce to 2 my results improve, but they get away from the solution by integration of Runge Kutta of 4th order, I understand that Gekko solves by orthogonal colocation of finite elements, so maybe I'm misinterpreting that improvement of results.
3. To minimize the maximum displacement of my main structure, I tried with two different goals, the first one to directly minimize my main displacement q1 through the expression (1000 * q1 ** 2) and the second way through minimizing the integral under the curve of q1, using the expression for which I create an auxiliary variable x1=0.5*integral(q1**2)dt, with the first form my results are better, which I did not expect, so can you please suggest me some other way to minimize my goal?, which I will greatly appreciate.
4. I also did the optimization with the Excel solver and I am getting some improvement in the results, the difference is very little, but the truth is that I would like my results in Gekko to be better, so I thought that maybe I am configuring something wrong or I am not understanding well how Gekko is working.
With much respect I ask you please if you can check my code, to know if I am configuring correctly the commands, as the model should act, or am I wrong somewhere.
Finally, I would ask you please to authorize me to send you my code and input record, I don’t found the way to attach it here, I would like to upload it to the stackoverflow but as it is part of my Master's project and it is not finished yet, it is not possible for me, I gladly commit to upload it as soon as my work is finished.
Thank you very much and I look forward to your response.
Omar.
--
--
APMonitor user's group e-mail list.
- To post a message, send email to apmo...@googlegroups.com
- To unsubscribe, send email to apmonitor+...@googlegroups.com
- Visit this group at http://groups.google.com/group/apmonitor
---
You received this message because you are subscribed to the Google Groups "apmonitor" group.
To unsubscribe from this group and stop receiving emails from it, send an email to apmonitor+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/apmonitor/7eb06cea-c770-4cb3-af0b-36749ad9cc01n%40googlegroups.com.
You received this message because you are subscribed to a topic in the Google Groups "apmonitor" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/apmonitor/ZF4QfQcz6A8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to apmonitor+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/apmonitor/CAGNFaLEsYsS441vWK6ON71dg_X4FpUgMUAV93SRqyFG60oDU5w%40mail.gmail.com.