Skip to content

Commit efbb679

Browse files
committed
New functions with Hölder gradient
1 parent 24d23f5 commit efbb679

2 files changed

Lines changed: 36 additions & 37 deletions

File tree

README.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -157,22 +157,22 @@ O pacote suporta informações de convexidade para cada função objetivo:
157157

158158
## Problemas Implementados
159159

160-
| Nome | Descrição | nvar | nobj | Jacobiana | Convexidade |
161-
|-------|------------------------------------|-------|------|-----------|------------------------|
162-
| AP1 | Exemplo 1 de Ansary & Panda (2014) | 2 | 3 | | [n-conv, conv, conv] |
163-
| AP2 | Exemplo 2 de Ansary & Panda (2014) | 1 | 2 | | [estr conv, estr conv] |
164-
| AP3 | Exemplo 3 de Ansary & Panda (2014) | 2 | 2 | | [n-conv, n-conv] |
165-
| AP4 | Exemplo 4 de Ansary & Panda (2014) | 3 | 3 | | [n-conv, estr conv, estr conv] |
166-
| BK1 | Application 1 de To & Korn (1996) | 2 | 2 | | [estr conv, estr conv] |
167-
| DD1 | A numerical example of Das & Dennis (1998) | 5 | 2 | | [estr conv, n-conv] |
168-
| DGO0 | Exemplo 1 de Dumitrescu, Grosan, Oltean (2000) | 1 | 2 | | [estr conv, estr conv] |
169-
| DGO1 | Exemplo 2 de Dumitrescu, Grosan, Oltean (2000) | 1 | 2 | | [n-conv, n-conv] |
170-
| DGO2 | Exemplo 3 de Dumitrescu, Grosan, Oltean (2000) | 1 | 2 | | [estr conv, estr conv] |
171-
| ZDT1 | Exemplo 1 de Zitzler et al. (2000) | 30 | 2 | | [conv, n-conv] |
172-
| ZDT2 | Exemplo 2 de Zitzler et al. (2000) | 30 | 2 | | [conv, n-conv] |
173-
| ZDT3 | Exemplo 3 de Zitzler et al. (2000) | 30 | 2 | | [conv, n-conv] |
174-
| ZDT4 | Exemplo 4 de Zitzler et al. (2000) | 10 | 2 | | [conv, n-conv] |
175-
| ZDT6 | Exemplo 6 de Zitzler et al. (2000) | 10 | 2 | | [n-conv, n-conv] |
160+
|Nome | Descrição |nvar|nobj|Has Jacb?|Convexidade |
161+
|------|----------------------------------------|----|----|---------|-------------------------|
162+
|AP1 | Ex. 1 de Ansary & Panda (2014) | 2 | 3 | yes | [n-cv, cv, cv] |
163+
|AP2 | Ex. 2 de Ansary & Panda (2014) | 1 | 2 | yes | [estr cv, estr cv] |
164+
|AP3 | Ex. 3 de Ansary & Panda (2014) | 2 | 2 | yes | [n-cv, n-cv] |
165+
|AP4 | Ex. 4 de Ansary & Panda (2014) | 3 | 3 | yes | [n-cv, estr cv, estr cv]|
166+
|BK1 | Application 1 de Binh & Korn (1996) | 2 | 2 | yes | [estr cv, estr cv] |
167+
|DD1 | A numerical ex. of Das & Dennis (1998) | 5 | 2 | yes | [estr cv, n-cv] |
168+
|DGO0 | Ex. 1 de Dumitrescu et al. (2000) | 1 | 2 | yes | [estr cv, estr cv] |
169+
|DGO1 | Ex. 2 de Dumitrescu et al. (2000) | 1 | 2 | yes | [n-cv, n-cv] |
170+
|DGO2 | Ex. 3 de Dumitrescu et al. (2000) | 1 | 2 | yes | [estr cv, estr cv] |
171+
|ZDT1 | Ex. 1 de Zitzler et al. (2000) | 30 | 2 | yes | [cv, n-cv] |
172+
|ZDT2 | Ex. 2 de Zitzler et al. (2000) | 30 | 2 | yes | [cv, n-cv] |
173+
|ZDT3 | Ex. 3 de Zitzler et al. (2000) | 30 | 2 | yes | [cv, n-cv] |
174+
|ZDT4 | Ex. 4 de Zitzler et al. (2000) | 10 | 2 | yes | [cv, n-cv] |
175+
|ZDT6 | Ex. 6 de Zitzler et al. (2000) | 10 | 2 | yes | [n-cv, n-cv] |
176176

177177
## Referências
178178

src/problems/aas2025.jl

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ function AAS1(; T::Type{<:AbstractFloat}=Float64,
6464

6565
jacobian = x -> [grad_f1(x)'; grad_f2(x)']
6666

67-
prob = MOProblem(
67+
return MOProblem(
6868
n,
6969
m,
7070
[f1, f2];
@@ -78,9 +78,6 @@ function AAS1(; T::Type{<:AbstractFloat}=Float64,
7878
jacobian_by_row=[grad_f1, grad_f2],
7979
convexity=meta[:convexity]
8080
)
81-
82-
register_problem(prob)
83-
return prob
8481
end
8582

8683
# ------------------------- AAS2 -------------------------
@@ -90,12 +87,14 @@ end
9087
A function with two Hölder continuous gradient functions.
9188
9289
AAS2(; T::Type{<:AbstractFloat}=Float64,
93-
p1 = 1.005,
94-
λ1 = 1.0,
95-
Φ1 = [1.0 0.0; 0.0 1.0],
90+
p1 = 1.003,
91+
λ1 = 1.2,
92+
Φ1 = [1.2 -0.3; 0.4 1.5],
93+
c1 = [1.5; -1.0]
9694
p2 = 1.003,
97-
λ2 = 0.9,
98-
Φ2 = [1.0 0.8; 0.3 1.2])
95+
λ2 = 0.8,
96+
Φ2 = [1.8 0.5; -0.2 1.1]
97+
c2 = [-1.2; 0.8])
9998
10099
A function with two Hölder continuous gradient functions.
101100
@@ -114,12 +113,14 @@ f₂(x) = (λ₂/p₂) * ||Φ₂x||ₚ₂ᵖ²
114113
- `Φ2`: Linear transformation matrix for f₂.
115114
"""
116115
function AAS2(; T::Type{<:AbstractFloat}=Float64,
117-
p1=1.005,
118-
λ1=1.0,
119-
Φ1=[1.0 0.0; 0.0 1.0],
116+
p1=1.003,
117+
λ1=1.2,
118+
Φ1=[1.2 -0.3; 0.4 1.5],
119+
c1=[1.5; -1.0],
120120
p2=1.003,
121-
λ2=0.9,
122-
Φ2=[1.0 0.8; 0.3 1.2]
121+
λ2=0.8,
122+
Φ2=[1.8 0.5; -0.2 1.1],
123+
c2=[-1.2; 0.8]
123124
)
124125
meta = META["AAS2"]
125126
n = meta[:nvar]
@@ -129,18 +130,19 @@ function AAS2(; T::Type{<:AbstractFloat}=Float64,
129130
Φ1_T = T.(Φ1)
130131
p1_T = T(p1)
131132
λ1_T = T(λ1)
132-
133+
c1_T = T.(c1)
133134
Φ2_T = T.(Φ2)
134135
p2_T = T(p2)
135136
λ2_T = T(λ2)
137+
c2_T = T.(c2)
136138

137139
f1 = x -> begin
138-
Φx = Φ1_T * x
140+
Φx = Φ1_T * (x - c1_T)
139141
return (λ1_T / p1_T) * (abs(Φx[1])^p1_T + abs(Φx[2])^p1_T)
140142
end
141143

142144
f2 = x -> begin
143-
Φx = Φ2_T * x
145+
Φx = Φ2_T * (x - c2_T)
144146
return (λ2_T / p2_T) * (abs(Φx[1])^p2_T + abs(Φx[2])^p2_T)
145147
end
146148

@@ -160,7 +162,7 @@ function AAS2(; T::Type{<:AbstractFloat}=Float64,
160162

161163
# jacobian = x -> [grad_f1(x)'; grad_f2(x)']
162164

163-
prob = MOProblem(
165+
return MOProblem(
164166
n,
165167
m,
166168
[f1, f2];
@@ -174,7 +176,4 @@ function AAS2(; T::Type{<:AbstractFloat}=Float64,
174176
# jacobian_by_row=[grad_f1, grad_f2],
175177
convexity=meta[:convexity]
176178
)
177-
178-
register_problem(prob)
179-
return prob
180179
end

0 commit comments

Comments
 (0)