ArticleslgStudy

computer science

GNU Linear Programming Kit

GNU Linear Programming Kit is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand GNU Linear Programming Kit rather than just read about it. In short: The GNU Linear Programming Kit (GLPK) is a software package intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a set of routines written in ANSI C and organized in the form of a callable library.

Key takeaways

  • GNU Linear Programming Kit belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect GNU Linear Programming Kit to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of GNU Linear Programming Kit from memory before moving on to harder problems.

Reference excerpt

The GNU Linear Programming Kit (GLPK) is a software package intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a set of routines written in ANSI C and organized in the form of a callable library. The package is part of the GNU Project and is released under the GNU General Public License. GLPK uses the revised simplex method and the primal-dual interior point method for non-integer problems and the branch-and-bound algorithm together with Gomory's mixed integer cuts for (mixed) integer problems.

History GLPK was developed by Andrew O. Makhorin (Андрей Олегович Махорин) of the Moscow Aviation Institute. The first public release was in October 2000.

Version 1.1.1 contained a library for a revised primal and dual simplex algorithm. Version 2.0 introduced an implementation of the primal-dual interior point method. Version 2.2 added branch and bound solving of mixed integer problems. Version 2.4 added a first implementation of the GLPK/L modeling language. Version 4.0 replaced GLPK/L by the GNU MathProg modeling language, which is a subset of the AMPL modeling language.

Interfaces and wrappers Since version 4.0, GLPK problems can be modeled using GNU MathProg (GMPL), a subset of the AMPL modeling language used only by GLPK. However, GLPK is most commonly called from other programming languages. Wrappers exist for:

Julia and the JuMP modeling package Java (using OptimJ)

Further reading

Eiji Oki (2012). Linear Programming and Algorithms for Communication Networks: A Practical Guide to Network Design, Control, and Management. CRC Press. ISBN 978-1-4665-5264-7. The book uses GLPK exclusively and contains numerous examples.

References

External links

GLPK official site GLPK Wikibook

Worked examples

Example 1 — a first encounter with GNU Linear Programming Kit

Start with the simplest possible case. Write down what GNU Linear Programming Kit claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to GNU Linear Programming Kit before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about GNU Linear Programming Kit ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of GNU Linear Programming Kit

In research
GNU Linear Programming Kit appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses GNU Linear Programming Kit in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
GNU Linear Programming Kit is common in secondary-school and first-year university syllabi. It links to neighbouring topics Free mathematics software, Free software programmed in C, GNU Project software, so understanding it makes those chapters shorter.
In everyday life
Look for GNU Linear Programming Kit outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study GNU Linear Programming Kit in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what GNU Linear Programming Kit means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain GNU Linear Programming Kit out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is GNU Linear Programming Kit in simple terms?

The GNU Linear Programming Kit (GLPK) is a software package intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a set of routines written in ANSI C and organized in the form of a callable library.

Why does GNU Linear Programming Kit matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study GNU Linear Programming Kit?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on GNU Linear Programming Kit.

Tags

  • Free mathematics software
  • Free software programmed in C
  • GNU Project software
  • Mathematical optimization software
  • Mathematics software for Linux

Keep exploring