Enhancing energy efficient dynamic load balanced clustering protocol using Dynamic Genetic Algorithm

Page 1

INTERNATIONAL JOURNAL FOR TRENDS IN ENGINEERING & TECHNOLOGY VOLUME 5 ISSUE 1 – MAY 2015 - ISSN: 2349 - 9303

Enhancing energy efficient dynamic load balanced clustering protocol using Dynamic Genetic Algorithm in MANET 1

T.Dhivya1

2

M.E communication and Networking National Engineering College, Kovilpatti, dhivyathiru17@email.com

M.Kaliappan2 Assistant Professor, IT Department

National Engineering College, Kovilpatti kalsrajan@yahoo.co.in

Abstract— Mobile Ad hoc Network (MANET) is a kind of self configuring and self describing wireless ad hoc networks. MANET has characteristics of topology dynamics due to factors such as energy conservation and node movement that leads to dynamic load balanced clustering problem (DLBCP). It is necessary to have an effective clustering algorithm for adapting the topology change. Generally, Clustering is mainly used to reduce the topology size. In this, we used load balance and energy metric in GA to solve the DLBCP. It is important to select the energy efficient cluster head for maintaining the cluster structure and balance the load effectively. Elitism based Immigrants Genetic algorithm (EIGA) and Memory Enhanced Genetic Algorithm (MEGA) are used to solve DLBCP. These schemes will select the optimal cluster head by considering the parameters includes distance and energy. We used EIGA to maintain the diversity level of the population and memory scheme (MEGA) to store the old environments into the memory. It promises the energy efficiency for the entire cluster structure to increase the lifetime of the network. The experimental results show that the proposed schemes increases the network life time and reduces the energy consumption. Index Terms— MANET, DLBCP, Genetic Algorithm (GA), Dynamic GA, Immigrants scheme, Memory scheme. ——————————  ——————————

1 INTRODUCTION In Mobile Ad hoc Network (MANET), it has more number of nodes and its topology changes randomly and dynamically due to its characteristics [2]. So clustering of nodes is very essential in MANET. The information about the nodes and links are stored within each cluster. Due to the random movement of nodes in MANET, Scalability problem arises. So Clustering [3] is the most efficient one to solve this problem in MANETs. And also clustering is useful for efficient routing and for topology control. For effective cluster structure, the selection of cluster head is more important in a dynamically changing environment. Genetic Algorithm (GA) techniques is used to find the best and optimal cluster head to each cluster. Genetic Algorithm is an optimization heuristics technique to find the optimal solution. This technique will select the best one from the group of members by using the operations like selection, mutation and crossover. Genetic Algorithm is not a deterministic technique so it is used in the dynamic environments to select the possible solutions. In the genetic algorithm,each one represents a possible solution. In this paper, this technique is used to select the cluster head dynamically .Cluster heads are selected based on the distance and energy of each node in network. Due to the movement of nodes in the MANET, it leads to Dynamic Load Balanced Clustering Problem (DLBCP). Dynamic genetic algorithm is used to solve the DLBCP. In a Dynamic genetic Algorithm, the series of Dynamic schemes are used to manage the dynamic network environments and to maintain the populations. The dynamic GA schemes include immigrants schemes and memory related schemes are mainly used to maintain the population and to store the information about an environment respectively. The contributions of this work are summarized as follows.

We designed a Dynamic optimization problem into dynamic load balanced clustering problem (DLBCP). So Dynamic GA is used to solve this problem

Cluster head selection is done by using the genetic Algorithm operations such as selection, fitness function, mutation and crossover. In this work we have considered the parameters like distance and energy to select the cluster head and to balance the load. We used two dynamic schemes like Elitism based Immigrants Genetic Algorithm (EIGA) and Memory Enhanced Genetic Algorithm (MEGA) to solve this problem. We examine their performances on the DLBCP. The results show that MEGA out performs the EIGA.

The rest of this paper contains the following sections. In section 2 the related works are discussed. The Network model and DLBCP problem are discussed in the section 3. In section 4 we had presented the pursued GA for the static load balanced clustering problem. The dynamic GA schemes are described and also it is used to solve the DLBCP in the section 5. In section 6 the experimental analysis and the performance of the networks are evaluated. Conclusion of this paper was presented in the section 7

2 RELATED WORKS

37

Priyanka Goyal et al. [1] described the fundamental problems of ad hoc network by giving its related research background including the concept, features, status, and vulnerabilities of MANET. Due to severe challenges, the special features of


INTERNATIONAL JOURNAL FOR TRENDS IN ENGINEERING & TECHNOLOGY VOLUME 5 ISSUE 1 – MAY 2015 - ISSN: 2349 - 9303 Satisfiability (SAT) solvers in modeling complex engineering problems. One such problem is the Clustering Problem in Mobile Ad-Hoc Networks (MANETs).SAT solvers performed well for small scale networks. It takes more time to find optimal solution as the network gets bigger.

MANET bring this technology great opportunistic together. This paper presents an overview and the study of the routing protocols. Also include the several challenging issues, emerging application and the future trends of MANET. Aarti et al.[2] discussed MANET and its characteristics, challenges, advantages, application, security goals, various types of security attacks in its routing protocols. Security attack can divided as a active or passive attacks. Due to dynamic topology, distributed operation and limited bandwidth MANET is more vulnerable to many attacks. Hui Cheng et al [4], developed the dynamic load balanced clustering problem (DLBCP) into a dynamic optimization problem.In this, they designed to use a series of dynamic genetic algorithms (GAs) to solve the DLBCP in MANETs. They earned good results by using memory related GAs than using standard GAs. In this GAs are not used to solve the dynamic multi-metric clustering problem.

Peng Zhao,Xiny et al[11], developed an LVC algorithm to construct a hierarchical network and to eliminate unidirectional links to explore the advantages of high-power nodes, Power heterogeneity is common in MANETs. They presented a loosevirtual-clustering-based (LVC) routing protocol for power heterogeneous (LRPH) MANETs. They achieved better performance by using LVC based Routing Protocol than other existing protocols. Energy issues are not focused.

Shengxiang Yang et al [5], addressed the static shortest path (SP) problem .The SP routing problem in MANETs turns out to be a dynamic optimization problem due to the characteristics of MANETs.They achieved better performance by using memory related GAs than using standard GAs. GA approaches are not applied to multicasting routing problem in dynamic network environments

Ibukunola.A et al [12], described an energy function model base on Geographic Adaptive Fidelity (GAF), which is one of the best known topology management schemes used in saving energy consumption in ad-hoc wireless networks. They showed metaheuristics based optimization methods are effective and useful for minimizing energy consumption.

Bhaskar Nandi et al [6], focussed on the implementation of Weighted Clustering Algorithm with the help of Genetic Algorithm (GA). They applied genetic algorithms (GA) as an optimization technique to improve the performance of cluster head election procedure. They had achieved that the cluster head will be minimized by incrementing the transmission range So GA does not provide a optimal solution, when they decrease the transmission range.

Jie Yang, Nei Kato et al. [13] focused on the issue of certificate revocation to isolate attackers from further participating in network activities. They proposed a cluster-based certificate revocation with vindication capability (CCRVC) scheme to solve the problem of false accusation. The proposed CCRVC scheme is more effective and efficient in revoking certificates of malicious attacker nodes, reducing revocation time, and improving the accuracy and reliability of certificate revocation.

Bo Peng and Lei Li [7], presented a new adaptive genetic simulated annealing algorithm (AGSAA) for QoS multicast routing. Their experiments, mainly test the convergence ability, the convergence speed, and the least-cost of achieving solutions in each generation. The result indicates that the AGSAA provides a significant improvement for obtaining a global optimum solution .The simulation results show that this AGSAA algorithm has fast convergence speed.

John M.Shea, Joseph P.Macker (14), developed a new method for determining the number of clusters based on the eigenvalues of a normalized graph Laplacian matrix. REQ achieves much more stable way to select the number of clusters. In this they showed that the effectiveness of using REQ is used to select the number of clusters. This method is not suitable for updating the clustering in a distributed manner as the network evolves over time. From these works we had concluded that it is essential to design dynamic genetic algorithm to solve the multi-metric clustering problem.

Abin Paul, preetha k.g [8], described a novel method to deal the dynamic nature of ad hoc networks. Their main idea is to cluster the networks and to use an „avoidance strategy‟ for the clusters up to a particular threshold. Topology tracing is done by flooding which consumes much of the network resources. In this they didn‟t use the efficient method to trace the networks.

3 DYNAMIC LOAD BALANCED CLUSTERING PROBLEM In this we developed an MANET design and then defined the Dynamic load balanced clustering problem (DLBCP). After the creation of nodes, due to the characteristics of MANET the problem turns to be DLBCP. We had developed the MANET ant it works within a transmission range of about 250m. After the creation of nodes we had defined a set of clusters and each cluster head will send the data to the nodes which are in the transmission range of 250m. And then cluster head is selected by considering the parameters like distance and energy to balance the load. To find the minimum deviation of each node the following formula is used.

Ting Lu and Jie Zhu [9], Proposed an energy efficient genetic algorithm to find the delay-constrained multicast tree and reduce the total energy consumption of the tree. Power-aware multicasting was proposed to reduce the power consumption. A series of experiments was performed to verify the convergence performance, SR and running time of the proposed algorithm. Syed Zohaib Hussain Zahidi et al [10], proposed the development of an improved ILP formulation of the Clustering Problem. There have been several improvements in the performance of Integer Linear Programming (ILP) and Boolean

 CH  i

38

where

1 m  d j  d CHi m j 1

2

(1)

represents the cluster head degree cj that is the number


INTERNATIONAL JOURNAL FOR TRENDS IN ENGINEERING & TECHNOLOGY VOLUME 5 ISSUE 1 – MAY 2015 - ISSN: 2349 - 9303 of cluster members served by cluster head cj and represents the average number of cluster members served by the cluster head. To find the energy efficient node the following formula is used.

E

T

E

tx

E

rx

E

ideal

4.3 Fitness Function

(2)

In this section we accurately evaluated its quality (i.e., fitness value), which is determined by the fitness function. In our algorithms, we aim to find the set of cluster heads, which can build up the load balanced cluster structure, that is, each cluster head has the efficient energy to balance the load. For each round the cluster head is elected by finding the minimum deviation and the energy consumption of each node. The load is balanced by using the energy consumption of each cluster head. Therefore, from the set of nodes in the network, we had chosen the one with the least standard deviation as well as the energy efficient node as the cluster head. The fitness value of chromosome Chr i(representing the cluster head CHi), denoted as F(Chr i), is given by:

where, Etx and Erx is the energy consumed when the packet is transmitted and received. Then, we selected the minimum standard deviation node as well as the energy efficient node as a cluster head 4 PURSUED GA FOR THE DLBCP In this section we had developed the factors for DLBCP. The GA consists of various operations like genetic representations, population initialization, fitness function, selection scheme, crossover and mutation. In this work, the pursued GA was developed to solve the DLBCP. In the dynamically changing environment the clustering problem will offer different sequences of cluster head for each environmental change. The node degree and the number of cluster members are used as the parameters in the fitness function. These two parameters are not dependent of other environmental components. The crossover and mutation operation can also be well designed, after these operations the repeated node IDs will not be appearing in the chromosomes.

 

F Chr  ( i CH

) 1  i

1 m 2  (d  dCH ) m j 1 j i

1

(3)

After applying this equation to each node the result will be F(chri)={CH1,CH2,……..,CHn} F(Chri) represents the fitness value Chri(representing the cluster head CHi)

of

chromosome

4.5 Selection scheme Selection plays a main role in improving the average quality of the population by passing the high quality chromosomes to the next generation. The selection of chromosome is based on the fitness value. We adopt the scheme of pairwise tournament selection without replacement (Chang Wook Ahn,and R. S. Ramakrishna,2002) as it is simple and effective.

4.1 Genetic representations A random permutation of node IDs are used to generate a random set of cluster heads. In this work, random permutation of node IDs are used to represent a chromosome. Population :{n1,n2,n3,n4,n5,n6,n7,n8} Where n1…,n8 represents the number of nodes in the network Gene: Represents each node in network, i.e.{n1},{n2},…,{n8} Chromosome: Set of permutation nodes of nodes i.e.{n4,n3,n8,n7,n1,n6,n2,n5} • The permutations are calculated by using the formula: npr = n!/ (n-r)! where n represents the total number of nodes r represents the elements taken from the given set of n.

4.6 Crossover and Mutation.

4.2 Population Initialization

Crossover and mutation are two vital genetic operators. Crossover is used to generate two offspring chromosomes from two parent chromosomes. From different parts of the two parent chromosomes all the genes in each offspring chromosome are acquired. Mutations are used to generate an offspring chromosome from only one parent chromosome. This is done by changing the values of some genes. 5 DYNAMIC GA SCHEMES

In a GA, each chromosome corresponds to a potential solution. The initial population Q is composed of a certain number, denoted as q, of chromosomes. To explore the genetic diversity, in our algorithms, for each chromosome, the corresponding permutation of node IDs is randomly generated (Hui Cheng, Shengxiang Yang , Jiannong Cao , 2013). The initial population is generated by the following method. Step 1 : start (k = 0). Step 2: generate chromosome Chr k: create a random permutation of the entire node IDs and derive the corresponding cluster head set CHk. Step 3: k = k + 1. If k < q, go to Step 2, otherwise, stop.

5.1 GA with immigrants schemes The most well-known advance to create the new arrivals seems to create it erratically. In this we used arbitrarily accomplished the individuals to replace the worst individuals of the population in each generation. The random immigrant scheme performs well in occasional environments and large changes in the location of the optimal. 5.2 The Elitism-Based Immigrants Scheme

Thus, the initial population Q = {Chro , Chr1, . . .,Chrq_ 1} is obtained. The problem we have investigated is a combinatorial optimization problem and is called DLBCP.

In a continuously changing environment, the introduced random immigrants [16] may turn away the searching force of the GA during each environment before a change occurs and hence may degrade the performance. On the other hand, if the environment only changes slightly in terms of cruelty of changes,

39


INTERNATIONAL JOURNAL FOR TRENDS IN ENGINEERING & TECHNOLOGY VOLUME 5 ISSUE 1 – MAY 2015 - ISSN: 2349 - 9303 random immigrants may not have any actual effect even when a change occurs because individuals in the previous environment may still be quite fit in the new environment. Based on the above concern, an immigrants advance, called elitism-based immigrants [4], was proposed for GAs to address DLBCPs. Within the EIGA, for each generation t, after the normal genetic operations (i.e., selection and recombination), the best E (t - 1) from previous generation is used as the base to create the new arrivals. From E (t - 1), a set of r ein individuals are iteratively generated by mutating E(t - 1) with a probability p mi, where n is the population size and r ei is the ratio of the number of elitism-based immigrants to the population size.

individual of the current population will change one of them unpredictably when the memory is to update. 5.5 Pseudo code for MEGA

Then,the generated individuals will act as immigrants and replace the worst individuals in the current population. It uses the best one from previous population to guide the immigrants toward the present environment, which is likely to recover the presentation of GAs in dynamic environments.

t:=0, tM := rand(5,10) and ET = 1 joule initialize population P(0) and memory M(0) randomly repeat evaluate population P(t) and memory M(t) replace the worst individual in P(t) by the elite E(t-1) from P(t1) Elite’(t-1) =(Elite(t-1)) > ET If change detected then P”(t) := retrieve Best Members From (P(t), M(t)) Else P’(t) := P(t) // time to update memory If t= tM || change detected then If t = tM then Bp(t) := retrieve best member from (P`(t)) If change detected then Bp(t) := E`(t-1) If still any random point in memory then, replace a random point in memory with Bp(t) else If t=tM then Find the memory point CM(t) closest to Bp(t) If f(Bp(t)) > f(CM(t)) then CM(t) := Bp(t) TM := t+rand(5,10) // standard genetic operations P``(t) := select for reproduction (P’(t)) Crossover(P``(t),pc) Mutate(P``(t),pm) P(t+1) := P``(t) Until the termination condition is met // e.g.,t>tmax

5.3 GA with memory schemes In this paper, the memory approach [14] was used to enhance the GA‟s performance in dynamic environments in a variety of ways. The memory approach works by storing useful information from the current environment, either implicitly through redundant representations or explicitly by storing good solutions of the current population in an extra memory space. And the stored information can be restarted later in the new environment. For example, for the explicit memory scheme, when the current environment changes, old solutions in the new environment will be reactivated and hence may adapt the GA to the new environment more directly. For the memory management, since the memory space is usually restricted, it is essential to inform memory solutions, when it full, for making room for new ones. A universal approach is to pick one memory point to be removed for that best individual from the populations or to be moved forward it. As to which memory point should be chosen for updating, there are several memory replacement approaches. For example, replacing the least important one with respect to the age, contribution to diversity and fitness, replacing the one with least contribution to memory variance, replacing the most similar one if the new individual is better, or replacing the less fit one of a pair of memory points that have the minimum distance among all pairs. 5.4 Memory Enhanced GA

Where, P(t) & m(t) are the population and memory respectively P’(t) is the best member which is retrieved from p(t) and m(t) Bp(t) is the best member which is retrieved from P’(t) CM(t) is the memory point closest to Bp(t).

6 PERFORMANCE EVALUATIONS

The GA with the memory scheme, called memoryenhanced GA (MEGA)[15] which uses a memory of size m = 0.1* n. The memory in MEGA is re-evaluated every generation

Performance of the network can be evaluated through a number of nodes changes in the network and the metrics used in network. Several metrics can be defined to grade the performance of a technology against the elements of wireless networking. In this paper, we had considered the following metrics

to detect environmental changes. If an environmental change is identified, then the memory is added with the current population and the best n - m individuals are selected as a provisional population to experience genetic operations for a new population while the memory remains unchanged. The memory is also revised according to the population just before the environmental change in order to store the most important information to an environment in the memory, every time an environmental change is identified. If any of the erratically initialized points still exists in the memory, the best

Packet delivery ratio

Throughput

Routing over head

End-to-end Delay

Total energy

since packets are sent from the source and destination by using the efficient clustering structures.

40

.


INTERNATIONAL JOURNAL FOR TRENDS IN ENGINEERING & TECHNOLOGY VOLUME 5 ISSUE 1 – MAY 2015 - ISSN: 2349 - 9303 Fig. 1. Graph for Packet Delivery Ratio

Fig. 1. Packet Delivery Ratio vs. no of nodes

fig.1. Shows that the above graph is plotted across the number of nodes and the packet delivery ratio (PDR). Normally the value of PDR will get increased when we compared with the existing methods. In this graph, it shows that the packet delivery ratio increased for the proposed model since it stores, the best individuals in the memory when compared to the existing methods. In proposed method it shows that up to 95% it gets increased.

Fig.3. Routing overhead vs. no of nodes

fig.3. Shows that the graph is plotted across the number of nodes and the routing overheads in the network.when increasing the no of nodes the routing overheads are also increases.From the graph it has been shown that the routing overhead decreased in the proposed method when compared with the existing methods.

Fig. 2. Average delay vs. no of nodes

fig.2. Shows that the graph is plotted across the number of nodes and the average delay in the network. When we are increasing the value of nodes the delay will also get increased. Normally the value of delay will get decreased when compared with the existing method. In this graph the average delay will get decreased in the proposed method when compared with the existing methods.

Fig. 4. Graph for Throughput Fig. 4. Throughput vs. no of nodes

fig.4. Shows that the graph is plotted across the number of nodes in the network and the throughput.Normally the value of throughput will get increased in the proposed model since it sends the more amonut of data in a time when compared to the existing onee.From the graph it has been shown that the value of throughput was increased in the proposed work when compared to the existing one.

41


INTERNATIONAL JOURNAL FOR TRENDS IN ENGINEERING & TECHNOLOGY VOLUME 5 ISSUE 1 – MAY 2015 - ISSN: 2349 - 9303

Fig. 5.Total energy Consumption vs. no of nodes

[3] Abdelhak Bentaleb1, Abdelhak Boubetra1, Saad Harous, “Survey of Clustering Schemes in Mobile Ad hoc Networks”, Communications and Network, vol.5, 8-14,2013. [4] Huic Cheng Shengxiang Yang, Jiannong Cao, “Dynamic genetic algorithm for the dynamic load balanced clustering problem in mobile ad hoc networks”, journal of Expert systems with applications ,vol.40,no.4, pp.1381-1392,2013. [5] Shengxiang Yang, Hui Cheng, and Fang Wang “Genetic Algorithms With Immigrants and Memory Schemes for Dynamic Shortest Path Routing Problems in MANETs”, Journal of IEEE transaction, Vol. 40 , No.1,pp.52-6,2010. [6] Bhaskar Nandi, Subhabrata Barman, Soumen Paul, “Genetic Algorithm Based Optimization of Clustering in Adhoc Networks”, International Journal of Computer Science and Information Security, Vol. 7,No. 1, pp.165-169,2010. [7] Bo Peng and Lei Li,“A method for QoS Multicast Based on Genetic Simulated Annealing Algorithm”, International journal of Future Generation Communication and Networking, vol.5,no.1,pp.4360,2012. [8] Abin Paul, preetha k.g, “A Cluster Based Leader Election Algorithm for MANETs”, International conference on control Communication and Computing, pp.496-499,2013. [9] Ting Lu and Jie Zhu,“Genetic Algorithm for Energy-Efficient QoS Multicast Routing”, IEEE Communication Letters, vol.17, no.1, pp.31-34,2013. [10] Syed Zohaib Hussain Zahidi,Fadi Aloul, “Optimizing Complex Cluster Formation in MANETs Using SAT/ILP Techniques", journal of IEEE Sensors,vol.13,no.6,pp.2400-2412,2013 [11] Peng Zhao,Xinyu Yang,Wei Yu, and Xinwen Fu,“A Loose-VirtualClustering-Based Routing for Power Heterogeneous MANETs”, journal of IEEE Transaction on Vehicular Technology,vol.62,no.5,pp.2290-2302,2013. [12] Ibukunola.A,Modupe,Oludayo.O.Olugbara,Abiodun.Modupe,,“Min imizing Energy Consumption in Wireless Adhoc Networks with Meta heuristics”,4th international conference on Ambient Systems, Networks and Technologies , vol.19,pp.106-115,2013. [13] Wei Liu, Hiroki Nishiyama, Nirwan Ansari, Jie Yang, and Nei Kato,”Cluster based Certificate revocation wirh vindication capability for MANETs”, IEEE Transactions on parallel and distributed systems,vol.2, 2013. [14] John M.Shea, Joseph P.Macker,“Automatic Selection of Number of Cluster in Networks using Relative Eigen value Quality”, Conference of IEEE Military Communication,pp.131-136,2013. [15] Chang Wook Ahn and R. S. Ramakrishna,”A Genetic Algorithm for Shortest Path Routing Problem and the Sizing of Populations”, IEEE transactions on evolutionary computation, vol. 6, no. 6, december 2002. [16] Dr. T. R. Gopalakrishnan Nair , Ms.Kavitha Sooda, Ms.Yashoda M B,”Enhanced Genetic Algorithm approach for Solving Dynamic Shortest Path Routing Problems using Immigrants and Memory Schemes”, International Conference on Frontiers of Computer Science,2011. [17] Renato Tinos,Shengxiang Yang,”Ä self-Organizing random Immigrants genetic algorithm for dynamic optimization problems”,Genetic programming and evolvable machines,vol.8,pp255-286,2007.

fig. 5. Shows that the graph is plotted across the number of nodes and the total energy.This graph shows that the total energy consumption of nodes decreases in memory enhanced genetic algorithm(MEGA) since it stores, the best individuals in the memory when compared to the elitism based immigrants genetic algorithm(EIGA).

Fig.6.Number of packets vs.delay

fig. 6. Shows that the graph is plotted across the number of packets and delay.This graph shows that the delay increases when we are increasing the number of packets. But when we compared with the existing methods, the delay was decreased in the proposed scheme (EEDLBCP_MEGA).

7 CONCLUSION A novel general model of dynamic network optimization problem is developed. By considering the domain knowledge of network clustering, we develop a two dynamics handling schemes like EIGA and MEGA. For the selection of cluster head the distance and energy parameters are considered and finally the cluster head is elected by using this Dynamic GAs. By using Memory Enhanced GA (MEGA) we earned a better performance than Immigrants based GA (EIGA).The efficiency and effectiveness of dynamic GAs have also been verified with the existing ones.

REFERENCES [1] Priyanka Goyal, Vinti Parmar, Rahul Rishi, “MANET: Vulnerabilities, Challenges, Attacks, Applications”, IJCEM International Journal of Computational Engineering & Management,vol.11,pp.32-37,2011. [2] Aarti and Dr. SS.Tyagi,“Study of MANET: Characteristics, Challenges, Applications and Security attacks”, International Journal of Advanced research in computer science and software engineering,vol.3,pp-252-257,2013.

42


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.