# Read .lp file into JuMP model in direct mode

**URL:** <https://discourse.julialang.org/t/read-lp-file-into-jump-model-in-direct-mode/81803>\
**Category:** Optimization (Mathematical)\
**Tags:** jump\
**Created:** [May 27, 2022, 5:56pm UTC](https://discourse.julialang.org/t/read-lp-file-into-jump-model-in-direct-mode/81803 "2022-05-27T17:56:05Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![MarioSouto](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mariosouto/32/36673_2.png) [@MarioSouto](https://discourse.julialang.org/u/MarioSouto)\
**Post date:** [May 27, 2022, 5:56pm UTC](https://discourse.julialang.org/t/read-lp-file-into-jump-model-in-direct-mode/81803/1 "2022-05-27T17:56:05Z")

</div>

Is it possible to read a .lp file into a JuMP optimization model in direct mode? I’m not sure how to combine `direct_model` and `read_from_file` to achieve this.

---

<div class="post-metadata">

**Author:** ![odow](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/odow/32/28685_2.png) [@odow](https://discourse.julialang.org/u/odow)\
**Post date:** [May 27, 2022, 10:27pm UTC](https://discourse.julialang.org/t/read-lp-file-into-jump-model-in-direct-mode/81803/2 "2022-05-27T22:27:31Z")

</div>

What solver is in `direct_model`?

I guess you could do:

```nohighlight
model = direct_model(Gurobi.Optimizer())
lp = read_from_file("model.lp")
MOI.copy_to(model, lp)

```

---

<div class="post-metadata">

**Author:** ![MarioSouto](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mariosouto/32/36673_2.png) [@MarioSouto](https://discourse.julialang.org/u/MarioSouto)\
**Post date:** [May 27, 2022, 11:45pm UTC](https://discourse.julialang.org/t/read-lp-file-into-jump-model-in-direct-mode/81803/3 "2022-05-27T23:45:38Z")

</div>

I’m planning to use Gurobi. That approach is raising the following error:

> ERROR: `copy_to` is not supported by the solver `Model`. Did you mean to call `optimize!(dest::AbstractOptimizer, src::ModelLike)` instead?

---

<div class="post-metadata">

**Author:** ![guilhermebodin](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/guilhermebodin/32/6982_2.png) [@guilhermebodin](https://discourse.julialang.org/u/guilhermebodin)\
**Post date:** [May 28, 2022, 2:58am UTC](https://discourse.julialang.org/t/read-lp-file-into-jump-model-in-direct-mode/81803/4 "2022-05-28T02:58:34Z")

</div>

I think that this will work, at least it worked in my computer locally with HiGHS.

```julia
model = direct_model(Gurobi.Optimizer())
lp = read_from_file("model.lp")
MOI.copy_to(backend(model), lp)
optimize!(model)

```

Other possibility is to call `MOI.optimize!` directly

```julia
model = direct_model(Gurobi.Optimizer())
lp = read_from_file("model.lp")
MOI.optimize!(backend(model), lp)

```
