A Parallel Algorithm for the Generation of Costas Sequences - PowerPoint PPT Presentation

1 / 28
About This Presentation
Title:

A Parallel Algorithm for the Generation of Costas Sequences

Description:

Journal of Applied Mathematics 2:6 (2002) 277-287. ... E. Horowitz, Sahni and Rajasekaran: Computer Algorithms/C . Computer Science Press, 1996. ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 29
Provided by: eoro7
Category:

less

Transcript and Presenter's Notes

Title: A Parallel Algorithm for the Generation of Costas Sequences


1
A Parallel Algorithm for the Generation of
Costas Sequences
  • E. Orozco - D. Bollman
  • MPI Seminar
  • April 17, 2009
  • Department of Computer Science
  • UPR-Rio Piedras

2
References
  • O. Moreno, J. Ramirez, D. Bollman, and E. Orozco
    Faster Backtracking Algorithms for the Generation
    of Symmetry-Invariant Permutations. Journal of
    Applied Mathematics 26 (2002) 277-287.
  • D. Bollman and E. Orozco A Faster Algorithm for
    the n-Queens Problem. Congressus Numerantium,
    Vol. 148 (2001), 193-200.
  • E. Horowitz, Sahni and Rajasekaran Computer
    Algorithms/C. Computer Science Press, 1996.

3
Application of Costas Sequences
  • Costas arrays are permutation matrices that
    provide a frequency indexing sequence that
    permits at most one tone in cross-correlation of
    certain waveforms.

4
MPI Seminar Orozco-Bollman
MPI Seminar Orozco-Bollman Dec 09, 2004
Examples

?
 
 
 
?
 
 
 
 
 
 
?
?
 
 
 
 
 
 
 
?
 
Not a solution to 5-Costas
A solution to 5-Costas
(4, 1, 2, 5, 3)
(3, 5, 1, 2, 4)
5
MPI Seminar Orozco-Bollman Dec 09, 2004
Symmetries
(4, 1, 2, 5, 3)
6
MPI Seminar Orozco-Bollman Dec 09, 2004
Symmetries
(4, 1, 2, 5, 3)
(3, 5, 2, 1, 4)
7
MPI Seminar Orozco-Bollman Dec 09, 2004
Symmetries
(4, 1, 2, 5, 3)
(3, 5, 2, 1, 4)
(2, 5, 4, 1, 3)
8
MPI Seminar Orozco-Bollman Dec 09, 2004
Symmetries
(4, 1, 2, 5, 3)
(3, 5, 2, 1, 4)
(3, 1, 4, 5, 2)
(2, 5, 4, 1, 3)
9
Costas Property Difference Triangle
Let
be a permutation of the integers from 1 to n.
Then X is a Costas sequence if and only if
10
Examples Costas Property Difference Triangle
11
Examples Costas Property Difference Triangle

?
 
?
 
 
 
 
?
 
 
 
 
?
 
?
 
 
12
Backtracking Technique Example n 4
1
12
124
1243
13
Backtracking Technique Example n 4
1
13
12
132
124
1243
14
Backtracking Technique Example n 4
1
13
12
132
124
134
1243
1342
15
Backtracking Technique Example n 4
1
13
12
14
132
124
143
134
142
1243
1342
1423
16
Backtracking Technique Example n 4
1
2
13
12
14
23
21
24
132
124
143
231
214
134
213
241
243
142
2314
2431
1243
1342
1423
2134
17
Backtracking Technique Example n 4
1
2
3
13
12
14
23
21
24
32
31
34
132
124
143
231
214
314
312
134
213
241
243
324
342
142
2314
2431
1243
1342
1423
2134
3124
3241
3421
18
Backtracking Technique Example n 4
1
2
3
4
13
12
14
23
21
24
32
31
34
42
41
43
132
124
143
231
214
314
312
412
421
413
134
213
241
243
324
342
423
431
142
2314
2431
1243
1342
1423
2134
3124
3241
3421
4132
4213
4312
19
Master-Slave Technique
20
Main code
if ( myid Master ) Master_Code( ) else
Worker_Code( )
MPI_Send (void buf, int count, MPI_Datatype
datatype, int dest, int tag, MPI_Comm
comm) MPI_Recv (void buf, int count,
MPI_Datatype datatype, int source, int tag,
MPI_Comm comm, MPI_Status status)
21
Xi
Xi1

Xid




Master sends a subsequence with d terms having
the Costas property
22
Worker receives the subsequence
Xi
Xi1

Xid
Y1

Yk




Worker tries to append as many terms to the right
as possible so that the enlarged subsequence
preserves the Costas property
23
Xi
Xi1

Xid
Y1

Yk




Zt

Z1
Worker tries to append more terms to the left,
so that the enlarged subsequence preserves the
Costas property
24
Xi
Xi1

Xid
Y1

Yk
Zt

Z1
Worker generates ¼ of ALL Costas solutions having
(Xi,Xi1,,Xid) as a subsequence.
25
Masters Code
CostasMaster ( ) send each worker an
initial message //just the first chunk of
work while (there is a job to do)
receive answer from any worker Wi send
Wi another message to work on compute
if (there is no more job to do)
receive answer from any worker Wi send
Wi a STOP signal
26
Workers Code
CostasWorker ( ) do receive message
from Master if (message ! STOP) compute
send answer to Master receive new
message from Master while (message !
STOP)
27
Lets make some runs in your Gauss cluster!
Compile mpicc CostasPar.c Execute with 4
processes mpirun np 4 a.out
28
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com