Skip to content

completion labo 6 - #1

Open
joey-van-melle wants to merge 2 commits into
dpo-mth8408:mainfrom
joey-van-melle:main
Open

joey-van-melle wants to merge 2 commits into
dpo-mth8408:mainfrom
joey-van-melle:main

Conversation

@joey-van-melle

Copy link
Copy Markdown

No description provided.

@joey-van-melle

Copy link
Copy Markdown
Author

Labo 6

Comment thread rapport.qmd Outdated
@github-actions

Copy link
Copy Markdown

Status:
Success--Here-is-the-PDF

Comment thread rapport.qmd

function projected_gradient_norm(x, gx, C)
y = copy(x)
projection!(y .= x .- gx, C)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Un peu risqué et perte de lisibilité ; en gros, ce n'est pas une bonne pratique.

Comment thread rapport.qmd
g_0 = grad(model, x0)
gx = copy(g_0)
g0norm = projected_gradient_norm(x0, g_0, C)
gnorm = projected_gradient_norm(x, gx, C)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gnorm = g0norm ?

Comment thread rapport.qmd

return GenericExecutionStats(model; status=status, solution = x,
objective = obj(model, x),
primal_feas = NaN,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

primal_feas = 0

Comment thread rapport.qmd
return GenericExecutionStats(model; status=status, solution = x,
objective = obj(model, x),
primal_feas = NaN,
dual_feas = NaN,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dual_feas = gnorm

Comment thread rapport.qmd

@info log_header([:iter, :nf, :primal, :nd, :Δ],
[Int, Int, Float64, String, Float64, Float64],
hdr_override=Dict(:nf => "#F", :primal => "f(x)", :nd => "‖d‖", :Δ => "‖Δf‖"))

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ce serait important d'afficher gnorm puisque c'est la mesure de stationnarité ...

Comment thread rapport.qmd
iter_limit = iter > max_iter
tired = many_evals || el_time > max_time || iter_limit

@info log_row(Any[iter, neval_obj(model), fvalue, pnorm, gnorm])

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tu affiches gnorm dans une colonne qui s'appelle ∆f ...

Comment thread rapport.qmd
end
```

Dans les trois cas, on arrive à convergé mais la solution n'est pas aussi bonne que Ipopt de plusieurs degrés de magnitures.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ce n'est pas très facile de comparer les solutions dans la sortie de ton code.

Comment thread rapport.qmd
x .= center .+ v .* (r / nv)
return x
end
end

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok

Comment thread rapport.qmd

# Votre solution pourrait-elle être utilisée pour calculer un pas dans une méthode de région de confiance ?
Oui en fait, elle retourne exactement s. Le problème de cette méthode c'est qu'elle n'est pas optimale en ce sens où elle aura de la
difficulté à prendre une direction optimale lorsque le problème n'est pas convexe. Ainsi, la méthode peut être lente.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

direction optimale = ???

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants