A method for restricting the speed of a vehicle traveling in a curve, the method comprising: - receiving multiple road data samples (106a-c) comprising location points of a curve path ahead of the vehicle, - determining a parameter value for each of a first set of vehicle speed affecting parameters associated with the road data samples; determining a driver style for a driver of the vehicle based on historical driving data during the most recent driving session or sessions for the driver under known driving conditions, - selecting a unique vehicle speed model from a plurality of predetermined vehicle speed models based on classification of a combination of the first set of parameter values and on the determined driver style, wherein the vehicle speed models are constructed based on machine learning algorithms trained with historical driving data for a plurality of driving conditions including a second set of parameters comprising at least one parameter that is not included in the first set of vehicle speed affecting parameters, wherein the vehicle speed models comprise a neural network; - determining a parameter value for each of the second set of vehicle speed affecting parameters, at least one of the parameter values of the second set of vehicle speed affecting parameters is associated with at least one of the road data samples ahead of the vehicle, the second set of vehicle speed affecting parameters comprising at least one parameter that is not included in the first set of parameters, - calculating a recommended speed for the vehicle for at least one of the road samples based on the selected vehicle speed model and the parameter values of the second set of vehicle speed affecting parameters, - providing an instruction for adapting the vehicle speed to the recommended speed at the location point of the at least one road sample. - receiving multiple road data samples (106a-c) comprising location points of a curve path ahead of the vehicle, - determining a parameter value for each of a first set of vehicle speed affecting parameters associated with the road data samples; determining a driver style for a driver of the vehicle based on historical driving data during the most recent driving session or sessions for the driver under known driving conditions, - selecting a unique vehicle speed model from a plurality of predetermined vehicle speed models based on classification of a combination of the first set of parameter values and on the determined driver style, wherein the vehicle speed models are constructed based on machine learning algorithms trained with historical driving data for a plurality of driving conditions including a second set of parameters comprising at least one parameter that is not included in the first set of vehicle speed affecting parameters, wherein the vehicle speed models comprise a neural network; - determining a parameter value for each of the second set of vehicle speed affecting parameters, at least one of the parameter values of the second set of vehicle speed affecting parameters is associated with at least one of the road data samples ahead of the vehicle, the second set of vehicle speed affecting parameters comprising at least one parameter that is not included in the first set of parameters, - calculating a recommended speed for the vehicle for at least one of the road samples based on the selected vehicle speed model and the parameter values of the second set of vehicle speed affecting parameters, - providing an instruction for adapting the vehicle speed to the recommended speed at the location point of the at least one road sample.