I am trying to optimize a system that monitors and advises a user multiple times over a certain period of time depending on changing outside factors. The systems behavior can be altered by 5 constrained input variables, i.e. weights of a cost function. These parameters are fixed for one run.
At the end of the execution, the systems performance can be summarized by 3 output parameters (1 real, 2 integer) that are unrelated to the input variables.
The goal is to find those input values that minimize the output parameters.
(I have looked at classic optimization problems, but since there is no objective function that can be defined and the outputs are non-smooth / non-linear many don't seem to be applicable. From what I found "derivative-free optimization" might work, but I am completely new to the topic)
The system's code is written in JAVA and one execution takes about 10min.
Any suggestion on what solver / search algorithm could be used for this problem (ideally with a JAVA library available)?