AmplNLP
(类来自 pyomo.contrib.pynumero.interfaces.ampl_nlp)
- class pyomo.contrib.pynumero.interfaces.ampl_nlp.AmplNLP(nl_file, row_filename=None, col_filename=None)[source]
基础类:
AslNLP- __init__(nl_file, row_filename=None, col_filename=None)[source]
AMPL非线性程序接口。 如果未提供row_filename和col_filename,接口 将检查文件是否存在(文件名与nl_file相同,但扩展名为.row 和.col)
方法
__init__(nl_file[, row_filename, col_filename])AMPL 非线性程序接口。
constraint_idx(con_name)返回名为con_name的约束的索引(对应于evaluate_constraints返回的顺序)
返回一个包含所有约束名称的有序列表(对应于evaluate_constraints)
返回约束条件的下界向量
返回约束条件的上限向量
create_new_vector(vector_type)创建一个具有适当长度和结构的向量
eq_constraint_idx(con_name)返回名为con_name的等式约束的索引(对应于evaluate_eq_constraints返回的顺序)
返回仅包含等式约束名称的有序列表(对应于evaluate_eq_constraints)
evaluate_constraints([out])返回在set_primals中给定的原始变量值处评估的约束值
evaluate_eq_constraints([out])返回在set_primals中给定的原始变量值处评估的等式约束的值
evaluate_grad_objective([out])返回在set_primals中给定的原始变量值处评估的目标函数的梯度
evaluate_hessian_lag([out])返回在给定原始变量集 set_primals 和对偶变量集 set_duals 的值处评估的拉格朗日函数的 Hessian 矩阵
evaluate_ineq_constraints([out])返回在set_primals中给定的原始变量值处评估的不等式约束的值
evaluate_jacobian([out])返回在set_primals中给定的原始变量值处评估的约束的雅可比矩阵
evaluate_jacobian_eq([out])返回在set_primals中给定的原始变量值处评估的等式约束的雅可比矩阵
evaluate_jacobian_ineq([out])返回在set_primals中给定的原始变量值处评估的不等式约束的雅可比矩阵
返回在set_primals中给定的原始变量值处评估的目标函数值
返回用于约束的所需缩放因子。
获取set_duals中提供的对偶变量值的副本。
获取在set_duals_eq中提供的等式约束的对偶变量值的副本。
获取在set_duals_eq中提供的不等式约束的对偶变量值的副本。
返回用于等式约束的所需缩放因子。
返回用于不等式约束的所需缩放因子。
获取由set_obj_factor设置的目标函数因子的值。
返回用于目标函数的所需缩放因子。
获取在set_primals中提供的原始变量值的副本。
返回用于原语的所需缩放因子。
ineq_constraint_idx(con_name)返回名为 con_name 的不等式约束的索引(对应于 evaluate_ineq_constraints 返回的顺序)
返回仅包含不等式约束名称的有序列表(对应于evaluate_ineq_constraints)
ineq_lb()返回不等式约束的下界向量
ineq_ub()返回不等式约束的上界向量
返回带有约束对偶变量初始值的向量
返回具有等式约束对偶变量初始值的向量
返回带有不等式约束对偶变量初始值的向量
返回包含原始变量初始值的向量
返回约束的数量
返回等式约束的数量
返回不等式约束的数量
返回原始变量的数量
返回拉格朗日函数的Hessian矩阵中非零值的数量
返回等式约束的雅可比矩阵中非零值的数量
返回等式约束的雅可比矩阵中非零值的数量
返回不等式约束的雅可比矩阵中非零值的数量
primal_idx(var_name)返回名为 var_name 的原始变量的索引
返回原始变量的下界向量
返回包含原始变量名称的有序列表
返回原始变量的上界向量
report_solver_status(status_code, status_message)使用在set方法中定义的原始和对偶值向NLP类报告求解器状态
set_duals(duals)设置用于调用评估方法(hessian_lag)的约束条件的对偶变量的值
set_duals_eq(duals_eq)设置用于调用评估方法(hessian_lag)的等式约束的对偶变量的值
set_duals_ineq(duals_ineq)设置用于调用评估方法(hessian_lag)的不等式约束的对偶变量的值
set_obj_factor(obj_factor)设置目标函数因子的值,用于在调用拉格朗日函数的Hessian矩阵评估(evaluate_hessian_lag)时使用。
set_primals(primals)设置原始变量的值,以便在调用评估方法时使用
variable_idx(var_name)已弃用。
已弃用。
成员文档
- constraints_lb()
返回约束条件的下界向量
- Return type:
类似向量
- constraints_ub()
返回约束条件的上限向量
- Return type:
类似向量
- create_new_vector(vector_type)
创建一个具有适当长度和结构的向量,如所请求的
- Parameters:
vector_type ({'primals', 'constraints', 'eq_constraints', 'ineq_constraints',) – ‘duals’, ‘duals_eq’, ‘duals_ineq’} 用于标识要创建的适当向量的字符串。
- Return type:
- evaluate_constraints(out=None)
返回在set_primals中给定的原始变量值处评估的约束值
- Parameters:
out (array_like, optional) – 输出数组。其类型被保留,并且必须具有正确的形状以容纳输出。
- Return type:
vector_like
- evaluate_eq_constraints(out=None)
返回在set_primals中给定的原始变量值处评估的等式约束的值
- Parameters:
out (array_like, optional) – 输出数组。其类型被保留,并且必须具有正确的形状以容纳输出。
- Return type:
vector_like
- evaluate_grad_objective(out=None)
返回在set_primals中给定的原始变量值处评估的目标函数的梯度
- Parameters:
out (vector_like, optional) – 输出向量。其类型被保留,并且必须具有正确的形状以容纳输出。
- Return type:
vector_like
- evaluate_hessian_lag(out=None)
返回在给定原始变量集和双变量集的值处评估的拉格朗日函数的Hessian矩阵
- Parameters:
out (matrix_like (例如, coo_matrix), 可选) – 输出矩阵,其结构已定义为hessian。可选
- Return type:
矩阵类
- evaluate_ineq_constraints(out=None)
返回在set_primals中给定的原始变量值处评估的不等式约束的值
- Parameters:
out (array_like, optional) – 输出数组。其类型被保留,并且必须具有正确的形状以容纳输出。
- Return type:
vector_like
- evaluate_jacobian(out=None)
返回在set_primals中给定的原始变量值处评估的约束的雅可比矩阵
- Parameters:
out (matrix_like (例如, coo_matrix), 可选) – 输出矩阵,其结构已经定义为雅可比矩阵。
- Return type:
矩阵类
- evaluate_jacobian_eq(out=None)
返回在set_primals中给定的原始变量值处评估的等式约束的雅可比矩阵
- Parameters:
out (matrix_like (例如, coo_matrix), 可选) – 输出矩阵,其结构已经定义为雅可比矩阵。
- Return type:
矩阵类
- evaluate_jacobian_ineq(out=None)
返回在set_primals中给定的原始变量值处评估的不等式约束的雅可比矩阵
- Parameters:
out (matrix_like (例如, coo_matrix), 可选) – 输出矩阵,其结构已经定义为雅可比矩阵。
- Return type:
矩阵类
- get_constraints_scaling()
返回用于约束的所需缩放因子。None 表示不进行缩放。 这表示模型可能进行缩放,但评估方法应返回未缩放的值。
- Return type:
类似数组或无
- get_duals()
获取set_duals中提供的对偶变量值的副本。这些值将用于调用评估方法。
- get_duals_eq()
获取等式约束的对偶变量值的副本,如set_duals_eq中提供的。这些值将在调用评估方法时使用。
- get_duals_ineq()
获取不等式约束的对偶变量值的副本,如set_duals_eq中提供的。这些值将用于调用评估方法。
- get_eq_constraints_scaling()
返回用于等式约束的所需缩放因子。None 表示不进行缩放。 这表示模型可能进行缩放,但评估方法应返回未缩放的值。
- Return type:
类似数组或无
- get_ineq_constraints_scaling()
返回用于不等式约束的所需缩放因子。None 表示不进行缩放。 这表示模型可能进行缩放,但评估方法应返回未缩放的值。
- Return type:
类似数组或无
- get_obj_factor()
获取由set_obj_factor设置的目标函数因子的值。这是在调用拉格朗日函数的Hessian矩阵评估(evaluate_hessian_lag)时将使用的值。
- get_obj_scaling()
返回用于目标函数的所需缩放因子。None 表示不进行缩放。 这表示模型可能进行缩放,但评估方法应返回未缩放的值。
- Return type:
float 或 None
- get_primals()
获取在set_primals中提供的原始变量的值的副本。这些值将用于调用评估方法。
- get_primals_scaling()
返回用于原始数据的期望缩放因子。None 表示不进行缩放。 这表示模型可能进行缩放,但评估方法应返回未缩放的值
- Return type:
类似数组或无
- ineq_lb()
返回不等式约束的下界向量
- Return type:
类似向量
- ineq_ub()
返回不等式约束的上界向量
- Return type:
类似向量
- init_duals()
返回带有约束对偶变量初始值的向量
- init_duals_eq()
返回具有等式约束对偶变量初始值的向量
- init_duals_ineq()
返回包含不等式约束对偶变量初始值的向量
- init_primals()
返回包含原始变量初始值的向量
- n_constraints()
返回约束的数量
- n_eq_constraints()
返回等式约束的数量
- n_ineq_constraints()
返回不等式约束的数量
- n_primals()
返回原始变量的数量
- nnz_hessian_lag()
返回拉格朗日函数的Hessian矩阵中非零值的数量
- nnz_jacobian()
返回等式约束的雅可比矩阵中非零值的数量
- nnz_jacobian_eq()
返回等式约束的雅可比矩阵中非零值的数量
- nnz_jacobian_ineq()
返回不等式约束的雅可比矩阵中非零值的数量
- primals_lb()
返回原始变量的下界向量
- Return type:
类似向量
- primals_ub()
返回原始变量的上界向量
- Return type:
类似向量
- report_solver_status(status_code, status_message)
使用在设置方法中定义的原始和对偶值向NLP类报告求解器状态
- set_duals(duals)
设置约束的对偶变量的值,以便在调用评估方法(hessian_lag)时使用。
- Parameters:
duals (vector_like) – 包含等式约束对偶变量值的向量
- set_duals_eq(duals_eq)
设置用于调用评估方法(hessian_lag)的等式约束的对偶变量的值
- Parameters:
duals_eq (vector_like) – 包含等式约束对偶变量值的向量
- set_duals_ineq(duals_ineq)
设置用于调用评估方法(hessian_lag)的不等式约束的对偶变量的值
- Parameters:
duals_ineq (vector_like) – 包含不等式约束对偶变量值的向量
- set_obj_factor(obj_factor)
设置目标函数因子的值,用于在调用拉格朗日函数的Hessian矩阵评估时使用(evaluate_hessian_lag)
- Parameters:
obj_factor (float) – 用于评估拉格朗日函数的Hessian矩阵的目标函数因子值
- set_primals(primals)
设置原始变量的值,用于调用评估方法
- Parameters:
primals (vector_like) – 包含原始变量值的向量。