COMSOL Multiphysics modeling - comsol

I am working on flow-induced vibration of a double wall carbon nanotubes. I have solved the problem analytically and approximately. The results of both solutions are almost identical. Then, I used COMSOL multi-physics to do the same problem. However, the COMSOL results do not match with my previous solution. I may do something wrong with COMSOL modeling ( I am not COMSOL professional). Any suggestion to modify that may help for this.
Bests,
Ali

It is always hard to know if the simulated answer is right or wrong, so you cannot really know if the previous solutions are wrong. With my Comsol and other FEM software experience, I can say that the hardest part is to validate the answer. You should do some measurements with real nanotubes to be sure. But anyway, you should provide more information about your case to answer more precisely.

When working with FEM, you discretise your domain into finite elements. Perhaps you could try to progressively decrease the element size in your domain, solve the problem and check the results for each simulation. When the results do not significantly change anymore (say 5%), you could argue that your results do not depend on the mesh size, and so you have eliminated (at least) one potential source of error. This is the essential idea of mesh convergence analysis.

Related

Non Convex Optimizations

I have a gd algorithm and I am trying to come up with a non-convex univariate optimization problem. I want to plot the function python and then show two runs of gd, one where it gets caught in a local minimum and one where it manages to make it to a global minimum. I am thinking of using different starting points to accomplish this.
That being said I am somewhat clueless about coming up with such a function or trying two different points, any help is appreciated.
Your question is really broad and really hard to answer because nonconvex optimization is rather complicated so is any iterative algorithm that solves such problems. As a quick hint, you can use the Mexican Hat function (or a simple polynomial that gives you what you want) for your test case. Also these papers can give you come context : Paper1 Paper2
Good luck.

How do i represent the chromosome using Genetic Algorithm?

My task is to calculate clashes between alert time schedule and the user calendar schedule to generate the clashes less alert time schedule.
How should i represent the chromosome according to this problem?
How should i represent the time slots? (Binary or Number)
Thank You
(Please Consider i'm a beginner to the genetic algorithm studies)
Questions would be: What have you tried so far? How good are your results so far? Also your Problem is
stated quite unspecific. Thus here is what I can give:
The Chromosome should probably be the starttime of the alerts in your schedule (if I understood your Problem correctly).
As important is to think of the ways you want to evaluate and calculate the Fitness of your individuals (here clashes (e.g. amount or time overlap between appointments), but it is obvious that you might find better heuristics to receive better solutions / faster convergence)
Binary or continuous number might both work: I am usually going for numbers whenever there is no strong reason to not do so (since it is easier to Interpret, debug, etc.). Binary comes with some nice opportunities with respect to Mutation and Recombination.
I strongly recommend playing around and reading about those Things. This might look like a lot of extra work to implement, but you should rather come to see them as hyperparameters which Need to be tuned in order to receive the best Outcome.

Recommended local search optimization algorithm for control domain

Background: I am trying to find a list of floating point parameters for a low level controller that will lead to balance of a robot while it is walking.
Question: Can anybody recommend me any local search algorithms that will perform well for the domain I just described? The main criteria for me is the speed of convergence to the right solution.
Any help will be greatly appreciated!
P.S. Also, I conducted some research and found out that "Evolutianry
Strategy" algorithms are a good fit for continuous state space. However, I am not entirely sure, if they will fit well my particular problem.
More info: I am trying to optimize 8 parameters (although it is possible for me to reduce the number of parameters to 4). I do have a simulator and a criteria for me is speed in number of trials because simulation resets are costly (take 10-15 seconds on average).
One of the best local search algorithms for low number of dimensions (up to about 10 or so) is the Nelder-Mead simplex method. By the way, it is used as the default optimizer in MATLAB's fminsearch function. I personally used this method for finding parameters of some textbook 2nd or 3rd degree dynamic system (though very simple one).
Other option are the already mentioned evolutionary strategies. Currently the best one is the Covariance Matrix Adaption ES, or CMA-ES. There are variations to this algorithm, e.g. BI-POP CMA-ES etc. that are probably better than the vanilla version.
You just have to try what works best for you.
In addition to evolutionary algorithm, I recommend you also check reinforcement learning.
The right method depends a lot on the details of your problem. How many parameters? Do you have a simulator? Do you work in simulation only, or also with real hardware? Speed is in number of trials, or CPU time?

Can information gain be negative?

It's so weird about my quiz.{(200+/300-)->((50+/50-),(250-,150+))}, aftet calculation the IG is negative. Can some one explain why?
After I researched some other questions, I think I got some idea. Some people say information gain cannot be negative, but actually it can be, depends on which feature you choose to split. I found a paper,http://compbio.umbc.edu/Documents/Negative_information.pdf, which shows some protein can influence the understanding of genomic composition, since protein are so messy. If we use some messy feature to build our tree, the information gain would be negative, since imagine, in the real world, if we want to make a decision, some features can make us hesitate. If we use this kind of features to make decision, the result would be more uncertain. Forgiving my poor English...
the example I've given is actually positive...my mistake, sorry about that.

Relating Machine learning Techniques to solve optimization Problem

Consider an optimization problem of some dimension n, Given some linear set of equations(inequalities) or constraints on the inputs which form a convex region, finding the maximum\minimum value of some expression which is some linear combination of inputs(or dimensions).
For larger dimension, these optimization problems take much time to give the exact answer.
So, can we use machine learning techniques, to get some approximate solution in lesser time.
if we can use machine learning techniques in this context, How the Training set should be??
Do you mean "How big should the training set be?" If so, then that is very much a "how long is a piece of string" question. It needs to be large enough for the algorithm being used, and to represent the data that is being modeled.
This doesn't strike me as being especially focused on machine learning, as is typically meant by the term anyway. It's just a straightforward constrained optimization problem. You say that it takes too long to find solutions now, but you don't mention how you're trying to solve the problem.
The simplex algorithm is designed for this sort of problem, but it's exponential in the worst case. Is that what you're trying that's taking too long? If so, there are tons of metaheuristics that might perform well. Tabu search, simulated annealing, evolutionary algorithms, variable depth search, even simple multistart hill climbers. I would probably try something along those lines before I tried anything exotic.

Resources