Re: [eclipse-users] declaring constants

From: Nicolas BERGER <Nicolas.Berger_at_...62...>
Date: Fri, 15 Jun 2007 13:43:00 +0200 (CEST)
```> Nicolas BERGER wrote:
>> Hi everyone
>>
>> Is it possible to declare constants i.e. variable that are not reduced ?
>> For example, in the following problem, not reducing the domain of D but
>> only the domains of X and Y :
>>
>> [X,Y] \$:: [-1.1..0.72],
>> D :: [1,4,7],
>> X +  D #< 3,
>>  Y + D #< 1.
>
> Hi Nicolas,
>
> What exactly do you mean with this?
> Maybe you mean that for each value in the domain of D, there exists a
> value in the domain of X such that the constraint X+D #< 3 is satisfied.
>
> If this is the case, you probably need a quantified CSP solver (QCSP).
>

Have a look at the following *real-life* (robot arm movement) CSP :

Tx is 10.0,
Ty is 6.0,
X0 is 8,
Y0 is 4,
D \$:: [1.99..2.01],

A \$:: [2.0..8.0],
B \$:: [2.0..8.0],
Alpha \$:: [0.. pi],
Beta \$:: [0.. pi],
X  \$:: [0..Tx],
Y  \$:: [0..Ty],
I  :: [2..5],
J  :: [2..5] ;

A * sin(Alpha) \$= B * sin(Beta - Alpha) + Y,
A * cos(Alpha) \$= X - (B * cos(Beta - Alpha)),
A * cos(Alpha) \$=< Tx,
X \$=< Tx,
A * sin(Alpha) \$=< Ty,
Y \$=< Ty,
(X - X0)^2 + (Y - Y0)^2 \$=< 4,
A \$= (I - 1) * D,
B \$= (J - 1) * D.

D here is a constant term, it doesn't have to be reduced, it is just some
feature of the problem : 1.99 \$=< D \$=< 2.01. Actually, this problem comes
from a C++ constraint solving library (ELISA) where D can be declared as
of type "IntervalConstant"...

Here what I have first thought of is excluding it from the "locate" var
list :
locate([A,B,Alpha,Beta,X,Y,I,J],
[A,B,Alpha,Beta,X,Y,I,J],1e-6,lin).

I suppose it means D is excluded from the search procedure (i.e. won't be
splitted) but I don't know if it excludes it from the propagation of
domain reductions raised by the constraints...

Nicolas.
```
Received on Fri Jun 15 2007 - 12:45:12 CEST

This archive was generated by hypermail 2.3.0 : Wed Jun 19 2019 - 06:15:11 CEST