Comments (3)
When you do
A = Parameter(model, val=A_val)
the model stores a reference to the Parameter
A
, and A
in turn stores a reference to the Matrix
A_val
. If you subsequently do
A_val = randn(n, n)
you've now made it so that the variable A_val
refers to different data than the reference that's stored in the Parameter
A
. Instead, you should be doing e.g.
A_val .= randn(n, n) # note the dot
or better yet:
randn!(A)
to modify the matrix A_val
in place. The second A= Parameter(model, val=A_val)
is then unnecessary.
See e.g. https://discourse.julialang.org/t/question-regarding-references/7610/7?u=tkoolen for more info on how references work in Julia.
from parametron.jl.
Feel free to ask more usage questions by the way, either here or (perhaps preferably) on discourse. Just closed the issue because there are no actionable items in the codebase.
from parametron.jl.
Thank you @tkoolen for your response.
I just noticed that in @expression and in @constraint sparse matrices are not accepted.
For example, A=spzeros(n,m). If I use
A_expr = @expression A or @constraint(model, A * X ==0)
It gives me this error:
ERROR: LoadError: MethodError: no method matching one(::Type{Any})
Closest candidates are:
one(::Type{Union{Missing, T}}) where T at missing.jl:87
one(::Missing) at missing.jl:83
one(::BitArray{2}) at bitarray.jl:400
...
Stacktrace:
[1] one(::Type{Any}) at ./missing.jl:87
[2] *(::SparseMatrixCSC{Float32,Int64}, ::Array{Variable,1})at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.1/SparseArrays/src/linalg.jl:53
from parametron.jl.
Related Issues (20)
- dot broken for 0-length vectors on 0.7 HOT 1
- "unsupported objective" for empty feasibility problems
- Missing optimization for `::Number * AbstractVector{<:Number}`
- Allocations in powers with literal exponents HOT 2
- Deferring evaluation of mutable objects HOT 7
- `LazyExpression`s and broadcasting HOT 2
- Dealing with FunctionWrappers HOT 1
- CI broken until new GLPK tag HOT 2
- Bad data passed to solver HOT 8
- `:tuple` expressions not handled HOT 3
- Optimization for x' * A * x
- Performance of FunctionWrappersQuickFix HOT 3
- Version tag HOT 1
- Can't reproduce zero-allocation examples HOT 3
- Parameters with initial NaN values seem to poison the model HOT 1
- Support for sparse matrix multiplication HOT 1
- Cannot add latest version of Parametron HOT 6
- Support for Non-linear constraints / objective HOT 4
- Julia REPL crushes at @objective line in first README example HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from parametron.jl.