Azzera filtri
Azzera filtri

AI Technique suitable for Temperature Distribution prediction.

6 visualizzazioni (ultimi 30 giorni)
Greetings,
I am a Mechanical Engineer by profession and am considering exploring a suitable AI/ML technique to predict the 2D temperature distribution of an arbitrary object for different heat generation rates.
So I am considering data from temperature sensors to give me temperature values at particular X/Y coordinates on my object, along with the corresponding cooling medium static pressure and flow rates for different heat generation rates of my object.
Now from these few spatial locations, I'd like to predict the temperature at other points on the object where no sensors are placed, given that I will train my model with known values of temperature at the non-sensor locations obtained from deterministic/analytical model of the problem.
In short my predictors would be:
  1. Heat Generation
  2. Pressure
  3. Flow Velocity
at, say 5 locations, to predict temperature at 10 locations.
Further, if I would like to capture the temporal variation, how would I prepare my dataset and which AI technique would be best for this problem?
Thank you!
  5 Commenti
Walter Roberson
Walter Roberson il 18 Ago 2022
Major parts of the processing for Neural Networks is matrix multiplications. A single NaN "pollutes" an entire row of results.
Observe:
A = magic(5)
A = 5×5
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
B = rot90(A)
B = 5×5
15 16 22 3 9 8 14 20 21 2 1 7 13 19 25 24 5 6 12 18 17 23 4 10 11
C = flipud(B)
C = 5×5
17 23 4 10 11 24 5 6 12 18 1 7 13 19 25 8 14 20 21 2 15 16 22 3 9
An = A; An(2,4) = nan
An = 5×5
17 24 1 8 15 23 5 7 NaN 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
orig1 = A * B
orig1 = 5×5
895 1000 975 820 535 1000 925 845 635 820 975 845 585 845 975 820 635 845 925 1000 535 820 975 1000 895
orig2 = orig1 * C
orig2 = 5×5
54775 52450 50425 58300 58675 57425 55550 51275 52950 57425 58825 58175 54925 51675 51025 52425 56900 58575 54300 52425 51175 51550 59425 57400 55075
mod1 = An * B
mod1 = 5×5
895 1000 975 820 535 NaN NaN NaN NaN NaN 975 845 585 845 975 820 635 845 925 1000 535 820 975 1000 895
mod2 = mod1 * C
mod2 = 5×5
54775 52450 50425 58300 58675 NaN NaN NaN NaN NaN 58825 58175 54925 51675 51025 52425 56900 58575 54300 52425 51175 51550 59425 57400 55075
Thus with even a single NaN, major portions of the output can become unusable. It is common for every input in a Neural Network to influence every output, so a single NaN can ruin the entire output.
Because of this, it is your responsibility to pre-process the data, and entire remove the samples that have NaN or else replace the NaN entries with something finite.
Neural Network algorithms are mostly not designed to be able to detect and fix-up calculations that involve nan.

Accedi per commentare.

Risposte (2)

Ibrahim Patel
Ibrahim Patel il 18 Giu 2022
Thanks @Sam Chak. Actually I am considering exploring the AI approach to this problem.
You are right, the PDE approach would give better results.

Diana
Diana il 26 Set 2023
This is an interesting discussion, not long ago I also discussed this and found a lot of useful comments for myself. Now I am interested in a slightly different direction of using AI. For example, in the field of visual data, accuracy is of paramount importance. Image annotation services are the cornerstone for achieving accuracy in machine learning and artificial intelligence. So I found out about an outsourcing image annotation company that has good reviews. Maybe this will be useful for you.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by