Code Monkey home page Code Monkey logo

python-mip's Introduction

Python MIP (Mixed-Integer Linear Programming) Tools

Package website: http://python-mip.com

Python MIP is a collection of Python tools for the modeling and solution of Mixed-Integer Linear programs (MIPs). MIP syntax was inspired by Pulp. Just like CyLP it also provides access to advanced solver features like cut generation, lazy constraints, MIPstarts and solution Pools. Porting Pulp and Gurobi models should be quite easy.

Some of the main features of MIP are:

  • high level modeling: write your MIP models in Python as easily as in high level languages such as MathProg: operator overloading makes it easy to write linear expressions in Python;

  • full featured:

    • cut generators and lazy constraints: work with strong formulations with a large number of constraints by generating only the required inequalities during the branch and cut search;
    • solution pool: query the elite set of solutions found during the search;
    • MIPStart: use a problem dependent heuristic to generate initial feasible solutions for the MIP search.
  • fast: the Python MIP package calls directly the native dynamic loadable library of the installed solver using the modern python CFFI module; models are efficiently stored and optimized by the solver and MIP transparently handles all communication with your Python code; it is also compatible with the Pypy just in time compiler, meaning that you can have a much better performance, up to 25 times faster for the creation of large MIPs, than the official Gurobi python interface which only runs on CPython;

  • multi solver: Python MIP was written to be deeply integrated with the C libraries of the open-source COIN-OR Branch-&-Cut CBC solver and the commercial solver Gurobi; all details of communicating with different solvers are handled by Python-MIP and you write only one solver independent code;

  • written in modern typed Python 3 (requires Python 3.8 or newer).

Examples

Many Python-MIP examples are documented at https://docs.python-mip.com/en/latest/examples.html

The code of these examples and additional ones (published in tutorials) can be downloaded at https://github.com/coin-or/python-mip/tree/master/examples

Documentation

The full Python-MIP documentation is available at https://docs.python-mip.com/en/latest/

A PDF version is also available: https://python-mip.readthedocs.io/_/downloads/en/latest/pdf/

Mailing list

Questions, suggestions and feature request can be posted at Discussions.

Build status

CI Current version Current total of lines License

python-mip's People

Contributors

adeelk93 avatar amarvin avatar aphi avatar bonelli avatar brmanuel avatar dzhou343 avatar fortierq avatar h-g-s avatar ilialarchenko avatar jurasofish avatar kasperdokter avatar lpsinger avatar markus28 avatar pabloazurduy avatar peterlietz avatar pmla avatar rodoufu avatar rschwarz avatar samuelsbrito avatar sceriffo avatar sebheger avatar silventino avatar spoorendonk avatar stradivari96 avatar svigerske avatar tekgrizzly avatar tommyod avatar tuliotoffolo avatar uurriola avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

python-mip's Issues

Gurobi does not use the max_mip_gap value

Hi,

I've set the max_mip_gap property to 1e-10
m.max_mip_gap = 1e-10
but Gurobi does not seem to use it as it still quits with

Optimal solution found (tolerance 1.00e-04)
Best objective 7.999600000000e+04, best bound 8.000000000000e+04, gap 0.0050%

Using CBC it does find an optimal solution (with value 80000)
Should I set it in a different way?

MIPStart is ignored by CBC?

I'm having some trouble with MIPStart. For the following toy model

import mip
from random import randint

class DelayedConstraintGenerator(mip.ConstrsGenerator):
    def generate_constrs(self, model):
        print("generating_constraints", model.status)
        model += model.vars[9] == 1

m = mip.Model(sense=mip.MAXIMIZE)
vs = [m.add_var(str(x), obj=1, var_type=mip.BINARY) for x in range(10)]

m.lazy_constrs_generator = DelayedConstraintGenerator()

m += mip.xsum(vs[0::2]) <= 3
m += vs[6] + vs[7] <= 1

L = []
for v in vs[:3]:
    L.append((v, 1))

m.start = L
m.validate_mip_start()
    
status = m.optimize()
print(status, m.objective_value)

I get the following output:

Checking feasibility of MIPStart
Model LP relaxation bound is 8.0
	fixing 0 to 1 ... ok, obj now: 8.0
	fixing 1 to 1 ... ok, obj now: 8.0
	fixing 2 to 1 ... ok, obj now: 8.0
Linear Programming relaxation of model with fixations from MIPStart is feasible.
MIP model may still be infeasible.
generating_constraints OptimizationStatus.OPTIMAL
generating_constraints OptimizationStatus.OPTIMAL
generating_constraints OptimizationStatus.OPTIMAL
generating_constraints OptimizationStatus.OPTIMAL
OptimizationStatus.OPTIMAL 8.0

but the output from CBC warns that it ignores my start values:

...
Starting MIP optimization
Option for preprocess changed from sos to off
Option for heuristicsOnOff changed from on to off
maxSavedSolutions was changed from 0 to 10
integerTolerance was changed from 1e-06 to 1e-06
Continuous objective value is 8 - 0.00 seconds
Cutoff increment increased from 1e-05 to 0.9999
Cbc0045I Warning: MIPstart solution is not valid, column names do not match, ignoring it.
Coin0506I Presolve 0 (-2) rows, 0 (-10) columns and 0 (-7) elements
Clp1000I sum of infeasibilities 0 - average nan, 0 fixed columns
Coin0506I Presolve 0 (0) rows, 0 (0) columns and 0 (0) elements
Clp0000I Optimal - objective value 8
...

I notice that the validate_mip_start method uses constraints to add the values onto the model, so it might not be checking the way MIPStart is done in CBC. I tried adding MIPStarts with smaller models and it worked, so I'm not sure why this particular use case is triggering this comment. Could you please look into this? Thank you!

CBC not found

I just managed to install mip for plain python 3.8.1 on windows (via pip install mip). Trying a simple test yields the following error:

C:\Users\user>python
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 22:39:24) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from mip import *
Using Python-MIP package version 1.7.2
>>> m = Model()
cbc not found
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\site-packages\mip\model.py", line 119, in __init__
    from mip.cbc import SolverCbc
  File "C:\Users\user\AppData\Local\Programs\Python\Python38-32\lib\site-packages\mip\cbc.py", line 455, in <module>
    Osi_getNumCols = cbclib.Osi_getNumCols
NameError: name 'cbclib' is not defined

I assumed that CBC is included with mip, as stated in

The default installation includes pre-compiled libraries of the MIP Solver CBC for Windows, Linux and MacOS. If you have the commercial solver Gurobi installed in your computer, Python-MIP will automatically use it as long as it finds the Gurobi dynamic loadable library. Gurobi is free for academic use and has an outstanding performance for solving MIPs. Instructions to make it accessible on different operating systems are included bellow.

I have no idea why this happens, and got no hint to solve this problem. What's wrong?

Get slack from constraint after optimization

I'm playing around with the simple binary knapsack demo, and want to compute the total knapsack weight (and slack) at the end of optimization. It seems this should be available, as the constr object has a slack attribute. However, when I execute m.constrs[0].slack (m is my model object), I get this:
`---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
in
----> 1 m.constrs[0].slack

d:\Continuum\anaconda3\lib\site-packages\mip\model.py in slack(self)
85 """
86
---> 87 return self.__model.solver.constr_get_slack(self)
88
89 @Property

d:\Continuum\anaconda3\lib\site-packages\mip\cbc.py in constr_get_slack(self, constr)
991 rhs = float(cbclib.Cbc_getRowRHS(self._model, constr.idx))
992 activity = float(pac[constr.idx])
--> 993 if constr.sense == "<":
994 return rhs - activity
995 elif constr.sense == ">":

AttributeError: 'Constr' object has no attribute 'sense'`

The error is confirmed, as I get AttributeError: 'Constr' object has no attribute 'sense' if I execute m.constrs[0].sense. This seems odd, as the documentation states that a constr is a linexpr object with the sense attribute, as opposed to an objective: "Note that the only difference of adding a constraint is the lack of a sense and a rhs.".

What am I missing?

Shadow prices

Hi,

PuLP provides the access to the restriction shadow prices.

Is it possible to access then with python-mip? If so, an example would be nice.

BR,
Santiago

1.6.0 does not install with python3.5

The minimum python version in the new version of setup.py is 3.6:

    python_requires='>3.6.0',

This means that version 1.6.0 cannot be installed using pip on python3.5. If I change the above line on a local copy of the repository all the tests pass.

Are there any features from python 3.6 which are needed? Python 3.5 is still widely used.

Include source code for CBC libraries

The CBC libraries in the git repository are pre-built. This makes it hard to debug any issues occuring within the library since we don't have the source.

It also makes the git repository very large (it is currently over 200mb). Git is designed with text in mind. It will store a diff of text files, but for binary files it stores a copy of every version. Here is some more info.

Fortunately it is usually not too difficult to build a shared library from source. It can be specified in the setup.py file. If you put the CBC source files somewhere I can try to do it.

AttributeError: 'SolverCbc' object has no attribute 'vars'

I recently updated the mip version from 1.3.15 to 1.4.3. I had a working code before I updated the package and when running the code with the updated package I get the following error:

Traceback (most recent call last):
File "optimization.py", line 48, in
status = optimization("cbc")
File "/home/xxxx/projects/xxxx/xxx/optimizer_helper.py", line 887, in optimization
opt.objective += (coeff * my_var[i])
File "/home/xxxx/anaconda3/lib/python3.6/site-packages/mip/model.py", line 942, in objective
return self.solver.get_objective()
File "/home/xxxx/anaconda3/lib/python3.6/site-packages/mip/cbc.py", line 409, in get_objective
return xsum(obj[j]*self.vars[j] for j in range(self.num_cols())
File "/home/xxxx/anaconda3/lib/python3.6/site-packages/mip/model.py", line 1944, in xsum
for term in terms:
File "/home/xxxx/anaconda3/lib/python3.6/site-packages/mip/cbc.py", line 410, in
if abs(obj[j]) >= 1e-15)
AttributeError: 'SolverCbc' object has no attribute 'vars'

I can however access opt.vars explicitly and print the number of variables (which matches the number I was getting when the code was working correctly on version 1.3.15). Any idea what might be the issue?

Slow extraction of variable values

Generally when I optimize a model, I need to afterwards extract the values of the variables. This can take quite long: often much longer than the actual optimization.

Yesterday I solved a version of the assignment problem with python-mip. The model has about 500,000 variables, all binary, and about 100,000 constraints. Optimizing the model takes 3 seconds. Obtaining the values of all binary variables, using the same method (var.x for each variable var) as in the examples in the documentation, takes nearly 4 minutes.

This is consistent with other python-mip programs I have written, and a small variety of systems on which I have run them. (If the details matter I can provide them.)

Is there perhaps a faster way to extract the values of the variables than reading var.x for each variable separately?

Issue with ConstrsGenerator

Hi,

I'm trying to implement lazy constraint generation by extending the ConstrsGenerator class. I've been following the docs here https://python-mip.readthedocs.io/en/latest/custom.html and the example here https://github.com/coin-or/python-mip/blob/master/examples/queens-lazy.py, but I can't seem to get it to work.

I have this small toy example that is failing and I'm not sure why.

import mip

class DelayedConstraintGenerator(mip.ConstrsGenerator):
    def generate_constrs(self, model):
        print("generating_constraints")
        for v in model.vars:
            print(v, v.x)
            model += v >= 5

m = mip.Model()

x = m.add_var('x', var_type=mip.INTEGER)
y = m.add_var('y', var_type=mip.INTEGER)

m += x + y, "objective"
m += x + y <= 10

m.lazy_constrs_generator = DelayedConstraintGenerator()
status = m.optimize()

print(status)
for v in m.vars:
    print(v, v.x)

Output from the example is:

generating_constraints
x 0.0
y 0.0
generating_constraints
x 0.0
y 0.0
OptimizationStatus.INFEASIBLE
x None
y None

I'm on Python-MIP 1.6.2 and Python 3.6.9.

Feature Request: max_seconds_no_change

Is it possible to have an additional stop-condition that stops if for x seconds the solution didn't improve? It would be also good to pass in the same time a minimum and a maximum seconds.

Tests, workflow, continuous integration

I appreciate all the work that is going into "python-mip" and more generally the coin-or project.

I haven't looked at the code in detail, but from skimming the repo I'm hesitant to use this library, since it seems a bit far removed from best practices regarding testing, working with continuous integration, and so forth. Here's a list of observations that make me a bit nervous:

  • Almost no tests. There are only 12 tests. Furthermore it seems that commits are being done directly to master, so there is no guarantee that the master is in a state where tests pass.
  • Examples not working. There's a folder with examples, but many of these fail when I try to run them (or run for a long time). The examples could be programmatically run as smoketests by Travis, ensuring that documented examples always work.
  • Code style. Most projects have some code style enforced by Travis or some other CI service, e.g. "black" or "flake8". This makes it easier to enter a project.
  • Committing to master. This is mentioned above, but there are commits in the history that are one-word changes. Every change should go through a PR so tests/codestyle/examples/etc can be run. Single-word commits can be squashed to a larger commit, so every commit in the main history is meaningful (as opposed to hundreds of very small changes).

I can help set up tests, code style, running examples, etc - but it's of not use if commits are performed directly to the master branch (since it bypasses Travis). Thoughts on the above? Want some help?

Support for sparse algebra and bulk constraint addition

Hi,

I integrated and heavily modified PuLP for my program GridCal.
Doing so, I made this module to handle sparse algebra. This way I can model algebraic equations (A @ b < c) with no for-loops in the program itself.

This feature is something these modelling frameworks often lack and they make models far more maintainable.

Support for Scipy linprog

Scipy has a LP solver

It would be nice to have integration with it. Even nicer would be to be able to generate the simplex matrices so that research would be immediate.

BR,
Santiago

cbclib not loading after version 1.6.0

Hi,

I'm getting this error when I run version 1.6.0 or newer

Osi_getNumCols = cbclib.Osi_getNumCols

NameError: name 'cbclib' is not defined

but when I dug past a try except I found the underlying issue was coming from this line

cbclib = ffi.dlopen(libfile)

which was giving this error

{OSError}cannot load library <path to/cbc-c-windowsx86-64.dll>: error 0x7e

Any thoughts on what my be causing this?

Cheers,
Nick

Incremental Solving not supported?

Hello, I've been trying to learn how to do boolean modelling in Mixed Integer Programming, and I would like to get all solutions to the problem. Here is a simple example model where blocks with ports need to be connected, with some symmetry breaking on the blocks and ports (should have 3 solutions):

import mip

mm = mip.Model(solver_name="cbc")
mm.verbose = False

# Blocks
bus = mm.add_var("bus", 0, 1, var_type=mip.BINARY)
battery_1 = mm.add_var("battery_1", 0, 1, var_type=mip.BINARY)
battery_2 = mm.add_var("battery_2", 0, 1, var_type=mip.BINARY)

# Ports
bus_p1 = mm.add_var("bus_p1", 0, 1, var_type=mip.BINARY)
bus_p2 = mm.add_var("bus_p2", 0, 1, var_type=mip.BINARY)
battery_1_p = mm.add_var("battery_1_p", 0, 1, var_type=mip.BINARY)
battery_2_p = mm.add_var("battery_2_p", 0, 1, var_type=mip.BINARY)

# Constraints
mm.add_constr(battery_1 + battery_2 >= 0)
mm.add_constr(battery_1 + battery_2 <= 2)
mm.add_constr(bus == 1)
mm.add_constr(battery_1 >= battery_2)
mm.add_constr(battery_1 == battery_1_p)
mm.add_constr(battery_2 == battery_2_p)
mm.add_constr(bus >= bus_p1)
mm.add_constr(bus >= bus_p2)
mm.add_constr(bus_p1 <= bus_p2)
mm.add_constr(bus_p1 + bus_p2 == battery_1_p + battery_2_p)

count = 0
for i in range(0, 10):
    status = mm.optimize()
    if status == status.FEASIBLE or status == status.OPTIMAL:
        print(f"{bus}: {bus.x}")
        print(f"{battery_1}: {battery_1.x}")
        print(f"{battery_2}: {battery_2.x}")
    else:
        print("INFEASIBLE")
        break
    count += 1
    # or(a != a.x, b != b.x, c != by)
    flip = [1 - v if v.x else v for v in (bus, battery_1, battery_2)]
    mm.add_constr(mip.xsum(flip) >= 1)
print(f"CBC (Python-MIP) found {count} solutions")

However this code only gives me 1 solution, 10 times.

If I do the same with google Or-Tools, it works as expected:

from ortools.linear_solver import pywraplp as or_tools

om = or_tools.Solver("cbc", problem_type=or_tools.Solver.CBC_MIXED_INTEGER_PROGRAMMING)

# Instances
bus = om.BoolVar("bus")
battery_1 = om.BoolVar("battery_1")
battery_2 = om.BoolVar("battery_2")

# Ports
bus_p1 = om.BoolVar("bus_p1")
bus_p2 = om.BoolVar("bus_p2")
battery_1_p = om.BoolVar("battery_1_p")
battery_2_p = om.BoolVar("battery_2_p")

# Constraints
om.Add(battery_1 + battery_2 >= 0)
om.Add(battery_1 + battery_2 <= 2)
om.Add(bus == 1)
om.Add(battery_1 >= battery_2)
om.Add(battery_1 == battery_1_p)
om.Add(battery_2 == battery_2_p)
om.Add(bus >= bus_p1)
om.Add(bus >= bus_p2)
om.Add(bus_p1 <= bus_p2)
om.Add(bus_p1 + bus_p2 == battery_1_p + battery_2_p)

count = 0
# Limit number of solutions
for i in range(0, 10):
    status = om.Solve()
    if status == om.FEASIBLE or status == om.OPTIMAL:
        print(f"{bus}: {bus.solution_value()}")
        print(f"{battery_1}: {battery_1.solution_value()}")
        print(f"{battery_2}: {battery_2.solution_value()}")
    else:
        print("INFEASIBLE")
        break
    count += 1
    # or(a != a.x, b != b.x, c != by)
    flip = [1 - v if v.solution_value() else v for v in (bus, battery_1, battery_2)]
    om.Add(sum(flip) >= 1)
print(f"CBC (Or-Tools) found {count} solutions")

This gives the expected 3 solutions.

Is there anything I'm missing, like a different way to restrict solutions, or is python-mip just not intended to be used like this?

The constructor freezes

I have a situation where my program freezes when I call mip.Model(sense=mip.MAXIMIZE)

The program just freezes and becomes unresponsive. I receive no error message.

This happens after I have already run a number of models beforehand. The error is reproducible for me: It always freezes at exactly the same point, after having done dozens of other optimizations without issue. I can not give you a code example, because it's proprietary code. I also don't know how to reproduce it on a toy example. I have no idea why this one method call suddenly makes everything freeze. Especially because this happens in the constructor, so it can't have anything to do with the constraints or optimization function.

Also, using importlib.reload(mip) does not help.

Fails to work on Raspberry Pi

Hi

I am trying to use the MIP package on raspian buster but it fails with the error

Osi_getNumCols = cbclib.Osi_getNumCols
NameError: name 'cbclib' is not defined

Which is expected since only linux, windows and mac osx binaries are included by default.

However cbc is available in the debian repositories and can be installed using

sudo apt-get install coinor-cbc

which will place cbc binary in path linking to following so's

        /usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so (0x76fa9000)
        libCbcSolver.so.3 => /usr/lib/arm-linux-gnueabihf/libCbcSolver.so.3 (0x76ecc000)
        libCbc.so.3 => /usr/lib/arm-linux-gnueabihf/libCbc.so.3 (0x76dd4000)
        libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x76daa000)
        librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x76d93000)
        libCgl.so.1 => /usr/lib/arm-linux-gnueabihf/libCgl.so.1 (0x76c9a000)
        libOsiClp.so.1 => /usr/lib/arm-linux-gnueabihf/libOsiClp.so.1 (0x76c4c000)
        libClpSolver.so.1 => /usr/lib/arm-linux-gnueabihf/libClpSolver.so.1 (0x76bec000)
        libClp.so.1 => /usr/lib/arm-linux-gnueabihf/libClp.so.1 (0x76a7a000)
        libOsi.so.1 => /usr/lib/arm-linux-gnueabihf/libOsi.so.1 (0x76a24000)
        libCoinUtils.so.3 => /usr/lib/arm-linux-gnueabihf/libCoinUtils.so.3 (0x7690c000)
        libbz2.so.1.0 => /lib/arm-linux-gnueabihf/libbz2.so.1.0 (0x768ec000)
        libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x768c1000)
        liblapack.so.3 => /usr/lib/arm-linux-gnueabihf/liblapack.so.3 (0x76376000)
        libblas.so.3 => /usr/lib/arm-linux-gnueabihf/libblas.so.3 (0x76310000)
        libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x761c9000)
        libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x76147000)
        libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x7611a000)
        libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x75fcc000)
        /lib/ld-linux-armhf.so.3 (0x76fbe000)
        libgfortran.so.5 => /usr/lib/arm-linux-gnueabihf/libgfortran.so.5 (0x75ef3000)

Is it possible to use these to get MIP working on buster?

Thanks!

CBC interface only partially reassigns objective

Minimal example:

from mip import *
m = Model(sense=MAXIMIZE, solver_name=CBC)
v1 = m.add_var(var_type=BINARY)
v2 = m.add_var(var_type=BINARY)
m.add_constr(v1 + v2 == 1)

m.objective = 500 * v1
m.optimize()
> <OptimizationStatus.OPTIMAL: 0>
v1.x, v2.x
> (1, 0)

m.objective = v2
m.optimize()
> <OptimizationStatus.OPTIMAL: 0>
v1.x, v2.x
> (1, 0)

What I would have expected: (0, 1) as a result of the last call, because this assignment maximizes the updated objective v2. This is the behavior for gurobi, but not for CBC.

Suspected reason: In https://github.com/coin-or/python-mip/blob/master/mip/cbc.py#L1561-L1564 , it seems that, for variables not appearing in the new objective, their coefficients are not reset to 0. In the example above, the second optimization tries to maximize 500 v1 + v2 rather than v2. Possibly, the line

self.flush_cols()

ensures that the same problem does not appear using Gurobi?

Versions: I am using mip version 1.7.2 (from pip) on Python 3.7.6 and OSX 10.15.3.

For the time being, is there a work-around that does not require creating a new model? I was thinking of setting m.objective = 0 * v1 + v2, but the 0 coefficient seems to get optimized away before set_objective().

Fail to access variable in lazy_constrs_generator callback

After seeing "Reduced cost fixing - 45 rows, 117 columns - restarting search" message, variable access in lazy_constrs_generator callback will fail. All variable names are changed.

I see that both heuristics and preprocess are turned off at the beginning. Why it still triggers mini B&B?

The strangest thing is that, this only happens when using PyPy3.6. The same program ran just fine under CPython3.6. I'm using PyPy because it's about 30% faster than CPython for my program.

Any clue or workaround? The full program with data is a little bit long, but I can provide that upon request.

Starting MIP optimization
Option for heuristicsOnOff changed from on to off
Option for preprocess changed from sos to off
Option for timeMode changed from cpu to elapsed
maxSavedSolutions was changed from 0 to 10
integerTolerance was changed from 1e-06 to 1e-06
Option for mergeCliques changed from off to after
Option for cliqueCuts changed from ifmove to off
Option for bkcliqueCuts changed from off to ifmove
Option for oddholewcCuts changed from off to ifmove
Continuous objective value is 52.3333 - 0.00 seconds
Cgl0015I Clique merge extended 0 cliques, 0 were dominated
Cutoff increment increased from 1e-05 to 0.9999
Cbc0013I At root node, 0 cuts changed objective from 52.333333 to 52.333333 in 1 passes
Cbc0014I Cut generator 0 (LazyConstraints) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is 1
Cbc0014I Cut generator 1 (Probing) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 2 (Gomory) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 3 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 4 (BKClique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 5 (OddHoleWC) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 6 (MixedIntegerRounding2) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 7 (FlowCover) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 8 (TwoMirCuts) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 9 (ZeroHalf) - 0 row cuts average 0.0 elements, 0 column cuts (0 active)  in 0.000 seconds - new frequency is -100
Cbc0016I Integer solution of 92 found by strong branching after 182 iterations and 37 nodes (0.30 seconds)
Cbc0038I Full problem 228 rows 182 columns, reduced to 45 rows 117 columns
Cbc0044I Reduced cost fixing - 45 rows, 117 columns - restarting search
Cbc0012I Integer solution of 83 found by Previous solution after 0 iterations and 0 nodes (0.38 seconds)
From cffi callback <function SolverCbc.optimize.<locals>.cbc_cut_callback at 0x00007fffef4d52e0>:
Traceback (most recent call last):
  File "/localworkspaces/pypy3.6-v7.3.0-linux64/site-packages/mip/cbc.py", line 763, in cbc_cut_callback
    self.model.lazy_constrs_generator.generate_constrs(osi_model)
  File "/localworkspaces/pysandbox/stp14.py", line 142, in generate_constrs
    selected = [n for n, nv in nsv.items() if nv.x >= 0.99]
  File "/localworkspaces/pysandbox/stp14.py", line 142, in <listcomp>
    selected = [n for n, nv in nsv.items() if nv.x >= 0.99]
AttributeError: 'NoneType' object has no attribute 'x'

how to set mip.Model to use primal simplex in CBC?

I have a model (LP) with 3 million rows and almost 6 million cols. From Gurobi primal simplex seems to be a better choice, how can I set the model to use primal simplex if use CBC?

also, in this case I have to iteratively update the model (both rows and objective function), previously we reset the model if it would change too much compared to the previous solved model. In Gurobi I managed to find way to call .reset() from python-mip, how can I do this if use CBC?

Visual Code Python debugging tool crashes when trying to access "Model" object attributes before optimization

Consider the following code to model the maximum independent set problem to solve the maximum clique using MIP and NetworkX:

import mip
import networkx

n = 2 ** 3
g = networkx.binomial_tree(n)
networkx.add_star(g, [i for i in range(n)])
g1 = networkx.complement(g)

model = mip.Model("Independent Set")
x = [model.add_var(var_type=mip.BINARY) for _ in range(len(g1.nodes))]
model.objective = mip.maximize(mip.xsum(x[i] for i in range(len(g1.nodes))))
for (i, j) in g1.edges:
	model += x[i] + x[j] <= 1
model.optimize()
selected = [i for i in range(len(g1.nodes)) if x[i].x >= 0.99]
print(selected)
g2 = g.subgraph(selected)

If I try to access the model variables in the watch section, it gives he following message on terminal:

Information not available, model was not optimized yet.

And then, the debugger dies. I believe this is not what should happen, some help with this?

Can variable index on tuple set ?

Hi. I wonder if we can define variable indexing on tuple set? Like the following:
tuple set Arc = {<1,1>,<1,2>, <1,3>, <2,3>};

float+ var x[a in Arc]; //variable on tuple set Arc

Find N solutions

Is it possible to force optimization to continue until N integer solutions are found?

Example:
Let's say N=3 and there are 2 optimal solutions with the same value of objective function, like 10.0. Since I need 3 solutions, the third one would be a suboptimal one, where objective function is worse, like 11.0.

Is it possible to achieve with mip package?

cbc not loading win10 and pypy

Hi guys,

I get this error
"
Osi_getNumCols = cbclib.Osi_getNumCols
NameError: name 'cbclib' is not defined
"
if I try to solve any problem using PyPy3.6 v7.3.0.
Python-MIP version is 1.7.2 and win10
Is this because of x86/x64 ?
If it's the case, can you suggest me an older version working with pypy?
Thanks!

Fabio

use other solvers to initialize mip.Model

mip.Model.init provides a param solver to initialize the model instance, but it has not been used yet. The attribute self.solver is created by solver_name, i.e., Gurobi or CBC.

Can we switch to something like self.solver = solver to make user specified solver possible? I actually want to try another interior-point solver and already implemented the Solver class.

Feature Request: Indicator Constraints

Following up from my boolean modelling issue, one of the nicest features of Gurobi, CPLEX and SCIP are indicator constraints. They make modelling complex boolean constraints extremely easy, in fact Gurobi and CPLEX also include boolean AND and OR constraints which are just lovely, though those are not particularly hard to model once you have indicator constraints.

Indicator constraints can be implemented using Big-M, Convex Hull, or SOS constraints. The Big-M formulation is the simplest but variables need tight bounds for it to work nicely. Convex Hull needs less tight bounds and has better numerical properties but is more complicated and needs more additional variables and constraints. I have no idea how they are encoded with SOS constraints.

Are there any plans to expose the indicator constraint features of Gurobi? And if so, would they be replicated in Python-MIP for CBC by using one of the encoding tricks above?

Editing the RHS of a constraint

I am porting a model from Gurobi to python-mip.
In Gurobipy I can add a constraint with a dummy right-hand-side:

constraint = model.addConstr( sum(x.values()) == -1 )

and then update the value later:

constraint.RHS = 123

I do this so that I can build my model once, and then solve it multiple times with different parameters.

Can I set the RHS directly with python-mip? At the moment I am deleting the constraint and replacing it with a new one. This works fine with the Gurobi solver but with CBC it fails (see #27).

Exit code -1073741819

Hi Folks,

Has anyone come across this error before, the last line printed out (i.e. not a stack trace) is

Process finished with exit code -1073741819 (0xC0000005)

The last few lines of print out are below. Any thoughts on whats going on would be appreciated, apologies for not having a minimum workable example, can't seem to create one yet.

Cbc0038I Pass 78: suminf. 0.13329 (50) obj. -1.31505e+07 iterations 17
Cbc0038I Pass 79: suminf. 13.12313 (67) obj. -1.31505e+07 iterations 130
Cbc0038I Pass 80: suminf. 2.27872 (14) obj. -1.31505e+07 iterations 77
Cbc0038I Pass 81: suminf. 2.07194 (53) obj. -1.31505e+07 iterations 44
Cbc0038I Pass 82: suminf. 4.74232 (33) obj. -1.31505e+07 iterations 57
Cbc0038I Pass 83: suminf. 8.89919 (22) obj. -1.31505e+07 iterations 63
Cbc0038I Pass 84: suminf. 6.20734 (57) obj. -1.31505e+07 iterations 52
Cbc0038I No solution found this major pass
Cbc0038I Before mini branch and bound, 4 integers at bound fixed and 1518 continuous
Cbc0038I Full problem 1541 rows 2534 columns, reduced to 1025 rows 1011 columns - 40 fixed gives 919, 918 - still too large
Cbc0038I Full problem 1541 rows 2534 columns, reduced to 797 rows 810 columns - too large
Cbc0038I Mini branch and bound did not improve solution (1.27 seconds)
Cbc0038I After 1.27 seconds - Feasibility pump exiting with objective of -1.31235e+07 - took 0.91 seconds
Cbc0012I Integer solution of -13123518 found by feasibility pump after 0 iterations and 0 nodes (1.29 seconds)
Cbc0012I Integer solution of -13179616 found by DiveCoefficient after 0 iterations and 0 nodes (1.53 seconds)
Cbc0012I Integer solution of -13183290 found by DiveCoefficient after 571 iterations and 0 nodes (2.42 seconds)
Cbc0031I 77 added rows had average density of 151.66234
Cbc0013I At root node, 77 cuts changed objective from -13213517 to -13213517 in 6 passes
Cbc0014I Cut generator 0 (Probing) - 2 row cuts average 51.0 elements, 7 column cuts (7 active) in 0.025 seconds - new frequency is -100
Cbc0014I Cut generator 1 (Gomory) - 401 row cuts average 109.2 elements, 0 column cuts (0 active) in 0.087 seconds - new frequency is -100
Cbc0014I Cut generator 2 (Knapsack) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.015 seconds - new frequency is -100
Cbc0014I Cut generator 3 (BKClique) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.001 seconds - new frequency is -100
Cbc0014I Cut generator 4 (OddHoleWC) - 0 row cuts average 0.0 elements, 0 column cuts (0 active) in 0.000 seconds - new frequency is -100
Cbc0014I Cut generator 5 (MixedIntegerRounding2) - 26 row cuts average 61.9 elements, 0 column cuts (0 active) in 0.168 seconds - new frequency is -100
Cbc0014I Cut generator 6 (FlowCover) - 1 row cuts average 33.0 elements, 0 column cuts (0 active) in 0.023 seconds - new frequency is -100
Cbc0014I Cut generator 7 (TwoMirCuts) - 465 row cuts average 104.5 elements, 0 column cuts (0 active) in 0.157 seconds - new frequency is -100
Cbc0010I After 0 nodes, 1 on tree, -13183290 best solution, best possible -13213516 (2.69 seconds)
Cbc0012I Integer solution of -13186937 found by DiveCoefficient after 978 iterations and 5 nodes (2.93 seconds)
Cbc0012I Integer solution of -13187594 found by DiveCoefficient after 1009 iterations and 6 nodes (3.11 seconds)
Cbc0012I Integer solution of -13190791 found by DiveCoefficient after 1055 iterations and 7 nodes (3.17 seconds)
Cbc0012I Integer solution of -1
Process finished with exit code -1073741819 (0xC0000005)

work with numpy

I test with the latest 1.6.6:

model = mip.Model()                                                                                                                    
x = model.add_var('x')                                                                                                                                                                                                                                                 
import numpy                                                                                                                           
print(x * numpy.int64(1))                  

This will produce the AssertionError, while numpy.int64(1) * x is OK, maybe we need a new way to assert numeric values?

Coin versions

Since the CBS binary is distributed with the framework it is unclear exactly what version of CBC, CLP, CoinUtils etc is being used. I am assuming the master branch?

Would it be possible to get a python-mip version based on stable Coin libs? I now a lot have been happening with CBC C interface and I guess getting that to a stable version is the bottleneck?

Model without constraints + upper bounds

This is a valid MIP model that doesn't work with python-mip:

ub = 14  # any positive integer
m = Model("upper_bounds")
x = m.add_var(var_type=INTEGER, ub=ub)
m.objective = maximize(x)
m.optimize()
assert m.status == OptimizationStatus.OPTIMAL
assert round(m.objective_value) == ub

It fails on two levels:

  • The model class complains that there are no constraints. The upper bound is a constraint though.
  • The upper bound functionality of the variables doesn't appear to work properly.

Unable to return the objective as a linear expression after reading a .mps file

I think I've found a bug in version 1.3.13 of the PyPI MIP package. I'm reading a MIP from a .mps file and trying to see what the objective function is. But, rather than returning the linear expression I'm expecting, I'm getting an error message. I'm running this code in Python 3.7:

m = Model(sense=MINIMIZE, solver_name="cbc")
m.read('q_consol_4.mps')
m.objective

And I'm getting back:

Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3296, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "", line 1, in
m.objective
File "/usr/local/lib/python3.7/site-packages/mip/model.py", line 933, in objective
return self.solver.get_objective()
File "/usr/local/lib/python3.7/site-packages/mip/cbc.py", line 409, in get_objective
return xsum(obj[j]*self.vars[j] for j in range(self.num_cols)
TypeError: 'method' object cannot be interpreted as an integer

If I chase the error into the get_objective function, I find that self.vars doesn't seem to exist; if, in a debugging environment, I reach line 409 of cbc.py and enter

self.vars[0]

I get

Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3296, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "", line 1, in
self.vars[0]
AttributeError: 'SolverCbc' object has no attribute 'vars'

Interestingly, the optimize() method seems to work just fine. So the objective-function data should be available, but I just can't return the linear expression with m.objective.

Is there a quick fix for this?

CBC error: max_seconds and max_nodes

I am trying to solve an NP-Hard problem and I set stopping criteria. When I set max_seconds for a relatively large number (larger than 200 seconds) kernel dies. However, when I set max_seconds for a smaller number kernel does not die.
I also tried max_nodes and had the same problem.
I have tired on Jupyter and Spyder (both installed via Anaconda).
I also tried for other large problems and the kernel always died when I set max_seconds which forces it to stop close to the optimal solution.
Note: when the solver_name = GUROBI is used, there is no issue. It works pretty well.

Remove IDE-specific files and folders

Shouldn't IDE-specific files and folders be removed from this repo and added to the gitignore? In this repo, there are files from at least three IDEs:

  • IntelliJ (folder .idea/)
  • Eclipse (files .project and .pydevproject)
  • KDevelop (folder .kdev4/)

If those specific IDEs aren't needed to build, test or publish this repo, I think they should be removed and added to gitignore.

Error removing constraints

Been using this package with pleasure.

However, I may have detected an error. When removing a constraint I got the following error:

File "/usr/local/lib/python3.7/site-packages/mip/cbc.py", line 767, in remove_constrs
cbclib.Cbc_deleteRows(self._model, idx)
TypeError: 'void(*)(void *, int, int *)' expects 3 arguments, got 2

If the interface from the link below is used, then indeed three arguments are expected:
https://www.coin-or.org/Doxygen/CoinAll/_cbc___c___interface_8h.html#a769db426ae492baea43be8c2d459924

I suspect the same holds for removing a variable.

`constr_get_index` does not work

Calling contr_get_index does not work on the current master branch.
The error I am getting is:

terminate called after throwing an instance of 'std::logic_error'
  what():  basic_string::_M_construct null not valid
Aborted

max_gap is not working!?

I am trying to test the max_gap setting. If I understand correctly, it stops when the absolute relative distance between upper bound and current solution is lower than the max_gap value. I am assuming that then the solver should stop after seeing the first feasible solution, but it doesn't in the example. Maybe thats not the best example to test max_gap?

from itertools import product
from mip import Model, xsum, BINARY

p = [0, 3, 2, 5, 4, 2, 3, 4, 2, 4, 6, 0]

u = [[0, 0], [5, 1], [0, 4], [1, 4], [1, 3], [3, 2], [3, 1], [2, 4], [4, 0],
     [5, 2], [2, 5], [0, 0]]

c = [6, 8]

S = [[0, 1], [0, 2], [0, 3], [1, 4], [1, 5], [2, 9], [2, 10], [3, 8], [4, 6],
     [4, 7], [5, 9], [5, 10], [6, 8], [6, 9], [7, 8], [8, 11], [9, 11],
     [10, 11]]

(R, J, T) = (range(len(c)), range(len(p)), range(sum(p)))

model = Model()

x = [[model.add_var(name='x({},{})'.format(j, t), var_type=BINARY)
      for t in T] for j in J]

model.objective = xsum(x[len(J)-1][t] * t for t in T)

for j in J:
    model += xsum(x[j][t] for t in T) == 1

for (r, t) in product(R, T):
    model += xsum(u[j][r] * x[j][t2] for j in J
                  for t2 in range(max(0, t - p[j] + 1), t + 1)) <= c[r]

for (j, s) in S:
    model += xsum(t * x[s][t] - t * x[j][t] for t in T) >= p[j]


model.max_gap = 0.5 # <<<<<< 
model.optimize()

print('Schedule: ')
for (j, t) in product(J, T):
    if x[j][t].x >= 0.99:
        print('({},{})'.format(j, t))
print('Makespan = {}'.format(model.objective_value))

Segfault from CBC

When I try to solve a fairly large instance (hundreds of variables, thousands of constraints, all integer), I get a segfault from CBC:

Process:               Python [1666]
Path:                  /Library/Frameworks/Python.framework/Versions/3.6/Resources/Python.app/Contents/MacOS/Python
Identifier:            Python
Version:               3.6.2 (3.6.2)
Code Type:             X86-64 (Native)
Parent Process:        bash [809]
Responsible:           Python [1666]
User ID:               501

Date/Time:             2019-09-23 07:58:00.057 -0700
OS Version:            Mac OS X 10.14.6 (18G95)
Report Version:        12
Anonymous UUID:        3703FAD1-9129-3D73-97F8-AF5BB6F1B347

Sleep/Wake UUID:       2F0D8C4F-B37B-4E36-8981-88BF121B1B1F

Time Awake Since Boot: 3600 seconds
Time Since Wake:       1600 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x00000001178e7000
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [1666]

VM Regions Near 0x1178e7000:
    MALLOC_LARGE           00000001178db000-00000001178e7000 [   48K] rw-/rwx SM=PRV  
--> 
    MALLOC_LARGE           00000001178ff000-0000000117985000 [  536K] rw-/rwx SM=PRV  

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_platform.dylib      	0x0000000101c1fce9 _platform_memmove$VARIANT$Haswell + 41
1   cbc-c-darwin-x86-64.dylib     	0x0000000110d920a2 CbcModel::setBestSolution(double const*, int, double, bool) + 1730
2   cbc-c-darwin-x86-64.dylib     	0x0000000110e475ef CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) + 165615
3   cbc-c-darwin-x86-64.dylib     	0x0000000110d09ad8 Cbc_solve + 4456
4   libffi.dylib                  	0x000000010f7f9f6c ffi_call_unix64 + 76
5   libffi.dylib                  	0x000000010f7fa775 ffi_call + 785
6   _cffi_backend.cpython-36m-darwin.so	0x0000000110cd3327 cdata_call + 583
7   org.python.python             	0x00000001006ed674 _PyObject_FastCallDict + 180
8   org.python.python             	0x00000001007d2425 call_function + 165
9   org.python.python             	0x00000001007d3fe4 _PyEval_EvalFrameDefault + 5604
10  org.python.python             	0x00000001007d19a0 _PyEval_EvalCodeWithName + 2720
11  org.python.python             	0x00000001007d21ab fast_function + 219
12  org.python.python             	0x00000001007d25cb call_function + 587
13  org.python.python             	0x00000001007d3fe4 _PyEval_EvalFrameDefault + 5604
14  org.python.python             	0x00000001007d19a0 _PyEval_EvalCodeWithName + 2720
15  org.python.python             	0x00000001007d21ab fast_function + 219
16  org.python.python             	0x00000001007d25cb call_function + 587
17  org.python.python             	0x00000001007d3fe4 _PyEval_EvalFrameDefault + 5604
18  org.python.python             	0x00000001007d19a0 _PyEval_EvalCodeWithName + 2720
19  org.python.python             	0x00000001007d2836 _PyFunction_FastCallDict + 422
20  org.python.python             	0x00000001006ed724 _PyObject_FastCallDict + 356
21  org.python.python             	0x00000001006ed840 _PyObject_Call_Prepend + 208
22  org.python.python             	0x00000001006ed353 PyObject_Call + 99
23  org.python.python             	0x0000000100768b11 slot_tp_init + 81
24  org.python.python             	0x000000010075f2a4 type_call + 212
25  org.python.python             	0x00000001006ed674 _PyObject_FastCallDict + 180
26  org.python.python             	0x00000001007d2425 call_function + 165
27  org.python.python             	0x00000001007d3fe4 _PyEval_EvalFrameDefault + 5604
28  org.python.python             	0x00000001007d19a0 _PyEval_EvalCodeWithName + 2720
29  org.python.python             	0x00000001007d1b44 PyEval_EvalCode + 100
30  org.python.python             	0x000000010080e5fe PyRun_FileExFlags + 206
31  org.python.python             	0x000000010080e89f PyRun_SimpleFileExFlags + 447
32  org.python.python             	0x000000010082801a Py_Main + 3914
33  org.python.python             	0x0000000100000dfe 0x100000000 + 3582
34  org.python.python             	0x0000000100000c34 0x100000000 + 3124

Thread 1:
0   libsystem_pthread.dylib       	0x0000000101c323f0 start_wqthread + 0

Thread 2:
0   libsystem_pthread.dylib       	0x0000000101c323f0 start_wqthread + 0

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x0000000117b99000  rbx: 0x0000000000000000  rcx: 0x0000000000011c40  rdx: 0x000000000001dc30
  rdi: 0x0000000117ba4ff0  rsi: 0x00000001178e7000  rbp: 0x00007fff5bf03890  rsp: 0x00007fff5bf03890
   r8: 0x0000000000000000   r9: 0x000000000000153f  r10: 0x000000000001e000  r11: 0x00000000002bdff0
  r12: 0x000000000001dc30  r13: 0x0000000117b99000  r14: 0x00000001020e9600  r15: 0x00000001178db010
  rip: 0x0000000101c1fce9  rfl: 0x0000000000010206  cr2: 0x00000001178e7000
  
Logical CPU:     6
Error Code:      0x00000004
Trap Number:     14


Binary Images:
       0x100000000 -        0x100000ff7 +org.python.python (3.6.2 - 3.6.2) <B22037D7-9A87-7B55-A815-0900174588B4> /Library/Frameworks/Python.framework/Versions/3.6/Resources/Python.app/Contents/MacOS/Python
       0x100003000 -        0x100447fe7  com.apple.CoreFoundation (6.9 - 1575.19) <B2850F42-CE01-3156-B121-FD4777290C8F> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
       0x1006e2000 -        0x100907fef +org.python.python (3.6.2, [c] 2001-2017 Python Software Foundation. - 3.6.2) <25CF41F1-A8E4-5C9D-F0BD-7385A2815863> /Library/Frameworks/Python.framework/Versions/3.6/Python
       0x100a4f000 -        0x100a50ffb  libSystem.B.dylib (1252.250.1) <B1006948-7AD0-3CA9-81E0-833F4DD6BFB4> /usr/lib/libSystem.B.dylib
       0x100a56000 -        0x1011dbfdf  libobjc.A.dylib (756.2) <7C312627-43CB-3234-9324-4DEA92D59F50> /usr/lib/libobjc.A.dylib
       0x101393000 -        0x101394ffb  libDiagnosticMessagesClient.dylib (107) <A14D0819-0970-34CD-8680-80E4D7FE8C2C> /usr/lib/libDiagnosticMessagesClient.dylib
       0x10139a000 -        0x1015fbffb  libicucore.A.dylib (62141.0.1) <A0D63918-76E9-3C1B-B255-46F4C1DA7FE8> /usr/lib/libicucore.A.dylib
       0x1016e9000 -        0x1016fbff7  libz.1.dylib (70.200.4) <B048FC1F-058F-3A08-A1FE-81D5308CB3E6> /usr/lib/libz.1.dylib
       0x101701000 -        0x101716ff7  libc++abi.dylib (400.17) <38C09CED-9090-3719-90F3-04A2749F5428> /usr/lib/libc++abi.dylib
       0x10172d000 -        0x101780ff7  libc++.1.dylib (400.9.4) <9A60A190-6C34-339F-BB3D-AACE942009A4> /usr/lib/libc++.1.dylib
       0x1017e0000 -        0x1017e4ff3  libcache.dylib (81) <1987D1E1-DB11-3291-B12A-EBD55848E02D> /usr/lib/system/libcache.dylib
       0x1017ea000 -        0x1017f4ff3  libcommonCrypto.dylib (60118.250.2) <1765BB6E-6784-3653-B16B-CB839721DC9A> /usr/lib/system/libcommonCrypto.dylib
       0x101802000 -        0x101809ff7  libcompiler_rt.dylib (63.4) <5212BA7B-B7EA-37B4-AF6E-AC4F507EDFB8> /usr/lib/system/libcompiler_rt.dylib
       0x101817000 -        0x101820ff7  libcopyfile.dylib (146.250.1) <98CD00CD-9B91-3B5C-A9DB-842638050FA8> /usr/lib/system/libcopyfile.dylib
       0x101827000 -        0x1018abfc3  libcorecrypto.dylib (602.260.2) <01464D24-570C-3B83-9D18-467769E0FCDD> /usr/lib/system/libcorecrypto.dylib
       0x1018c8000 -        0x101901ff7  libdispatch.dylib (1008.270.1) <97273678-E94C-3C8C-89F6-2E2020F4B43B> /usr/lib/system/libdispatch.dylib
       0x101932000 -        0x10195eff7  libdyld.dylib (655.1.1) <002418CC-AD11-3D10-865B-015591D24E6C> /usr/lib/system/libdyld.dylib
       0x10197d000 -        0x10197dffb  libkeymgr.dylib (30) <0D0F9CA2-8D5A-3273-8723-59987B5827F2> /usr/lib/system/libkeymgr.dylib
       0x101982000 -        0x101982ff7  liblaunch.dylib (1336.261.2) <2B07E27E-D404-3E98-9D28-BCA641E5C479> /usr/lib/system/liblaunch.dylib
       0x101989000 -        0x10198efff  libmacho.dylib (927.0.3) <A377D608-77AB-3F6E-90F0-B4F251A5C12F> /usr/lib/system/libmacho.dylib
       0x101995000 -        0x101997ffb  libquarantine.dylib (86.220.1) <6D0BC770-7348-3608-9254-F7FFBD347634> /usr/lib/system/libquarantine.dylib
       0x10199e000 -        0x10199fff7  libremovefile.dylib (45.200.2) <9FBEB2FF-EEBE-31BC-BCFC-C71F8D0E99B6> /usr/lib/system/libremovefile.dylib
       0x1019a5000 -        0x1019bcff3  libsystem_asl.dylib (356.200.4) <A62A7249-38B8-33FA-9875-F1852590796C> /usr/lib/system/libsystem_asl.dylib
       0x1019ca000 -        0x1019caff7  libsystem_blocks.dylib (73) <A453E8EE-860D-3CED-B5DC-BE54E9DB4348> /usr/lib/system/libsystem_blocks.dylib
       0x1019cf000 -        0x101a56fff  libsystem_c.dylib (1272.250.1) <7EDACF78-2FA3-35B8-B051-D70475A35117> /usr/lib/system/libsystem_c.dylib
       0x101a7f000 -        0x101a82ffb  libsystem_configuration.dylib (963.270.3) <2B4A836D-68A4-33E6-8D48-CD4486B03387> /usr/lib/system/libsystem_configuration.dylib
       0x101a89000 -        0x101a8cff7  libsystem_coreservices.dylib (66) <719F75A4-74C5-3BA6-A09E-0C5A3E5889D7> /usr/lib/system/libsystem_coreservices.dylib
       0x101a92000 -        0x101a98fff  libsystem_darwin.dylib (1272.250.1) <EC9B39A5-9592-3577-8997-7DC721D20D8C> /usr/lib/system/libsystem_darwin.dylib
       0x101aa3000 -        0x101aa9ff7  libsystem_dnssd.dylib (878.270.2) <E9A5ACCF-E35F-3909-AF0A-2A37CD217276> /usr/lib/system/libsystem_dnssd.dylib
       0x101aaf000 -        0x101afaffb  libsystem_info.dylib (517.200.9) <D09D5AE0-2FDC-3A6D-93EC-729F931B1457> /usr/lib/system/libsystem_info.dylib
       0x101b11000 -        0x101b5cff7  libsystem_m.dylib (3158.200.7) <F19B6DB7-014F-3820-831F-389CCDA06EF6> /usr/lib/system/libsystem_m.dylib
       0x101b6b000 -        0x101b95fff  libsystem_malloc.dylib (166.270.1) <011F3AD0-8E6A-3A89-AE64-6E5F6840F30A> /usr/lib/system/libsystem_malloc.dylib
       0x101ba5000 -        0x101bafff7  libsystem_networkextension.dylib (767.250.2) <FF06F13A-AEFE-3A27-A073-910EF78AEA36> /usr/lib/system/libsystem_networkextension.dylib
       0x101bbb000 -        0x101bc2fff  libsystem_notify.dylib (172.200.21) <145B5CFC-CF73-33CE-BD3D-E8DDE268FFDE> /usr/lib/system/libsystem_notify.dylib
       0x101bc9000 -        0x101bccff7  libsystem_sandbox.dylib (851.270.1) <9494594B-5199-3186-82AB-5FF8BED6EE16> /usr/lib/system/libsystem_sandbox.dylib
       0x101bd3000 -        0x101bd5ff3  libsystem_secinit.dylib (30.260.2) <EF1EA47B-7B22-35E8-BD9B-F7003DCB96AE> /usr/lib/system/libsystem_secinit.dylib
       0x101bdb000 -        0x101c03ff7  libsystem_kernel.dylib (4903.271.2) <EA204E3C-870B-30DD-B4AF-D1BB66420D14> /usr/lib/system/libsystem_kernel.dylib
       0x101c1e000 -        0x101c27fef  libsystem_platform.dylib (177.270.1) <9D1FE5E4-EB7D-3B3F-A8D1-A96D9CF1348C> /usr/lib/system/libsystem_platform.dylib
       0x101c30000 -        0x101c3aff7  libsystem_pthread.dylib (330.250.2) <2D5C08FF-484F-3D59-9132-CE1DCB3F76D7> /usr/lib/system/libsystem_pthread.dylib
       0x101c45000 -        0x101c4cff3  libsystem_symptoms.dylib (820.267.1) <03F1C2DD-0F5A-3D9D-88F6-B26C0F94EB52> /usr/lib/system/libsystem_symptoms.dylib
       0x101c53000 -        0x101c68fff  libsystem_trace.dylib (906.260.1) <FC761C3B-5434-3A52-912D-F1B15FAA8EB2> /usr/lib/system/libsystem_trace.dylib
       0x101c77000 -        0x101c7cffb  libunwind.dylib (35.4) <24A97A67-F017-3CFC-B0D0-6BD0224B1336> /usr/lib/system/libunwind.dylib
       0x101c84000 -        0x101cb3fff  libxpc.dylib (1336.261.2) <7DEE2300-6D8E-3C00-9C63-E3E80D56B0C4> /usr/lib/system/libxpc.dylib
       0x101ef6000 -        0x101ef7fff +_heapq.cpython-36m-darwin.so (???) <B3A1BA9C-14C5-D54A-EB65-2D408DDABF23> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_heapq.cpython-36m-darwin.so
       0x101efc000 -        0x101efcfff +_bisect.cpython-36m-darwin.so (???) <BA82B0A8-03DC-DB76-C857-89F35341B867> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_bisect.cpython-36m-darwin.so
       0x103404000 -        0x103409fff +math.cpython-36m-darwin.so (???) <297B5753-6871-CD1C-487B-D3D8495637A6> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/math.cpython-36m-darwin.so
       0x1034d0000 -        0x1034d6ff7 +_json.cpython-36m-darwin.so (???) <B5C6B28C-5029-6769-DC26-F9EA0356D563> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_json.cpython-36m-darwin.so
       0x1034db000 -        0x1034ddff7 +_hashlib.cpython-36m-darwin.so (???) <164ECA86-F978-7159-8CEF-F9DDD6FF9D83> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_hashlib.cpython-36m-darwin.so
       0x1034e2000 -        0x1034ebfff +_blake2.cpython-36m-darwin.so (???) <49191DB4-336B-60C2-F4F4-D45549F5517F> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_blake2.cpython-36m-darwin.so
       0x1034f0000 -        0x1034f5fff +_struct.cpython-36m-darwin.so (???) <AAB4D64D-D1CB-1808-B2FB-71CFA788212C> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_struct.cpython-36m-darwin.so
       0x103649000 -        0x10369ffe7 +libssl.1.0.0.dylib (1) <67BA2AA8-F4DA-8B30-37F3-787C92F285E4> /Library/Frameworks/Python.framework/Versions/3.6/lib/libssl.1.0.0.dylib
       0x1036bb000 -        0x1036cefff +_sha3.cpython-36m-darwin.so (???) <924BC4B8-D729-450E-E8E0-0E3001913AE3> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_sha3.cpython-36m-darwin.so
       0x103714000 -        0x103726ff7 +_pickle.cpython-36m-darwin.so (???) <7DF96973-B8F4-7433-61E0-39AF74BC2929> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_pickle.cpython-36m-darwin.so
       0x1037b3000 -        0x1037bdfff +_socket.cpython-36m-darwin.so (???) <8068331B-D50A-03D6-CFE6-C68DA4DCF96F> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_socket.cpython-36m-darwin.so
       0x1037c9000 -        0x1037ccfff +select.cpython-36m-darwin.so (???) <146B3653-184D-28A2-1431-42C5BC5B3B13> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/select.cpython-36m-darwin.so
       0x1037d2000 -        0x1037e0ff7 +_ssl.cpython-36m-darwin.so (???) <16295653-6239-DBE6-2F81-13C366DAF29E> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_ssl.cpython-36m-darwin.so
       0x1037f0000 -        0x1037f3ff7 +binascii.cpython-36m-darwin.so (???) <4CCB684E-D003-BD8B-67C1-640D10601C74> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/binascii.cpython-36m-darwin.so
       0x1037f7000 -        0x1037f8fff +_random.cpython-36m-darwin.so (???) <762BCC32-0885-A836-BA7C-5C5AF8505D08> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_random.cpython-36m-darwin.so
       0x1037fb000 -        0x1037fcfff +_bz2.cpython-36m-darwin.so (???) <1DFB6CF7-7C2E-E1C0-E92D-F36187B3EE65> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_bz2.cpython-36m-darwin.so
       0x104800000 -        0x1049cbf67 +libcrypto.1.0.0.dylib (1) <16C799AF-21E1-571B-034F-04094B89D359> /Library/Frameworks/Python.framework/Versions/3.6/lib/libcrypto.1.0.0.dylib
       0x104b82000 -        0x104b91fff +_datetime.cpython-36m-darwin.so (???) <A28D250F-D3FF-9A93-F7D8-3C39DA7624F3> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_datetime.cpython-36m-darwin.so
       0x104c1c000 -        0x104c20fff +zlib.cpython-36m-darwin.so (???) <B4E62AAE-D1F1-EEF0-8FAC-8533922DC715> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/zlib.cpython-36m-darwin.so
       0x104d6c000 -        0x104d79fff  libbz2.1.0.dylib (38.200.3) <272953A1-8D36-329B-BDDB-E887B347710F> /usr/lib/libbz2.1.0.dylib
       0x104e10000 -        0x104e3cfe7 +_lzma.cpython-36m-darwin.so (???) <20A0A28F-6F30-C6CC-DC18-971CCE263C30> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_lzma.cpython-36m-darwin.so
       0x104e46000 -        0x104e46fff +grp.cpython-36m-darwin.so (???) <AC9E9BBA-EFE0-5927-246B-FAD1D11535D9> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/grp.cpython-36m-darwin.so
       0x104e89000 -        0x104e89ff7 +_scproxy.cpython-36m-darwin.so (???) <379C5B17-F029-A789-FDB4-A148ADE3B068> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_scproxy.cpython-36m-darwin.so
       0x104e8c000 -        0x104ef9fff  com.apple.SystemConfiguration (1.17 - 1.17) <30C8327F-3EFF-3520-9C50-016F8B6B954F> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
       0x104f32000 -        0x104f42ffb  libbsm.0.dylib (39.200.18) <CF381E0B-025B-364F-A83D-2527E03F1AA3> /usr/lib/libbsm.0.dylib
       0x104f4c000 -        0x10529dff7  libnetwork.dylib (1229.250.15) <72C7E9E3-B2BE-3300-BE1B-64606222022C> /usr/lib/libnetwork.dylib
       0x105337000 -        0x10536cfff  libpcap.A.dylib (79.250.1) <C0893641-7DFF-3A33-BDAE-190FF54837E8> /usr/lib/libpcap.A.dylib
       0x10547c000 -        0x105492fff  libcoretls.dylib (155.220.1) <4C64BE3E-41E3-3020-8BB7-07E90C0C861C> /usr/lib/libcoretls.dylib
       0x10549e000 -        0x10549fff3  libcoretls_cfhelpers.dylib (155.220.1) <0959B3E9-6643-3589-8BB3-21D52CDF0EF1> /usr/lib/libcoretls_cfhelpers.dylib
       0x1054a5000 -        0x1057a5fff  com.apple.security (7.0 - 58286.270.3.0.1) <DF7677A7-9765-3B6A-9D1C-3589145E4B65> /System/Library/Frameworks/Security.framework/Versions/A/Security
       0x105945000 -        0x10595bffb  libapple_nghttp2.dylib (1.24.1) <6F04250A-6686-3FDC-9A8D-290C64B06502> /usr/lib/libapple_nghttp2.dylib
       0x105967000 -        0x105d14ffb  com.apple.Foundation (6.9 - 1575.19) <A85BF812-B784-36B9-89BB-E29772B0708C> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
       0x105ff1000 -        0x106000fc7  com.apple.AppleFSCompression (96.200.3 - 1.0) <3CF60CE8-976E-3CB8-959D-DD0948C1C2DE> /System/Library/PrivateFrameworks/AppleFSCompression.framework/Versions/A/AppleFSCompression
       0x10600a000 -        0x10600afff  libOpenScriptingUtil.dylib (179.1) <4D603146-EDA5-3A74-9FF8-4F75D8BB9BC6> /usr/lib/libOpenScriptingUtil.dylib
       0x10600f000 -        0x10600fff3  libauto.dylib (187) <3E3780E1-96F3-3A22-91C5-92F9A5805518> /usr/lib/libauto.dylib
       0x106015000 -        0x106019ffb  libpam.2.dylib (22.200.1) <586CF87F-349C-393D-AEEB-FB75F94A5EB7> /usr/lib/libpam.2.dylib
       0x10601f000 -        0x1061fcfff  libsqlite3.dylib (274.26) <6404BA3B-BCA4-301F-B2FE-8776105A2AA3> /usr/lib/libsqlite3.dylib
       0x106227000 -        0x106234fff  libxar.1.dylib (417.1) <39CCF46B-C81A-34B1-92A1-58C4E5DA846E> /usr/lib/libxar.1.dylib
       0x10623e000 -        0x1062cdfff  com.apple.framework.IOKit (2.0.2 - 1483.260.4) <8A90F547-86EF-3DFB-92FE-0E2C0376DD84> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
       0x106315000 -        0x10631affb  com.apple.DiskArbitration (2.7 - 2.7) <F481F2C0-884E-3265-8111-ABBEC93F0920> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
       0x106325000 -        0x10634effb  libarchive.2.dylib (54.250.1) <47289946-8504-3966-9127-6CE39993DC2C> /usr/lib/libarchive.2.dylib
       0x106359000 -        0x10643bff3  libxml2.2.dylib (32.10) <AA4E1B1F-0FDE-3274-9FA5-75446298D1AC> /usr/lib/libxml2.2.dylib
       0x106474000 -        0x106815fff  com.apple.CFNetwork (978.0.7 - 978.0.7) <B2133D0D-1399-3F17-80F0-313E3A241C89> /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
       0x106b3d000 -        0x106b3dfff  com.apple.CoreServices (946 - 946) <6EC9F377-EBD8-3358-92D1-6586F6F1E8E9> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
       0x106b42000 -        0x106b43fff  liblangid.dylib (128.15.1) <22D05C4F-769B-3075-ABCF-44A0EBACE028> /usr/lib/liblangid.dylib
       0x106b48000 -        0x106b7cfff  libCRFSuite.dylib (41.15.4) <406DAC06-0C77-3F90-878B-4D38F11F0256> /usr/lib/libCRFSuite.dylib
       0x106b97000 -        0x106b97fff  libenergytrace.dylib (17.200.1) <80BB567A-FD18-3497-BF97-353F57D98CDD> /usr/lib/libenergytrace.dylib
       0x106b9c000 -        0x106ba8ff3  libkxld.dylib (4903.271.2) <FBF128C8-D3F0-36B6-983A-A63B8A3E0E52> /usr/lib/system/libkxld.dylib
       0x106bae000 -        0x106bc6ff3  liblzma.5.dylib (10.200.3) <E1F4FD60-1CE4-37B9-AD95-29D348AF1AC0> /usr/lib/liblzma.5.dylib
       0x106bce000 -        0x106bd6ffb  com.apple.CoreServices.FSEvents (1239.200.12 - 1239.200.12) <8406D379-8D33-3611-861B-7ABD26DB50D2> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents
       0x106bde000 -        0x106eb5fff  com.apple.CoreServices.CarbonCore (1178.33 - 1178.33) <CB87F0C7-2CD6-3983-8E32-B6A2EC925352> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
       0x106f2c000 -        0x106fcaff7  com.apple.Metadata (10.7.0 - 1191.57) <BFFAED00-2560-318A-BB8F-4E7E5123EC61> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
       0x107043000 -        0x10708dff7  com.apple.CoreServices.OSServices (946 - 946) <20C4EEF8-D5AC-39A0-9B4A-78F88E3EFBCC> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
       0x1070cc000 -        0x107133ff7  com.apple.SearchKit (1.4.0 - 1.4.0) <DA08AA6F-A6F1-36C0-87F4-E26294E51A3A> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
       0x107175000 -        0x1071f1ff7  com.apple.AE (773 - 773) <55AE7C9E-27C3-30E9-A047-3B92A6FD53B4> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
       0x107224000 -        0x1073d5ff7  com.apple.LaunchServices (946 - 946) <A0C91634-9410-38E8-BC11-7A5A369E6BA5> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
       0x1074de000 -        0x107526ff7  com.apple.DictionaryServices (1.2 - 284.16.4) <746EB200-DC51-30AE-9CBC-608A7B4CC8DA> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
       0x107559000 -        0x10757aff3  com.apple.coreservices.SharedFileList (71.28 - 71.28) <487A8464-729E-305A-B5D1-E3FE8EB9CFC5> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SharedFileList.framework/Versions/A/SharedFileList
       0x10759c000 -        0x1075a8ff7  com.apple.NetFS (6.0 - 4.0) <E917806F-0607-3292-B2D6-A15404D61B99> /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
       0x1075b2000 -        0x1075bcfff  com.apple.NetAuth (6.2 - 6.2) <0D01BBE5-0269-310D-B148-D19DAE143DEB> /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth
       0x1075c8000 -        0x1075caffb  com.apple.loginsupport (1.0 - 1) <3F8D6334-BCD6-36C1-BA20-CC8503A84375> /System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport
       0x1075d0000 -        0x1075dcffb  com.apple.TCC (1.0 - 1) <73CF6FA9-44CE-30C9-887F-235940976585> /System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC
       0x1075e9000 -        0x10764fff7  com.apple.CoreNLP (1.0 - 130.15.22) <27877820-17D0-3B02-8557-4014E876CCC7> /System/Library/PrivateFrameworks/CoreNLP.framework/Versions/A/CoreNLP
       0x1076ad000 -        0x1076d5ff7  com.apple.spotlight.metadata.utilities (1.0 - 1191.57) <38BB1FB7-3336-384C-B71F-4D0D402EB606> /System/Library/PrivateFrameworks/MetadataUtilities.framework/Versions/A/MetadataUtilities
       0x1076eb000 -        0x1078effff  libmecabra.dylib (779.24.1) <D71F71E0-30E2-3DB3-B636-7DE13D51FB4B> /usr/lib/libmecabra.dylib
       0x10794b000 -        0x10794bfff  com.apple.ApplicationServices (50.1 - 50.1) <84097DEB-E2FC-3901-8DD7-A670EA2274E0> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices
       0x10794f000 -        0x107fdefff  com.apple.CoreGraphics (2.0 - 1265.9) <BC95B558-EF77-3A57-A0BC-11606C778991> /System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics
       0x108133000 -        0x108295ff3  com.apple.CoreText (352.0 - 584.26.3.2) <59919B0C-CBD5-3877-8D6F-D6048F1E5F42> /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText
       0x108365000 -        0x1084f0fef  com.apple.ImageIO.framework (3.3.0 - 1850.2) <75E46A31-D87D-35CE-86A4-96A50971FDB2> /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
       0x1085b3000 -        0x108702ff7  com.apple.ColorSync (4.13.0 - 3345.6) <31648BB6-7239-3D0E-81B1-BCF51FEF557F> /System/Library/Frameworks/ColorSync.framework/Versions/A/ColorSync
       0x108754000 -        0x1087bffff  com.apple.ApplicationServices.ATS (377 - 453.11.2.2) <A258DA73-114B-3102-A056-4AAAD3CEB9DD> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS
       0x1087ec000 -        0x1087f0ff3  com.apple.ColorSyncLegacy (4.13.0 - 1) <C0D9E23C-ABA0-39DE-A4EB-5A41C5499056> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSyncLegacy.framework/Versions/A/ColorSyncLegacy
       0x1087f9000 -        0x10884bff7  com.apple.HIServices (1.22 - 628) <2BE461FF-80B9-30D3-A574-AED5724B1C1B> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices
       0x108885000 -        0x108894fff  com.apple.LangAnalysis (1.7.0 - 1.7.0) <F5617A2A-FEA6-3832-B5BA-C2111B98786F> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis
       0x1088a3000 -        0x1088ecff7  com.apple.print.framework.PrintCore (14.2 - 503.8) <57C2FE32-0E74-3079-B626-C2D52F2D2717> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore
       0x10891a000 -        0x108953ff7  com.apple.QD (3.12 - 407.2) <28C7D39F-59C9-3314-BECC-67045487229C> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD
       0x10897f000 -        0x10898bfff  com.apple.speech.synthesis.framework (8.1.3 - 8.1.3) <5E7B9BD4-122B-3012-A044-3259C97E7509> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis
       0x1089a0000 -        0x108c4ffff  com.apple.SkyLight (1.600.0 - 340.54) <90EB1C2E-B264-3EC4-AF7F-CDE7E7585746> /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/SkyLight
       0x108d36000 -        0x108d45ffb  com.apple.IOSurface (255.6.1 - 255.6.1) <85F85EBB-EA59-3A8B-B3EB-7C20F3CC77AE> /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface
       0x108d5d000 -        0x108d5dfff  com.apple.Accelerate (1.11 - Accelerate 1.11) <762942CB-CFC9-3A0C-9645-A56523A06426> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
       0x108d61000 -        0x108d79ffb  libcompression.dylib (52.250.2) <7F4BB18C-1FB4-3825-8D8B-6E6B168774C6> /usr/lib/libcompression.dylib
       0x108d81000 -        0x108e71ff7  com.apple.CoreDisplay (101.3 - 110.18) <0EB2A997-FCAD-3D17-B140-9829961E5327> /System/Library/Frameworks/CoreDisplay.framework/Versions/A/CoreDisplay
       0x108ea2000 -        0x108f4aff7  com.apple.Metal (162.2 - 162.2) <FFF7DFF3-7C4E-32C6-A0B5-C356079D3B7C> /System/Library/Frameworks/Metal.framework/Versions/A/Metal
       0x109070000 -        0x109071ff7  com.apple.MetalPerformanceShaders.MetalPerformanceShaders (1.0 - 1) <69F14BCF-C5C5-3BF8-9C31-8F87D2D6130A> /System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/MetalPerformanceShaders
       0x109076000 -        0x1090a0ffb  com.apple.MultitouchSupport.framework (2450.1 - 2450.1) <42A23EC9-64A7-31C7-BF33-DF4412ED8A3F> /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport
       0x1090b3000 -        0x10930aff7  com.apple.QuartzCore (1.11 - 701.14) <33E846BE-1794-3186-9BF2-6ADF62C782A3> /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
       0x109409000 -        0x109aa2fef  com.apple.vImage (8.1 - ???) <53FA3611-894E-3158-A654-FBD2F70998FE> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage
       0x109b02000 -        0x109b02fff  com.apple.Accelerate.vecLib (3.11 - vecLib 3.11) <74288115-EF61-30B6-843F-0593B31D4929> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib
       0x109b06000 -        0x109bb9ff7  libvMisc.dylib (671.250.4) <D5BA4812-BFFC-3CD0-B382-905CD8555DA6> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib
       0x109bc7000 -        0x109daeff7  libvDSP.dylib (671.250.4) <7B110627-A9C1-3FB7-A077-0C7741BA25D8> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib
       0x109dbd000 -        0x10a036ff3  libBLAS.dylib (1243.200.4) <417CA0FC-B6CB-3FB3-ACBC-8914E3F62D20> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
       0x10a062000 -        0x10a40bff3  libLAPACK.dylib (1243.200.4) <92175DF4-863A-3780-909A-A3E5C410F2E9> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
       0x10a467000 -        0x10a47cfeb  libLinearAlgebra.dylib (1243.200.4) <CB671EE6-DEA1-391C-9B2B-AA09A46B4D7A> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib
       0x10a485000 -        0x10a498fe3  libSparseBLAS.dylib (1243.200.4) <E9243341-DB77-37C1-97C5-3DFA00DD70FA> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparseBLAS.dylib
       0x10a4a0000 -        0x10a4a5ff3  libQuadrature.dylib (3.200.2) <1BAE7E22-2862-379F-B334-A3756067730F> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libQuadrature.dylib
       0x10a4aa000 -        0x10a51cffb  libBNNS.dylib (38.250.1) <538D12A2-9B9D-3E22-9896-F90F6E69C06E> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBNNS.dylib
       0x10a527000 -        0x10a5a3ff3  libSparse.dylib (79.200.5) <E78B33D3-672A-3C53-B512-D3DDB2E9AC8D> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparse.dylib
       0x10a5bc000 -        0x10a5c1fff  com.apple.GPUWrangler (3.50.12 - 3.50.12) <6C820ED9-F306-3978-B5B8-432AD97BBDAF> /System/Library/PrivateFrameworks/GPUWrangler.framework/Versions/A/GPUWrangler
       0x10a5c8000 -        0x10a5cfffb  com.apple.IOAccelerator (404.14 - 404.14) <11A50171-C8AE-3BBC-9FB9-2A3313FFBD31> /System/Library/PrivateFrameworks/IOAccelerator.framework/Versions/A/IOAccelerator
       0x10a5db000 -        0x10a5f3fff  com.apple.IOPresentment (1.0 - 42.6) <6DFD9A6E-BF95-3A27-89E7-ACAA9E30D90A> /System/Library/PrivateFrameworks/IOPresentment.framework/Versions/A/IOPresentment
       0x10a610000 -        0x10a614ff7  com.apple.DSExternalDisplay (3.1 - 380) <787B9748-B120-3453-B8FE-61D9E363A9E0> /System/Library/PrivateFrameworks/DSExternalDisplay.framework/Versions/A/DSExternalDisplay
       0x10a61b000 -        0x10a620ff3  libCoreFSCache.dylib (166.2) <222C2A4F-7E32-30F6-8459-2FAB98073A3D> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreFSCache.dylib
       0x10a628000 -        0x10a647ff7  com.apple.MetalPerformanceShaders.MPSCore (1.0 - 1) <44CE8362-E972-3697-AD6F-15BC863BAEB8> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSCore.framework/Versions/A/MPSCore
       0x10a65b000 -        0x10a6d7fe7  com.apple.MetalPerformanceShaders.MPSImage (1.0 - 1) <EE8440DA-66DF-3923-ABBC-E0543211C069> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSImage.framework/Versions/A/MPSImage
       0x10a713000 -        0x10a83eff7  com.apple.MetalPerformanceShaders.MPSNeuralNetwork (1.0 - 1) <F2CF26B6-73F1-3644-8FE9-CDB9B2C4501F> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSNeuralNetwork.framework/Versions/A/MPSNeuralNetwork
       0x10a8b6000 -        0x10a8ddfff  com.apple.MetalPerformanceShaders.MPSMatrix (1.0 - 1) <E64450DF-2B96-331E-B7F4-666E00571C70> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSMatrix.framework/Versions/A/MPSMatrix
       0x10a8ef000 -        0x10a909fff  com.apple.MetalPerformanceShaders.MPSRayIntersector (1.0 - 1) <B33A35C3-0393-366B-ACFB-F4BB6A5F7B4A> /System/Library/Frameworks/MetalPerformanceShaders.framework/Frameworks/MPSRayIntersector.framework/Versions/A/MPSRayIntersector
       0x10a915000 -        0x10a9a2ff7  com.apple.gpusw.MetalTools (1.0 - 1) <CBE2176A-8048-3A9C-AFE4-13973D44C704> /System/Library/PrivateFrameworks/MetalTools.framework/Versions/A/MetalTools
       0x10aa54000 -        0x10aa55ff7  com.apple.AggregateDictionary (1.0 - 1) <A6AF8AC4-1F25-37C4-9157-A02E9C200926> /System/Library/PrivateFrameworks/AggregateDictionary.framework/Versions/A/AggregateDictionary
       0x10aa5b000 -        0x10aa7afff  libMobileGestalt.dylib (645.270.1) <99A06C8A-97D6-383D-862C-F453BABB48A4> /usr/lib/libMobileGestalt.dylib
       0x10aace000 -        0x10adeefff  com.apple.CoreImage (14.4.0 - 750.0.140) <11026E39-D2FF-3CF6-8ACE-7BA293F9853E> /System/Library/Frameworks/CoreImage.framework/Versions/A/CoreImage
       0x10af99000 -        0x10afd9ff3  com.apple.CoreVideo (1.8 - 281.4) <10CF8E52-07E3-382B-8091-2CEEEFFA69B4> /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo
       0x10b003000 -        0x10b012ffb  com.apple.opengl (17.7.3 - 17.7.3) <94B5CF34-5BD6-3652-9A8C-E9C56E0A9FB4> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
       0x10b01d000 -        0x10b02cfff  com.apple.GraphVisualizer (1.0 - 5) <48D020B7-5938-3FAE-B468-E291AEE2C06F> /System/Library/PrivateFrameworks/GraphVisualizer.framework/Versions/A/GraphVisualizer
       0x10b037000 -        0x10b452fff  com.apple.vision.FaceCore (3.3.4 - 3.3.4) <A576E2DA-BF6F-3B18-8FEB-324E5C5FA9BD> /System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore
       0x10b657000 -        0x10b6aeff7  com.apple.opencl (2.15.3 - 2.15.3) <056BAD8A-23BC-3F74-9E2C-3AC81E7DEA5A> /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL
       0x10b6ca000 -        0x10b921ff3  libFosl_dynamic.dylib (18.3.4) <1B5DD4E2-8AE0-315E-829E-D5BFCD264EA8> /usr/lib/libFosl_dynamic.dylib
       0x10b960000 -        0x10b9b1ff3  com.apple.OTSVG (1.0 - ???) <5BF1A9EB-2694-3267-9514-A4EB3BEF4081> /System/Library/PrivateFrameworks/OTSVG.framework/Versions/A/OTSVG
       0x10ba26000 -        0x10bb3dfff  libFontParser.dylib (228.6.2.3) <3602D55B-3B9E-3B3A-A814-08C1244A8AE4> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib
       0x10bbc0000 -        0x10bc02fff  libFontRegistry.dylib (228.12.2.3) <2A56347B-2809-3407-A8B4-2AB88E484062> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib
       0x10bc31000 -        0x10bc56feb  libJPEG.dylib (1850.2) <171A8AC4-AADA-376F-9F2C-B9C978DB1007> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib
       0x10bc5f000 -        0x10bcacfe7  libTIFF.dylib (1850.2) <F59557C9-C761-3E6F-85D1-0FBFFD53ED5C> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
       0x10bcbd000 -        0x10bce3feb  libPng.dylib (1850.2) <FBCEE909-F573-3AD6-A45F-AF32612BF8A2> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib
       0x10bcef000 -        0x10bcf3ffb  libGIF.dylib (1850.2) <4774EBDF-583B-3DDD-A0E1-9F427CB6A074> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib
       0x10bcf9000 -        0x10bdd5fef  libJP2.dylib (1850.2) <697BB77F-A682-339F-8659-35432962432D> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib
       0x10bdfe000 -        0x10be00ffb  libRadiance.dylib (1850.2) <56907025-D5CE-3A9E-ACCB-A376C2599853> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib
       0x10be05000 -        0x10be4eff3  com.apple.AppleJPEG (1.0 - 1) <4C1F426B-7D77-3980-9633-7DBD8C666B9A> /System/Library/PrivateFrameworks/AppleJPEG.framework/Versions/A/AppleJPEG
       0x10be5b000 -        0x10be63ff7  libGFXShared.dylib (17.7.3) <8C50BF27-B525-3B23-B86C-F444ADF97851> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib
       0x10be6b000 -        0x10bea9fff  libGLU.dylib (17.7.3) <CB3B0579-D9A2-3CA5-8942-0C8344FAD054> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib
       0x10beb9000 -        0x10bec4fff  libGL.dylib (17.7.3) <2AC457EA-1BD3-3C8E-AFAB-7EA6234EB749> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
       0x10bed9000 -        0x10bf13fef  libGLImage.dylib (17.7.3) <AA027AFA-C115-3861-89B2-0AE946838952> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib
       0x10bf1c000 -        0x10bf1efff  libCVMSPluginSupport.dylib (17.7.3) <8E051EA7-55B6-3DF1-9821-72C391DE953B> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib
       0x10bf24000 -        0x10bf28fff  libCoreVMClient.dylib (166.2) <6789ECD4-91DD-32EF-A1FD-F27D2344CD8B> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib
       0x10bf32000 -        0x10bf88ff3  libcups.2.dylib (462.12) <095619DC-9233-3937-9E50-5F10D917A40D> /usr/lib/libcups.2.dylib
       0x10bfa2000 -        0x10bfbbfff  com.apple.Kerberos (3.0 - 1) <DB1E0679-37E1-3B93-9789-32F63D660C3B> /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos
       0x10bfd5000 -        0x10c004ffb  com.apple.GSS (4.0 - 2.0) <E2B90D08-3857-3155-9FCC-07D778988EC9> /System/Library/Frameworks/GSS.framework/Versions/A/GSS
       0x10c025000 -        0x10c03dffb  libresolv.9.dylib (65.200.2) <893142A5-F153-3437-A22D-407EE542B5C5> /usr/lib/libresolv.9.dylib
       0x10c048000 -        0x10c138fff  libiconv.2.dylib (51.200.6) <2047C9B7-3F74-3A95-810D-2ED8F0475A99> /usr/lib/libiconv.2.dylib
       0x10c149000 -        0x10c1bdffb  com.apple.Heimdal (4.0 - 2.0) <D97FCF19-EAD6-3E2F-BE88-F817E45CAE96> /System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal
       0x10c1ef000 -        0x10c1f4ff7  libheimdal-asn1.dylib (520.270.1) <73F60D6F-76F8-35EF-9C86-9A81225EE4BE> /usr/lib/libheimdal-asn1.dylib
       0x10c1fb000 -        0x10c206ffb  com.apple.OpenDirectory (10.14 - 207.200.4) <A8020CEE-5B78-3581-A735-EA2833683F31> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory
       0x10c21b000 -        0x10c224ffb  com.apple.CommonAuth (4.0 - 2.0) <93335CB6-ABEB-3EC7-A040-8A667F40D5F3> /System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth
       0x10c22c000 -        0x10c247ff7  com.apple.CFOpenDirectory (10.14 - 207.200.4) <F03D84EB-49B2-3A00-9127-B9A269824026> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory
       0x10c268000 -        0x10c2f4fff  com.apple.securityfoundation (6.0 - 55185.260.1) <1EE899E6-222A-3526-B505-B0D0B6FA042A> /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation
       0x10c363000 -        0x10c408feb  com.apple.APFS (1.0 - 1) <2D22485D-552D-3CB6-9FE1-38547597918F> /System/Library/PrivateFrameworks/APFS.framework/Versions/A/APFS
       0x10c423000 -        0x10c426ff7  libutil.dylib (51.200.4) <CE9B18C9-66ED-32D4-9D29-01F8FCB467B0> /usr/lib/libutil.dylib
       0x10c42d000 -        0x10c42dff3  libcharset.1.dylib (51.200.6) <2A27E064-314C-359C-93FC-8A9B06206174> /usr/lib/libcharset.1.dylib
       0x10c432000 -        0x10c4b8fff  com.apple.audio.CoreAudio (4.3.0 - 4.3.0) <1E8E64E6-0E58-375A-97F7-07CB4EE181AC> /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
       0x10c4e4000 -        0x10c75bff7  com.apple.audio.toolbox.AudioToolbox (1.14 - 1.14) <04F482F1-E1C1-3955-8A6C-8AA152AA06F3> /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
       0x10c89e000 -        0x10c8c0fff  com.apple.applesauce (1.0 - ???) <F49107C7-3C51-3024-8EF1-C57643BE4F3B> /System/Library/PrivateFrameworks/AppleSauce.framework/Versions/A/AppleSauce
       0x10c8cb000 -        0x10c8dfffb  com.apple.AssertionServices (1.0 - 1) <456E507A-4561-3628-9FBE-173ACE7429D8> /System/Library/PrivateFrameworks/AssertionServices.framework/Versions/A/AssertionServices
       0x10c8ff000 -        0x10c96cff3  com.apple.BaseBoard (360.28 - 360.28) <68FA8044-F3CD-3BC6-9DAB-27DACF52BFC0> /System/Library/PrivateFrameworks/BaseBoard.framework/Versions/A/BaseBoard
       0x10c9d8000 -        0x10ca7cff7  libmecab.1.0.0.dylib (779.24.1) <A8D0379B-85FA-3B3D-89ED-5CF2C3826AB2> /usr/lib/libmecab.1.0.0.dylib
       0x10ca9a000 -        0x10ca9fff7  libgermantok.dylib (17.15.2) <E5F0F794-FF27-3D64-AE52-C78C6A84DD67> /usr/lib/libgermantok.dylib
       0x10caa5000 -        0x10caa6fff  libThaiTokenizer.dylib (2.15.1) <ADB37DC3-7D9B-3E73-A72A-BCC3433C937A> /usr/lib/libThaiTokenizer.dylib
       0x10caac000 -        0x10cab6ff7  libChineseTokenizer.dylib (28.15.3) <9B7F6109-3A5D-3641-9A7E-31D2239D73EE> /usr/lib/libChineseTokenizer.dylib
       0x10cac5000 -        0x10cba0ff7  com.apple.LanguageModeling (1.0 - 159.15.15) <3DE3CE61-542B-37B7-883E-4B9717CAC65F> /System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling
       0x10cbc7000 -        0x10cbd8ff7  com.apple.CoreEmoji (1.0 - 69.19.9) <228457B3-E191-356E-9A5B-3C0438D05FBA> /System/Library/PrivateFrameworks/CoreEmoji.framework/Versions/A/CoreEmoji
       0x10cbe2000 -        0x10cc1eff7  com.apple.Lexicon-framework (1.0 - 33.15.10) <4B5E843E-2809-3E70-9560-9254E2656419> /System/Library/PrivateFrameworks/Lexicon.framework/Versions/A/Lexicon
       0x10cc2e000 -        0x10cc33fff  com.apple.LinguisticData (1.0 - 238.25) <F529B961-098C-3E4C-A3E9-9DA9BFA1B3F0> /System/Library/PrivateFrameworks/LinguisticData.framework/Versions/A/LinguisticData
       0x10cc3b000 -        0x10cc4bffb  libcmph.dylib (6.15.1) <9C52B2FE-179F-32AC-B87E-2AFC49ABF817> /usr/lib/libcmph.dylib
       0x10cc54000 -        0x10cfd9fef  com.apple.CoreData (120 - 866.6) <132CB39B-8D58-30FA-B8AD-49BFFF34B293> /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
       0x10d196000 -        0x10d19afff  com.apple.xpc.ServiceManagement (1.0 - 1) <FCF7BABA-DDDD-3770-8DAC-7069850203C2> /System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement
       0x10d1a2000 -        0x10d1aafff  com.apple.coreservices.BackgroundTaskManagement (1.0 - 57.1) <2A396FC0-7B79-3088-9A82-FB93C1181A57> /System/Library/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/BackgroundTaskManagement
       0x10d1b6000 -        0x10d1deff3  libxslt.1.dylib (16.5) <E330D3A2-E32B-378A-973E-A8D245C0F712> /usr/lib/libxslt.1.dylib
       0x10d2cf000 -        0x10d38bfff +unicodedata.cpython-36m-darwin.so (???) <ECE6E550-A960-7EB2-F09D-000952B85124> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/unicodedata.cpython-36m-darwin.so
       0x10d4eb000 -        0x10d4ecfff +_posixsubprocess.cpython-36m-darwin.so (???) <4479F52E-E363-37D5-7EE7-25369F05205A> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_posixsubprocess.cpython-36m-darwin.so
       0x10d4fc000 -        0x10d4fcfff +_opcode.cpython-36m-darwin.so (???) <B8513BC5-DACA-6E95-982A-CE56EB58B9A7> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_opcode.cpython-36m-darwin.so
       0x10f7d2000 -        0x10f7e8ff7 +_ctypes.cpython-36m-darwin.so (???) <0B1676F9-2065-CC17-8575-D6E2C77B2DAC> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload/_ctypes.cpython-36m-darwin.so
       0x10f7f9000 -        0x10f7fafff  libffi.dylib (18.1) <DA1198F8-9789-3F16-BF60-9DA170519295> /usr/lib/libffi.dylib
       0x110cc0000 -        0x110cddfff +_cffi_backend.cpython-36m-darwin.so (???) <83661827-6130-33C1-AF27-70AB340DF544> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/_cffi_backend.cpython-36m-darwin.so
       0x110d04000 -        0x111230ffb +cbc-c-darwin-x86-64.dylib (0) <1E230518-8466-3AA8-B995-321625A0AFF1> /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/mip/libraries/cbc-c-darwin-x86-64.dylib
    0x7fff69480000 -     0x7fff694ea70f  dyld (655.1.1) <DFC3C4AF-6F97-3B34-B18D-7DCB23F2A83A> /usr/lib/dyld

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 3336
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=154.8M resident=0K(0%) swapped_out_or_unallocated=154.8M(100%)
Writable regions: Total=218.1M written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=218.1M(100%)
 
                                VIRTUAL   REGION 
REGION TYPE                        SIZE    COUNT (non-coalesced) 
===========                     =======  ======= 
Activity Tracing                   256K        1 
Dispatch continuations            16.0M        1 
Kernel Alloc Once                    8K        1 
MALLOC                           182.5M      157 
MALLOC guard page                   16K        4 
MALLOC_LARGE (reserved)            816K        5         reserved VM address space (unallocated)
STACK GUARD                          8K        2 
Stack                             1040K        2 
VM_ALLOCATE                          8K        2 
__DATA                            16.8M      265 
__FONT_DATA                          4K        1 
__LINKEDIT                        31.3M      219 
__TEXT                           123.5M      216 
__UNICODE                          564K        1 
__UNIXSTACK                       16.0M        1 
mapped file                         24K        1 
shared memory                       44K        4 
===========                     =======  ======= 
TOTAL                            388.8M      883 
TOTAL, minus reserved VM space   388.0M      883 

Model: MacBookPro11,4, BootROM 194.0.0.0.0, 4 processors, Intel Core i7, 2.2 GHz, 16 GB, SMC 2.29f24
Graphics: kHW_IntelIrisProItem, Intel Iris Pro, spdisplays_builtin
Memory Module: BANK 0/DIMM0, 8 GB, DDR3, 1600 MHz, 0x802C, 0x31364B544631473634485A2D314736453120
Memory Module: BANK 1/DIMM0, 8 GB, DDR3, 1600 MHz, 0x802C, 0x31364B544631473634485A2D314736453120
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x152), Broadcom BCM43xx 1.0 (7.77.61.2 AirPortDriverBrcmNIC-1305.8)
Bluetooth: Version 6.0.14d3, 3 services, 27 devices, 1 incoming serial ports
Network Service: Wi-Fi, AirPort, en0
Serial ATA Device: APPLE SSD SM0256G, 251 GB
USB Device: USB 3.0 Bus
USB Device: Apple Internal Keyboard / Trackpad
USB Device: Bluetooth USB Host Controller
Thunderbolt Bus: MacBook Pro, Apple Inc., 27.1

Specifying max solutions not working

When passing in the optional parameter max_solutions to Model.optimize() I see the following output in the terminal

Welcome to the CBC MILP Solver 
Version: Trunk (unstable) 
Build Date: Oct 22 2019 
Revision Number: 2694 

command line - Cbc_C_Interface -max_solutions=1 -maxSavedSolutions=10 -integerT=1e-06 -solve -quit (default strategy 1)
No match for max_solutions - ? for list of commands

max_solutions should maybe be translated to maxSo(lutions)? (this is from cbc help prompt).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.