This looks like a 1-to-many problem.
Given a single scalar x value, you want your output to be an array of size N where N is the number of curves.
as an example you can build a model in this way using tensorflow:
#====================== Build achitecture:
import tensorflow as tf
Input = tf.keras.layers.Input(shape=(1),name='Input') #<<--- Takes a single scaler input
xi = tf.keras.layers.Dense(units=100,activation='relu',name='D1')(Input)
xi = tf.keras.layers.Dense(units=100,activation='relu',name='D2')(xi)
Output = tf.keras.layers.Dense(units=10,activation='relu',name='Output')(xi) #<<-- 1 unit for each output
model = tf.keras.Model(Input,Output,name='Model1')
Here is a visualizations of the results:

You can view the entire notebook here if you need it.
Hope this helps :)