Should I re-train the neural network if the desired final state is changed while solving optimal control problem?

Hi everyone,
I have a very basic question about solving optimal control problems with universal differential equations. Say I want to find a control c(t) to achieve a certain final state u(T), and I can use neural networks to learn the differential equation model so that the optimal contral c(t) can be naturally solved. If I change the desired final state u(T), should I re-train the neural network to learn the model again?
Personally I think I should train the neural network again since the model has been changed, based on the tutorials provided in the docs of related julia packages. However, is there a way to learn the “inverse transform” of the optimal control problem, so that the neural work does not need be trained again?

The underlying dynamical system, i.e. x' = f(x,u,t) should still be the same, so it should be fine. However, a different choice of u could perturb it to a place in phase space that it didn’t train on before. To handle this, you can use the current coefficients of the neural network and perform what’s known as transfer learning, i.e. use the trained network of the old model as the initial conditions for the network of the new model.

1 Like

Thank you Chris! I will have a try. The suggestion to use transfer learning is really great.

Classic example of machine learning people coming up with new names for ancient concepts :stuck_out_tongue: