text: ground state, it is certain that the outgoing proton, which is de- Table 3: Central kinematical parameters for the calibration of the SOS: E is the tected in spectrometer A, originates from the 1p level of the 12C nucleus, Fig. ??. 3/2 bpeSaOmS aennderθgSyO, SpAaraencdenθtAraalrme ocmenetnratulmmoamndenatnugmleaonfdSOanSg,lereospfescpteivcetrloy.meter A, Setting E pA θ◦A pSOS θS◦OS (MeV) (MeV/c) ( ) (MeV/c) ( ) 1 180 265 43.0 125 60.0 2 180 265 43.0 115 60.0 3 180 290 43.0 115 60.0 but the timing information was deﬁned only by the ToF plane. Coincidence time was corrected for the path length of the parti- Figure 6: On the left: illustration of the quasielastic electron scattering on a cle only in spectrometer A. After this correction, a coincidence nucleus having a mass number A with a proton knockout. On the right: in the peak with a time resolution of 1.98 ns FWHM was obtained, case of 12C, knowing that the remaining 11B is in the ground state ensures that the proton was knocked out of the p-shell. which was suﬃ−cient to≤determin≤e the transfer matrices for the SOS. A cut of 2 ns T − 2 ns was used to select true A SOS coincidence events. Therefore, the SOS calibration measurement has been per- The background of minimum ionizing particles was sup- formed using a 12C foil with area density of 30 mg/cm2 as tar- pressed by imposing an appropriate cut on the deposited energy get. Table ?? summarizes the kinematical settings used for the in the ∆E scintillator plane. For further reduction of background calibration of the SOS. For setting 1 from table ??, the energy additional cuts were applied on the angular acceptance of spec- | | ≤ ◦ | | ≤ ◦ transfer is ω = 55 MeV, which is in the case of the quasielas- trometer A ( θ0 5.1 and φ0 0.6 ). tic proton knockout from 1−2C divided between the separation Using the measured four-momentum of the proton (Ep, (cid:126)pp) energy Esep = (mp + m11B m12C)c2, excitation energy of the and transfer four-momentum deﬁned by the electron arm (ω,(cid:126)q) residual 11B nucleus Ex, kinetic energies of the proton Ep and it is possible to calculate the missing mass of the unobserved the residual 11B nucleus E11B: 11B nucleus mmiss and(cid:113)extract its excitation spectrum Ex: − (cid:48) ω = E E = Esep + Ex + Ep + E11B (1) − − − − − Ex = mmiss m11B = (ω + m12C Ep)2 ((cid:126)q (cid:126)pp)2 m11B (4) From equation (??) and the measured proton momentum it is now possible to determine the momentum of the scattered Fig. ?? shows the excitation spectrum of the 11B nucleus electron and perform calibration of the SOS. Four-momentum for kinematical setting 2 from table ??. The spectrum is domi- based calculation of recoil energy leads to an exact expression nated by the ground state having an experimental width of 1.41 for the energy of the scattered electron [? ]. The idea is to − MeV/c2 FWHM. deﬁne a four-momentum κ = pe + p12C pp, which can be eas- ily obtained by the measured quantities. Using the momentum conservation law one obtains: − (cid:48) p11B = κ pe (2) Taking the square of equation (??) and neglecting electron mass one has: − (cid:48) κ2 m2 E = · 11B (3) calc 2κ ηˆ where the spatial part of the unit vector ηˆ = (1, sinθe, 0, cosθe) points in the direction of the scattered electron. Equation (??) depends on the electron scattering angle θe. Using the sieve collimator the variation of θe can be kept small enough to use equation (??) for the calibration of Figure 7: (colour online) The 11B excitation energy spectrum of the (cid:48) the SOS. 12C(e,e p)11B reaction (Setting 2). The peak centered at 0 MeV/c2 belongs to the ground state and has a width of 1.41 MeV/c2 FWHM. The second peak The scattered electron in the SOS and the knockout proton is the ﬁrst excited state at 2.12 MeV and the third peak is caused by higher in spectrometer A were detected in coincidence between those excited states at 4.45 MeV and 5.02 MeV [? ]. two spectrometers. The trigger in spectrometer A was formed by requiring a signal in both scintillator planes (∆E and ToF), 6 ##LTFigure## ##LTFigure## ##LTFigure## ##LTFigure## ##LTLine## ##LTLine## ##LTLine##

text: ground

text: state,

text: it

text: is

text: certain

text: that

text: the

text: outgoing

text: proton,

text: which

text: is

text: de-

text: Table

text: Central

text: kinematical

text: parameters

text: for

text: the

text: calibration

text: of

text: the

text: SOS:

text: E

text: is

text: the

text: tected

text: in

text: spectrometer

text: A,

text: originates

text: from

text: the

text: level

text: of

text: the

text: nucleus,

text: Fig.

text: bpeSaOmS

text: aennderθgSyO,

text: SpAaraencdenθtAraalrme

text: A,

text: Setting

label: table

text: E

text: pA

text: θ◦A

text: pSOS

text: θS◦OS

text: (MeV)

text: (MeV/c)

text: (MeV/c)

text: but

text: the

text: timing

text: information

text: was

text: deﬁned

text: only

text: by

text: the

text: ToF

text: plane.

text: Coincidence

text: time

text: was

text: corrected

text: for

text: the

text: path

text: length

text: of

text: the

text: parti-

text: Figure

text: On

text: the

text: left:

text: illustration

text: of

text: the

text: quasielastic

text: electron

text: scattering

text: on

text: a

text: cle

text: only

text: in

text: spectrometer

text: A.

text: After

text: this

text: correction,

text: a

text: coincidence

text: nucleus

text: having

text: a

text: mass

text: number

text: A

text: with

text: a

text: proton

text: knockout.

text: On

text: the

text: right:

text: in

text: the

text: peak

text: with

text: a

text: time

text: resolution

text: of

text: ns

text: FWHM

text: was

text: obtained,

text: case

text: of

text: knowing

text: that

text: the

text: remaining

text: is

text: in

text: the

text: ground

text: state

text: ensures

text: that

text: the

text: proton

text: was

text: knocked

text: out

text: of

text: the

text: p-shell.

text: which

text: was

text: suﬃ−cient

text: to≤determin≤e

text: the

text: transfer

text: matrices

text: for

text: the

text: SOS.

text: A

text: cut

text: of

text: ns

text: T

text: ns

text: was

text: used

text: to

text: select

text: true

text: A

text: SOS

text: coincidence

text: events.

text: Therefore,

text: the

text: SOS

text: calibration

text: measurement

text: has

text: been

text: per-

text: The

text: background

text: of

text: minimum

text: ionizing

text: particles

text: was

text: sup-

text: formed

text: using

text: a

text: foil

text: with

text: area

text: density

text: of

text: as

text: tar-

text: pressed

text: by

text: imposing

text: an

text: appropriate

text: cut

text: on

text: the

text: deposited

text: energy

text: get.

text: Table

text: summarizes

text: the

text: kinematical

text: settings

text: used

text: for

text: the

text: in

text: the

text: ∆E

text: scintillator

text: plane.

text: For

text: further

text: reduction

text: of

text: background

text: calibration

text: of

text: the

text: SOS.

text: For

text: setting

text: from

text: table

text: the

text: energy

text: additional

text: cuts

text: were

text: applied

text: on

text: the

text: angular

text: acceptance

text: of

text: spec-

text: transfer

text: is

text: ω

text: MeV,

text: which

text: is

text: in

text: the

text: case

text: of

text: the

text: quasielas-

text: trometer

text: A

text: θ0

text: and

text: φ0

text: tic

text: proton

text: knockout

text: from

text: divided

text: between

text: the

text: separation

text: Using

text: the

text: measured

text: four-momentum

text: of

text: the

text: proton

text: (Ep,

text: energy

text: Esep

text: (mp

text: excitation

text: energy

text: of

text: the

text: and

text: transfer

text: four-momentum

text: deﬁned

text: by

text: the

text: electron

text: arm

text: residual

text: nucleus

text: Ex,

text: kinetic

text: energies

text: of

text: the

text: proton

text: Ep

text: and

text: it

text: is

text: possible

text: to

text: calculate

text: the

text: missing

text: mass

text: of

text: the

text: unobserved

text: the

text: residual

text: nucleus

text: nucleus

text: mmiss

text: its

text: excitation

text: spectrum

text: Ex:

text: ω

text: E

text: E

text: Esep

text: Ex

text: Ep

text: Ex

text: mmiss

text: (ω

text: From

text: equation

text: and

text: the

text: measured

text: proton

text: momentum

text: it

text: is

text: now

text: possible

text: to

text: determine

text: the

text: momentum

text: of

text: the

text: scattered

text: Fig.

text: shows

text: the

text: excitation

text: spectrum

text: of

text: the

text: nucleus

text: electron

text: and

text: perform

text: calibration

text: of

text: the

text: SOS.

text: Four-momentum

text: for

text: kinematical

text: setting

text: from

text: table

text: The

text: spectrum

text: is

text: domi-

text: based

text: calculation

text: of

text: recoil

text: energy

text: leads

text: to

text: an

text: exact

text: expression

text: nated

text: by

text: the

text: ground

text: state

text: having

text: an

text: experimental

text: width

text: of

text: for

text: the

text: energy

text: of

text: the

text: scattered

text: electron

text: The

text: idea

text: is

text: to

text: FWHM.

text: deﬁne

text: a

text: four-momentum

text: κ

text: pe

text: pp,

text: which

text: can

text: be

text: eas-

text: ily

text: obtained

text: by

text: the

text: measured

text: quantities.

text: Using

text: the

text: momentum

text: conservation

text: law

text: one

text: obtains:

text: κ

text: pe

text: Taking

text: the

text: square

text: of

text: equation

text: and

text: neglecting

text: electron

text: mass

text: one

text: has:

text: κ2

text: E

text: calc

text: 2κ

text: ηˆ

text: where

text: the

text: spatial

text: part

text: of

text: the

text: unit

text: vector

text: ηˆ

text: sinθe,

text: cosθe)

text: points

text: in

text: the

text: direction

text: of

text: the

text: scattered

text: electron.

text: Equation

text: depends

text: on

text: the

text: electron

text: scattering

text: angle

text: θe.

text: Using

text: the

text: sieve

text: collimator

text: the

text: variation

text: of

text: θe

text: can

text: be

text: kept

text: small

text: enough

text: to

text: use

text: equation

text: for

text: the

text: calibration

text: of

text: Figure

text: (colour

text: online)

text: The

text: excitation

text: energy

text: spectrum

text: of

text: the

text: the

text: SOS.

text: reaction

text: (Setting

text: The

text: peak

text: centered

text: at

text: belongs

text: to

text: the

text: ground

text: state

text: and

text: has

text: a

text: width

text: of

text: FWHM.

text: The

text: second

text: peak

text: The

text: scattered

text: electron

text: in

text: the

text: SOS

text: and

text: the

text: knockout

text: proton

text: is

text: the

text: ﬁrst

text: excited

text: state

text: at

text: MeV

text: and

text: the

text: third

text: peak

text: is

text: caused

text: by

text: higher

text: in

text: spectrometer

text: A

text: were

text: detected

text: in

text: coincidence

text: between

text: those

text: excited

text: states

text: at

text: MeV

text: and

text: MeV

text: two

text: spectrometers.

text: The

text: trigger

text: in

text: spectrometer

text: A

text: was

text: formed

text: by

text: requiring

text: a

text: signal

text: in

text: both

text: scintillator

text: planes

text: (∆E

text: and

text: ToF),

text: ##LTFigure##

text: ##LTFigure##

text: ##LTFigure##

text: ##LTFigure##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##


text: 700 40 600 35 30 500 25 50 20 400 15 40 10 300 5 0 30 200 5 10 10 0 10 20 30 20 100 m m (MeV/c2) miss n 0 10 10 5 0 5 10 15 20 25 30 35 40 m m (MeV/c2) miss n 0 1.35 1.4 1.45 1.5 1.55 K decay Figure 14: The missing mass distribution of the background subtracted data. The inset shows the radiative tail region of the same missing mass distribution. Figure 13: Distribution of the decay correction factors. The decay correction factor K is calculated for each valid detector system consists of volume type drift chambers and a decay event. The calculation of the pion decay length l is straightfor- 5-layer scintillator telescope. π (cid:48) ward by using equation (??), since the particle momentum p is The SOS has been calibrated using the 12C(e, e p)11B reac- π measured by the spectrometer. The pion path length s is calcu- tion. Angular resolutions at the target were determined to be lated using measured chamber coordinates, reconstructed target σ = 10.6 mrad and σ = 1.3 mrad. The momentum resolu- θ0 φ0 coordinates and the known magnetic ﬁeld of the SOS’s dipole. tion was estimated to be better than 1.3%. A typical distribution of the K can be seen in Fig. ??. The The performance of the SOS to detect pions and measuring decay data in this ﬁgure show an average value of the pion decay cor- their momenta and energies was demonstrated in an electro- rection factor of 1.45. From this we can estimate that 31% of production experiment with pions produced just 5 MeV above pions produced at the target will decay before reaching the last threshold. detector. The SOS is fully operable and can be used in high precision measurements involving low energy pions. 4.2. Missing mass distribution Acknowledgments Using the reconstructed electron and pion four-momenta, the missing mass of an unobserved neutron was calculated for each We would like to thank the MAMI accelerator group for the (cid:113) electron-pion pair: outstanding beam quality. This work was supported in part by the Deutsche Forschungsgemeinschaft with the Collaborative − − − Research Centres 443 and 1044 and by the Croatian Science mmiss = (ω + mp Eπ)2 ((cid:126)q (cid:126)pπ)2 (12) Foundation under project HRZZ 1680. References where mp is the proton mass, ω and (cid:126)q are energy and momen- tum of the virtual photon, E and (cid:126)p are energy and momentum [1] E. Amaldi, S. Fubini, G. Furlan, Pion Electroproduction, Vol. 83 of π π of the pion. Since it is easier to notice possible deviations with Springer Tracts in Modern Physics, Springer, Berlin, 1979. doi:10. respect to zero, the neutron mass m was subtracted from the 1007/BFb0048208. n [2] D. Drechsel, L. Tiator, J. Phys. G 18 (1992) 449. doi:10.1088/ calculated missing mass. 0954-3899/18/3/004. The background subtracted missing mass distribution of the [3] K. I. Blomqvist, et al., Nucl. Instr. and Meth. Phys. Res. A 403 (1998) measured kinematics can be seen in Fig. ??. As expected, the 263. doi:10.1016/S0168-9002(97)01133-9. [4] K.-H. Kaiser, et al., Nucl. Instr. and Meth. Phys. Res. A 593 (2008) 159. distribution shows a peak centered at bin zero, having an ex- doi:10.1016/j.nima.2008.05.018. perimental width of 0.9 MeV/c2 FWHM and a radiative tail on [5] J. Beringer, et al., Phys. Rev. D 86 (2012) 010001. doi:10.1103/ higher masses (see Fig. ?? inset). PhysRevD.86.010001. 5. Summary and conclusion [6] C. P. Browne, W. W. Buechner, Rev. Sci. Inst. 27 (1956) 899. doi:10. 1063/1.1715411. A new magnetic spectrometer – SOS – specialized for detec- [7] C. Schmitt, et al., Nucl. Instr. and Meth. Phys. Res. A 237 (1985) 523. tion of low energy pions has been developed, built and success- doi:10.1016/0168-9002(85)91062-9. [8] D. Baumann, Ph.D. thesis, Johannes Gutenberg Univ. of Mainz (2005). fully operated in electron scattering experiments at MAMI. Its [9] M. Ding, Ph.D. thesis, Johannes Gutenberg Univ. of Mainz (2004). 10 )100.0( / stnevE )2c/VeM 2.0( / stnevE )2c/VeM 2.0( / stnevE ##LTFigure## ##LTFigure## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine##

label: paragraph

font: default

text: m

text: m

text: miss

text: n

text: m

text: m

text: miss

text: n

text: K

text: decay

text: Figure

text: The

text: missing

text: mass

text: distribution

text: of

text: the

text: background

text: subtracted

text: data.

text: The

text: inset

text: shows

text: the

text: radiative

text: tail

text: region

text: of

text: the

text: same

text: missing

text: mass

text: distribution.

text: Figure

text: Distribution

text: of

text: the

text: decay

text: correction

text: factors.

text: The

text: decay

text: correction

text: factor

text: K

text: is

text: calculated

text: for

text: each

text: valid

text: detector

text: system

text: consists

text: of

text: volume

text: type

text: drift

text: chambers

text: and

text: a

text: decay

text: event.

text: The

text: calculation

text: of

text: the

text: pion

text: decay

text: length

text: l

text: is

text: straightfor-

text: scintillator

text: telescope.

text: π

text: ward

text: by

text: using

text: equation

text: since

text: the

text: particle

text: momentum

text: p

text: is

text: The

text: SOS

text: has

text: been

text: calibrated

text: using

text: the

text: e

text: reac-

text: π

text: measured

text: by

text: the

text: spectrometer.

text: The

text: pion

text: path

text: length

text: s

text: is

text: calcu-

text: tion.

text: Angular

text: resolutions

text: at

text: the

text: target

text: were

text: determined

text: to

text: be

text: lated

text: using

text: measured

text: chamber

text: coordinates,

text: reconstructed

text: target

text: σ

text: mrad

text: and

text: σ

text: mrad.

text: The

text: momentum

text: resolu-

text: θ0

text: φ0

text: coordinates

text: and

text: the

text: known

text: magnetic

text: ﬁeld

text: of

text: the

text: SOS’s

text: dipole.

text: tion

text: was

text: estimated

text: to

text: be

text: better

text: than

text: A

text: typical

text: distribution

text: of

text: the

text: K

text: can

text: be

text: seen

text: in

text: Fig.

text: The

text: The

text: performance

text: of

text: the

text: SOS

text: to

text: detect

text: pions

text: and

text: measuring

text: decay

text: data

text: in

text: this

text: ﬁgure

text: show

text: an

text: average

text: value

text: of

text: the

text: pion

text: decay

text: cor-

text: their

text: momenta

text: and

text: energies

text: was

text: demonstrated

text: in

text: an

text: electro-

text: rection

text: factor

text: of

text: From

text: this

text: we

text: can

text: estimate

text: that

text: of

text: production

text: experiment

text: with

text: pions

text: produced

text: just

text: MeV

text: above

text: pions

text: produced

text: at

text: the

text: target

text: will

text: decay

text: before

text: reaching

text: the

text: last

text: threshold.

text: detector.

text: The

text: SOS

text: is

text: fully

text: operable

text: and

text: can

text: be

text: used

text: in

text: high

text: precision

text: measurements

text: involving

text: low

text: energy

text: pions.

text: Missing

text: mass

text: distribution

text: Acknowledgments

text: Using

text: the

text: reconstructed

text: electron

text: and

text: pion

text: four-momenta,

text: the

text: missing

text: mass

text: of

text: an

text: unobserved

text: neutron

text: was

text: calculated

text: for

text: each

text: We

text: would

text: like

text: to

text: thank

text: the

text: MAMI

text: accelerator

text: group

text: for

text: the

text: electron-pion

text: pair:

text: outstanding

text: beam

text: quality.

text: This

text: work

text: was

text: supported

text: in

text: part

text: by

text: the

text: Deutsche

text: Forschungsgemeinschaft

text: with

text: the

text: Collaborative

text: Research

text: Centres

text: and

text: and

text: by

text: the

text: Croatian

text: Science

text: mmiss

text: (ω

text: mp

text: Foundation

text: under

text: project

text: HRZZ

text: References

text: where

text: mp

text: is

text: the

text: proton

text: mass,

text: ω

text: and

text: are

text: energy

text: and

text: momen-

text: tum

text: of

text: the

text: virtual

text: photon,

text: E

text: and

text: are

text: energy

text: and

text: momentum

text: E.

text: Amaldi,

text: S.

text: Fubini,

text: G.

text: Furlan,

text: Pion

text: Electroproduction,

text: Vol.

text: of

text: π

text: π

text: of

text: the

text: pion.

text: Since

text: it

text: is

text: easier

text: to

text: notice

text: possible

text: deviations

text: with

text: Springer

text: Tracts

text: in

text: Modern

text: Physics,

text: Springer,

text: Berlin,

text: respect

text: to

text: zero,

text: the

text: neutron

text: mass

text: m

text: was

text: subtracted

text: from

text: the

text: n

text: D.

text: Drechsel,

text: L.

text: Tiator,

text: J.

text: Phys.

text: G

text: calculated

text: missing

text: mass.

text: The

text: background

text: subtracted

text: missing

text: mass

text: distribution

text: of

text: the

text: K.

text: I.

text: Blomqvist,

text: et

text: al.,

text: Nucl.

text: Instr.

text: and

text: Meth.

text: Phys.

text: Res.

text: A

text: measured

text: kinematics

text: can

text: be

text: seen

text: in

text: Fig.

text: As

text: expected,

text: the

text: K.-H.

text: Kaiser,

text: et

text: al.,

text: Nucl.

text: Instr.

text: and

text: Meth.

text: Phys.

text: Res.

text: A

text: distribution

text: shows

text: a

text: peak

text: centered

text: at

text: bin

text: zero,

text: having

text: an

text: ex-

text: perimental

text: width

text: of

text: FWHM

text: and

text: a

text: radiative

text: tail

text: on

text: J.

text: Beringer,

text: et

text: al.,

text: Phys.

text: Rev.

text: D

text: higher

text: masses

text: (see

text: Fig.

text: inset).

text: Summary

text: and

text: conclusion

text: C.

text: P.

text: Browne,

text: W.

text: W.

text: Buechner,

text: Rev.

text: Sci.

text: Inst.

text: A

text: new

text: magnetic

text: spectrometer

text: SOS

text: specialized

text: for

text: detec-

text: C.

text: Schmitt,

text: et

text: al.,

text: Nucl.

text: Instr.

text: and

text: Meth.

text: Phys.

text: Res.

text: A

text: tion

text: of

text: low

text: energy

text: pions

text: has

text: been

text: developed,

text: built

text: and

text: success-

text: D.

text: Baumann,

text: Ph.D.

text: thesis,

text: Johannes

text: Gutenberg

text: Univ.

text: of

text: Mainz

text: fully

text: operated

text: in

text: electron

text: scattering

text: experiments

text: at

text: MAMI.

text: Its

text: M.

text: Ding,

text: Ph.D.

text: thesis,

text: Johannes

text: Gutenberg

text: Univ.

text: of

text: Mainz

text: stnevE

text: stnevE

text: stnevE

text: ##LTFigure##

text: ##LTFigure##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##


text: 3 constraints we will consider for the leptophilic model, we reproduce the constraints here. We require that this model have a self-annihilation rate in the early Universe which is large enough to reduce the thermal relic population to the observed dark matter density or lower (allowing for the possibility of non-thermal dark matter production). We mix our singlet mediator with the Standard Model Higgs doublet; after this mixing we require the scalar spectrum to contain a 125 GeV Higgs boson which is consistent with LHC results. A. Model Adding one complex scalar which is a singlet under all gauge groups to the minimal Higgs sector of the Standard Model results in an expanded scalar potential in which the doublet Higgs Φ mixes with the singlet ϕ = φ + ia . S S S The most general gauge-invariant potential takes the form: V (Φ, ϕ ) = V + V + V , (1) S 2 3 4 where (cid:18) (cid:19) | | 1 | | − 1 V = m2 Φ 2 + m2 ϕ 2 m2 ϕ2 + h.c. (2) 2 1 2 S1 S 2 S2 S(cid:2) (cid:3) | | | | V = κ Φ 2ϕ + κ ϕ 2ϕ + κ ϕ3 + h.c. (3) 3 1 S 2 S S 3 S | | | | | | | | | | | | V = λ Φ 4 + λ Φ 2 ϕ 2 + λ ϕ 4 + λ Φ 2ϕ2 + λ ϕ4 + λ ϕ 2ϕ2 + h.c. (4) 4 1 2 S 3 S 4 S 5 S 6 S S We will assume the scalar sector is CP-conserving. For real parameters, the mass matrix for the CP-even scalars after electroweak symmetry breaking can be treated as free parameters, trading in the m2, κ, and λ parameters in V . i Note that this model has one CP-odd scalar, which is purely singlet. The CP-odd components of Φ and ϕ do not | | S mix, even after EWSB, since the doublet only enters in the potential through the combination Φ 2. One can easily | | check that Φ 2 contains terms proportional to a2 (where a is the CP-odd component of Φ) but not a , and thus will h h h never mix with the singlet pseudoscalar. The CP-odd degree of freedom a is then eaten by the Z during EWSB, h leaving the pseudoscalar component of ϕ as the only new CP-odd particle. S In general, the two physical CP-even scalars will be related to the gauge eigenstates through a rotation angle θ: h = φ cos θ + φ sin θ (5) S − H = φ sin θ + φ cos θ, (6) S where φ is the CP-even component of the Higgs doublet. We take h to be the 125 GeV Higgs, and m > m . H h The dark matter sector has the Majorana dark matter χ coupling to the fermions through a Yukawa interaction: L ⊇ √y · ∗ √y · √y · ∗ y ϕ χχ + (cid:96) (L Φ )(cid:96)¯ + u (Q Φ)u¯ + d (Q Φ )d¯ + h.c. yuk χ S R R R 2 2 2 (cid:104) (cid:105) ≈ ∼ Our normalization convention is chosen such that Φ 246 GeV and y 1. After electroweak symmetry breaking, t the fermions obtain mass and the scalars rotate into their physical states. As the doublet sector contains only one ﬁeld, the dark matter-Standard Model interaction will be proportional to fermion mass multiplied by the relevant mixing angle. This makes this model automatically minimally ﬂavor violating [50]. The scalar interactions with the gauge bosons similarly get modiﬁed by the relevant mixing angle: L ⊃ gc m − − gs m − − θ Z hZZ + gc m hW+W θ Z HZZ gs m HW+W . (7) gauge c θ W c θ W W W Here s = sin θ and c = cos θ. θ θ Higgs measurements from the LHC have determined that the 125 GeV Higgs is very nearly Standard Model-like in its couplings. This places a constraint on the mixing parameter: cos2 θ > 0.88 at 95% CL [55]. This gives a | | | | range for the combination s c : 0 < s c < 0.32, which appears in the eﬀective couplings between dark-matter θ θ θ θ ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine##

text: constraints

text: we

text: will

text: consider

text: for

text: the

text: leptophilic

text: model,

text: we

text: reproduce

text: the

text: constraints

text: here.

text: We

text: require

text: that

text: this

text: model

text: have

text: a

text: self-annihilation

text: rate

text: in

text: the

text: early

text: Universe

text: which

text: is

text: large

text: enough

text: to

text: reduce

text: the

text: thermal

text: relic

text: population

text: to

text: the

text: observed

text: dark

text: matter

text: density

text: or

text: lower

text: (allowing

text: for

text: the

text: possibility

text: of

text: non-thermal

text: dark

text: matter

text: production).

text: We

text: mix

text: our

text: singlet

text: mediator

text: with

text: the

text: Standard

text: Model

text: Higgs

text: doublet;

text: after

text: this

text: mixing

text: we

text: require

text: the

text: scalar

text: spectrum

text: to

text: contain

text: a

text: GeV

text: Higgs

text: boson

text: which

text: is

text: consistent

text: with

text: LHC

text: results.

text: A.

label: section

text: Model

text: Adding

text: one

text: complex

text: scalar

text: which

text: is

text: a

text: singlet

text: under

text: all

text: gauge

text: groups

text: to

text: the

text: minimal

text: Higgs

text: sector

text: of

text: the

text: Standard

text: Model

text: results

text: in

text: an

text: expanded

text: scalar

text: potential

text: in

text: which

text: the

text: doublet

text: Higgs

text: Φ

text: mixes

text: with

text: the

text: singlet

text: ϕ

text: φ

text: ia

text: S

text: S

text: S

text: The

text: most

text: general

text: gauge-invariant

text: potential

text: takes

text: the

text: form:

text: V

text: (Φ,

text: ϕ

text: V

text: V

text: V

text: S

text: where

text: V

text: Φ

text: ϕ

text: ϕ2

text: h.c.

text: S

text: V

text: κ

text: Φ

text: 2ϕ

text: κ

text: ϕ

text: 2ϕ

text: κ

text: ϕ3

text: h.c.

text: S

text: S

text: S

text: S

text: V

text: λ

text: Φ

text: λ

text: Φ

text: ϕ

text: λ

text: ϕ

text: λ

text: Φ

text: λ

text: ϕ4

text: λ

text: ϕ

text: h.c.

text: S

text: S

text: S

text: S

text: S

text: S

text: We

text: will

text: assume

text: the

text: scalar

text: sector

text: is

text: CP-conserving.

text: For

text: real

text: parameters,

text: the

text: mass

text: matrix

text: for

text: the

text: CP-even

text: scalars

text: after

text: electroweak

text: symmetry

text: breaking

text: can

text: be

text: treated

text: as

text: free

text: parameters,

text: trading

text: in

text: the

text: κ,

text: and

text: λ

text: parameters

text: in

text: V

text: i

text: Note

text: that

text: this

text: model

text: has

text: one

text: CP-odd

text: scalar,

text: which

text: is

text: purely

text: singlet.

text: The

text: CP-odd

text: components

text: of

text: Φ

text: and

text: ϕ

text: do

text: not

text: S

text: mix,

text: even

text: after

text: EWSB,

text: since

text: the

text: doublet

text: only

text: enters

text: in

text: the

text: potential

text: through

text: the

text: combination

text: Φ

text: One

text: can

text: easily

text: check

text: that

text: Φ

text: contains

text: terms

text: proportional

text: to

text: (where

text: a

text: is

text: the

text: CP-odd

text: component

text: of

text: Φ)

text: but

text: not

text: a

text: and

text: thus

text: will

text: h

text: h

text: h

text: never

text: mix

text: with

text: the

text: singlet

text: pseudoscalar.

text: The

text: CP-odd

text: degree

text: of

text: freedom

text: a

text: is

text: then

text: eaten

text: by

text: the

text: Z

text: during

text: EWSB,

text: h

text: leaving

text: the

text: pseudoscalar

text: component

text: of

text: ϕ

text: as

text: the

text: only

text: new

text: CP-odd

text: particle.

text: S

text: In

text: general,

text: the

text: two

text: physical

text: CP-even

text: scalars

text: will

text: be

text: related

text: to

text: the

text: gauge

text: eigenstates

text: through

text: a

text: rotation

text: angle

text: θ:

text: h

text: φ

text: cos

text: θ

text: φ

text: sin

text: θ

text: S

text: H

text: φ

text: sin

text: θ

text: φ

text: cos

text: θ,

text: S

text: where

text: φ

text: is

text: the

text: CP-even

text: component

text: of

text: the

text: Higgs

text: doublet.

text: We

text: take

text: h

text: to

text: be

text: the

text: GeV

text: Higgs,

text: and

text: m

text: m

text: H

text: h

text: The

text: dark

text: matter

text: sector

text: has

text: the

text: Majorana

text: dark

text: matter

text: χ

text: coupling

text: to

text: the

text: fermions

text: through

text: a

text: Yukawa

text: interaction:

text: L

text: √y

text: √y

text: √y

text: y

text: ϕ

text: χχ

text: (L

text: Φ

text: u

text: (Q

text: Φ)u¯

text: d

text: (Q

text: Φ

text: )d¯

text: h.c.

text: yuk

text: χ

text: S

text: R

text: R

text: R

text: Our

text: normalization

text: convention

text: is

text: chosen

text: such

text: that

text: Φ

text: GeV

text: and

text: y

text: After

text: electroweak

text: symmetry

text: breaking,

text: t

text: the

text: fermions

text: obtain

text: mass

text: and

text: the

text: scalars

text: rotate

text: into

text: their

text: physical

text: states.

text: As

text: the

text: doublet

text: sector

text: contains

text: only

text: one

text: ﬁeld,

text: the

text: dark

text: matter-Standard

text: Model

text: interaction

text: will

text: be

text: proportional

text: to

text: fermion

text: mass

text: multiplied

text: by

text: the

text: relevant

text: mixing

text: angle.

text: This

text: makes

text: this

text: model

text: automatically

text: minimally

text: ﬂavor

text: violating

text: The

text: scalar

text: interactions

text: with

text: the

text: gauge

text: bosons

text: similarly

text: get

text: modiﬁed

text: by

text: the

text: relevant

text: mixing

text: angle:

text: L

text: gc

text: m

text: gs

text: m

text: θ

text: Z

text: hZZ

text: gc

text: m

text: hW+W

text: θ

text: Z

text: HZZ

text: gs

text: m

text: HW+W

text: gauge

text: c

text: θ

text: W

text: c

text: θ

text: W

text: W

text: W

text: Here

text: s

text: sin

text: θ

text: and

text: c

text: cos

text: θ.

text: θ

text: θ

text: Higgs

text: measurements

text: from

text: the

text: LHC

text: have

text: determined

text: that

text: the

text: GeV

text: Higgs

text: is

text: very

text: nearly

text: Standard

text: Model-like

text: in

text: its

text: couplings.

text: This

text: places

text: a

text: constraint

text: on

text: the

text: mixing

text: parameter:

text: θ

text: at

text: CL

text: This

text: gives

text: a

text: range

text: for

text: the

text: combination

text: s

text: c

text: s

text: c

text: which

text: appears

text: in

text: the

text: eﬀective

text: couplings

text: between

text: dark-matter

text: θ

text: θ

text: θ

text: θ

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##


text: 8 FIG. 2: Top: All points scanned (grey) and points that give the canonical thermal annihilation cross section (color) − (cid:104) (cid:105) in the m m plane. Center: All points giving canonical σv (grey) and points that also pass indirect detection χ H − constraints (color) in the m m plane. Bottom: All points passing the thermal and direct detection constraints χ H − (grey) and points that also survive direct detection constraints (color) in the m m plane. Colorbar represents χ H the ratio of dark matter thermal annihilation to quarks and leptons. (cid:32) (cid:33) (cid:32) (cid:33) (cid:88) (cid:16) (cid:17) 3/2 2 (cid:104)σv(cid:105)χχ→−φ ff = f 31N6πcmv2χξmφ 2fyχ22(cid:18) 1 − mm2χ2f(cid:19)  (cid:88)4mN2χi1−Nm31(cid:32)2φ1 + 4mN2χi2−Nm32(cid:33)2φ2 + 4mN2χi3−Nm332φ3 (T/mχ) (21) q/(cid:96)   2 (cid:104) (cid:105) 3m4 y2 − m2 1/2 N + N σv → ∗ = V χ 1 V N 1k − 2k (T/m )  (22) χχ V V 2πv2 (s + c )2 (cid:18) m2 3k (cid:19)4m2 (cid:115)m2 χ (cid:88) β β χ k=1,2,3 χ φk  (cid:16) (cid:17)  (cid:114)  (cid:104)σv(cid:105)χχ→−Aff = f 2π NvcξmA2f 2 4mA2χi2−A3m22a1 + 4mA2χi3−A3m32a2 2 m2χ 1 − mm2χ2f + 4m 3m12f− m2f T (23) q/(cid:96) χ m2 χ ≡ ≡ ≡ ≡ − where N is a fermion color factor, ξφ s , ξφ c , ξA t , and ξA t 1, and i = 1, 2 for quarks and leptons c q β (cid:96) β q β (cid:96) β respectively. For each parameter point in the scan, we select y to be the minimum value which will realize a thermal annihilation χ cross section. Larger values of y would of course reduce the dark matter relic abundance below the thermal value, χ ##LTFigure## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine##

text: FIG.

text: Top:

label: caption

text: All

text: points

text: scanned

text: (grey)

text: and

text: points

text: that

text: give

text: the

text: canonical

text: thermal

text: annihilation

text: cross

text: section

text: (color)

text: in

text: the

text: m

text: m

text: plane.

text: Center:

text: All

text: points

text: giving

text: canonical

text: σv

text: (grey)

text: and

text: points

text: that

text: also

text: pass

text: indirect

text: detection

text: χ

text: H

text: constraints

text: (color)

text: in

text: the

text: m

text: m

text: plane.

text: Bottom:

text: All

text: points

text: passing

text: the

text: thermal

text: and

text: direct

text: detection

text: constraints

text: χ

text: H

text: (grey)

text: and

text: points

text: that

text: also

text: survive

text: direct

text: detection

text: constraints

text: (color)

text: in

text: the

text: m

text: m

text: plane.

text: Colorbar

text: represents

text: χ

text: H

text: the

text: ratio

text: of

text: dark

text: matter

text: thermal

text: annihilation

text: to

text: quarks

text: and

text: leptons.

label: equation

text: ff

text: f

text: (T/mχ)

text: N

text: N

text: σv

text: V

text: χ

text: V

text: N

text: (T/m

text: χχ

text: V

text: V

text: (s

text: c

text: χ

text: β

text: β

text: χ

text: χ

text: φk

text: f

text: 2π

text: T

text: χ

text: χ

text: where

text: N

text: is

text: a

text: fermion

text: color

text: factor,

text: ξφ

text: s

text: ξφ

text: c

text: ξA

text: t

text: and

text: ξA

text: t

text: and

text: i

text: for

text: quarks

text: and

text: leptons

text: c

text: q

text: β

text: β

text: q

text: β

text: β

text: respectively.

text: For

text: each

text: parameter

text: point

text: in

text: the

text: scan,

text: we

text: select

text: y

text: to

text: be

text: the

text: minimum

text: value

text: which

text: will

text: realize

text: a

text: thermal

text: annihilation

text: χ

text: cross

text: section.

text: Larger

text: values

text: of

text: y

text: would

text: of

text: course

text: reduce

text: the

text: dark

text: matter

text: relic

text: abundance

text: below

text: the

text: thermal

text: value,

text: χ

text: ##LTFigure##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##


text: Solving Distributed Constraint Optimization Problems Using Logic Programming 23 V != #inf , 0 table max a (V , X , X ), 3 1 1 2 U = V + V . 0 1 ← table max a (U, X ) value(x , X ), 2 1 1 1 table row a ( , X ) 2 1 { } U = #max V : table row a (V, X ) . 2 1 ← table info(a , a , x , 0, 1) 2 1 1 The relationship between the ASP-based computation and Algorithm 1 is established in the following lemma. Lemma 2 M ∈ A Let us consider a DCOP , an agent a , and a pseudo-tree T. Let a be an agent with Cusia=ssu{mace1t,h.a.t.a, acils}thaendpaMreancttobfeat,hseeeipnc=od{exd U,T. .I.Lxaaict}f,oarn1d R≤ t =≤ {l.ifFu,r.th.(cid:83).e,rmf o(cid:48)r}e,alnedt scp(f ) = {x p, . . . , x } for 1i≤ j ≤i k(cid:48). Tsh1en, thespkrogram Πai ∪ I r1∪ ( ∈rk M ) rj rj1 rjw ai ai a Ci a has a unique answer set A and • ∈ table row a (u, v , . . . , v ) A iff there exists a value combination X for vari- i s1 sk { able}s⊆in scp(JOI(cid:54) N−aPii∞) such that JOINaPii(X) = u where xs1 = vs1, . . . , xsk = v X and u = ; and • sk ∈ table(cid:54) m−a∞x ai(u, vs1, . . . , vsk) A iff UTILPaii(xs1 = vs1, . . . , xsk = vsk) = u and u = . (cid:83) Proof ∪ ∪ Since I is safe and Π I ( ∈ M ) is a positive program, it has a unique answer ai ai ai a Ci a set. ∈ By the deﬁnition of answer set, table row a (u, v , . . . , v ) A iff that there exists i s1 sk a rule r of the form (51) such that table row a (u, v , . . . , v ) is the head of r. It i s1 sk means that there exists a value assignment Y for the variables occurring in r such that the following conditions hold: • { } ⊆ x = v , . . . , x = v Y ; • s1 s1≤ ≤sk (cid:48) sk (cid:54) for each 1 j k , there exists v = #inf such that f (v , . . . , v ) = v and { } ⊆ rj rj rj1 rjw rj x = v , . . . , x = v Y ; and • rj1 rj≤1 ≤ rjw rjw ∈ for e{ach 1 t l, there exists uct s}uch⊆that table max act(uct, vct1, . . . , vctz ) A and x = v , . . . , x = v Y . By the construction of the algorithm, ct1 ct1 ctz ∈ctz tvabl)e=muax aanctd(uuct,(cid:54)=vct−1,∞. ... , vctz ) A implies that UTILaaict(xct1 = vct1, . . . , xctz = ctz ct ct The conclusion of the ﬁrst item follows directly from the deﬁnitions of the UTIL message ⊕ and the operator (Deﬁnitions 3-4) and the above conditions. The second item of the lemma follows from the ﬁrst item, the condition · · · Vr1 != #inf , , Vrk(cid:48) != #inf in the rule (51), and Deﬁnition 5. ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine## ##LTLine##

text: Solving

label: title

text: Distributed

text: Constraint

text: Optimization

text: Problems

text: Using

text: Logic

text: Programming

text: V

text: #inf

text: table

font: YUVOGJ+NimbusMonL-Regu

text: max

text: a

text: (V

text: X

text: X

text: U

text: V

text: V

text: table

text: max

text: a

text: (U,

text: X

text: value(x

text: X

text: table

text: row

text: a

text: X

text: U

text: #max

text: V

text: table

text: row

text: a

text: (V,

text: X

text: table

text: info(a

text: a

text: x

text: The

text: relationship

text: between

text: the

text: ASP-based

text: computation

text: and

text: Algorithm

text: is

text: established

text: in

text: the

text: following

text: lemma.

text: Lemma

text: M

text: A

text: Let

text: us

text: consider

text: a

text: DCOP

text: an

text: agent

text: a

text: and

text: a

text: pseudo-tree

text: T.

text: Let

text: a

text: be

text: an

text: agent

text: with

text: U,T.

text: R≤

text: t

text: scp(f

text: {x

text: p,

text: x

text: for

text: j

text: ≤i

text: thespkrogram

text: Πai

text: I

text: ∈rk

text: M

text: rj

text: rjw

text: ai

text: ai

text: a

text: Ci

text: a

text: has

text: a

text: unique

text: answer

text: set

text: A

text: and

text: table

text: row

text: a

text: (u,

text: v

text: v

text: A

text: iff

text: there

text: exists

text: a

text: value

text: combination

text: X

text: for

text: vari-

text: i

text: sk

text: able}s⊆in

text: N−aPii∞)

text: such

text: that

text: JOINaPii(X)

text: u

text: where

text: xsk

text: v

text: X

text: and

text: u

text: and

text: sk

text: m−a∞x

text: ai(u,

text: vsk)

text: A

text: iff

text: xsk

text: vsk)

text: u

text: and

text: u

text: Proof

text: Since

text: I

text: is

text: safe

text: and

text: Π

text: I

text: M

text: is

text: a

text: positive

text: program,

text: it

text: has

text: a

text: unique

text: answer

text: ai

text: ai

text: ai

text: a

text: Ci

text: a

text: set.

text: By

text: the

text: deﬁnition

text: of

text: answer

text: set,

text: table

text: row

text: a

text: (u,

text: v

text: v

text: A

text: iff

text: that

text: there

text: exists

text: i

text: sk

text: a

text: rule

text: r

text: of

text: the

text: form

text: such

text: that

text: table

text: row

text: a

text: (u,

text: v

text: v

text: is

text: the

text: head

text: of

text: r.

text: It

text: i

text: sk

text: means

text: that

text: there

text: exists

text: a

text: value

text: assignment

text: Y

text: for

text: the

text: variables

text: occurring

text: in

text: r

text: such

text: that

text: the

text: following

text: conditions

text: hold:

text: x

text: v

text: x

text: v

text: Y

text: ≤sk

text: sk

text: for

text: each

text: j

text: k

text: there

text: exists

text: v

text: #inf

text: such

text: that

text: f

text: (v

text: v

text: v

text: and

text: rj

text: rj

text: rjw

text: rj

text: x

text: v

text: x

text: v

text: Y

text: and

text: rjw

text: rjw

text: for

text: e{ach

text: t

text: l,

text: there

text: exists

text: uct

text: s}uch⊆that

text: table

text: max

text: act(uct,

text: vctz

text: A

text: and

text: x

text: v

text: x

text: v

text: Y

text: By

text: the

text: construction

text: of

text: the

text: algorithm,

text: ctz

text: ∈ctz

text: tvabl)e=muax

text: vctz

text: A

text: implies

text: that

text: xctz

text: ctz

text: ct

text: ct

text: The

text: conclusion

text: of

text: the

text: ﬁrst

text: item

text: follows

text: directly

text: from

text: the

text: deﬁnitions

text: of

text: the

text: UTIL

text: message

text: and

text: the

text: operator

text: (Deﬁnitions

text: and

text: the

text: above

text: conditions.

text: The

text: second

text: item

text: of

text: the

text: lemma

text: follows

text: from

text: the

text: ﬁrst

text: item,

text: the

text: condition

text: #inf

text: #inf

text: in

text: the

text: rule

text: and

text: Deﬁnition

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##


text: Solving Distributed Constraint Optimization Problems Using Logic Programming 31 5.2 Background on H-DPOP In H-DPOP (Kumar et al. 2008), the authors consider how to leverage the hard con- straints that may exist in the problem in a dynamic programming framework, so that only feasible partial assignments are computed, transmitted, and stored (Kumar et al. 2008). To this end, they encode combinations of assignments using Constrained Decision Diagrams (CDDs). Basically, CDDs eliminate all inconsistent assignments and only include utilities corresponding to value combinations that are consistent. The resulting algorithm, H-DPOP, a hybrid algorithm that is based on DPOP, uses CDDs to rule out infeasible assignments, and thus compactly represents UTIL messages. G (cid:104) (cid:105) A CDD = Γ, G encodes the consistent assignments for a set of constraints Γ in a rooted direct acyclic graph G = (V, E) by means of constraint propagation. A node in G is called a CDD node. The terminal nodes are either true or false implying consistent or inconsistent assignment, respectively. By default, a CDD represents consistent assignments omitting the false terminal. The H-DPOP algorithm leverages the pruning power of hard constraints by using CDDs to effectively reduce the message size. As in DPOP, H-DPOP has three phases: the pseudo- tree construction, the bottom-up UTIL propagation, and top-down VALUE propagation. The pseudo-tree construction and VALUE propagation phases are identical to ones of DPOP. In the UTIL propagation phase, the UTIL message, instead of being a multidi- mensional matrix, is a CDDMessage. Deﬁnition 6 (cid:104) G(cid:105) A CDDMessage Mj sent by an agent a to agent a is a tuple (cid:126)u, where (cid:126)u is a vector G i i j G of utilities, and is a CDD deﬁned over variables in sep . The set of constraints for is { | ⊆ } i Γ = f scp(f ) sep . j j i In the UTIL propagation phase, H-DPOP deﬁnes different JOIN and PROJECTION oper- ations. Observe that, based on Deﬁnition 6, an H-DPOP agent a can access a constraint i whose scope is a subset of its separator, but that is not owned by a itself. For example, i considering the DCOP in Example 1, in H-DPOP, the UTIL message sent from the agent a to the agent a will have information about the constraint x1 cons x that is not owned 3 2 { } ⊆ 2 by the agent a since scp(x1 cons x ) = x , x sep . This might be undesirable in 3 2 1 2 3 situations where distribution of the computation is tied to privacy of information. 5.3 Background on ODPOP ODPOP (Petcu and Faltings 2006) is an optimization algorithm for DCOP, which com- bines some advantages of both search-based algorithms and dynamic-programming-based algorithms. ODPOP always uses linear size messages, which is similar to search, and typ- ically generates as few messages as DPOP. It does not always incur the worst complex- ity which is the same with the complexity of DPOP, and on average it saves a signiﬁ- cant amount of computation and information exchange. This is achieved because agents in ODPOP use a best-ﬁrst order for value exploration and an optimality criterion that al- lows them to prove optimality without exploring all value assignments for variables in their separator. ODPOP also has 3 phases as DPOP: Phase 1 (DFS traversal) is the same with Phase 1 in DPOP to construct a pseudo-tree. ##LTLine## ##LTLine## ##LTLine## ##LTLine##

text: Solving

text: Distributed

text: Constraint

text: Optimization

text: Problems

text: Using

text: Logic

text: Programming

text: Background

text: on

text: H-DPOP

text: In

text: H-DPOP

text: (Kumar

text: et

text: al.

text: the

text: authors

text: consider

text: how

text: to

text: leverage

text: the

text: hard

text: con-

text: straints

text: that

text: may

text: exist

text: in

text: the

text: problem

text: in

text: a

text: dynamic

text: programming

text: framework,

text: so

text: that

text: only

text: feasible

text: partial

text: assignments

text: are

text: computed,

text: transmitted,

text: and

text: stored

text: (Kumar

text: et

text: al.

text: To

text: this

text: end,

text: they

text: encode

text: combinations

text: of

text: assignments

text: using

text: Constrained

text: Decision

text: Diagrams

text: (CDDs).

text: Basically,

text: CDDs

text: eliminate

text: all

text: inconsistent

text: assignments

text: and

text: only

text: include

text: utilities

text: corresponding

text: to

text: value

text: combinations

text: that

text: are

text: consistent.

text: The

text: resulting

text: algorithm,

text: H-DPOP,

text: a

text: hybrid

text: algorithm

text: that

text: is

text: based

text: on

text: DPOP,

text: uses

text: CDDs

text: to

text: rule

text: out

text: infeasible

text: assignments,

text: and

text: thus

text: compactly

text: represents

text: UTIL

text: messages.

text: G

text: A

text: CDD

text: Γ,

text: G

text: encodes

text: the

text: consistent

text: assignments

text: for

text: a

text: set

text: of

text: constraints

text: Γ

text: in

text: a

text: rooted

text: direct

text: acyclic

text: graph

text: G

text: (V,

text: E)

text: by

text: means

text: of

text: constraint

text: propagation.

text: A

text: node

text: in

text: G

text: is

text: called

text: a

text: CDD

text: node.

text: The

text: terminal

text: nodes

text: are

text: either

text: true

text: or

text: false

text: implying

text: consistent

text: or

text: inconsistent

text: assignment,

text: respectively.

text: By

text: default,

text: a

text: CDD

text: represents

text: consistent

text: assignments

text: omitting

text: the

text: false

text: terminal.

text: The

text: H-DPOP

text: algorithm

text: leverages

text: the

text: pruning

text: power

text: of

text: hard

text: constraints

text: by

text: using

text: CDDs

text: to

text: effectively

text: reduce

text: the

text: message

text: size.

text: As

text: in

text: DPOP,

text: H-DPOP

text: has

text: three

text: phases:

text: the

text: pseudo-

text: tree

text: construction,

text: the

text: bottom-up

text: UTIL

text: propagation,

text: and

text: top-down

text: VALUE

text: propagation.

text: The

text: pseudo-tree

text: construction

text: and

text: VALUE

text: propagation

text: phases

text: are

text: identical

text: to

text: ones

text: of

text: DPOP.

text: In

text: the

text: UTIL

text: propagation

text: phase,

text: the

text: UTIL

text: message,

text: instead

text: of

text: being

text: a

text: multidi-

text: mensional

text: matrix,

text: is

text: a

text: CDDMessage.

text: Deﬁnition

text: A

text: CDDMessage

text: Mj

text: sent

text: by

text: an

text: agent

text: a

text: to

text: agent

text: a

text: is

text: a

text: tuple

text: where

text: is

text: a

text: vector

text: G

text: i

text: i

text: j

text: G

text: of

text: utilities,

text: and

text: is

text: a

text: CDD

text: deﬁned

text: over

text: variables

text: in

text: sep

text: The

text: set

text: of

text: constraints

text: for

text: is

text: i

text: Γ

text: f

text: scp(f

text: sep

text: j

text: j

text: i

text: In

text: the

text: UTIL

text: propagation

text: phase,

text: H-DPOP

text: deﬁnes

text: different

text: JOIN

text: and

text: PROJECTION

text: oper-

text: ations.

text: Observe

text: that,

text: based

text: on

text: Deﬁnition

text: an

text: H-DPOP

text: agent

text: a

text: can

text: access

text: a

text: constraint

text: i

text: whose

text: scope

text: is

text: a

text: subset

text: of

text: its

text: separator,

text: but

text: that

text: is

text: not

text: owned

text: by

text: a

text: itself.

text: For

text: example,

text: i

text: considering

text: the

text: DCOP

text: in

text: Example

text: in

text: H-DPOP,

text: the

text: UTIL

text: message

text: sent

text: from

text: the

text: agent

text: a

text: to

text: the

text: agent

text: a

text: will

text: have

text: information

text: about

text: the

text: constraint

text: cons

text: x

text: that

text: is

text: not

text: owned

text: by

text: the

text: agent

text: a

text: since

text: cons

text: x

text: x

text: x

text: sep

text: This

text: might

text: be

text: undesirable

text: in

text: situations

text: where

text: distribution

text: of

text: the

text: computation

text: is

text: tied

text: to

text: privacy

text: of

text: information.

text: Background

text: on

text: ODPOP

text: ODPOP

text: (Petcu

text: and

text: Faltings

text: is

text: an

text: optimization

text: algorithm

text: for

text: DCOP,

text: which

text: com-

text: bines

text: some

text: advantages

text: of

text: both

text: search-based

text: algorithms

text: and

text: dynamic-programming-based

text: algorithms.

text: ODPOP

text: always

text: uses

text: linear

text: size

text: messages,

text: which

text: is

text: similar

text: to

text: search,

text: and

text: typ-

text: ically

text: generates

text: as

text: few

text: messages

text: as

text: DPOP.

text: It

text: does

text: not

text: always

text: incur

text: the

text: worst

text: complex-

text: ity

text: which

text: is

text: the

text: same

text: with

text: the

text: complexity

text: of

text: DPOP,

text: and

text: on

text: average

text: it

text: saves

text: a

text: signiﬁ-

text: cant

text: amount

text: of

text: computation

text: and

text: information

text: exchange.

text: This

text: is

text: achieved

text: because

text: agents

text: in

text: ODPOP

text: use

text: a

text: best-ﬁrst

text: order

text: for

text: value

text: exploration

text: and

text: an

text: optimality

text: criterion

text: that

text: al-

text: lows

text: them

text: to

text: prove

text: optimality

text: without

text: exploring

text: all

text: value

text: assignments

text: for

text: variables

text: in

text: their

text: separator.

text: ODPOP

text: also

text: has

text: phases

text: as

text: DPOP:

text: Phase

text: (DFS

text: traversal)

text: is

text: the

text: same

text: with

text: Phase

text: in

text: DPOP

text: to

text: construct

text: a

text: pseudo-tree.

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##

text: ##LTLine##


text: 32 Tiep Le, Tran Cao Son, Enrico Pontelli, and William Yeoh Phase 2 (ASK/GOOD) is an iterative, bottom-up utility propagation process where each agent repeatedly sends ASK messages to its child agents, asking for valuations (GOODs), until it is able to compute the suggested optimal value assignment (GOOD) for variables in its separator. It then sends that GOOD, together with the respective utility that is obtained in the subtree rooted at this agent, as a GOOD message to its parent agent. This phase ﬁnishes when the root received enough GOODs to determine the optimal value assignment for its variables. In more detail, in Phase 2, any child agent delivers to its parent agent a sequence of GOOD messages, each of which explores a different value assignment for variables in its separator, together with the corresponding utility. In addition, ODPOP uses a method to propagate GOODs so that every agent always reports its GOODs in oder of non-increasing utility, provided that all of their child agents also follow this order. We can see that, DPOP agents receives all GOODs that are grouped in single messages (i.e., UTIL messages). In contrast, ODPOP agents send GOODs on demand (i.e., when it receives an ASK message) individually and asynchronously as long as GOODs have non-increasing utilities. As a consequence, each ODPOP agent a can determine when it has received enough i GOODs from its child agents in order to be able to determine a GOOD to send to its parent agent P . At that time, a will not send ASK message any more since any additional i i received GOODs will not affect the GOOD that was determined. If a later receives more i ASK message from P for having next GOOD, a will continue to request more GOODs i i from its child agents until it can determine the next GOOD to report to P . i Since GOODs are always reported in order of non-increasing utility, the ﬁrst GOOD that is generated at the root agent is the optimal value assignment for its variable. As a consequence, the root agent will be able to generate this solution without having to consider all value assignments for its variables. Phase 3 (VALUE propagation) is similar to Phase 3 in DPOP. The root agent initiates the top-down VALUE propagation by sending a VALUE message to its child agents, inform- ing them about its optimal value assignment for its variables. Subsequently, each agent a (cid:48), i upon receiving a VALUE message, will determine its optimal value assignment for its vari- ables based on the computation (in Phase 2) of the ﬁrst GOOD message generated whose associated value assignment is consistent with the one in the received VALUE message. 5.4 Discussion on FRODO Platform In our experiment, we will compare the performance of ASP-DPOP against DPOP, AFB, and ODPOP; in particular, we use the implementation of the latter three systems that is pub- licly available in the FRODO platform (Le´aute´ et al. 2009). It is important to observe that, at the implementation level, all DCOP solvers that are implemented within FRODO fol- low the simplifying assumption that each agent owns exactly one variable. This assumption is common practice in the DCOP literature (Modi et al. 2005; Petcu and Faltings 2005a; Gershman et al. 2009; Ottens et al. 2012). However, agents in DCOP problems used in our experiments own multiple variables. We will discuss in this subsection the pre-processing technique (i.e., decomposition, also known as virtual agents) that FRODO uses to trans- form a general DCOP with multiple variables per agent into a new DCOP with one variable per agent. FRODO creates a virtual agent for each variable in a DCOP. A distinct variable is as-

text: Tiep

text: Le,

text: Tran

text: Cao

text: Son,

text: Enrico

text: Pontelli,

text: and

text: William

text: Yeoh

text: Phase

text: (ASK/GOOD)

text: is

text: an

text: iterative,

text: bottom-up

text: utility

text: propagation

text: process

text: where

text: each

text: agent

text: repeatedly

text: sends

text: ASK

text: messages

text: to

text: its

text: child

text: agents,

text: asking

text: for

text: valuations

text: (GOODs),

text: until

text: it

text: is

text: able

text: to

text: compute

text: the

text: suggested

text: optimal

text: value

text: assignment

text: (GOOD)

text: for

text: variables

text: in

text: its

text: separator.

text: It

text: then

text: sends

text: that

text: GOOD,

text: together

text: with

text: the

text: respective

text: utility

text: that

text: is

text: obtained

text: in

text: the

text: subtree

text: rooted

text: at

text: this

text: agent,

text: as

text: a

text: GOOD

text: message

text: to

text: its

text: parent

text: agent.

text: This

text: phase

text: ﬁnishes

text: when

text: the

text: root

text: received

text: enough

text: GOODs

text: to

text: determine

text: the

text: optimal

text: value

text: assignment

text: for

text: its

text: variables.

text: In

text: more

text: detail,

text: in

text: Phase

text: any

text: child

text: agent

text: delivers

text: to

text: its

text: parent

text: agent

text: a

text: sequence

text: of

text: GOOD

text: messages,

text: each

text: of

text: which

text: explores

text: a

text: different

text: value

text: assignment

text: for

text: variables

text: in

text: its

text: separator,

text: together

text: with

text: the

text: corresponding

text: utility.

text: In

text: addition,

text: ODPOP

text: uses

text: a

text: method

text: to

text: propagate

text: GOODs

text: so

text: that

text: every

text: agent

text: always

text: reports

text: its

text: GOODs

text: in

text: oder

text: of

text: non-increasing

text: utility,

text: provided

text: that

text: all

text: of

text: their

text: child

text: agents

text: also

text: follow

text: this

text: order.

text: We

text: can

text: see

text: that,

text: DPOP

text: agents

text: receives

text: all

text: GOODs

text: that

text: are

text: grouped

text: in

text: single

text: messages

text: (i.e.,

text: UTIL

text: messages).

text: In

text: contrast,

text: ODPOP

text: agents

text: send

text: GOODs

text: on

text: demand

text: (i.e.,

text: when

text: it

text: receives

text: an

text: ASK

text: message)

text: individually

text: and

text: asynchronously

text: as

text: long

text: as

text: GOODs

text: have

text: non-increasing

text: utilities.

text: As

text: a

text: consequence,

text: each

text: ODPOP

text: agent

text: a

text: can

text: determine

text: when

text: it

text: has

text: received

text: enough

text: i

text: GOODs

text: from

text: its

text: child

text: agents

text: in

text: order

text: to

text: be

text: able

text: to

text: determine

text: a

text: GOOD

text: to

text: send

text: to

text: its

text: parent

text: agent

text: P

text: At

text: that

text: time,

text: a

text: will

text: not

text: send

text: ASK

text: message

text: any

text: more

text: since

text: any

text: additional

text: i

text: i

text: received

text: GOODs

text: will

text: not

text: affect

text: the

text: GOOD

text: that

text: was

text: determined.

text: If

text: a

text: later

text: receives

text: more

text: i

text: ASK

text: message

text: from

text: P

text: for

text: having

text: next

text: GOOD,

text: a

text: will

text: continue

text: to

text: request

text: more

text: GOODs

text: i

text: i

text: from

text: its

text: child

text: agents

text: until

text: it

text: can

text: determine

text: the

text: next

text: GOOD

text: to

text: report

text: to

text: P

text: i

text: Since

text: GOODs

text: are

text: always

text: reported

text: in

text: order

text: of

text: non-increasing

text: utility,

text: the

text: ﬁrst

text: GOOD

text: that

text: is

text: generated

text: at

text: the

text: root

text: agent

text: is

text: the

text: optimal

text: value

text: assignment

text: for

text: its

text: variable.

text: As

text: a

text: consequence,

text: the

text: root

text: agent

text: will

text: be

text: able

text: to

text: generate

text: this

text: solution

text: without

text: having

text: to

text: consider

text: all

text: value

text: assignments

text: for

text: its

text: variables.

text: Phase

text: (VALUE

text: propagation)

text: is

text: similar

text: to

text: Phase

text: in

text: DPOP.

text: The

text: root

text: agent

text: initiates

text: the

text: top-down

text: VALUE

text: propagation

text: by

text: sending

text: a

text: VALUE

text: message

text: to

text: its

text: child

text: agents,

text: inform-

text: ing

text: them

text: about

text: its

text: optimal

text: value

text: assignment

text: for

text: its

text: variables.

text: Subsequently,

text: each

text: agent

text: a

text: i

text: upon

text: receiving

text: a

text: VALUE

text: message,

text: will

text: determine

text: its

text: optimal

text: value

text: assignment

text: for

text: its

text: vari-

text: ables

text: based

text: on

text: the

text: computation

text: (in

text: Phase

text: of

text: the

text: ﬁrst

text: GOOD

text: message

text: generated

text: whose

text: associated

text: value

text: assignment

text: is

text: consistent

text: with

text: the

text: one

text: in

text: the

text: received

text: VALUE

text: message.

text: Discussion

text: on

text: FRODO

text: Platform

text: In

text: our

text: experiment,

text: we

text: will

text: compare

text: the

text: performance

text: of

text: ASP-DPOP

text: against

text: DPOP,

text: AFB,

text: and

text: ODPOP;

text: in

text: particular,

text: we

text: use

text: the

text: implementation

text: of

text: the

text: latter

text: three

text: systems

text: that

text: is

text: pub-

text: licly

text: available

text: in

text: the

text: FRODO

text: platform

text: (Le´aute´

text: et

text: al.

text: It

text: is

text: important

text: to

text: observe

text: that,

text: at

text: the

text: implementation

text: level,

text: all

text: DCOP

text: solvers

text: that

text: are

text: implemented

text: within

text: FRODO

text: fol-

text: low

text: the

text: simplifying

text: assumption

text: that

text: each

text: agent

text: owns

text: exactly

text: one

text: variable.

text: This

text: assumption

text: is

text: common

text: practice

text: in

text: the

text: DCOP

text: literature

text: (Modi

text: et

text: al.

text: Petcu

text: and

text: Faltings

text: Gershman

text: et

text: al.

text: Ottens

text: et

text: al.

text: However,

text: agents

text: in

text: DCOP

text: problems

text: used

text: in

text: our

text: experiments

text: own

text: multiple

text: variables.

text: We

text: will

text: discuss

text: in

text: this

text: subsection

text: the

text: pre-processing

text: technique

text: (i.e.,

text: decomposition,

text: also

text: known

text: as

text: virtual

text: agents)

text: that

text: FRODO

text: uses

text: to

text: trans-

text: form

text: a

text: general

text: DCOP

text: with

text: multiple

text: variables

text: per

text: agent

text: into

text: a

text: new

text: DCOP

text: with

text: one

text: variable

text: per

text: agent.

text: FRODO

text: creates

text: a

text: virtual

text: agent

text: for

text: each

text: variable

text: in

text: a

text: DCOP.

text: A

text: distinct

text: variable

text: is

text: as-


text: Solving Distributed Constraint Optimization Problems Using Logic Programming 33 signed to each virtual agent, so that this formulation satisﬁes the simplifying assumption. (cid:48) (cid:48) We say that a virtual agent a belongs to a real agent a in DCOP if the virtual agent a i i i owns a variable that is owned by the real agent a . In FRODO, the solving algorithm is i executed on each virtual agent, while intra-agent messages (i.e., messages are passed be- tween virtual agents that belong to the same real agent) are only simulated and discounted in the calculation of computation cost (e.g., number of messages and messages’ size). (cid:48) Let M be a DCOP with multiple variables per agent, and M be a new DCOP with one variable per agent that is constructed from M. Let us assume that we apply DPOP (cid:48) to solve both M and M , using the same heuristics to construct the pseudo-trees. We can (cid:48) observe that each node in the pseudo-tree used to solve M represents a virtual agent, while each node in a pseudo-tree of ASP-DPOP represents a real agent. It is possible to see that, the number of inter-agent messages (i.e., messages that are passed between (cid:48) virtual agents that belong to different real agents) produced in solving M may be greater than the number of UTIL messages produced in solving M, depending on their respective pseudo-trees. Therefore, to minimize the total number of inter-agent messages, FRODO constructs pseudo-trees where virtual agents that belong to the same real agent stay as close as possible to each other. It is important to summarize that, to handle a general DCOP with multiple variables per agent, FRODO ﬁrst transforms it into a new DCOP with one variable per agent (introducing virtual agents), and then executes the resolution algorithms on each agent of the new DCOP. To the best of our knowledge, there is not any formal discussion about the relationship between pseudo-trees whose nodes represent real agents and pseudo-trees whose nodes (cid:48) represent virtual agents. However, it is believed that given a pseudo-tree T whose nodes represent virtual agents, there always exists a pseudo-tree T whose nodes represent real (cid:48) agents such that T is compatible with T . Intuitively, by compatible we mean that it is (cid:48) possible to construct T from T as follows: • (cid:48) (cid:48) If the root of T is a node representing the virtual agent a that belongs to a real agent i a , the root of T is the node representing a ; and • i i If there is at least one tree edge (resp. back edge) connecting two nodes that represent (cid:48) (cid:48) (cid:48) virtual agents a and a in T , there is a tree edge (resp. back edge) connecting the i1 i2 (cid:48) (cid:48) two nodes that represent real agents a and a in T such that a and a belong to i1 i2 i1 i2 a and a respectively. i1 i2 It is worth to notice that, in our experiments, we ensure that all algorithms use the same heuristics to construct their pseudo-trees. We also observe that all pseudo-trees that are constructed using ASP-DPOP are compatible with the corresponding pseudo-trees that are constructed using FRODO. 5.5 Experimental Results We implement two versions of the ASP-DPOP algorithm—one that uses ground pro- grams, which we call “ASP-DPOP (facts),” and one that uses non-ground programs, which we call “ASP-DPOP (rules).” In addition, as the observation made about H-DPOP in Sec- tion 7, we also implemented a variant of H-DPOP, called PH-DPOP, which stands for Privacy-based H-DPOP, that restricts the amount of information that each agent can ac- cess to the amount common in most DCOP algorithms, including DPOP and ASP-DPOP.

text: Solving

text: Distributed

text: Constraint

text: Optimization

text: Problems

text: Using

text: Logic

text: Programming

text: signed

text: to

text: each

text: virtual

text: agent,

text: so

text: that

text: this

text: formulation

text: satisﬁes

text: the

text: simplifying

text: assumption.

text: We

text: say

text: that

text: a

text: virtual

text: agent

text: a

text: belongs

text: to

text: a

text: real

text: agent

text: a

text: in

text: DCOP

text: if

text: the

text: virtual

text: agent

text: a

text: i

text: i

text: i

text: owns

text: a

text: variable

text: that

text: is

text: owned

text: by

text: the

text: real

text: agent

text: a

text: In

text: FRODO,

text: the

text: solving

text: algorithm

text: is

text: i

text: executed

text: on

text: each

text: virtual

text: agent,

text: while

text: intra-agent

text: messages

text: (i.e.,

text: messages

text: are

text: passed

text: be-

text: tween

text: virtual

text: agents

text: that

text: belong

text: to

text: the

text: same

text: real

text: agent)

text: are

text: only

text: simulated

text: and

text: discounted

text: in

text: the

text: calculation

text: of

text: computation

text: cost

text: (e.g.,

text: number

text: of

text: messages

text: and

text: messages’

text: size).

text: Let

text: M

text: be

text: a

text: DCOP

text: with

text: multiple

text: variables

text: per

text: agent,

text: and

text: M

text: be

text: a

text: new

text: DCOP

text: with

text: one

text: variable

text: per

text: agent

text: that

text: is

text: constructed

text: from

text: M.

text: Let

text: us

text: assume

text: that

text: we

text: apply

text: DPOP

text: to

text: solve

text: both

text: M

text: and

text: M

text: using

text: the

text: same

text: heuristics

text: to

text: construct

text: the

text: pseudo-trees.

text: We

text: can

text: observe

text: that

text: each

text: node

text: in

text: the

text: pseudo-tree

text: used

text: to

text: solve

text: M

text: represents

text: a

text: virtual

text: agent,

text: while

text: each

text: node

text: in

text: a

text: pseudo-tree

text: of

text: ASP-DPOP

text: represents

text: a

text: real

text: agent.

text: It

text: is

text: possible

text: to

text: see

text: that,

text: the

text: number

text: of

text: inter-agent

text: messages

text: (i.e.,

text: messages

text: that

text: are

text: passed

text: between

text: virtual

text: agents

text: that

text: belong

text: to

text: different

text: real

text: agents)

text: produced

text: in

text: solving

text: M

text: may

text: be

text: greater

text: than

text: the

text: number

text: of

text: UTIL

text: messages

text: produced

text: in

text: solving

text: M,

text: depending

text: on

text: their

text: respective

text: pseudo-trees.

text: Therefore,

text: to

text: minimize

text: the

text: total

text: number

text: of

text: inter-agent

text: messages,

text: FRODO

text: constructs

text: pseudo-trees

text: where

text: virtual

text: agents

text: that

text: belong

text: to

text: the

text: same

text: real

text: agent

text: stay

text: as

text: close

text: as

text: possible

text: to

text: each

text: other.

text: It

text: is

text: important

text: to

text: summarize

text: that,

text: to

text: handle

text: a

text: general

text: DCOP

text: with

text: multiple

text: variables

text: per

text: agent,

text: FRODO

text: ﬁrst

text: transforms

text: it

text: into

text: a

text: new

text: DCOP

text: with

text: one

text: variable

text: per

text: agent

text: (introducing

text: virtual

text: agents),

text: and

text: then

text: executes

text: the

text: resolution

text: algorithms

text: on

text: each

text: agent

text: of

text: the

text: new

text: DCOP.

text: To

text: the

text: best

text: of

text: our

text: knowledge,

text: there

text: is

text: not

text: any

text: formal

text: discussion

text: about

text: the

text: relationship

text: between

text: pseudo-trees

text: whose

text: nodes

text: represent

text: real

text: agents

text: and

text: pseudo-trees

text: whose

text: nodes

text: represent

text: virtual

text: agents.

text: However,

text: it

text: is

text: believed

text: that

text: given

text: a

text: pseudo-tree

text: T

text: whose

text: nodes

text: represent

text: virtual

text: agents,

text: there

text: always

text: exists

text: a

text: pseudo-tree

text: T

text: whose

text: nodes

text: represent

text: real

text: agents

text: such

text: that

text: T

text: is

text: compatible

text: with

text: T

text: Intuitively,

text: by

text: compatible

text: we

text: mean

text: that

text: it

text: is

text: possible

text: to

text: construct

text: T

text: from

text: T

text: as

text: follows:

text: If

text: the

text: root

text: of

text: T

text: is

text: a

text: node

text: representing

text: the

text: virtual

text: agent

text: a

text: that

text: belongs

text: to

text: a

text: real

text: agent

text: i

text: a

text: the

text: root

text: of

text: T

text: is

text: the

text: node

text: representing

text: a

text: and

text: i

text: i

text: If

text: there

text: is

text: at

text: least

text: one

text: tree

text: edge

text: (resp.

text: back

text: edge)

text: connecting

text: two

text: nodes

text: that

text: represent

text: virtual

text: agents

text: a

text: and

text: a

text: in

text: T

text: there

text: is

text: a

text: tree

text: edge

text: (resp.

text: back

text: edge)

text: connecting

text: the

text: two

text: nodes

text: that

text: represent

text: real

text: agents

text: a

text: and

text: a

text: in

text: T

text: such

text: that

text: a

text: and

text: a

text: belong

text: to

text: a

text: and

text: a

text: respectively.

text: It

text: is

text: worth

text: to

text: notice

text: that,

text: in

text: our

text: experiments,

text: we

text: ensure

text: that

text: all

text: algorithms

text: use

text: the

text: same

text: heuristics

text: to

text: construct

text: their

text: pseudo-trees.

text: We

text: also

text: observe

text: that

text: all

text: pseudo-trees

text: that

text: are

text: constructed

text: using

text: ASP-DPOP

text: are

text: compatible

text: with

text: the

text: corresponding

text: pseudo-trees

text: that

text: are

text: constructed

text: using

text: FRODO.

text: Experimental

text: Results

text: We

text: implement

text: two

text: versions

text: of

text: the

text: ASP-DPOP

text: algorithm—one

text: that

text: uses

text: ground

text: pro-

text: grams,

text: which

text: we

text: call

text: “ASP-DPOP

text: (facts),”

text: and

text: one

text: that

text: uses

text: non-ground

text: programs,

text: which

text: we

text: call

text: “ASP-DPOP

text: (rules).”

text: In

text: addition,

text: as

text: the

text: observation

text: made

text: about

text: H-DPOP

text: in

text: Sec-

text: tion

text: we

text: also

text: implemented

text: a

text: variant

text: of

text: H-DPOP,

text: called

text: PH-DPOP,

text: which

text: stands

text: for

text: Privacy-based

text: H-DPOP,

text: that

text: restricts

text: the

text: amount

text: of

text: information

text: that

text: each

text: agent

text: can

text: ac-

text: cess

text: to

text: the

text: amount

text: common

text: in

text: most

text: DCOP

text: algorithms,

text: including

text: DPOP

text: and

text: ASP-DPOP.


text: Solving Distributed Constraint Optimization Problems Using Logic Programming 39 message sizes in ODPOP are larger than those of ASP-DPOP. The reason is that ODPOP sends only linear size message, but it needs to send many messages on demand. 5.6 Discussions on ASP-DPOP ASP-DPOP has been shown to be competitive with other algorithms in solving DCOPs in our experimental results. The beneﬁts of using ASP-DPOP are accomplished by having ASP as its foundation. We will illustrate here the two main advantages of making use of ASP within ASP-DPOP: 1. The use of the highly expressive ASP language to encode constraints in DCOPs; and 2. The ability to harness the highly optimized ASP grounder and solver to prune the search space based on hard constraints. In the rest of this section, we further discuss these advantages and relate them to the ob- servations drawn from the experiments. These considerations are followed by a discussion of how ASP-DPOP alleviates the simplifying assumption of having a single variable per agent. Finally, at the end of this section, we analyze the privacy loss of ASP-DPOP. The ﬁrst advantage of using ASP within ASP-DPOP comes from the ability to use a very expressive logic language to encode the constraints in a DCOP. ASP-DPOP can represent constraint utilities as an implicit function instead of explicitly enumerating them. Thus, ASP-DPOP is particularly suitable to encode DCOPs whose constraint utilities are large and evaluated via implicit functions of the variables in their scopes (e.g., power network problems, smart grid problems). This can be seen clearly via Example 15. Example 15 Let us consider a constraint f representing the power loss principle in a power network { } problem, where scp(f) = x → , x → in which the domains of the variables x → and 1 2 2 1− 1 2 x → are D → = [0, 2] and D → = [ 2, 0], respectively. Intuitively, the variable x → , 2 1 ∈1{ 2 } (cid:54) 2 1 i j where i, j 1, 2 , i = j, indicates the amount of power that node i transfers to (receives ≥ from) node j if x → 0 (resp. x → < 0). For example, x → = 1 means that the node 1 i j i j − 1 2 transfers 1 unit of power to the node 2, and x → = 1 speciﬁes that the node 2 receives 1 2 1 unit of power from the node 1. By the power loss principle, if there is no loss, the amount of power transferred from one node is equal to the amount of power received in the other (cid:54) node (i.e., x → +x → = 0). However, if there is loss (i.e., x → +x → = 0), we assume i j j i i j j i that the cost (utility) of the power transmission is evaluated to be two times greater than the power unit loss. Formally, the utility of the constraint f is given implicitly as a function: × | | f(x → , x → ) = 2 x → + x → . (57) 1 2 2 1 1 2 2 1 Figure 6(a) enumerates all the utilities of the constraint f explicitly in a utility table, and Figure 6(b) presents an answer set program that models implicitly those utilities. We can see that while the utility table has 9 rows (i.e., the domain sizes of x → and x → are 3), 1 2 2 1 the answer set program consists of only 2 facts and 1 rule. If the domain sizes of x → and − 1 2 x → are 1000 (e.g., D → = [0, 999] and D → = [ 999, 0]), the utility table would have 2 1 1 2 1 2 10002 rows whereas the answer set program modeling implicitly such the same utilities

text: Solving

text: Distributed

text: Constraint

text: Optimization

text: Problems

text: Using

text: Logic

text: Programming

text: message

text: sizes

text: in

text: ODPOP

text: are

text: larger

text: than

text: those

text: of

text: ASP-DPOP.

text: The

text: reason

text: is

text: that

text: ODPOP

text: sends

text: only

text: linear

text: size

text: message,

text: but

text: it

text: needs

text: to

text: send

text: many

text: messages

text: on

text: demand.

text: Discussions

text: on

text: ASP-DPOP

text: ASP-DPOP

text: has

text: been

text: shown

text: to

text: be

text: competitive

text: with

text: other

text: algorithms

text: in

text: solving

text: DCOPs

text: in

text: our

text: experimental

text: results.

text: The

text: beneﬁts

text: of

text: using

text: ASP-DPOP

text: are

text: accomplished

text: by

text: having

text: ASP

text: as

text: its

text: foundation.

text: We

text: will

text: illustrate

text: here

text: the

text: two

text: main

text: advantages

text: of

text: making

text: use

text: of

text: ASP

text: within

text: ASP-DPOP:

text: The

text: use

text: of

text: the

text: highly

text: expressive

text: ASP

text: language

text: to

text: encode

text: constraints

text: in

text: DCOPs;

text: and

text: The

text: ability

text: to

text: harness

text: the

text: highly

text: optimized

text: ASP

text: grounder

text: and

text: solver

text: to

text: prune

text: the

text: search

text: space

text: based

text: on

text: hard

text: constraints.

text: In

text: the

text: rest

text: of

text: this

text: section,

text: we

text: further

text: discuss

text: these

text: advantages

text: and

text: relate

text: them

text: to

text: the

text: ob-

text: servations

text: drawn

text: from

text: the

text: experiments.

text: These

text: considerations

text: are

text: followed

text: by

text: a

text: discussion

text: of

text: how

text: ASP-DPOP

text: alleviates

text: the

text: simplifying

text: assumption

text: of

text: having

text: a

text: single

text: variable

text: per

text: agent.

text: Finally,

text: at

text: the

text: end

text: of

text: this

text: section,

text: we

text: analyze

text: the

text: privacy

text: loss

text: of

text: ASP-DPOP.

text: The

text: ﬁrst

text: advantage

text: of

text: using

text: ASP

text: within

text: ASP-DPOP

text: comes

text: from

text: the

text: ability

text: to

text: use

text: a

text: very

text: expressive

text: logic

text: language

text: to

text: encode

text: the

text: constraints

text: in

text: a

text: DCOP.

text: ASP-DPOP

text: can

text: represent

text: constraint

text: utilities

text: as

text: an

text: implicit

text: function

text: instead

text: of

text: explicitly

text: enumerating

text: them.

text: Thus,

text: ASP-DPOP

text: is

text: particularly

text: suitable

text: to

text: encode

text: DCOPs

text: whose

text: constraint

text: utilities

text: are

text: large

text: and

text: evaluated

text: via

text: implicit

text: functions

text: of

text: the

text: variables

text: in

text: their

text: scopes

text: (e.g.,

text: power

text: network

text: problems,

text: smart

text: grid

text: problems).

text: This

text: can

text: be

text: seen

text: clearly

text: via

text: Example

text: Example

text: Let

text: us

text: consider

text: a

text: constraint

text: f

text: representing

text: the

text: power

text: loss

text: principle

text: in

text: a

text: power

text: network

text: problem,

text: where

text: scp(f)

text: x

text: x

text: in

text: which

text: the

text: domains

text: of

text: the

text: variables

text: x

text: and

text: 1−

text: x

text: are

text: D

text: and

text: D

text: respectively.

text: Intuitively,

text: the

text: variable

text: x

text: i

text: j

text: where

text: i,

text: j

text: i

text: j,

text: indicates

text: the

text: amount

text: of

text: power

text: that

text: node

text: i

text: transfers

text: to

text: (receives

text: from)

text: node

text: j

text: if

text: x

text: (resp.

text: x

text: For

text: example,

text: x

text: means

text: that

text: the

text: node

text: i

text: j

text: i

text: j

text: transfers

text: unit

text: of

text: power

text: to

text: the

text: node

text: and

text: x

text: speciﬁes

text: that

text: the

text: node

text: receives

text: unit

text: of

text: power

text: from

text: the

text: node

text: By

text: the

text: power

text: loss

text: principle,

text: if

text: there

text: is

text: no

text: loss,

text: the

text: amount

text: of

text: power

text: transferred

text: from

text: one

text: node

text: is

text: equal

text: to

text: the

text: amount

text: of

text: power

text: received

text: in

text: the

text: other

text: node

text: (i.e.,

text: x

text: +x

text: However,

text: if

text: there

text: is

text: loss

text: (i.e.,

text: x

text: +x

text: we

text: assume

text: i

text: j

text: j

text: i

text: i

text: j

text: j

text: i

text: that

text: the

text: cost

text: (utility)

text: of

text: the

text: power

text: transmission

text: is

text: evaluated

text: to

text: be

text: two

text: times

text: greater

text: than

text: the

text: power

text: unit

text: loss.

text: Formally,

text: the

text: utility

text: of

text: the

text: constraint

text: f

text: is

text: given

text: implicitly

text: as

text: a

text: function:

text: f(x

text: x

text: x

text: x

text: Figure

text: enumerates

text: all

text: the

text: utilities

text: of

text: the

text: constraint

text: f

text: explicitly

text: in

text: a

text: utility

text: table,

text: and

text: Figure

text: presents

text: an

text: answer

text: set

text: program

text: that

text: models

text: implicitly

text: those

text: utilities.

text: We

text: can

text: see

text: that

text: while

text: the

text: utility

text: table

text: has

text: rows

text: (i.e.,

text: the

text: domain

text: sizes

text: of

text: x

text: and

text: x

text: are

text: the

text: answer

text: set

text: program

text: consists

text: of

text: only

text: facts

text: and

text: rule.

text: If

text: the

text: domain

text: sizes

text: of

text: x

text: and

text: x

text: are

text: (e.g.,

text: D

text: and

text: D

text: the

text: utility

text: table

text: would

text: have

text: rows

text: whereas

text: the

text: answer

text: set

text: program

text: modeling

text: implicitly

text: such

text: the

text: same

text: utilities