Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #90655

Re: Python: How to find out values of all feasible x under constraints.

From Peter Otten <__peter__@web.de>
Subject Re: Python: How to find out values of all feasible x under constraints.
Date 2015-05-15 09:47 +0200
Organization None
References <12da2c70-fd4e-430b-83d2-fad4ac1e3f8f@googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.30.1431676060.17265.python-list@python.org> (permalink)

Show all headers | View raw


Xiang Zhang wrote:

> I want to know how to find out values of all feasible x under constraints.
> 
> x = [x_1, x_2, x_3,..., x_10]
> 
> 
> constraints:
> x_i = 0,1,2,3 or 4,          where i=1,2,....10
> x_1 + x_2 + x_3 +...+x_10 <= 15

That are 5**10 == 9765625 candidates. That's still feasible to check using 
brute force.

> How to find out all the feasible solutions x (domain of x) using python,
> like [0,0,0,0,0,0,0,0,0,0], [1,1,1,1,1,1,1,1,1,1] etc ? What should be the
> code?
> 
> Any hint or help would be highly appreciated!

>>> solutions = [x for x in itertools.product(range(5), repeat=10) if sum(x) 
<= 15]
>>> len(solutions)
1556215

The first ten solutions:

>>> solutions[:10]
[(0, 0, 0, 0, 0, 0, 0, 0, 0, 0), (0, 0, 0, 0, 0, 0, 0, 0, 0, 1), (0, 0, 0, 
0, 0, 0, 0, 0, 0, 2), (0, 0, 0, 0, 0, 0, 0, 0, 0, 3), (0, 0, 0, 0, 0, 0, 0, 
0, 0, 4), (0, 0, 0, 0, 0, 0, 0, 0, 1, 0), (0, 0, 0, 0, 0, 0, 0, 0, 1, 1), 
(0, 0, 0, 0, 0, 0, 0, 0, 1, 2), (0, 0, 0, 0, 0, 0, 0, 0, 1, 3), (0, 0, 0, 0, 
0, 0, 0, 0, 1, 4)]

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Python: How to find out values of all feasible x under constraints. Xiang Zhang <zhangxiangsunny@gmail.com> - 2015-05-14 20:58 -0700
  Re: Python: How to find out values of all feasible x under constraints. Peter Otten <__peter__@web.de> - 2015-05-15 09:47 +0200
  Re: Python: How to find out values of all feasible x under constraints. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-05-15 13:35 +0100
  Re: Python: How to find out values of all feasible x under constraints. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-05-16 01:16 +0100

csiph-web