Direct Inclusion of Seakeeping Ergonomic Criteria in the Computerized Design of Small Crafts by Mizanur Rahman Majumder Naval Architect & Marine Engineer (B.Sc.) Bangladesh University of Engineering & Technology, Dhaka, Bangladesh, 1980. A THESIS SUBMITTED IN PARTIAL FULFILMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF APPLIED SCIENCE in THE FACULTY OF GRADUATE STUDIES (Department of Mechanical Engineering) We accept this thesis as conforming to the required standard T H E U N I V E R S I T V ^ F BRITISH C O L U M B I A January 12,2000 Â© Mizanur Rahman Majumder, 2000 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of ^ E A r J i d / 4 t- ^pjg^feSfl-w-J^ The University of British Columbia Vancouver, Canada Date DE-6 (2/88) W 3~AA Q.O0O Abstract Dr. Akinturk showed that the design process of a small craft can be computerized, and new design nodes, such as crew safety or acceleration levels can be included in the preliminary design. This study goes one step further by directly including ergonomic criteria in the preliminary ship design process. In addition, the design platform selected, is an easily available one. It is shown that an integrated technical computing environment such as Matlab, can do the' preliminary small craft design with the inclusion of ergonomic criteria. This demonstrates also that the methodology developed in this study can be implemented and extended easily by others. The design process used in this study will be referred as "Matship". The ergonomic criteria, implemented in Matship, include constraints on RMS motion amplitudes and accelerations, peak motion responses and ergonomic criteria that relate maintaining one's balance onboard of a ship to ship motions. In the last one, an empirical relation, developed by Kimura, is used between the first moments of the spectra of vertical and longitudinal accelerations on the deck and human balance. The study shows the effect of human factors on the principle dimensions of the boats and their operational speed. The preliminary results reported in this thesis show that seakeeping ergonomic criteria can be implemented explicitly into the preliminary design of a small craft, for crew safety and passenger comfort. This thesis presents a methodology to include seakeeping ergonomic criteria in the preliminary design process and discusses its effects on the design parameters such as principal dimensions, power requirement, cost etc. The effects of these criteria on the final design can be quantified in terms of principal dimensions or monetary terms. Matship presents a methodology to include ergonomic criteria in the preliminary design and discusses their effects on the ship parameters. This study suggests that length restriction imposed on fishing vessels in Canada and elsewhere may cause unnecessary risk to crew of smaller vessels and should be further studied. The Matlab files used in this study are available at University of British Columbia's (UBC) Mechanical Engineering http://www.mech.ubc.ca/. , i - ii - web site, 1 Table of Contents Abstract Table of Contents List of Tables List of Figures List of Files List of Equations Acknowledgements Nomenclature 1 Background Ll Introduction: 1.2 History: 2 An overview of Ship Design Processes 3 Optimization 3.1 Introduction: 3.2 Constraints: 3.3 Sensitivity A nalysis: 3.4 Optimization in Ship Design: 3.4.1 Introduction: 3.4.2 Optimization Criterion: 3.4.3 Optimization Software: 3.5 Optimization procedures: 3.5.1 Optimization of Linear Function: 3.5.2 Optimization of Non-linear Function: 3.5.3 Searching Techniques: 3.5.4 Mathematical Programming Methods: 3.6 Features of Matlab's Optimization Toolbox - iii - 3.7 Key Features of Matlab Optimization Toolbox: 22 3.8 22 22 22 23 23 Overview of Matlab Optimization: 3.8.1 Flexible Optimization Environment: 3.8.2 Nonlinear Optimization Routines: 3.8.3 Matrix Minimization: 3.8.4 State-of-the-art Algorithms: 3.9 Application of Matlab Software in the present study: 3.9.1 Optimization Model: 3.9.2 The cost function used 4 Previous Work Done at UBC 24 24 25 27 4.1 Rule I: Shift of peak response frequencies for heave and pitch motions: 34 4.2 Rule II: Constraints on RMS heave and pitch motions: 36 4.3 Rule III: Constraints on K (Kimura's) values: 36 4.4 Rule-IV: Constraints on RMS heave acceleration and RMS pitch motion: 38 5 Summary of the files used in "Matship" 40 6 Results and Discussions 44 6.1 Introduction: 44 6.2 Differences Between the results obtainedfrom Echidna and Matship: 6.3 Validation of the process: 6.3.1 Redesigning of Kynoc with Matship: 6.3.2 Redesigning of UBC Series Fishing Vessels with Matship: 44 48 48 49 6.4 Effects of Kimura's Crew Safety Criteria on the designs 52 6.5 Implications of varying Kimura's Crew safety Threshold Value: 61 6.6 Comparison of various Crew Safety Rules: 66 7 Conclusions 75 8 References: 77 9 Appendix- A: Coefficients for non-dimensional Heave and Pitch motions: 80 10 Appendix- B: Overview of Matlab Optimization Program and Options 81 11 Appendix-C: Some of the Commands used in the Matship files 88 12 Appendix-D: 92 Some of the files used in Matship - iv - List of Tables Table 1: Cost function 26 Table 2: Comparison offishing vessel parameters of different series 29 Table 3: Geometric Properties of the UBC Series Models 29 Table 4: Accidents onboard Ships by Vessel type 30 Table 5: 10 year averages ofpercentage values ofprimary contributingfactors in casualties aboard all vessel types. 31 Table 6: Comparison of the resultsfromEchidna and Matlab to the real Kynoc. -v- 48 List of Figures Figure 1: Design Spiral 6 Figure 2: Andrew's Overall Model of the Ship Design Process 6 Figure 3: Design Process by Mistree et al 7 Figure 4: Reduction offreedom of making changes to the design and increase in design knowledge with the progress 10 Figure 5: Shift ofpeak frequencies of sea waves and ship's response 35 Figure 6: Flow diagram of Input and Output variables in the Matship Process 43 Figure 7: Influence of including Equation 11 as a constraint on the lengths of the designs 47 Figure 8: Influence of including Equation 11 as a constraint on the costs of the designs 47 Figure 9: Comparison of length values obtained by Matlab and Echidna for UBC Series. 50 Figure 10: Comparison of beam values obtained by Matlab and Echidna for UBC Series. 50 Figure 11 Comparison of draft values obtained by Matlab and Echidna for UBC Series. 51 Figure 12: Results for vessel's displacementfromMatship and Echidna. 52 Figure 13: Results for vessel's cost from Matship and Echidna. 52 Figure 14: % changes in Length due to Kimura's Crew Safety Criteria (Rule-Ill) 53 Figure 15: % changes in beam due to Kimura's Crew Safety Criteria (Rule-Ill) 54 Figure 16: % changes in draft due to Kimura's Crew Safety Criteria (Rule-Ill) 55 Figure 17: % changes in block coefficient due to Kimura's Crew Safety Criteria (Rule-Ill) 55 Figure 18: % changes in costs due to Kimura's Crew Safety Criteria (Rule-Ill) 56 Figure 19: % changes in total weight due to Kimura's Crew Safety Criteria (Rule-Ill) 56 Figure 20: Percentage changes in required power due to Kimura's Crew Safety Criteria (Rule-Ill) 57 Figure 21: % changes in RMS heave amplitude due to Kimura's Crew Safety Criteria (Rule-Ill) 58 Figure 22: % changes in RMS pitch amplitude due to Kimura's Crew Safety Criteria (Rule-Ill) 58 Figure 23: % changes in peak heave ratio due to Kimura's Crew Safety Criteria (Rule-Ill) 59 Figure 24: % changes in peak pitch ratio due to Kimura's Crew Safety Criteria (Rule-Ill) - vi - 60 List of Figures continues.. Figure 25: % changes in Kimura's threshold value due to Kimura's Crew Safety Criteria (Rule-Ill) 60 Figure 26: Effects of varying threshold value on length 62 Figure 27: % change in length due to the changed threshold value 62 Figure 28: Effects of varying threshold value on beam 63 Figure 29: Effects of varying threshold value on draft 63 Figure 30: Effects of varying threshold value on block coefficient 64 Figure 31: Effects of varying threshold value on displacement 64 Figure 32: % change in displacement due to the changed threshold value 65 Figure 33: Effects of varying threshold value on cost 65 Figure 34: % change in cost due to the changed threshold value 66 Figure 35: Effect of Rules on Ship's Cost 67 Figure 36: Effect of Rules on Ship's Displacement 67 Figure 3 7: Effect of Rules on Ship's Length 68 Figure 38: Effect of Rules on Ship's Beam 69 Figure 39: Effect of Rules on Ship's Draft 69 Figure 40: Effect of Rules on Ship's Block Coefficient. 70 Figure 41: Effect of Rules on Kimura's Threshold Value 71 Figure 42: Effect of Rules on Ship's Required Power 71 Figure 43: Kimura's Threshold values at the forward of the vessel [250 tons hold capacity] at different seastates and ship speeds. 72 Figure 44: Kimura's Threshold values at the midship of the vessel [250 tons hold capacity] at different seastates and ship speeds. 72 Figure 45: Kimura's Threshold values at the aft of the vessel [250 tons hold capacity] at different seastates and ship's speeds. Figure 46: Maximum Attainable Speedfor the vessel - vii - 73 74 List of Files File 1: designopt.m 92 File 2: we2w.m 96 File 3: sspec.m 97 File 4: myfun.m 97 File 5: mycon.m 98 File 6: consbtl.m 99 File 7: cons_bt2.m 99 File 8: conslbl.m 99 File 9: cons_lb2.m 99 File 10: consdisp.m 100 File 11: cost.m 100 File 12: displace, m 101 File 13: tweight.m 102 File 14: hv_amp.m 104 File 15: pi amp. m 105 File 16: peakhv.m 106 File 17: peak_pch.m 107 File 18: rmsjiv.m 108 File 19: rms_pch.m 109 File 20: s_acc_hl.m 110 File 21: saccvl.m 111 File 22: s_acc_h2.m 112 File 23: s_acc_v2.m 113 File 24: s_acc_h3.m 114 File 25: s_accv3.m 115 File 26: rmsveraccaft.m 116 File 27: stab.m 117 File 28: stablite.m 118 File 29: tmOl.m 119 - viii - List of Files continues.... File 30: tm02.m 120 File 31: tm03.m 121 File 32: pwerfish.m 122 File 33: Sminteg.m 124 File 34: tmintp.m 124 File 35: tmmax.m 124 File 36: vcrit.m 125 File 37: okul.m 126 File 38: maintrgb.m 131 - ix - List of Equations Equation 1 27 Equation 2 32 Equation 3 32 Equation 4 32 Equation 5 32 Equation 6 33 Equation 7 33 Equation 8 35 Equation 9 37 Equation 10 37 Equation 11 46 Equation 12 61 Acknowledgements It is not possible for me to weigh on a scale and compare the contributions that different personnel have made towards the project undertaken by the undersigned. But out of the many people who deserves my most sincere gratitude, Dr.S.M.Calisal's name comes the first, who was my supervisor and has always been behind me giving the most essential elements behind the successful completion of the project, that is the "mental support", "encouragement" and "guidance". Next to him is Dr.Ayhan Akinturk, my co-supervisor, who virtually taught me how to crawl, then stand on my feet and finally walk with the project. He has guided me in learning optimization techniques, usage of an expert system and various other fields in my project work. I would also like to thank Mr. Jon Mikkelsen for his continual suggestions and Mr. Jeffery Liggins and Mr. Methias Borstad for their assistance in my learning computer software, needed for the project work. Mr.Jerry Stengaard, from the Ocean Engineering Center of BCRI deserves special thanks from me for his assistance in providing me with some data of the model tests, which played an important role in my project work. My friends and colleagues also deserve my gratitude for their encouragement and technical contribution through discussions. I am very much thankful to my sister who has always been behind me to go for higher studies and wants me to continue with further studies. Finally, my gratitude goes to my wife and two kids, who supported me with everything they could do. - xi - Nomenclature B Beam of a ship Block coefficient Prismatic coefficient Depth of a ship c c D b P Fn g H 2 H1/3 (H ) k Lb 1/3 5 P Loa L/ LT NC NH PC RMS T K tmOl C T w 1/3 Tmax V z Zrms Z e 0 9 rms X -2 0) a}â€ž e Froude number (Fn = V/V(g/L)) Acceleration due to gravity (9.807m/sec or 32.2ft/sec ) Average wave height Significant wave height Significant wave height for sea state 5 Wave number (27j/X) Length between perpendiculars of a ship Length overall of a ship Length waterline of a ship Long tons (1016 [kg]) No sea-keeping constraints Non-dimensional significant wave height NH1/3 = H 1/3/(111/3)5 Peak pitch & heave constraints Root Mean Square Mean draft of a ship Kimura's Thresholdfactor used in Rule III Kimura's threshold constraint at aft Average wave periodfor a given sea state The wave period that maximizes wave energy spectrum for a given sea state Ship speed (knots) Heave amplitude RMS heave amplitude Heave acceleration Pitch amplitude Pitch acceleration RMS pitch amplitude Wave length Average wavelength for a given sea-state Encounter frequency [radian/s] Non-dimensional encounter frequency (co =co /^(g/T)) Frequency at the maximum spectral energy [radian/s] 2 n - xii - e 1 Background 1.1 Introduction: In October 1997, the Naval Architecture department under the School of Mechanical Engineering of the University of British Columbia received a proposal from Dr. Gordon Thomas of Kelwona, BC, a world famous explorer, for the design of a ferry for their transglobal expedition. In this proposed expedition, Dr.Thomas, along with Dr.Shappiro of Russia, a famous Arctic explorer were planning to drive a truck from the east most point on , the map to the west most point or vice versa. They will cross four major waterways, namely, the Irish Sea, English Channel, Bering Strait and Yukon river and use a ferry which is to be run by the truck's power to cross these waterways. The ferry will have to be as small as possible for easy transportation, but very safe and must be comfortable for the explorers, who are not professional mariners. This is where the need for optimization came into the picture, where cost control along with the safety and the crew comfort got the highest importance. The Transglobal Expedition Project is being dealt by undergraduate students as a project and they are using dimensions availed through the application of the present process. To take it one step further, it was thought if Matship could be made available to all designers for any ship design purpose. Other work done along the same line was studied and an easy platform was sought, which would be easy to use, available in the world market and more versatile than the existing computational platforms used in preliminary design stage. i 1.2 History: There is no firm date or year when human being invented a floating system that was used for their transportation. Until a few decades back it was thought that the Egyptians invented boats around 5,000 years ago. New evidences from archaeological findings confirms the age of some of the Egyptian Pyramids to be more than 12,000 years old and surprisingly they also found that boat-like structures had been used at that time. Though no body is 100% sure that this is the first civilization on the face of the earth, it is accepted that within this present ; civilization, a boat is one of the earliest inventions of mankind. Ancient civilizations knew nothing about moment of inertia or any mathematical concept, but from their practical experience, definitely knew about increased stability when they extended their arms while walking on a fallen log to cross the creeks. The clever ones used this concept iri making their boats safer by adding outriggers, and developed the first concept of a Catamaran boat. In the last few centuries, when watercraft started playing a major role in transportation, colonialization and war, extensive research and development had taken place in regards to their design, construction and varieties of usage. Safety, stability and sea-keeping qualities of the vessel and the comfort of the crew and passengers are presently being given priority in ship design, which used to be the "carrying capacity" in the past. Safety is a perceived quality that determines to what extent the management, engineering and operation of a system is free of danger to life, property and the environment. < ] 1 It is also implied that there is no absolute level of safety. It is virtually impossible and/or not cost effective to make anything 100% safe for any situation. The design is usually based on an optimum level of safety, usually guided by different international standards. i I It is also interesting to note that requirements for each category towards a safer vessel may dictate conflicting goals. For example, increased metacentric height (GM), which is a parameter related to initial stability, could be desirable from a vessel's safety point of view, though it may prove otherwise for the crew on-board as the frequency of roll motion may fall in the uncomfortable region. A n increase in G M usually calls for wider and/or deeper vessel, which in turn could increase the cost of the vessel. Unlike other land-based industries, a ship is a moving platform. In the big ships, even with a small rolling or pitching angle, the linear acceleration level, at points away from the axis of rotation of the vessel may be quite significant and may be of great discomfort to the personnel . . i. -2- 1 on board. In the case of small vessels, especially workboats and fishing vessels, where the crew on board has to work on the exposed decks most of the time; lack of balance makes the job much more difficult and dangerous for them. Thus, the safety criterion has to be included into at the preliminary design stage, as nothing much can be done after the vessel has been constructed. The safety criteria can be used as constraints iri the optimization and design parameters may be achieved for desired safety level. For example, in the first category, improvements in a vessel's safety could mean i improved design features, e.g. increased initial stability, watertight deckhouses or a better understanding of the factors that degrade safety in the vessel's lifetime. For the second category i.e. occupational accidents, improved safety may mean improved working conditions on-board the vessels. This could involve reduction in noise levels, as well as vibration and motions i.e. motion amplitudes and acceleration levels, better deck and bridge design, training and education of crew, etc. This is the second category, which has more influence on the 1 human comfort and safety and is looked after through out this work. Traditionally, even at present, ship design is mainly based on existing data from similar vessels, without going very much into the detail of their initial and operating cost, sea-keeping quality, crew comfort etc. Usual practice is to reproduce successful ships or some designs similar to it for a blind success. Designing a vessel based upon previous experience is satisfactory if there are sufficient number of similar type vessels that have experienced a complete spectrum of operating conditions. However, with the rapidly changing operating requirements of today, it is rare to find more than a few similar vessels. Of these similar vessels, none possibly have met the sea conditions that the present vessel may be designed for. Though following a "Design Spiral" concept is quite a common practice in marine design, "Optimization" techniques have not been very much used by ship designers. Optimization has not been used as a tool in ship design, in any of the known ship design software in the market. Most of the ship designers do not have enough background to develop their own computer program for design optimization and rather will be happy to use available design software with optimization tools. This study is a help to marine designers to comfortably use the -3i advantage of optimization tools in their design in achieving both a safer and more comfortable ship. In recent years, expert systems have been developed by virtue of super-speed computational facilities with modern-day computers and development of applied mathematical science. This project will introduce two new objectives. First, the usage of Kimura's threshold value in preliminary ship design, for the safety and comfort of the crew and passengers, and second, a design platform which is easily available and easy to use in terms of mathematical conception. Optimization technology is used for the most optimum and reliable result. Human comfort factors like Rule-I and Rule-II (Please see Chapter 4 for details of these rules) have been used by Akinturk [1] within the expert system environment "Echidna", a software, developed at Simon Fraser University, but Rule-Ill (Please Chapter 4 for details of these rules) was not used before. In addition to these three rules, a fourth rule, named, Rule-IV (see Chapter 4 for details of the Rule-IV) is used in this study, as constraints used in this rule is available from different studies. The software "Echidna" is not easily available in the world market and needs extensive knowledge in computer programming languages. With the present process (Matship), the ship designers will have more confidence and comfort in using this non-traditional but scientific system of design within a user-friendly platform. If there are members of the community that are not taking advantage of these modern analytical capabilities, it is hoped that this thesis will help them appreciate the merits of appropriate application to their problems. -4- 2 An overview of Ship Design Processes For decades ships have been designed using the well known "basis ship approach" of following an existing design, that is, reproduction of an existing so-called successful design, just by scaling it up or down with minimal alterations. Ship design involves numerous uncertainties. Some of them are related to ship's operational environment, such as, it's zone of operation (route), market conditions etc. and the others are related to the uncertainties involving the estimation of the ship's parameter, weight, cost etc. Ship design usually consists of four steps, viz., conceptual design, preliminary design, contract design and detail design [23]. Conceptual design involves a technical feasibility study and finding of different alternatives. Preliminary ship parameters like, length, beam (draft is usually restricted by the operational constraints and are usually proposed by owners), power etc., are usually determined in this stage. In the preliminary design phase, the above parameters are further refined. Model tests, if any, are usually performed during the third phase (contract design) when the design is further improved. After the acceptance of the contract design, the detailed design for the construction of the vessel is prepared. Different concepts in scientific ship design processes have been proposed, developed and modified, but the design spiral concept had been the most extensively used process till the development of the fast computer computational system and optimization techniques. In 1959, Evans [24] first visualized and modeled the process of ship design, now known as the "Ship Design Spiral" (Figure 1). The principle elements of this approach are iterative, sequential application of analyses based on the Newtonian principles of reductionism, mechanism and synthesis utilizing the intuitive skills of the designer. The design starts with the mission requirements and proceeds through the nodes of the spiral towards a detailed design. It is also laborious and expensive. With the refinements made to the "Design Spiral" over time, the basic features remained unchanged. Buxton [21] introduced economic issues into the spiral and time was added as a third dimension by Andrew [22] (Figure 2). Andrew -5- stated that the advantage of his representation is that many dialogues and constraints on a designer can be shown as fundamental to the process. Weight Groups Occupational Resistance & Powering Economics Seakeeping Equipment Structural Design Figure 1: Design Spiral MmpuaiRoiwr on PREVIOUS D E S H N LENGTH S H U E . BEAM DRMUHT X REflUHEUEtlTB â€¢catn " STRUCTURE CONSTRAINTS DiRfCntatHEOeaQH SBPKEEPING * MkNOEuvms FOUM CONSTRAINTS ON THE DEMON PfWCEBtf raw CQN*TfWHT9 QR6HOT1NG FflCMTHE 068HN ENVTCMUENT ENDURANCE EH WpTm WEIGHT J 1 TO NEXT PKMC OF DESIGN AFTER WPflOIHL PfO i CEDUBE OVERALL PICTURE The dsBlgn spirals down the surface cd the model CBrTMEMWt SECTION THFKXJGH MODEL Showing typical steps in spiral Figure 2: Andrew's overall model [22] of the Ship Design Process Mistree et al [14] states that there are two salient features of the design spiral. Firstly, while spirals represent converging towards a product, the process is divergent with respect to information and the increasing detail of definition. Secondly, it is recognized that when the spiral was first formalized and in the years following, represented a descriptive model that portrayed how design was done. It represented both the state-of-art and the state-of-industry. Weight Estimation / / Stability Powering Ring of intersection Figure 3: Design Process by Mistree et al [14] Two principal limitations o f the spiral are that the process o f design is assumed to be sequential and the opportunity to include life cycle considerations is limited. Though the design spiral has been further developed and modified by Andrew [22], into a better iterative helical "corkscrew" to introduce constraints related to the design process and constraints originating from the design environment, directly into the design at various stages, the process still remained sequential. Using this concept directly with the computer for design is not that feasible. Though the spiral approach may result in a satisfactory design it does not promote the identification o f superior solutions. Mistree et al [14] criticized the design spiral approach mentioned above as a process where it is difficult to incorporate life cycle considerations. They proposed the so-called decision based design in 1990. The actual design process, according to this representation, takes place inside the frustum in contrast to the spiral approaches and proceeds around the frustum. Each phase o f the design is depicted as an irregular disk-like shape inside the frustum. In their representation, converging to a solution means the irregular shaped disc becomes circular. A representation o f the design process proposed by Mistree et al is shown in Figure 3. Modern design process developers are using artificial intelligence (AI) o f the computer and information and data available through the Internet. Design until now is limited to the designer's skill, experience and the limited available data within a designer's reach. In their paper, " Decision-Based Design: A Contemporary Paradigm for Ship Design" [14], F. Mistree et al described different developments in ship design process. They highlighted two different model types for the design process in classical engineering design, namely, perspective models and descriptive models, to improve the efficiency and effectiveness of designers and the process they use. These are as follows: The perspective model of design consist of the following basic activities [14]: â€¢ Analysis: A process of partitioning or decomposing any system into its subsystems and components to determine their individual and collective nature, proportion, functions, relationships, etc. â€¢ Synthesis: A process of integrating a collection of sub-systems, so as to create a system with emergent properties. â€¢ Evaluation: A process of assessing the degree to which a solution satisfies the goals that were originally stated. According to the opinion of De Boer [15], there is basically a three-step pattern of diverging, systemizing and converging is generally recognized in each phase and sub-phase of a perspective model. In the first step of divergence, the designer generates a large number of ideas, alternatives and possible solutions. These ideas are then analyzed and synthesized in the second step, into forms that may represent acceptable solutions to the problem. And, finally, the refined ideas are further synthesized, analyzed and evaluated to achieve the most acceptable solution. The descriptive model of design consist of the following four basic activities [17]: â€¢ Problem Analysis: A problem statement is developed. â€¢ Conceptual design: The statement of the problem is used to generate a collection of broad solutions. â€¢ Embodiment design: The solutions in the collection are refined for the purpose of eliminating the less satisfactory ones, till the final most satisfactory one remains. â€¢ Detail design: All the details of the final design are specified and the final design and documentation are produced. There is no certain rules or sequence that all the designers always have to follow, but monitoring a number of designers, Wallace and Hales [18, 19] concluded that the designers: â€¢ develop the functional aspects of the design in stages throughout the problem solving effort rather than during an initial functional development stage; â€¢ use functional considerations that remained qualitative while often the form considerations become quantitative during the problem solving effort; â€¢ make decisions based on qualitative, subjective reasoning during all phases of design; â€¢ use their knowledge to influence the generation of ideas for problem solving; â€¢ use their knowledge to influence the ideas to be evaluated; â€¢ use their knowledge to influence their problem solving method; â€¢ perform mental, visual and physical simulations as an aid to understand problems and evaluating solutions; â€¢ attempt to find a satisfactory solution rather than an optimal one. Deviation from scientific approach might sometimes result in a non-optimal and very often an unscientific solution or design. Influence of human factors on a design may be reduced by computerization of design using optimization and other scientific techniques. Mistree et al [14] comments that, in the Decision-Based Design approach, the main role of the designer is to make decisions. The designer using this approach may use computers, as opposed to design that is assisted by the use of computers, optimization methods or other tools like finite element analysis (FEA). Some basic features of this approach are: â€¢ The designer is the principal decision-maker. â€¢ The design involves a combination of some sequential and some concurrent decisions. â€¢ Decision involves information that comes from different sources and disciplines. In many cases, all information for making a decision may not be available. -9- â€¢ The decision making is hierarchical and interactions between the decisions are a must. â€¢ Use of aids like computers in numerical calculations and analysis and data processing increases the productivity. A more scientific design process is called the Concurrent Engineering Design Process, which is described by Winner [20] as, "a systematic approach to the integrated, concurrent design of products and their related processes, including manufacturing and support. This approach is intended to cause the developers, from the outset, to consider all elements of the product life cycle from conception through disposal, including quality, cost, schedule, and user requirements'". This is characterized by a focus on the customer's requirements and priorities, which is a common case in ship design. In the early stage of concurrent design, major design decisions are made with information based on designer's judgement and experience, called soft information. Potential Time Savings I n c r e a s i n g t h eA m o u n t of K n o w l e d g e A b o u t a Product at a n Early Stage Figure 4: Reduction of freedom of making changes to the design and increase in design knowledge with the progress Mistree et al [14] also highlights the fact that as the design process progresses, the freedom to make changes reduces and the knowledge about the object of the design increases as shown in Figure 4. Concurrent engineering helps in dragging the knowledge curve Figure 4 to the left, resulting in an increase of the ratio of hard to soft information that is available in the early -10- stages of design. The gradual improvement in the quality and reliability of information and data may lead to the design which may be less costly, but more scientific than achieved through traditional sequential methods. The benefits of concurrent engineering (applied to the production systems) in rough quantitative representation are [14], (a) improvement in design resulting in more than 50% reduction of engineering change orders in early production, (b) reduction in product-development cycle by about 40-60% compared to sequential process, (c) reduction of manufacturing cost by 30-40% with multifunction teams, integrated in product and process design and (d) reduction by 75% of the cost of the scrap and rework through the use of product and process design optimization [20]. Report on the benefits of concurrent engineering applied by few companies like McDonald Douglas, Boeing Ballistic System Division, AT&T, Deere & Company, Hewlett-Packard Co. Instrument Division and IBM are shown in ref [20]. It is obvious from the above discussions that tomorrow's engineering designs should follow the concurrent engineering design approach to its best extent for the life cycle. It should also be added that it might not be only one process or approach for all designs. The elements, processes, sequences and approaches within concurrent engineering may vary for the benefit of the design goal. The meaning of using the concurrent system of design in the case of ship design is to have an option of including, modifying and improving the design components within the design program. Concurrent design process is not a common practice in ship design, like in other engineering design. The reason might be the number of uncertainties and variables involved in ship design. One of these design variables is the seastate for a particular rout, which varies much with the location and time of the year. The seastate data are statistical and are time dependent and sometime very occasional peak values are neglected. The designer can not be sure that the designed vessel will survive those peak conditions. Creating a database for all different types and series of vessels need extensive lab work and tank tests and centralized data acquisition, processing and storing option with worldwide accessibility. This is a very expensive option. Some of the professional societies maintain database for different types of vessels and the designers can buy these data. What is important is to update these data and use them as a design tool in computerized ship design. The design environment used in this paper is open to this option of development with acquired knowledge with time. Files containing the database and equations for calculating different ship parameters may be added with different options into the design process, and existing files may be modified from time to time to suit different types and sizes of vessels and their lifecycle. - 12- 3 Optimization 3.1 Introduction: In a classical sense, optimization is defined as the technique of obtaining the best results according to certain objectives, while satisfying some fixed requirements. Recent advancement in applied mathematics, operations research, and digital-computer technology enable the solution of many complex industrial problems in engineering and economics to be optimized successfully by the application of logical and systematic techniques. Nowadays, many crucial decisions are made by choosing quantitative measures of effectiveness and then optimizing it. Douglas J. Wilde and Charles S. Beightler [32] in their book, "Foundation of Optimization", described optimization analogous to mountain climbing. They write: "In mountain climbing, whatever route a mountain climber takes, he recognises the peak when he arrives there. Equally important, the climber can tell when he is not at the top and must therefore continue his climb". To justify the different numbers of ways to achieve optimization, they also write, " Despite strong similarities, the diverse optimization schemes have many intriguing differences and special characteristics. After all, differently shaped mountains require different climbing strategies, and one must base his approach not only on the obstacles in his path, but also on the climate surrounding the mountain and on the equipment at hand. Similarly in selecting a specific optimization technique one should take account not only of the mathematical topography, with its computational glaciers, cliffs, and crevasses, but also of the intellectual climate surrounding the problem and the computing facilities available". Deciding how to design, build, regulate, or operate a physical or economic system ideally involves three steps: First, one should know accurately and quantitatively, how the system variables interact. Second, one needs a single measure of a system effectiveness expressible in terms of the system variables, that is, one should be able to form a set of equations involving all the dependent and independent variables of the system which have influence on that single - 13 - measure. Finally, one should choose those values of the system variables yielding optimum effectiveness. That is, optimization and choice are closely related. The most important step is the first step, for, it is where the decision-maker's professional skill and training is proved essential to achieve a reliable result. A true and clear picture of the system is essential for formulating the equations, boundary conditions and commands used in optimization. For example, in ship design, the ranges of ratios between different parameters and the coefficients etc. are very much dependent on the type and size of vessel and while designing with optimization using bounds and constraints, these are to be very carefully dealt with. In most engineering systems, the measures of system effectiveness are, profit, cost or efficiency. The second step of determining which of these measures is to be optimized, is also very important for optimization process, as one of these measures may be adversely affected by the optimization of the other. In most of the cases a more efficient design will be a more expensive design. Optimization techniques can be applied successfully to problems of a sophisticated and complex situation. Two factors made this possible- the development of high-speed digital computers, and the application of mathematical analysis to the development of numerical techniques for obtaining maxima and/or minima. These numerical procedures bypass many difficulties associated with calculus and the contribution of computer's fast computing capabilities, enables the practical utilization of these numerical techniques in virtually no time and at a tolerable expense. In order to consider attaining certain goals in an optimal manner, we must first define our objective quantitatively. We recognize that the desired objective must depend upon the proper choice of certain variables xj, X 2 , . . . . . . . x , which are sometimes referred to as policy variables n or decision variables. In an ordinary optimization problem, an objective function y(xi, X2,....,..x ), (sometimes called as performance index, profit function, or return function) which n represents some quantity, such as profit or cost or even speed etc. is to be optimized. More - 14- specifically, a particular point (xio, X2o,....,..xâ€žo) in a closed region, i.e., a domain plus its boundaries) that causes y(xi, x ,....,..x ) to be either a maximum or minimum is sought. 2 n In many cases the objective of an ordinary optimization problem cannot be stated very easily as it involves minimization or maximization of some functions with dissimilar entities. In the case of a boat design, there are so many variables, ratios and physical factors of different weights involved that it is virtually impossible to take care of all of them in the optimization. Order of magnitude analysis can be used to simplify the design algorithms to achieve faster result output. The other problem in optimization is the occurrence of more than one extremums (maximas and minimas) within the function's boundary and determination of the location and values of all the relative extrema, with the subsequent determination of the absolute extrema. Unfortunately, this goal is not attainable for all optimization problems. 3.2 Constraints: The auxiliary conditions governing the upper and/or lower limits of the different variables and/or their functional relationship are known as the constraints. These constraints usually represent either system limitations or the physical and economic laws that the variables must satisfy. In ship design there are a number of constraints that have to be used. Different types of vessels have different ranges of the ratios of their principal dimensions based on model tests and taken from existing vessels. If the optimization is run with no constraints, with power or cost to be minimised, it will probably produce a vessel with it's principal dimensions unacceptable by the designer, as the focus will be cost or power minimization and not the expected ratios of the ship dimensions. Say, for a simple example, we want to design a cylindrical tank. For a certain carrying capacity, the minimum surface area and in turn the minimum cost is achieved when the diameter is equal to the depth. This might lead to a dimension of the tank that might not be acceptable by the designer because of space problems - 15- or available material size restriction. This is why we must define the constraints very carefully and clearly. These constraints are usually defined in this study as lower and upper bounds. One of the most common constraints used in ship design is that the weight is to be equal to the displacement. There are two types of constraints, namely, equality and inequality constraints. An example of an equality constraint is the weight-displacement relation, mentioned earlier. When the objective function must satisfy side conditions given as equations relating the independent variables, the optimum necessarily lies within the boundary of the feasible region. This final optimum result output may not be the minimum value in the feasible region, as it also has to satisfy the equality constraint/s. Inequality constraints are generally used for fixing the upper and lower bounds for optimization. In short, most optimization problems require the maximization or minimization of a given objective function subject to a set of constraints and a set of bounds on the policy variables. Mathematical representation of this is as follows [22]: Extremize y (X) with respect to X, Subject to g,(X)<0, g,(X)>0, g,{X) = 0, i=l,2, X i=k+lX+2, /, i=l+l,l+2, m, and A<X<B, Where A and B are vectors whose components represent the lower and upper bounds, respectively, of the components of X. Optimization finds a combination of the variables that would provide an optimum solution, while fulfilling a number of constraints, which in the case of ship design, may be stability, ratios of principle dimensions, draft restriction, maximum available propulsion power, stress level, human comfort, etc. In a mathematical formulation, the constraints are expressed as follows [22]: hj (xj, X2, X3, gi (xi, X2, X3, ,x ) = 0 ; equality constraints with p variables ,x ) = 0 ; inequality constraints with q variables p q -16- It is the inequality constraints that tend to be of more interest in ship design. Optimization techniques need solving simultaneous linear equations and thus, the actual work involved in obtaining solutions increases enormously with a modest increase in the number of independent variables referred to as dimensionality. It may be virtually impossible to get a solution to a problem if the dimensionality exceeds four or five independent variable, even with a sophisticated computer. 3.3 Sensitivity Analysis: According to most textbooks on optimization it is commented that, it is rarely possible to know all the constraint functions with absolute precision. There are a number of constant terms in design problems, which are related to the actual performance and are not predictable before operations begin. This study shows that there are a number of factors that influence the output result. Some of these factors are the upper and the lower bounds, the definition of the point around which the solution is sought etc. One of the reasons for this, could be the fact that, there may be more than one minima or maxima of a function that the optimization is dealing with. It is essential to check the relative weight of the influence of these individual uncertainties upon the calculated optimum results, called "Sensitivity Analysis". Because of the time constraint, the sensitivity analysis was not done in this study. It will be suggestive to carry out a sensitivity analysis in the future to assess the affects of different constraints, bounds and initial point selection, on the output from the present study. 3.4 Optimization in Ship Design: 3.4.1 Introduction: Out of the two most common ship design approaches, the first approach is based on the assumption that all design variables can be expressed in terms of vessel's length and it - 17- employs a procedure in which the length is increased sequentially until a feasible design is found. The second approach is the use of an optimization technique with the advantage of formulating a design problem as an optimization problem. It reduces the computation and opens the way to accommodate the required number of design variables and constraints, and the best solution, as defined by the objective function, is found automatically. Murphy, Sabat and Taylor [1963], developed a systematic procedure to determine the optimum combination of design variables for a cargo ship that would satisfy the owner's requirements using the least cost criterion. Paterson [1984] used this least cost criterion to determine the best design variables for fishing vessels on the Pacific Coast. Mandel and Leopold [1966] used the least cost criterion, and adopted it to a computerized optimization technique that would determine the best vessel dimensions, based on the owner's requirements and the operating scenario for a cargo ship. The first optimization study for fishing vessel design was done by Kupras in 1966. His model was based on Polish Factory Tankers and used methods similar to those previously mentioned. Hamelin [1971] used net parameters, vessel parameters, and least time in port as the criterion to determine the best vessel to be used for ground fishing on the Atlantic Coast. 3.4.2 Optimization Criterion: It is very important to decide the criterion for optimization. It may be based on the operating cost, construction cost, service or maximum speed etc. For the Transglobal Expedition Project, the speed maximization could be the criterion for optimization with inclusion of power as equality constraint, as the truck power at the power takeoff, may be availed from the truck manual. The seakeeping constraints will have to be included as constraint for a safer and comfortable vessel design. The resulting design may be costlier than the one availed with cost minimization criteria. But the designer may justify the result highlighting the fact that the vessel is a special purpose vessel and is not intended to go into commercial service and have to coup up with the prescribed operational conditions. In the case of most other commercial designs, cost minimization may be the most commonly used criteria. In naval ship design, not the cost, however, achieving it's other military goals, such as speed and seaworthiness may be the prime factors for optimization. RMS Pitch and Heave, Peak Pitch and Heave, Stability, minimum weight criterion may be entered as constraints, individually or in a group to check for their affects. With too many constraints, even a highly capable computer fails to find a feasible solution. Care has to be taken to select the lower and upper bounds and the initial point around which a solution is sought, as they have significant effect on the optimum result. 3.4.3 Optimization Software: Because of the easy availability, user-friendliness, affordability and capability of Matlab software for mathematical operations, it has been found to be the most suitable software for optimization for the kind of requirements that the present study has. A brief on the Matlab Optimization toolbox and its options is given in Appendix-B. One of the important advantages of using Matlab is its worldwide accessibility through Internet and option for contribution by different researchers in adding different optimization functions and tools. It also has help line through its web site. To obtain the best commercial vessel, profit maximization and cost (both capital and running) minimization is the best criteria in the optimization technique. The most exciting aspect of this technique is that, it offers the possibility to design a ship, which possesses the best features directly from the factors selected, to make the economic assessment. In this process, the economic criterion is first defined, which is usually called the "Merit Function", M, expressed as a function of a set of n number of variables as follows: M = f ( X i , X , X , ...X ) 2 Where the variables xi, X2, X3, 3 n xâ€žcan influence the behavior of the function M. -19- 3.5 Optimization procedures: In this section, the different optimization procedures are discussed. 3.5.1 Optimization of Linear Function: The solution of a linear set of equations with the computer is known as ''linear programming'. Computer usually uses the "Simplex" technique for the solution, which usually involves an ingenious iterative procedure. The target is to maximize or minimize the merit function M (depending on its definition), while ensuring that the variables satisfy the constraint equations. Usually, the solution is started from an extreme point, called a basic feasible solution and moved to an adjacent extreme point so that the new value of the merit function can be compared with the basic feasible solution. This procedure is then repeated over the entire region within the feasible zone till a true extreme value is found. This procedure is comparatively simple if both the merit function and the constraint functions are linear. In the case of non-linear functions different methods have to be applied. 3.5.2 Optimization of Non-linear Function: As most of the optimizations involve non-linear functions, the following procedures are most popular: 1. Use of derivatives: In the method of Determination of Exact Derivatives, the merit function can be directly differentiated. The root of the equation is found by numerical techniques, such as Newton and Raphson's method. The main drawback of this approach is the need to obtain the first and second derivatives, but the method is very efficient when it can be used. 2. Gradient Techniques: The method of optimization requires knowledge of the second derivative and thus either the availability of an analytic function or of numerical differencing techniques to calculate the value. To avoid this drawback, a technique using only first derivatives has been developed. These techniques are called "Gradient -20- Techniques'''; the most common ones are the "Steepest Descent", "Partem" and "Conjugate Gradient" methods. Convergence using these techniques has been found to be very poor. 3.5.3 Searching Techniques: There are two types of searching methods as follows: 1. Random Search: This technique uses a 'random number generator' and achieves the solution in a random manner. 2. Direct Search: The search is conducted in a more systematic manner that takes into account the 'experience' gained in the searching process. The main advantages of these methods are that no derivative need to be determined and all the evaluations are performed with the merit function. This process is less efficient in arriving at the desired answer. 3.5.4 Mathematical Programming Methods: The following methods are used: 1. Linear Programming: In this process the merit function and all the constraint functions have to be linear functions. The constraints are treated as an essential part of the problem. 2. Non-linear Programming: With this process non-linear merit function and constrained functions can be handled. 3.6 Features of Matlab's Optimization Toolbox Most of the literature in this section has been taken from the manual for Matlab's optimization toolbox. Optimization concerns the minimization or maximization of functions. It is used to solve complex design problems in order to improve cost, reliability, and performance in a wide range of applications. The Optimization Toolbox contains routines that implement the most widely used methods for performing minimization or maximization on general nonlinear -21 - functions. Additional routines are provided for linear programming, quadratic programming, nonlinear least squares, and solving nonlinear equations. Combined, these routines provide a comprehensive set of tools for performing optimization. 3.7 Key Features of Matlab Optimization Toolbox: The followings are the key features of Matlab's Optimization Toolbox: â€¢ Nonlinear equation solving â€¢ Linear programming â€¢ Quadratic programming â€¢ Constrained nonlinear minimization â€¢ Constrained linear least squares â€¢ Minimax â€¢ Multi-objective optimization â€¢ Semi-infinite minimization 3.8 Overview of Matlab Optimization: 3.8.1 Flexible Optimization Environment: With its extensive numerical capabilities and its fully extensible environment, Matlab is one of the ideal systems for setting up and solving optimization problems. The interactive nature of Matlab allows optimization problems to be easily refined and adapted, providing the user with valuable feedback and insight into a problem's so-called "best" solution. 3.8.2 Nonlinear Optimization Routines: The toolbox features a variety of nonlinear optimization routines that are designed to work with scalars, vectors, and matrices. The function to be optimized can be written as a Matlab function or as an expression. Default optimization parameters are used extensively, but can be -22- changed through an optional parameter variable. User-defined parameters can be passed directly to the functions, eliminating the need for global variables. Gradients are calculated automatically using an adaptivefinite-differencemethod, unless they are supplied in a function. You can check supplied gradients against those calculated via finite differences. 3.8.3 Matrix Minimization: The optimization toolbox also includes routines for solving standard matrix minimization problems including linear programming, quadratic programming, and constrained least squares. 3.8.4 State-of-the-art Algorithms: The toolbox provides the latest implementations of leading optimization algorithms: â€¢ For unconstrained minimization: Nelder-Mead simplex search method and BFGS quasiNewton method. â€¢ For constrained minimization, minimax, multi-objectives, and semi-infinite optimization: variations of the sequential quadratic programming method. â€¢ For nonlinear least-squares problems: Gauss-Newton and Levenberg-Marquardt methods. â€¢ For linear and quadratic programming, and constrained linear least-squares problems: projection method. The optimization routines offer a choice of algorithms and line search strategies. -23 - 3.9 Application of Matlab Software in the present study: After setting up all the necessary equations (see) and steps for appropriate results, a Matlab design environment is prepared. Thirty-eight files were created in Matlab format to obtained desired results. The Matlab program for the calculation of different ship's parameters uses these files. They are total weight, displacement, cost, power requirement, metacentric height, horizontal and vertical accelerations at fore, aft and midship, RMS heave, RMS pitch, ratios of peak heave and pitch, sea spectrum, threshold values at fore, aft and midship locations etc. (equations used from the references 1 to 11). A file called, designopt.m (File-1) was then created along with an objective function file myfun.m (File-4) for cost minimization, and a constraint function file mycon.m (File-5) to represent the constraints. The cost functions are listed in Table 1. The file myfun.m, defining the objective function can be of single goal objective function or multi-goal objective function. In a single-goal objective function, only one function or objective is minimized. In this study, a single objective function Cost.m (File 11) has been used. In multi-goal objective function, more than one objective function may be minimized or maximized. These multi-objective functions are defined as F(l), F(2), F(N) etc. In the constraints file mycon.m (File-5), any combination of constraints may be used. Lower and upper bounds on different design parameters, such as L/B, B/T, Cb, Cp etc., were also added in the file to get the optimal result within a desired range of these ratios and coefficients. The goal was to maximize the peak heave [File 16] and pitch ratios [File 17] for reduced motion response levels, and minimize the RMS heave [File 18] and pitch [File 19] and threshold values [File 28 to File 30] for crew comfort. 3.9.1 Optimization Model: For the results presented in this paper, the following optimization model has been adopted. All of the other estimation formulae are identical to those used by Akinturk [1]. -24- Objective function: Minimize cos/subject to: 1. Displacement should be equal to Total weight 2. Design should be stable, i.e. G M > 0 3. RMS heave motion amplitude < 0.7 m 4. R M S pitch motion amplitude < 5Â° or 3Â° (for rule-IV) 5. Peak heave and pitch ratios > 3.0 or > 2.4 or >1.8, starting at the higher value for a feasible solution. 3.9.2 The cost function used is as follows: The cost function is as collected by Bower and Akinturk and may not reflect current costs. The function is used as a criteria relative for the design. This is because the exact construction cost is not available from shipyards. The unit for cost is C$ and that for the ship's parameters is feet. The cost function is given in Table 1. The Matlab Optimization Toolbox is very user-friendly and may be manipulated with the design requirements (like cost or power minimization) and constraints very easily. One of the objectives of this study is to use Matlab in ship design, using optimization techniques and bring this closer to the designer for their usage with confidence. This new platform will be referred to as Matship. In the available software for ship designs, designers have to input the principal parameters from existing data or experience and the software is used to design the boat without optimization. Addition of design based on optimization would be a great benefit to the designers to achieve a certain goal like cost, power or speed optimization. It is obvious that the designer will have to have the motion and other design algorithms to use this process. In case there is no motion algorithm available, the designer may produce the same, using motion prediction programs like SHIPMO or PANMO at the preliminary design stage and finally can produce more accurate ones from the model test, if the option is available. -25- Table 1: Cost function Total cost = capital cost + depreciation cost + insurance cost Where, 1.3221 (hull cost + outfit cost + machinery cost + gear cost) capital cost hull cost = hullweight* 11064(for aluminum), hull weight in Long Tons k 0.00002813(x -173.52x +41880x - 0.0000158); 2 hull weight / k = 1 (for steel) & .55 (for aluminum) and x= 100[L(B+D)/3000] 4/3 outfit cost = 120.0*L fuel cost = (7500/speedmax)*gal/hr*2.5; Speed max in Knots machinery cost = 125*shp*2; where ship is shaft horse power gear cost depreciation cost insurance cost - Z C$200,000 = Capital cost*0.045 f (capital cost)*0.02, I if (capital cost) < 500,000; j (capital cosf)*0.015, \ if 500,000 > (capital cost) < 2,000,000; 1 I (capital cost)* .01, I if (capital cost)> 2,000,000 It is found that Matship gives quicker output (5 to 10 minutes) when no integration is required. Results for any parameters, like the Kimura's value or RMS values, which needs integration, depending on the number of iterations required for an optimal solution, in some cases took more than 4/5 hours for the output. Time required for the output depends on the number of variables used, outputs desired, maximum number of iterations allowed, tolerance factor, the number of integration etc. -26- 4 Previous Work Done at UBC Various researchers have worked on ship design, based on the classical design spiral and using a nonlinear optimization technique. The procedure is based on solving an objective function and a series of equalities and inequalities with available computer codes. At UBC, Bower in 1985 [11] used an optimization method to design an optimum fishing vessel for the West's coast, to replace the aging vessels on the Pacific Coast of Canada. He focused on small trawlers, under 39m in length. The optimization criteria used by Bower for the design of a fishing vessel was based on an operational scenario, which means that the optimization criteria included, in some form, the income and expenses associated with the vessels. For any given set of design variables, a specific set of ship dimensions was calculated, which define the volume and displacement of the vessel. The sum of the weight groups was then subtracted from the displacement of the vessel at the desired draft, which gave the carrying capacity of the vessel including the payload. This payload, in terms of cubic space is termed as the fish hold capacity (FHC) and is used as a measure of a vessel's earning capability. The total operating costs for the given sets of design variables were also calculated, which are the measure of the expenses associated with the vessel. Bower used a cost merit function (CMF) [11] or an optimization criteria based on the ratio of the total annual operating cost divided by the fish hold capacity, the unit being dollars per cubic meter. This also implied that the best vessel will be the one with the lowest CMF, which is a vessel with the lowest operating cost and the largest fish hold. The merit function was therefore defined as: CMF= f (Ship Vector, Operational Scenario) Equation 1 Where, the ship vector is the ordered set (L, B, T, Cm, Cp, V/VL). Bower used the Coupler Optimization Technique, which originated in the NPL Library. This technique could work on an optimization function without requiring partial derivatives and has a guaranteed accurate convergence for optimization functions with less than 10 variables. -27- During the validation of the code, fuel cost from a simulated trip based on this algorithm was compared with an actual one and the difference between the actual and simulated costs was found to be less than 4%. It was further seen that this program predicted a fish hold capacity about 13% less than the actual fish hold capacity of an existing boat. It was thus concluded that the program might be used at the preliminary design stage to fairly accurately predict the design parameters of a fishing vessel. Howard [8] tested the UBC series, fishing vessel hull forms developed at UBC, in the towing tank at BCRI Ocean Engineering Center. Table 2 shows a comparison of fishing vessel parameters of different series. The UBC series was developed by Calisal at UBC [5]. This series is specially designed for Canada's West Coast fishing industry, where there is restriction on the licensed length for a particular hold capacity. The significant feature of this series is its smaller L/B ratio and side bulb at the bow. Table 3 shows the geometric properties of the UBC series models. To study the motion of a vessel in waves, Howard used ITTC standard seakeeping hull model called the S-175 hull form. Accelero-meters, wave-probes, turbulence stimulators etc. as per necessity, were placed on the model and data were collected for 10 seconds at a sampling rate of 40 hertz. Howard did an extensive statistical analysis on these collected data and came up with algorithms to predict the heave and pitch motions and their spectral distributions. Howard compared the acquired data with that already existing for the ITTC model S-175 from University of Michigan and also with the one available from David Taylor Naval Ship Research and Development Center (DTNSRDC). Howard compared these data with the results from numerical modeling obtained by the use of both SHIPMO and PANMO, two different computer programs for the prediction of ship motion in waves (especially for slender hull form). Howard used curve fitting, some times more than one curve to fit to the spectral distribution of the data. From these spectra, both peak and RMS values of the ship motions, which governs the seakeeping criteria of the vessel, could be predicted. A ship motion response algorithm was then developed at UBC, based on the seakeeping testing of the UBC series. This algorithm, which is probably the first algorithm for ship motion response for a series, was tested to see if the effects of variations in beam or draft on ship motions could be predicted for similar fishing vessels, not necessarily derived from the -28- UBC series [4]. The variations in motion response values obtained by the algorithm were compared with the experimental studies done for hull improvements in a towing tank. The same algorithm was also used for the design of fishing vessels by Akinturk [2] using an Expert System shell, called Echidna, developed at the Simon Fraser University. Table 2: Comparison of fishing vessel parameters of different series Series UBC Series BSRA ITU Webb c b .53-.61 .53 - .63 .35 - .56 .42 - .53 L /B 2.6-4.0 4.3-5.8 3.3-5.0 3.2-5.75 w) B/T 2-3 2-3 2-3.2 2.3 3-4.47 4.35-5.1 3.4-6.1 3.85-5.22 Table 3: Geometric Properties of the UBC Series Models Lb (m) B(m) 1 1.552 0.507 2 1.319 3 T(m) c LCB/U, LCF/Ui 3.36 3.74% 7.10% .878 3.01 3.74% 7.10% .700 .878 4.00 3.74% 7.10% 0.615 .700 .878 3.57 3.74% 7.10% 1.99 0.615 .700 .878 3.12 3.74% 7.10% 3.98 2.99 0.615 .700 .878 4.25 3.74% 7.10% 0.204 3.06 2.49 0.531 .653 .813 3.53 3.47% 6.16% 0.507 0.204 3.98 2.49 0.531 .653 .813 4.20 3.47% 6.16% 1.552 0.507 0.170 3.06 2.99 0.531 .653 .813 3.75 3.47% 6.16% 10 1.552 0.507 0.255 3.06 1.99 0.531 .653 .813 3.27 3.47% 6.16% 11 2.017 0.507 0.255 3.98 1.99 0.615 .700 .878 3.71 3.74% 7.10% 12 2.017 0.507 0.170 3.98 2.99 0.531 .653 .813 4.46 3.47% 6.16% 13 2.017 0.507 0.255 3.98 1.99 0.531 .653 .813 3.90 3.47% 6.16% C Lbp/B B/T 0.204 3.06 2.49 0.615 .700 .878 0.507 0.204 2.60 2.49 0.615 .700 2.017 0.507 0.204 3.98 2.49 0.615 4 1.552 0.507 0.170 3.06 2.99 5 1.552 0.507 0.255 3.06 6 2.017 0.507 0.170 7 1.552 0.507 8 2.017 9 Model P -29- b P CM While in principle any nonlinear problem solver that handles inequalities and equalities could be used to design a ship, Echidna with its built-in logic to handle constraints, and the ability to reduce the design space using constraint propagation, offered a superior programming environment. The main difference between an approach, based on design spiral or a sequential solution and a knowledge-based solution is that, in the latter procedure, there was no assigned solution path. The solution path is internally selected by the program based on the available information and constraints supplied to the knowledge base. The Echidna system enables the user to define constraints, ranges, tolerances and relationships for vessel design parameters such as length, beam, draft, displacement, etc. The built-in constraint processing facilitates the information flow between the parameters during each iterative cycle of the design, thus narrowing the feasible domains of the parameters. Table 4: Accidents onboard Ships by Vessel type Vessel Type 1981 Cargo OBO Tanker Tug Barge Offshore Fishing Passenger Ferry Others 37 1 7 11 3 3 59 6 7 12 1982 47 3 7 6 1 5 66 2 8 14 1983 1985 1986 65 63 65 0 4 0 5 9 9 2 8 14 4 2 3 7 19 14 66 43 75 2 4 10 3 6 5 11 16 29 1984 46 0 4 9 2 10 83 5 17 33 1987 61 2 5 5 1 3 105 6 9 45 1988 82 13 3 3 109 4 37 1989 1990 80 83 0 2 2 21 16 9 9 6 5 6 8 3 112 80 5 8 6 13 7 101 115 The objective of Akinturk's study was to reduce the motion effects on the crew or to increase crew comfort and safety. Akinturk studied the occupational safety on board fishing vessels around the world and performed statistical analysis on the accidents and related factors, in an attempt to understand the working conditions on board fishing vessels and expose the problem areas and detecting the pattern leading to an accident. Table 4 and Table 5 is the result from data [25] collected by him reflecting the types of vessels and contributing factors in casualties on board of vessels. It was concluded by Akinturk that the working condition on board fishing vessels need improvement and to do that, the primary factor, namely, 'the motion of the -30- vessel', should be taken care of, which is influenced by factors like, the principal dimensions and speed of the vessels. Two rules were developed by Akinturk [0] to reduce the heave and pitch motion RMS levels at various forward speeds and sea state conditions. Akinturk concluded that, it is possible to reduce the ship motion RMS values by adding specific rules to the design process. The effect of these rules on the principal dimensions of fishing vessels and the cost of the vessels (including the cost of construction) were also investigated for various hold volume requirements. The results suggested that these rules could be used for any small craft and the design method could also be included in an optimization procedure. Table 5:10 year averages of percentage values of primary contributing factors in casualties aboard all vessel types. Factor Human Factor Environmental Conditions Vessel Conditions Eq u i pment/Structu ra 1 Others Unknown 1981 98 13 3 11 0 21 1982 93 14 2 13 1 36 1983 1984 87 57 9 7 2 5 18 13 3 0 36 95 1985 46 1 4 5 0 168 1986 1987 1988 92 194 215 6 11 8 4 7 2 7 6 9 1 0 0 22 98 33 1989 324 6 2 9 1 17 1990 286 11 10 4 2 11 Kimura et al [10] developed relationships between the maintenance of human posture and ship oscillatory motions. They suggested a threshold value, K, for the maintenance of human balance on a ship. These rules, which were developed by Akinturk [1] and Kimura [10], have been used in this study as constraints in the design process and the results have been compared with available results for validation of the design process. This study applies an optimization technique in a Matlab environment and uses these ergonomic rules as constraints in the design process. In the optimization model, the algorithms given by Howard are used for the prediction of heave and pitch motions. A UBC series' response function [6] is given as: -31 - T| = 1 + A/(exp (a - 5*co ) ) - 1/(1 + exp (p - y*co )) 2 e e Equation 2 Where r\ is the non-dimensional heave or pitch amplitude, given as (z /^ ) and (0 /k^ ) a a a a respectively, and A, a, p\ 8, y are the coefficients given for heave and pitch motions separately in appendix-A. Based on the above formulation by Howard, Akinturk [0] generated a number of heave and pitch response functions by systematically varying the parameters used in Equation 2, and developed the following empirical formulae for non-dimensional circular frequencies of Peak Heave and Pitch Responses: (38.8668-11.5286 Cb-5.2002Lbp/B-1.1912B/T) 2 CO 2 nz = (0.8652-0.2816Fn) (49.6354-20.4321 Cb-6.8076Lbp/B+0.6441 B/T) 2 2 Equation 3 (2.4541-0.7280 Cb-0.3283 Lbp/B-0.0752 B/T) 2 2 _ Â»n0 - - (0.9481-0.3086 Fn) (2.8599-1.1773 Cb-0.3922 Lbp/B+0.0371 B/T) 2 2 Equation 4 Where co and co 0 are non-dimensional circular maximum response frequencies for heave nz n and pitch motions respectively. conz or co 0 = (co or CO )/V(g/T) n z 0 Equation 5 Where co or 000 are dimensional [radian/second] circular peak frequencies that maximize a z ship's response functions for heave and pitch motions respectively. In order to estimate some of the RMS motion characteristics of UBC series models, Akinturk also used a ship motion estimation program, called SHIPMO [13]. Using a regression analysis -32- on the data obtained from the runs of SHIPMO for thirteen UBC series models he developed the following empirical formulae for the RMS Heave and Pitch response of the series: Zrms/Hm = Fz + 0.74616424 Fz - 0.46955309 Fz,3 2 ; Equation 6 e /H RMS 1/3 co 2 max /g = F - 0.46697339 F + 0.56576473 F 3 2 e : e e Equation 7 Where, Fz = Fzl Fz2 Fz3 Fz4 Fz5 Fz6. (see Appendix-A for Fzl, Fz2, F = F i F 2 F F 4 F 5 F 6 F 7 (see Appendix-A for Fei, F ,.. e Znns and e Q 03 9 6 0 0 e2 ,Fz6) and ,Fe ). 7 Onus are the RMS heave and pitch amplitudes respectively. 9rm is in radians. H1/3 is the S significant wave height for a given sea state, co x is the circular frequency of the peak energy ma in the energy spectrum. Akinturk reported the statistics of accidents on board of different types of vessels around the world and concluded that accidents correlate well with platform acceleration levels. Based on the statistics, Chaplin and Burney [27] believe that the hazardous conditions on board of fishing vessels are partly because a fishing vessel is a moving platform to work on and exposes fishermen to the elements which are not generally experienced in other industries. Aboulazm [28], Andrew and Lloyd [29], Amagi and Kimura [30] and Pingree [31] agree that, ship motions are one of the main contributory factors for occupational accidents and/or adversely affect the crew performance on board. To reduce motion-related accidents in vessels, Akinturk included a seakeeping criterion in the preliminary design stage. McGreer, and Calisal [7], have shown that knowledge-based design can be a useful tool for the design of a fishing vessel. Akinturk used the motion algorithms from the work of Howard and Kimura et al and used an expert system environment called Echidna, a logic programming language embedded in an object oriented framework developed at the Simon Fraser University's Expert Systems Laboratory. He then calculated ship parameters for improved seakeeping qualities. In the first stage, he validated his program by using a monohull seiner, named Kynoc, operating off the pacific coast of Canada. The results validated well Echidna'?, knowledge based design -33- system, as the procedure produced results similar to the Kynoc's actual data. As a second stage, he extended his study on a number of steel and aluminum vessels, and reproduced the trend reported by Calisal and McGreer [7]. This study takes this process a step further by using the ergonomic criterion directly in an easily available and user- friendly design platform. It highlights the basics of human factors in small boat design and proposes a method to include crew and/or passenger safety at the preliminary stage of the design. Four rules for ergonomic factors were used in this thesis. Out of these, first three rules were mentioned in Akinturk's [1] paper. Akinturk [1] used the first two rules in his design process. This study will include the third rule from Akinturk's paper and add a fourth rule in the design process. These rules are termed as Rule I, Rule II, Rule III and Rule IV respectively and are described below: 4.1 Rule I: Shift ofpeak response frequencies for heave and pitch motions: Rule Set I is based on the idea that when a dynamic system is excited near its natural frequencies the amplitudes of motion are expected to be large. Similarly, under normal circumstances, for a given sea state, a ship will experience large amplitude motions when the frequencies of the high energy waves coincide with the peak response frequencies of ship motions. With the implementation of this first rule, design of the vessel will be done in such a way that the peak frequencies of motions will not coincide with the frequencies of the high energy waves in the sea, for a specific design sea state (Figure 5). However, the amount of shift in the peak resonance and the peak energy is an important design factor and should be determined in conjunction with cost, ergonomic design rules and other physical rules of design such as the ones related to stability. A ratio has been defined to quantify the amount of spread between the frequency of the sea state's highest energy waves, and the natural frequency of the vessel. -34- f sea Frequecy f ship Frequency Figure 5: Shift of peak frequencies of sea waves and ship's response Ship response peak frequency Ratio of Peak Frequencies = Sea spectrum's peak frequency Equation 8 In this equation, the peak frequency for a sea state corresponds to the frequency of peak wave energy, whereas for the vessel it is the peak response frequency for a particular motion, e.g. pitches motion. Three alternative rules for the "ratios" are given as: 1st alternative : Ratio >= 3.0 2nd alternative: Ratio > = 2.4 3rd alternative: Ratio >= 1.8 The first alternative some times proved to be infeasible, then the other alternatives were used in order of appearance in the above set of rules. Shift of the vessel's natural frequency to higher frequencies resulted in somehow smaller vessels in general. -35 - Application of Rule-I tends to produce a design with shallower draft, which makes the vessel stiff in heave motion. In Matship, constraint may be applied to the lower bound for the draft to avoid stiffness. New rules can be added to avoid such problems. This study uses Rule-I to validate the present platform for ship design, as results from previous studies are available with the application of this rule in ship design. 4.2 Rule II: Constraints on RMS heave and pitch motions: This algorithm was developed to estimate the RMS values of heave and pitch motions of a vessel for a given sea state and impose constraints on some motion RMS values in the preliminary design. The rules incorporated are given below. The first rule is related to RMS values of heave motion amplitude and the second to the pitch motion amplitude. The aim is to reduce both of these values as much as possible. A RMS value is related to the total energy of the motion spectra. RMS heave amplitude < 0.7 [m] RMS pitch amplitude < 5.0 [degrees] As expected, in most of the cases studied, Rule II increased design lengths and costs of the vessels. 4.3 Rule III: Constraints on K (Kimura's) values: With the view to maintaining human balance on board a ship, Kimura et al [10] reported a relationship between a crewmember losing his/her balance on board and the ship's oscillatory motions. Based on experiments, they developed a criterion correlating the motion conditions on board of fishing vessels and the stability of a standing crewmember. It is assumed that the stability of human posture is strongly influenced by the experienced motions, and hence, frequency, amplitude and the relative direction of the ship in waves. After a series of experiments on full-scale vessels and a number of subjects, they suggested that when the threshold value K, defined below is greater than 0.22, crewmembers are no longer able to maintain their balances. -36- K = Mix + 0.1659Mly + 0.1133Mlz < 0.22, Equation 9 Where M l is the first moment of the power spectrum of the acceleration on the deck and the x (longitudinal), y (transverse) and z (vertical) are coordinate directions. M i is defined as, Mi = f coS(co)da a 0 Equation 10 Where, S(co) = acceleration power spectrum density function and, co = circular frequency. In the formulation used in this study, the acceleration components due to gravity and in y direction, i.e. 0.1695M , are neglected and the accelerations are in the shipframeof reference. y The omitted terms in the y direction correspond to the accelerations due to sway, yaw and roll motions. This is based on the consideration that roll motion depends on the vertical location of center of gravity of the vessel and therefore it is difficult to deal at this stage of the design. Furthermore, the example designs were done for head seas conditions; the contribution to acceleration from roll, sway and yaw motions were also considered to be small and are neglected, although this may not be true for roll motion in real situations. In the calculation of the acceleration terms, the following equations have been used: f z CosÂ© + (Loa/2)0 Vertical acceleration =\ zCosO (perpendicular to the I z CosO - (Loa/2)0 plane of deck) at the bow at the midship at the stern \ z SinO Horizontal acceleration = \ z Sin6 (along the plane of deck) I z Sin6 at the bow at the midship at the stern -37- Where z is the heave acceleration, 0 is pitch amplitude and 0 corresponds to the amplitude of pitch acceleration. Kimura's Threshold Value concept is criticized for the fact that, human being usually orients themselves to have less effect of the motion in their body. In Kimura's experiment the subject did not have the freedom to change their orientation. Also, though the effect of the surge arid sway motions is greater compared to the effects of the other motions in Kimura's Threshold Value equation, this two motions have been neglected in the present formulations. In the experiment for the statistical prediction of motions by Howard [8], the surge brake on the carriage was released before taking the readings and thus the effect on surge on the motion prediction algorithm is taken care of. In the formulation for the calculation of the first moment of the power spectrum the surge and sway motions are neglected. This is a flaw of the present formulations but this can be rectified or improved through further experimentation. Akinturk et al [1,2] reported that inclusion of Rules I in the design produced, approximately 20% reduction on the average of the K values at the three locations of fore, midship and aft, for a speed of 0.01 [kn.] and sea state of 2. Whereas Rules II produced an approximately 10 % reduction on the average for the same speed and sea conditions. For the same speed 0.01 [kn.] but sea state 5, the average reductions in K values were around 15% for Rules Set I and 2.5% for Rule Set II for all of the three locations on deck 4.4 Rule-IV: Constraints on RMS heave acceleration and RMS pitch motion: A new rule, named Rule-IV, has been added in this study to reduce the motions of the vessel for human comfort. This rule implements the limiting values on the RMS heave acceleration and that of pitch amplitude from the following study. Out side UBC, Pingree [31] did a different study on the effect of ship motions on human comfort. He reported that, for personnel performing tasks of a continuous nature onboard vessels, the upper limits for tolerable RMS vertical acceleration in g (acceleration due to gravity), are used as 0.2 (at bridge) in USA, 0.16 (at 0.2L from forward perpendicular) in -38- Netherlands, 0.18 (at fore perpendicular) in Germany, 0.14 (weighted average) in the U.K., and 0.20 (at 0.2L from forward perpendicular) in Canada. It was also noted that there is an agreement of a seakeeping design criteria applicable to personnel for continuous exposure of 4.5 degrees roll, 3 degrees pitch and 0.18g vertical acceleration, all RMS. As, we are not considering the roll motion in our study, a constraint of 3 degrees on RMS pitch amplitude and 0.18g on RMS vertical acceleration will be used as Rule-IV. That is Rule-IV can be expressed as follows: RMS Vertical Acceleration < .18g, g being acceleration due to gravity, RMS Pitch Amplitude -39- < 3.0 degrees 5 Summary of the files used in "Matship" A number of files have been created in this study, some of which estimates certain parameters of the design and the others are created to define the objective functions and constraints etc. Various Matlab Commands have been used to write these files. Constants and vectors are used in the different files to define parameters like density, gravity, free-board coefficient, hold capacities, sea states, significant wave heights, wave lengths and wave periods at different sea states from ITTC table etc. In addition, a number of empirical equations, like that for specific fuel consumption and weight group calculation etc. has been used. A number of algorithms produced by the previous researchers have also been used in the files. The file designopt.m [File 1], is the main file in the design process, which is used for optimization purpose to get the values of different design variables based on the objective function ['myfun', File 4] and the constraint file ['mycon', File 5] containing the set of constraint functions. The file we2w.m [File 2] returns w, wave frequency for a given encountered frequency, we. The file sspec.m [ F i l e 3] reproduces the standard ITTC sea-spectrum for given seastate. Use of algorithm for a particular seastate of a specific route, if available, is better for more reliable results. The file myfunc.m [File 4] is used to define the objective functions. F(l) and F(2) are the subfunctions of this objective functions, which are to be minimized by the optimization procedure. The function myfun, F(l) and F(2) are all functions of the variables listed within the bracket. The file mycon.m [File 5] contains a list of constraints that the Matlab Optimization toolbox uses, to produce the results. There can be a group of equality and inequality constraints for the optimization procedure. The constraints listed as functions c(l), c(2) ceq etc.fexcept c(7)) are different files, created separately to define the constraints. These constraints, usually -40- defines the lower and upper bounds, the range within which a result is targeted. Constraint c(7) is a constraint based on licensed length. The file consbtl.m [File 6] defines the upper bound of the beam-draft ratio as a constraint in optimization, while, the file cons_bt2.m [File 7] defines the lower bound of the same. The file conslbl.m [File 8] defines the upper bound of the length-beam ratio as a constraint in optimization, while, the file cons_lb2.m [File 9] defines the lower bound of the same. The file consdisp.m [File 10] defines the condition of equality, of the displacement and total weight of the vessel as an equality constraint in optimization. File 11 to File 13 calculate the cost, displacement and total weight of the vessel, respectively. File 14 to File 19 calculate the heave amplitude, pitch amplitude, peak heave ratio, peak pitch ratio, RMS heave and RMS pitch, respectively. File 20 to File 25 produce the spectrum for horizontal and vertical accelerations at fore, midship and aft deck of the ship. The file rmsveraccaft.m [File 26] calculates the vertical acceleration at the aft of the vessel and this is used for the constraint in rule-IV. The file stab.m [File 27] estimates the transverse metacentric height of a loaded vessel, while the file stablite.m [File 28] computes the transverse metacentric height of a light vessel. The files tmOl.m, tm02.m and tm03.m [File 29 to File 31] compute Kimura's threshold value at the aft deck, midship deck and fore deck of the vessel respectively, from the first moment of power spectrum of the acceleration in longitudinal (x) and vertical (z) directions. File 32 calculates the required power for the UBC series fishing boat. -41 - The file Sminteg.m [File 33] defines the technique of integration by Simpson's method. File tmintp.m [File 34] is used in the optimization to find the minimum threshold value at different seastates and speed. The file tmmax.m [File 35] is used in the optimization to find the maximum threshold value. The file vcrit.m [File 36] calculates the maximum attainable velocity at any location (fore, midship or aft) at which Kimura's threshold value will just be .22. This is useful in deciding the location of the workspace onboard the vessel for maximum comfort and safety of the crews. The file okul.m [File 37] reads Kimura's threshold value (K) calculated in the tmOl, tm.02 and tm.03 files and produces plots of K versus speed for each sea state. This also calculates maximum attainable speed for a given operational sea state and produces plots for the same. The file maintrgb.m [File 38] is the main file in the design process for Transglobal Expedition, which is used for optimization purpose to get the values of different design parameters for the ferry, based on the objective function and the constraint function. The objective function and the constraints in this process of optimization are written within this file, unlike the designopt.m file, where the objective and constraint functions are separate files. The results from optimization in this study are based on cost minimization. Some of the important commands used in the above mentioned files are described in Appendix- C and some of the files created for Matship are shown in Appendix- D. Figure 6 shows flow diagram of Input and Output variables in the Matship Process. The input variables may be grouped into owner's requirements, objective functions, and initial points around which the solution is expected and the constraints to be satisfied by the output result. -42- Input List: (Owner Requirements) â€¢ â€¢ â€¢ â€¢ Hold Capacity Material type Design speed Design sea state Objective function: â€¢ Single goal optimization Constraints: Ship Vector (Initial Values) > minimize cost, or > minimize power > etc. â€¢ Multi goal optimization minimize (RMS heave and pitch amplitudes and cost) > minimize (Cost and peak heave and pitch responses) > etc. â€¢ â€¢ MATLAB Environment > Optimized ship vector L,B,T,Cb,Cp,Cm ... â€¢ â€¢ Parameter Ranges > Length, beam, draft, CB, L/B, B/T Displacement = Total weight Stability Optional Constraints > Rule I (peak heave and pitch response) > Rule II (RMS heave and pitch amplitudes) > Rule III (Threshold value) > Rules IV (RMS pitch amplitude and vertical acceleration) > RMS heave and pitch accelerations Figure 6: Flow diagram of Input and Output variables in the Matship Process -43 - 6 Results and Discussions 6.1 Introduction: In this chapter, the results obtained in this study are presented and discussed. As it is shown in the figures given below, the earlier works done by Bower [11], Calisal and McGreer [7] and Akinturk [1] were successfully carried a step further. Kimura's rule that directly relates human balance to the platform motions was explicitly included into the preliminary ship design. The results related to the validation of the code, developed in this study, are presented first. This new Matlab code was able to duplicate reasonably previous results reported by Akinturk [1,2]. Effects of Kimura's rule on the various aspects of the designs, is then discussed. Finally, the effects of using different rules on the ship's parameters are discussed. It should be mentioned here that the results in this study are based on local optimization. Application of global optimization technique, if available and applied, may give different results. It is important at this stage to discuss the differences in the design platform and features of Echidna and Matship, to better understand their result output and comparison with each other. Following section gives the important highlights of these two design platforms. 6.2 Differences Between the results obtainedfrom Echidna and Matship: Echidna's solutions are based on constraint propagation and satisfaction. Every variable used in Echidna has a pre-assigned domain to it by the user. During the execution of Echidna, these domains are divided into sub-domains. A solution is then the union of the sub-domains selected for each variable, which satisfies the constraints. Hence, Echidna's solutions are shown as intervals, representing these sub-domains. These selections are usually done randomly, unless the user specifies otherwise. Furthermore, there may be many and discrete -44- sub-domains for some of the variables, which constitute different solutions. Echidna results shown in the figures presented in this thesis do not always represent the all of the solution intervals, particularly if a variable has discrete sub-domains as solutions. By adding new constraints to the design knowledge base in Echidna, one can shrink these sub-domains to such an extent that it may eventually converge to a so-called minimum or maximum (optimum) solution. There are no concepts of an objective function and an initial point in Echidna, the way they are defined and used in Matship optimization. Changing the number of variables and constraints during, the flow of program execution in Echidna is possible and can be implemented easily as alternative models of the problem at hand. Rule Set I used in this study is a good example of defining alternative constraints. In a given time during a run, only one of the rules in Rule Set I will be active. If Echidna is not able to obtain a solution with that rule (or constraint), the other rules in the set will be tried one at a time. Therefore, in Echidna, it is difficult to know exactly, which of the alternative rules (constraints) were used in obtaining a solution. This is in contrast to optimization, in which the constraints can not be changed during optimization process. Some of the design algorithms used in this study are empirical relationships among the certain parameters of the existing vessels. For instance, length/beam = 0.017742 length + 1.690323 Such a relationship is very useful in obtaining an initial point for the optimization process to start in Matship or can be used as a constraint. On the other hand, if this relation is used in Echidna, it will always be considered as a constraint. Hence, any solution given by Echidna will satisfy this relationship. Therefore, although the equations used both in Echidna and Matship are the same, the way those equations are being used may be different sometimes. With the above in mind, when formulating the design problem defined in Echidna as optimization (Matship), some of the design information (e.g. the above equation) is used to -45- define an initial point for optimization in Matship. The design philosophy was that the existing designs/vessels represent a working solution, hence, information similar to the above equation is used as an initial point for optimization. The algorithm used in Matship finds a local minimum in the neighborhood of the initial point, which satisfies the constraints. The number of constraints and the location of the initial point remain a subject for further research, as they may greatly affect the optimum solution found by Matship. However, Matship has the flexibility that the designer can change the initial point and the constraints to suit his/her requirements. In order to illustrate this point further, the constraint given in Equation 11 is removed and the results are compared in Figure 7 and Figure 8. The constraint to be removed relates ship length to its hold capacity as follows: Length= 3.3 * (28.5 * HoldCapacity)'â„¢ 9 Equation 11 Where HoldCapacity is in long tons and Length is in feet. Figure 7 shows that by excluding this constraint, optimization results converged to a much shorter ship length. Since the cost function used in this study is proportional to length, a similar trend was obtained in the cost comparison (see Figure 8). Although such shorter vessels may not be desirable for different reasons, the final choice is still in the hands of the designer. In the following sections, a more detailed comparison between Echidna and Matship results will be presented. As for the present discussion, both Echidna and Matship results with this constraint (Equation 11) on are similar to each other. Matship results for higher hold capacities converged to the lower bounds of the solutions given by Echidna (see Figure 7 and Figure 8). As mentioned above, Echidna solutions are intervals, thus, in the figures, there are two curves associated with those solutions: lower and upper bounds of the intervals. -46- 100 O) c 0) -â€¢â€” -Aâ€” -Aâ€” -Bâ€” 50 Matship - A Matship - B Echidna - lower bound Echidna - upper bound 100 150 200 250 300 Hold Capacity [LT] Figure 7: Influence of including Equation 11 as a constraint on the lengths of the designs. (Matship-A: Matship results with Equation 11 included as a constraint into the design; Matship-B: Matship results without Equation 11 included as a constraint into the design; Echidna-lower bound: lower bounds of Echidna results with Equation 11 included as a constraint into the design; Echidna-upper bound: upper bounds of Echidna results with Equation 11 included as a constraint into the design). *Â» 2.0E+06 c O 1.5E+06 J 1.0E+06 5.0E+05 0.0E+00 50 - â€¢ â€” Matship - A -Aâ€”Matship - B - A â€” Echidna - lower bound - B â€” Echidna - upper bound 100 150 200 250 300 Hold Capacity [LT] Figure 8: Influence of including Equation 11 as a constraint on the costs of the designs. (Matship-A: Matship results with Equation 11 included as a constraint into the design; Matship-B: Matship results without Equation 11 included as a constraint into the design; Echidna-lower bound: lower bounds of Echidna results with Equation 11 included as a constraint into the design; Echidna-upper bound: upper bounds of Echidna results with Equation 11 included as a constraint into the design). -47- 6.3 Validation of the process: For the purpose of validation of the Matship platform, the fishing vessel "Kynoc" and the UBC Series Fishing Vessels were redesigned with this new process. The results were then compared with the available data for these two vessels, obtained from actual data and that from the studies by Bower [11] for "Kynoc" and Akinturk [1 and 2] for the UBC Series. These two vessels were selected because these studies were done in UBC and sufficient data is available for a proper comparison. 6.3.1 Redesigning of Kynoc with Matship: As a first step of the validation process, a real fishing vessel, Kynoc was redesigned in Matship Optimization design program. The comparison is shown in Table 6. The Matship design version of Kynoc is very similar to the real vessel. In obtaining these results, two additional constraints were used in the design, which were L/B and B/T ratios set equal to the values of real Kynoc. Otherwise, Matlab Optimization would converge to a smaller vessel. Results from Matship and Echidna for the dimensions for "Kynoc" can be compared with those of real "Kynoc" in Table 6. Table 6: Comparison of the results from Echidna and Matlab to the real Kynoc. Real Kynoc Fishing Method Material Design sea state Hold capacity [LT] Speed [kn.] Lwl [ft] Seiner Aluminum 5 25 10.3 56.7 20 B [ft] T[ft] 4.92 Cb 0.519 Cm 0.728 Cp 0.712 Displacement [LT] 82 Required power [HP] 420 Cost [Can $] N/A -48- Echidna Matlab Seiner Seiner Aluminum Aluminum 5 5 25 25 10.3 10.3 56.7 58.71 20.71 20 4.92 5.09 0.52 0.519 0.728 .728 0.714 .711/.717 83.5 92.01 134/378 259 1.20E+06 1.29E+06 In Matship process for "Kynoc" speed was taken as 10.3 knots, similar to the speed of the actual "Kynoc". Other inputs in the design process were Cm, seastate, hull-material etc., similar to that of real "Kynoc" [Table 6]. Upper bound for Cb was taken as 0.52. There is a large discrepancy in the required horsepower value between the Matship calculated one and that of the real "Kynoc". Matship result is within the range of Echidna result, while the main propulsion unit in real "Kynoc" is around 38% more than the Matship value. In the real Kynoc, part of the power from the main propulsion unit might have been utilized for electric power generation, running pumping, fishing gears and other systems or rated for operating condition such as fishing gear operation. 6.3.2 Redesigning of UBC Series Fishing Vessels with Matship: The UBC Series was chosen for the availability of its vast database of motion characteristics, from a number of studies done at UBC. The work done by Calisal and McGreer [7], Howard [8] and Akinturk [1] were based on UBC Series. As a continuation of their work, this study also used the UBC Series design algorithms. However, the concept developed here is independent of databases coded and can be applied to any other series. For the figures presented in this chapter, a set of design parameters were reported for hold capacities of 10, 25, 50, 75, 100, 125, 150, 175, 200, 250 and 300 long tons. Whenever applicable, the design and operational sea states are Beaufort Seastate 5, unless otherwise mentioned. Figure 9 compares lengths of the designs obtained by Akinturk to those obtained by Matship. In both cases, there were no sea keeping criteria included in the design procedure. In Matship, license length constraint was not implemented. In fact, this constraint is effective only after 75 long ton hold capacity for Echidna-designs and 175 long ton hold capacity for Matship designs. Matship designs are shorter in length compared to Echidna results at 10 tons hold capacity and from 75 long tons hold capacity through around 150 tons hold capacity and are -49- very similar in other ranges. Unlike Echidna results, the variation in length for Matship results is smoother. Figure 9: Comparison of length values obtained by Matlab and Echidna for UBC Series. Figure 10: Comparison of beam values obtained by Matlab and Echidna for UBC Series. Comparison of the beam values of Echidna designs and Matship designs is given in Figure 10. The differences between the two beam values are very small, except within the range of hold capacity from 250 long tons to 300 long tons. -50- _0_ 50 100 150 200 250 300 - Echidna, Lower Bound - Echidna, Upper Bound Hold Capacity [LT] -Matship Figure 11 Comparison of draft values obtained by Matlab and Echidna for UBC Series. Figure 11 shows the comparison of drafts obtained from the Echidna and Matship. For Matlab Optimization, a smoother variation of draft with hold capacity is observed. The differences between the two draft values are much smaller compared to the differences for length values. This figure shows that both the results match closely with each other, especially in the range of 50 to 250 long tons hold capacity. The solutions from optimization are fairly within the ranges given by Echidna. Figure 12 shows comparison between displacement from Matship to those obtained by Echidna. The results from Matship matches very closely to the lower bound of the Echidna results. Cost optimization applied in Matship results in smaller vessel designs. Up to 150 tons hold capacity, the Matship results are within the bounds of Echidna results and beyond 175 tons hold capacity its slightly below the lower bound of Echidna. Figure 13 shows comparison between costs from Matship to those obtained by Echidna. There is a slight reduction in cost produced by Matship below the lower bound of Echidna results up to hold capacity of 150 long tons. Beyond 300 tons of hold capacity Matship produced values higher than the upper bound of the result from Echidna. -51 - 600 100 50 - â€¢ â€” Echidna, Lower Bound -aâ€” Echidna, Upper Bound -Aâ€” Matship 150 200 250 300 Hold Capacity [LT] Figure 12: Results for vessel's displacement from Matship and Echidna. 3.0E+06 2.5B06 o 2.0E+06 Z 1.5E+06 8 1.0B06 5.0E+05 0.0&00 â€”Echidna, Lover bound -Bâ€”Edidna, Upper bound -Aâ€”IVfetsHp 50 100 150 200 250 300 Hold Capacity [LT] Figure 13: Results for vessel's cost from Matship and Echidna. 6.4 Effects of Kimura's Crew Safety Criteria on the designs In this section, the effect of the direct inclusion of Kimura's Crew Safety Criteria on different ship parameters is analyzed and discussed. In the comparisons in this section, the percentage differences were calculated using the following formula: -52- Percentage difference = 100 * (Constrained value - Unconstrained value) / Constrained value The control value is the unconstrained value. Figure 14 reflects the percentage increase in waterline length at different hold capacities, comparing the results with no constraint and the one with Rule-Ill. Average increase in length is 9.92%. Graph shows percentage increase in length increases with increase in hold capacity. This is because of the equation for vessel's length, used for UBC Series fishing vessels, is a nonlinear function of hold capacity. 500 . 1000 . 1500 . 2000 . 2500 . 3000 , Hold Capacity [LT] Figure 14: % changes in Length due to Kimura's Crew Safety Criteria (Rule-Ill) Figure 15 shows the percentage difference in beam values, the average being about 10%. Note the non-linearity of the curve. As ship's beam is one of the major contributing factors in the cost calculation, the optimization procedure always tries to minimize the cost, as far as possible. In case the procedure can not converge to a result for a certain hold capacity, Matship increases the beam to get to an acceptable solution, still minimizing the cost. Two significant graphs are Figure 16 and Figure 17, showing the percentage differences for draft, T and the block coefficient, Cb. Note the opposite nature of the two graphs. While the -53- inclusion of crew safety increases draft, the Cb decreases and vice-versa (exception is for 75 tons hold capacity for reasons unknown). The optimization shows the tendency to decrease draft for cost minimization and to compensate for the total buoyancy Matship increases the Cb of the vessel. On the other hand, it was noted that, if power minimization is the objective function, it optimizes all the variables that affect the power requirement for the propulsion, such as draft, Cb etc. 100.0 150.0 250.0 300.0 Hold Capacity [LT] Figure 15: % changes in beam due to Kimura's Crew Safety Criteria (Rule-Ill) Figure 18 shows percentage increase in the cost of the vessel versus hold capacity with and without crew safety constraint. Figure 19 shows the increase in total weight, for the above inclusion. One can see that the increase in cost is directly related to the increase in weight. Increase in the cost of machinery, out fitting etc. are other contributing factor to the total increase in the vessel's cost. Average increase in cost is 7.45%. The graph shows that the cost increases from 2% at 25 tons hold capacity to a maximum of 14.4% at 75 tons hold capacity; then again decreasing to 2% at 300 tons hold capacity. -54- 20.0 -20.0 0.0 I . 50.0 ' 100.0 ' â€¢ ' I â€” ! i 150.0 200.0 I 250.0 . I 300.0 Hold Capacity [LT] Figure 16: % changes in draft due to Kimura's Crew Safety Criteria (Rule-Ill) 0.0 50.0 100.0 150.0 200.0 250.0 300.0 Hold Capacity [ L T ] Figure 17: % changes in block coefficient due to Kimura's Crew Safety Criteria (Rule-Ill) -55- 16.0 100.0 150.0 200.0 Hold Capacity [LT] Figure 18: % changes in costs due to Kimura's Crew Safety Criteria (Rule-Ill) 250,0 300,0 H o l d Capacity [ L T ] Figure 19: % changes in total weight due to Kimura's Crew Safety Criteria (Rule-Ill) Figure 20 shows the percentage decrease in power requirement for the inclusion of crew safety constraint. Power requirement is a major contributing factor and a variable in cost calculation. Thus, cost minimization criteria seems to minimize the power as a secondary factor. The power requirement largely depends on the length, draft and Cb of the vessel. Thus, the increase or decrease of these parameters at any holds capacity will affect the power -56- requirement of the vessel. It should be noted that the power calculation is based on calm water resistance. Highest decrement in calm-water power requirement of 35% is marked at 100 tons hold capacity and the lowest 15.64% being at that of 300 tons. The average decrease is 23.8%, which is a very significant decrease. Lowering of ship motions with seakeeping constraints should also increase the propulsive efficiency of the vessel and in turn decrease the power requirement, at sea. These results are based on cost minimization. As the cost of propulsion unit, which is directly proportional to the required power, is one of the factors in the total cost of the vessel, Matship tries to minimize the power also, in turn. Figure 21 displays the percentage decrease in RMS heave motion, highest value of 8.46% being at 75 tons hold capacity and the lowest decrease of .56% is at 150 tons hold capacity. The higher decrement of RMS values means lower energy in its motion spectrum. Figure 22 reveals that the RMS pitch motion is reduced up to a maximum of 259% at 75 tons hold capacity with the inclusion of Rule-Ill. When constraint on the Kimura's threshold value is used, the present procedure tries to minimize the energy level in the motion spectrum, largely contributed by the RMS values, through the selection of optimum ship's parameters. 10 0.0 50.0 100.0 150.0 200.0 250.0 Hold Capacity [ L T ] Figure 20: Percentage changes in required power due to Kimura's Crew Safety Criteria (Rule-Ill) -57- 300.0 0.0 50.0 100.0 150.0 200.0 250.0 Hold Capacity [LT] Figure 21: % changes in RMS heave amplitude due to Kimura's Crew Safety Criteria (Rule-HI) s ai. g= 100.0 Hold Capacity [ L T ] Figure 22: % changes in RMS pitch amplitude due to Kimura's Crew Safety Criteria (Rule-Ill) -58- 300.0 o I -15.0 0.0 I 1 50.0 I I I I 100.0 150.0 I 200.0 . 250.0 I . I 300.0 Hold Capacity [LT] Figure 23: % changes in peak heave ratio due to Kimura's Crew Safety Criteria (Rule-Ill) Figure 23 and Figure 24 show the percentage difference produced in Peak Heave and Peak Pitch Ratios by the inclusion of Rule-Ill. Both graphs are very similar in shape and values at different data points. The definition of peak ratio is given in Equation 8. The higher these Peak Ratios, better is the design in terms of seakeeping characteristic. These two figures show that, though inclusion of Rule-Ill reduces the acceleration level in the vessel, it decreases the peak ratios till about 175 tons hold capacities, and then increases the ratios for hold capacities higher than 175 tons. Figure 25 reflects the effect of the inclusion of Rule-Ill on the Kimura's Threshold Value, K. The constraint on K (Rule-Ill) is chosen to be less then 0.22. Kimura's study suggests that at K value higher than .22, it is difficult for the crew on board to maintain their posture and work safely and comfortably. Reduction in Kimura's constant varied from 18.62% at hold capacity of 300 tons to about 100% at that of 75 ton. It should be marked in Figure 20, Figure 2land Figure 22, that at the hold capacity of 75 tons, the percentage decrease in RMS values are maximum, along with highest saving in power requirement. This is made with the sacrifice of cost, as is evident from Figure 18. Using this kind of analysis, it is also possible to predict the most economical vessel as a standard for a series, in terms of initial cost or operational cost. It -59- seems that though the vessel with 75 tons is relatively more expensive in initial cost, it could be the most economical one in terms of operating cost from the point of power savings. 5,0 / 150.0 200.0 Hold Capacity [ L T ] Figure 24: % changes in peak pitch ratio due to Kimura's Crew Safety Criteria (Rule-Ill) - 60.0 H o l d Capacity [ L T ] Figure 25: % changes in Kimura's threshold value due to Kimura's Crew Safety Criteria (Rule-Ill) -60- 6.5 Implications of varying Kimura's Crew safety Threshold Value: Kimura et al [10] suggested a value of 0.22 for the threshold, after which humans lose their balance. However, in their experimental data, the value of 0.22 was not a clear boundary. Thus, in this section, the effects of varying threshold value to 0.15 and 0.30 on ship parameters are presented. As the threshold value is decreased, for a given owner requirements such as hold capacity and design sea state, vessel's length is increased (see Figure 26). The curves in this figure represent how design length varies with hold capacity for a given threshold value. The three curves follow a similar trend and are almost parallel to each other. In Figure 27, the percentage changes are plotted against hold capacity. In calculating the percentage values, the following equation is used and the control design corresponds to the threshold value of .22. O/â€žLâ€žâ€žâ€ž^ {Parametervaluefor thresh)ld0.15or0.30}-{Parametervaluefor threshold 0.22} {Parametervaluefor threshold 0.22} %change=\0(P nn Equation 12 For hold capacities larger than 100 [LT], percentage change in length is almost constant for both threshold values of 0.15 and 0.30 resulting in approximately 5% increase and approximately 4% decrease, respectively. Figure 28 shows the changes in beam values due to the changes in crew safety threshold value. A similar trend in Figure 26 is observed that is increasing threshold values result in narrower beams. However, the same is not valid for the draft values, as seen in Figure 29. For threshold value of 0.3, all of the designs produced by Matship have greater drafts than those designs corresponds to the threshold value of 0.22. Reducing the threshold value to 0.15, on the other hand, resulted in greatest draft values (this is a common rule of thumb, used by Naval Architects to have "good seakeeping" characteristic), among the three threshold cases, up to approx. 150 [LT] hold capacity. Past 150 [LT] hold capacity, the designs for threshold value of 0.15 have the shallowest drafts among the three groups (see Figure 29). -61 - 80.00 Effect of K constraint on Ship's Length 10 25 K constraint .15 K constraint .22 K constraint .30 -x- 50 75 100 125 150 175 200 250 300 Hold Capacity [LT] Figure 26: Effects of varying threshold value on length â€¢K:0.30 â€¢K:0.15 10 5c> a) 6 . 4 .E 2 Â® O) n u c 2 -2 -50- -100- â€¢4â‚¬Q- -200- -250- -300 H Hold Capacity [LT] Figure 27: % change in length due to the changed threshold value I -62- Effect of K constraint on Ship's Beam a> E re Oi CQ 10 25 50 75 100 125 150 175 200 250 300 Hold Capacity [LT] K constraint .15 K constraint .22 â€”xâ€”K constraint .30 Figure 2 8 : Effects of varying threshold value on beam Effect of K constraint on Ship's Draft 14.00 i 10 25 K constraint. 15 K constraint .22 - X - K constraint .30 50 75 r 100 125 150 175 200 250 300 Hold Capacity [LT] Figure 2 9 : Effects of varying threshold value on draft Increasing threshold value did not seem to affect the block coefficient greatly in Figure 3 0 . However, one should also keep in mind that there was an upper bound on the block coefficient ( C b ) such that C b < 0 . 7 . Decreasing the threshold value from 0 . 2 2 to 0 . 1 5 resulted in lower block coefficient values for hold capacities up to approx. 1 5 0 [LT]. -63 - Effect of K constraint on Cb 0.80 o 0.70 c 0.60 Oi 0.50 o Â£ 0.40 o o 0.30 o 0.20 o 0.10 CQ 0.00 .Q -X ! 10 ! ] 25 50 -o-K constraint .15 -Aâ€”K constraint .22 -X-K constraint .30 ! 1 75 ! ( K i K ! K ! 100 125 150 175 200 250 300 Hold Capacity [LTJ Figure 30: Effects of varying threshold value on block coefficient p _ J *â€¢> c o E u n (-) (0 M L Q 450 400 Effect of K constraint on Ship's displacement 350 300 250 200 150 100 50 0 10 25 50 K constraint. 15 K constraint.22 - x - Kconstraint.30 75 100 125 150 175 200 250 300 Hold capacity [LT] Figure 31: Effects of varying threshold value on displacement Figure 31 shows the resultant changes in displacement due to the changes in the value. The same data are presented in -64- Figure 32 as percentages. Increasing the threshold value slightly decreases the displacements over the whole hold capacity range considered, from approx. 7.5% for smaller hold capacities to approximately 2 % for larger hold capacities. O n the other hand, reducing the threshold value increased the displacements from approx. 12% to 3% as the hold capacity increases. -Â»-K: 0.15 - * - K : 0.30 15 Hold Capacity [LT] Figure 32: % change in displacement due to the changed threshold value Effect of K constraint on vessel's cost 2.50E+06 2.00E+06 ^ 1.50E+06 Â§ 1.00E+06 o 5.00E+05 0.00E+00 <P â€”CDâ€”K constraint .15 $> A * # N <Â£> ^ ocÂ£ Hold Capaciy [LT] â€”Aâ€”K constraint .22 â€”oâ€” K constraint .30 Figure 33: Effects o f varying threshold value on cost -65- Decreasing the threshold values, that is improving the comfort level due to motions, has implications in terms of the vessel cost (see Figure 33). According to Figure 34, which shows the percentage changes in cost due to changes in the threshold value, improving the motion levels for better crew safety has a cost penalty of approximately 6% to 10% the average. -â€¢-K:0.15 -K-K:0.30 Hold Capacity [LTJ Figure 34: % change in cost due to the changed threshold value 6.6 Comparison of various Crew Safety Rules: This section will discuss about the effects of the different crew safety rules on different ship parameters. It should be marked that the objective function in this study is cost minimization only, with seakeeping criterion as a constraint, along with bounds on ratios of ship's principal dimensions and the process can select the ship's parameters within these limits and constraints. The process may be run with any objective function or group of functions to be minimized or maximized. Figure 35 shows the effect of the constraints on the cost. For the UBC Series, it is seen that the Rule I, and IV did not have any effect on the cost when compared to the cost of the design with no constraint, while inclusion of Rule III increased the cost of the vessel by about 8.61 percent only. This small increase in cost with the Rule-Ill constraint may justify its inclusion -66- in the design process for the safety and comfort of the crews on board and more economical overall operation of the vessel. 2.0E+06 Effect of Rules on Ship's Cost 1.5E+06 CO O c 1.0E+06 tn 3 5.0E+05 O.OE+00 10 25 50 75 100 125 150 175 200 250 300 Hold Capacity Figure 35: Effect of Rules on Ship's Cost Figure 36 shows the effect of the constraints on the displacement. For the UBC Series, it is seen that the Rule I, and IV did not have any major effect on the cost compared to the one with no constraint, while inclusion of Rule III increased the displacement of the vessel by average of 6.79 percent only. Effect of Rules on Ship's Displacement a â€” No Constraint â€¢A- Rule I * - R u l e III Rule IV 10 25 50 75 100 125 150 175 200 250 300 Hold Capacity [LT] Figure 36: Effect of Rules on Ship's Displacement -67- Figure 37 through Figure 40 show the affect of the constraints on length, beam, draft and coefficient of buoyancy (Cb). The results with Rule-I and IV merged with the one with no constraint for Length, Beam and Draft, with relatively small variation (1.15%) within 50 tons to 150 tons hold capacity range, while the Rule-Ill produced an average increase in length by 9.52%. It is also seen from Figure 38 that the results for beam with no constraint and Rule-I and IV show similar trends as Figure 37, with 8.02% increase for the inclusion of Rule-Ill. Figure 40 shows that values obtained with no rules merged with that obtained with Rule-I and Rule-IV for Block Coefficient and for most of the region has converged at the upper bound of 0.7, defined in the optimization process. Run with Rule-Ill, that is, threshold value less than 0.22, at the aft section of the vessel resulted in smaller vessels up to hold capacity of 175 tons and beyond this hold capacity the values of Block Coefficient converged at its upper bound of 0.7, defined in the optimization process. It is significant to note the sudden change in draft [Figure 39] and Cb [Figure 40] at hold capacity of 175 tons. This is due to the process of optimization with cost minimization. It increased the Cb to get the desired buoyancy and reduced the draft for cost minimization. Both these changes (to buoyancy and draft) might have adverse effect on seakeeping characteristics of the vessel. This may have happened due to the restriction on the length of the designed vessel based on the hold capacity. From this results it may be stated that the relaxation on the license length based on hold capacity under some fisheries regulations at different part of the world may help in design of a safer vessel. Effect of Rules on Ship's Length 25 50 75 100 125 150 175 200 250 300 Hold Capacity [LT] Figure 37: Effect of Rules on Ship's Length -68- Effect of Rules on Ship's Beam 10 a â€” No Constraint A-Rule I e - R u l e III Rule IV 25 50 75 100 125 150 175 200 250 300 Hold capacity [LTJ Figure 38: Effect of Rules on Ship's Beam Effect of Rules on Ship's Draft 50 75 100 125 150 175 200 250 300 Hold Capacity [LTJ Figure 39: Effect of Rules on Ship's Draft -69- Effect of Rules on Ship's Cb " o 0 0 0.30 0.20 0.10 10 25 -aâ€” No Constraint -Aâ€” Rule I -eâ€” Rule III Rule IV 50 75 100 125 150 175 200 250 300 Hold Capacity [LT] Figure 40: Effect of Rules on Ship's Block Coefficient. Inclusion of Rule IV resulted in reduction in K values for the hold capacities from 50 to 125 tons as shown in Figure 41 as compared to the result from no rules and that with the inclusion of Rule-I and merged for other hold capacities. Results from the inclusion of Rule-1 merged with that without the inclusion of any rules. Inclusion of Rule-Ill, that is, Kimura's threshold value less than 0.22 at the aft section of the vessel resulted in upper limit of 0.22 of the threshold value for all ranges of hold capacity. Inclusion of Rule-Ill seems to be essential for safer and comfortable working condition. Using this constraint one can obtain, for a given operational sea state, what the maximum operating speed is, so that at a certain location on the ship, K will be less than 0.22. Similarly, at the design stage, certain work places can be located at those locations on the ship, where K is less than 0.22 for a given operational sea state and speed scenario. This will indicate to the designer the most suitable location for a working area in the vessel. Figure 42 shows the effect of the constraints on the Required Propulsive Power of the vessel. For the UBC Series, it is seen that the Rule I and IV did have very insignificant effects (slight difference in the range of 75 tons to 150 tons hold capacity) on required power compared to the one with no constraint. Inclusion of Rule III decreased the required power of the vessel by an average value of 18 percent, for this particular series. The percentage of power reduction is seen to be increasing with the hold capacity. As, the machinery cost is a major contributory -70- factor of the total cost (which is being minimized by the process), and is dependant on the required power, the power minimization is also achieved indirectly, because of cost optimization. Effect of Rule-Ill on Threshold Value at aft of vessel T 10 25 -Bâ€” No Constraint -Aâ€”Rule I - e - R u l e III - * - R u l e IV 50 75 1 1- 100 125 150 175 200 250 300 Hold Capacity [LT] Figure 41: Effect of Rules on Kimura's Threshold Value Effect of Rules on Ship's Required Power _ 1000 CL Â£ 5 800 o 600 "D 400 3 200 Q. .2 CT a> OH -He- 10 No Constraint Rule I Rule III Rule IV 25 50 75 100 125 150 175 200 250 300 Hold Capacity [LT] Figure 42: Effect of Rules on Ship's Required Power Figure 43 to Figure 45 show Kimura's Threshold Values, K at different sections of the vessel, namely, fore, midship and aft of the vessel [250 tons hold capacity] at different seastates and ship's speeds. The Kimura's constraint (Rule III) is shown as "Klimif. -71 - ship no:11 (fore ship) â€” K limit sea state: 1 *â€” 2 3 â€¢>..... 4 5 -0- -e- 09 Â© e e e e e e e e h 4 5 6 7 8 9 10 3 Ship s p e e d [kn] Figure 43: Kimura's Threshold values at the forward of the vessel [250 tons hold capacity] at different seastates and ship speeds. shipno:ll (midsiiip) 1.5 K limit â€” -e-*- seastate: 1 2 â€”f- 3 K 4 5 -0- 4 5 6 Ship speed [kn] Figure 44: Kimura's Threshold values at the midship of the vessel [250 tons hold capacity] at different seastates and ship speeds. -72- ship no:l 1 (aft ship) 1 5I I 1 1 T 1 K â€” -Â©-*- 1 limit seastate: 1 2 3 4 5 s CO > 0.5 Â©â€”eâ€”eâ€”Â©â€”eâ€”eâ€”eâ€”eâ€”eâ€”eâ€”v 4 5 6 7 Ship speed [kn] Figure 45: Kimura's Threshold values at the aft of the vessel [250 tons hold capacity] at different seastates and ship's speeds. It is clear from these graphs that with the lower sea condition (seastate), K value gets lower, that is, the vessel becomes more comfortable and safer for the crews and passengers onboard the vessel. It is also seen that at a particular seastate and ship's speed, the aft section of the vessel shows lesser K value compared to the other two sections. This obviously tells the designer and operator about the extent of motion and acceleration levels at different parts of the vessel as a guideline, for the placement of work areas. These results are desired results from the present design procedure. Figure 46 shows the maximum attainable speed (maximum safe speed envelop) with crew safety for the fore, mid ship and aft sections of the optimized design for 250 ton hold capacity at different sea states. This graph is basically produced from the previous graphs (Figure 43 to Figure 45). It may be observed that the maximum attainable speed at the aft section of this particular vessel is greater than the other sections. This also tells like the previous graphs that, for this particular vessel, it will be desirable to locate the working area (fish landing, sorting etc.) at amidships or the aft part of the vessel for the crew safety and comfort. -73 - Sea state Figure 46: Maximum Attainable Speed for the vessel From the above results and discussions, it is clear that Rule-Ill and Rule IV, along with the other seakeeping criteria, can be comfortably used in the design process for the design of a safer and a comfortable vessel, with marginal increase in cost. In the long run, from a better operating condition on board the vessel due to this new design process, higher return than the additional initial investment, due to inclusion of crew safety criteria, may result. The difficult part is that, this indirect return is very difficult to assess in monetary terms. -74- 7 Conclusions After this extensive study with a new design process and platform, the following conclusion may be drawn: a. An ergonomic factor is directly included in a computer aided boat design program. This study shows that the design of a small craft can be computerized and design nodes, such as crew-safety or acceleration levels can be included within the preliminary design procedure, using a Matlab like environment. b. In this study the ergonomic factors are applied in the design process as constraints to get optimal dimensions of the vessel. In addition safe operational speed-seastate ceiling is derived. c. Through the study on different series of vessels in terms of their ratios of principal dimensions and form coefficients, algorithms may be calculated for use with any type of vessel. d. Minimization of cost or power requirements may be included in the design, using optimization techniques. Cost minimization with ergonomic constraints included in the optimization process, in some cases generated relatively less expensive but ergonomically improved boats. In general, ergonomic constraints suggest a larger vessel. e. On work platforms, complete inclusion of human factors in design may affect the total cost and the principal dimensions of the vessel. However, human factors may be a very important factor to be considered in the design process, especially for workboats, where many manual operations are carried out on the deck. f. User friendly, readily available and affordable design software may help boat designers include the human factors in the design and provide optimization techniques to design possibly more efficient and safer vessels. -75 - g. The results obtained can be extended to the design of any small craft and the above rules could also be implemented in a design process based on a general optimization procedure. h. The present length restrictions on fishing vessels seem to be against crew safety and may result in increased accidents on board. -76- 8 References: 1. Akinturk, A. 1997. "Inclusion of a Crew Safety Node into the Preliminary Design of Fishing Vessels." Ph.D. Thesis, University of British Columbia, Department of Mechanical Engineering, Vancouver, British Columbia, Canada. 2. Akinturk, A., Calisal, S. M . and Atlar, M., 1997. "Preliminary Design of Fishing Vessels with Seakeeping Considerations Included in a Knowledge Based Design System". Presented in 4th Canadian Hydromechanics Conference, 25-27 June 1997, Ottawa, Canada. 3. Calisal, S. M., et al., 1992. "Fishing Vessel Design with a Constraint Reasoning System". In Fourth International Conference on Computer Aided Ship Design, Manufacture and Offshore Structures. 4. Calisal S. M., Howard D., Mikkelsen J., 1997. " A seakeeping study of UBC Series" J. Marine Technology, January, Vol 34, No. 1. 5. Calisal, S. M., and McGreer, D., 1993 "A Resistance Study on a Systematic Series of Low L/B Vessels", J. Marine Technology Vol. 30, No. 4 pp. 286-296. 6. Calisal, S. M., Mikkelsen, J., and McGreer, D., 1992, "Resistance Tests with UBC Series Fishing Vessels", Proceedings 23rd American Towing Tank Conference, University of New Orleans. 7. Calisal, S. M., and McGreer, D., An Expert System for Fishing Vessel Design. In 4 International Marine Systems Design Conference; 1991. th 8. Howard J. D., 1995. "Non-Linear Motion of a Vessel in a Seaway", Masters Thesis Department of Mechanical Engineering, University of British Columbia, Vancouver, B. C , Canada. 9. Howard J. D., and Calisal, S. M., 1993, "Comparative Seakeeping Evaluation of the S-175 Hull Form," Proceedings, Second Canadian Marine Dynamics Conference, University of British Columbia, Vancouver, BC, Canada, pp. 90-98. 10. Kimura, N . , Amagi, K. and Inaba, Y. 1988. "On the Relationship between the Maintenance of Human Posture and The Ship Oscillatory Motions." In Proceedings World Symposium on Fishing Gear and Fishing Vessel Design. Marine Institute, St. John's, Newfoundland, Canada, pp564-568. 11. Thomas Charles Bower. "Fishing Vessel Optimization: A Design Tool." Masters Thesis, Department of Mechanical Engineering, University of British Columbia. 12. Matlab User's Guide. The Math Works Inc. 1993. -77- 13. Graham, R. and Trudelle, C , 1987."SHIPM04", DREA Technical Communication 87/304. 14. F. Mistree et al, 1990, "Decision-Based Design: A Contemporary Paradigm for Ship Design", Technical Session, SNAME 1990 Annual Meeting, Sanfransisco, California. 15. S.J.De Boer, "Decision Methods and Techniques in Methodical Engineering Design", De Lier, The Netherlands, Academisch Boeken Centrun, 1989. 16. G. Pahl and W.Beitz, "Engineering Council/Springer- Verlag, 1984. Design", London/Berlin, The Design 17. N.Cross, "Engineering Design Methods", Chichester, John Wiley & Sons, 1989. 18. K.M.Wallace and C.Hales, " Detailed Analysis of an Engineering Design Project", Proceedings 1987 International Conference on Engineering Design, Vol. 1, Boston, 1987. 19. C. Hales, " Analysis of the Engineering Design Process in an Industrial Context", Ph.D. Dissertation, Grants Hill Publications, University of Cambridge, UK, 1987. 20. R.I Winner, J.P.Pennell, H.E.Bertrand and M.M.G. Slusarczuk, "The Role of Concurrent Engineering in Weapons System Acquisition", IDA Report, Institute for Defense Analyses, Alexandria, Virginia, 1988. 21. I.L.Buxton, "Engineering Economics Applied to Ship Design", Transaction RINA, 114, 1972. 22. Andrews, "Creative Ship Design", Transaction RINA,123, 1981. 23. Robert Taggart. "Ship Design and Construction". The Society of Naval Architects and Marine Engineers, May 1986. 24. J.H.Evans. "Basic Design Concepts". Naval Engineers Journal, Nov 1959. 25. "Tsb Statistical Summary - marine occurrences". Technical Report, Transportation Safety Board of Canada, 1990. Cat.No.TUl-1/1990. 26. Daniel G. Bagnell & Brian G. Forstell. "The Use of Design Synthesis Tools for Conducting Trade and Cost for Very Large Floating Structures". Proceedings of The Third International Workshop on Very Large Floating Structures (VLFS'99), Vol.-I, Sept'99, Hawaii, USA. 27. Chaplin, P.D. and Burney, S., 1989. "Casualties to Fishing Vessels and Accidents to Fishermen to December 1988". Technical Report, England. -78- 28. Aboulazm, A. F., 1989. "Ship Motion and Crew Safety with Application to Fishing Vessel". In International Symposium, Safety and Working Conditions aboard Fishing Vessels, Actes Proceedings, pp228-235, Quebec, Canada. 29. Andrew, R. N. and Lloyd, A. R. J. M., 1981."Full-scale Comparative Measurements of the Behavior of two Frigates in Severe Head Seas." Transactions of the Royal Institution of Naval Architects, 123, pp 1 -31. 30. Amagi, K. and Kimura, N . , 1989. " A proposal to Prevent Occupational Accidents in Scallop Beam Trawlers." In International Symposium Safety and Working Conditions aboard Fishing Vessels, Actes Proceedings, pp300-309, Quebec, Canada. 31. Pingree, B. J. W., 1988. " A review of Human Performance in a Ship Motion Environment." Warship Technology, 39, pp73-76, May. 32. Wilde, D. J. and Beighter, C.S. " Foundation of Optimization". -79- 9 Appendix- A Coefficients for non-dimensional Heave and Pitch motions: For heave: A = 0.8591* Fn Lpp T/B 2 + 1.5804 *Fn T/Cb B a = 1.816 + 31.42 Cb T/Lpp 8 = 16.48 Tl Lpp - 0.7485*T/Cb B p = 6.436 Cb Lpp T/B 2 + 163.1 Cb Fn T/B co = 2.870 Cb Lpp T/B 2 + 40.36 Cb Fn T/B A A A For pitch: A= 1.1313 Fn Lpp TB 2 + 0.9264 Fn T/Cb B a = 0.7904 + 45.47*CbT/Lpp 8 = 16.82 T /Lpp - 0.8621 T/Cb B P = 18.34 Cb Lpp T/B 2 + 37.35 Cb Fn T/B y = 7.211 Cb Lpp T/B 2 + 3.039 Cb Fn T/B A A A Coefficients for non-dimensional RMS Heave and Pitch Responses: F , = 0.17244257 - 0.10902408 B/Lbp - 0.062345772 (B/Lbp) 2 F = 0.92116235 + 9.26182543 T/Lbp -17.01219503(T/Lbp) 2 F = 1.25445302 + 0.015068303 Cb F = 0.37459542 + 0.33475563 Fn + 0.69543449 Fn 2 - 0.62937284 Fn 3 F =0.51156287+1.676647161ambda/Lbp-0.60058403(lambda/Lbp) 2+0.065781060(larnbda/Lbp) 3 F = 1.27331482- 1.02535654 N H + 0.56388486(NH ) 2 F i = 0.465143 - 2.343704V /Lbp + 3.482758 V /Lbp) 2 F = 1.323205 + 13.947877B/Lbp - 26.389156(B/Lbp) 2 F = 0.346817 - 24.620275T/Lbp + 37.557687T/Lbp) 2 F = 0.044729+ 1.003151 Cb F = -0.182212 - 0.296472 Fn + 0.059477 Fn 2 - 0.245965 Fn 3 F = -0.181446 + 4.924184 X/Lbp - 0.834965 ?i/Lbp) 2 + 0.074877 ?i/Lbp) 3 F = 2.16213525 -2.78020823 NH1/3+ 1.54756589(NH, ) 2 A z A z2 z3 A A z4 A A z5 A z6 1/3 1/3 1/3 1/3 A f l A e2 A e3 94 A A 95 A A e6 A 97 /3 -80- 10 Appendix- B Overview of Matlab Optimization Program and Options Copyright (c) 1990-97 by The MathWorks, Inc. Revision: 1.11 Date: 1997/04/08 14:40:15 Tutorialfor Optimization Toolbox. #################################################################### It consists of: (a) unconstrained optimization example (b) constrained optimization example (c) constrained example using gradients (d) bounded example (e) equality constrained example (f) unconstrained example using user-supplied settings All the principles outlined in this demonstration apply to the other routines: attgoal, minimax, leastsq, and fsolve. #################################################################### a: Unconstrained Problem: Consider initially the problem of finding a minimum to the function: f(x) = exp(x(l))*(4x(l) + 2x(2) + 4x(l)*x(2) + 2x(2) + 1) 2 2 The function to be minimized is: fun = 'exp(x(l))*(4*x(l) 2 + 2*x(2) 2 + 4*x(l)*x(2) + 2*x(2) + 1);'; A A Take a guess at the solution x0 = [-l 1]; Use default parameters options = []; [x, options] = fminu(fun, xO, options); The optimizer has found a solution at: x The function value at the solution is: Options (8) -81 - The total number of function evaluations was: Options (10) Note: by entering the expression explicitly in a string using the variable 'x' we avoid having to write an M-file. -> #################################################################### b: Constrained Problem: Consider the above problem with two additional constraints: minimize f(x) = exp(x(l))*(4x(l) + 2x(2) + 4x(l) *x(2) + 2x(2) + 1) 2 2 subject to 1.5 + x(l).x(2) - x(l) - x(2) <= 0 -x(l).x(2) <=10 Objective Function and constraints: funf = 'f = exp(x(l))*(4*x(l) 2+2*x(2) 2+4*x(l)*x(2)+2*x(2)+ rung = 'g = [1.5 + x(l)*x(2) - x(l) - x(2); -x(l)*x(2) - 10];'; fun = [funf fung]; A A Take a guess at the solution x0 = [-l 1]; Use default parameters options = []; [x, options] = constr(fun, xO, options); A solution to this problem has been found at: x The function value at the solution is: Options (8) Both the constraints are active at the solution: g = [1.5 + x(l)*x(2) - x(l) - x(2); - x(l)*x(2) - 10] The total number of function evaluations was: Options (10) -82- 1);'; c: Bounded Example: Consider the above problem with additional bound constraints: minimize f(x) = exp(x(l))*(4x(l) + 2x(2) + 4x(l)*x(2) + 2x(2) + 1) 2 2 subject to 1.5 + x(l).x(2) - x(l) - x(2) <= 0 -x(l).x(2) <= 10 and x(l) >=0 x(2) >= 0 Objective Function and constraints funf= 'f = exp(x(l))*(4*x(l) 2+2*x(2) 2+4*x(l)*x(2)+ 2*x(2) + 1);*; fung = 'g = [1.5 + x(l)*x(2) - x(l) - x(2); -x(l)*x(2) - 10];'; fun = [funf fung]; A A Again, make a guess at the solution x0 = [-l 1]; Use default parameters options = []; This time we will use the bounded syntax: X = CONSTROFUN', X0, OPTIONS, VLB, VUB) vlb = zeros(l ,2); Lower bounds X >= 0 vub = []; No upper bounds [x, options] = constr(fun, xO, options, vlb, vub); The solution to this problem has been found at: x The function value at the solution is: Options (8) The constraint values at the solution are: g = [1.5 + x(l)*x(2) - x(l) - x(2); - x(l)*x(2) - 10] The total number of function evaluations was: Options (10) -83 - d: User-Supplied Gradients: The above problem can be solved more efficiently and accurately if gradients are supplied by the user. This demo shows how this may be performed. Again the problem is: minimize f(x) = exp(x(l))*(4x(l) + 2x(2) + 4x(l)*x(2) + 2x(2) + 1) 2 2 subject to 1.5 + x(l).x(2) - x(l) - x(2) <= 0 -x(l).x(2) <=10 Objective function and constraints: funf = 'f = exp(x(l))*(4*x(l) 2+2*x(2) 2+4*x(l)*x(2)+2*x(2) rung = 'g = [1.5 + x(l)*x(2) - x(l) - x(2); -x(l)*x(2) - 10];'; fun = [funf fung]; A A + 1);'; Make a guess at the solution: x0 = [-l 1]; Use default parameters options = []; Partial derivatives dfdxl = 'exp(x(l))*(4*x(l) 2+2*x(2) 2+4*x(l)*x(2)+2*x(2)+l)+ 4*exp(x(l))*(2*x(l)+x(2));'; dfdx2 = *4*exp(x(l))*(x(l)+x(2)+0.5);'; dfdg = '[x(2)-l, -x(2); x(l)-l, -x(l)];'; grad = ['df=[',dfdxl, dfdx2,']; dg=', dfdg]; A A [x, options] = constr(fiin, xO, options, [],[], grad); As before the solution to this problem has been found at: x The function value at the solution is: options(8) Both the constraints are active at the solution: g = [1.5 + x(l)*x(2) - x(l) - x(2); - x(l)*x(2) -10] -84- The total number of function evaluations was: options(lO) e: Equality Constrained Example: Consider the above problem with an additional equality constraint: minimize f(x) - exp(x(l))*(4x(l) + 2x(2) + 4x(l)*x(2) + 2x(2) + 1) 2 subject to, 2 x(l) + x(2) =0 1.5 + x(l).x(2)-x(l)-x(2)<=0 - x(l).x(2) <= 10 Objective function and constraints funf = 'f = exp(x(l))*(4*x(l) 2+2*x(2) 2+4*x(l)*x(2)+2*x(2)+ 1);'; fung = 'g = [x(l)+x(2);1.5+x(l)*x(2)-x(l)-x(2);-x(l)*x(2)-10];'; fun = [funf fling]; A A Again, make a guess at the solution x0 = [-l 1]; This time we will indicate the number of equality constraints by setting options(13) to the number of constraints. The equality constraints must be contained the in first few elements of gOne equality constraint: clear options options(13) = 1; [x, options] = constrffun, xO, options); The solution to this problem has been found at: x The function value at the solution is: Options (8) The constraint values at the solution are: g = [x(l) + x(2); 1.5 + x(l)*x(2) - x(l) - x(2); -x(l)*x(2) - 10] The total number of function evaluations was: Options (10) -85- /â€¢ Changing The Default Settings Consider the original unconstrained problem: minimize f(x) = exp(x(l))*(4x(l) + 2x(2) + 4x(l)*x(2) + 2x(2) + 1) 2 2 This time we will solve it more accurately by overriding the default termination criteria (OPTIONS (2) and OPTIONS (3)). The function to be minimized is fun = 'exp(x(l))*(4*x(l) 2 + 2*x(2) 2 + 4*x(l)*x(2) + 2*x(2) + 1)'; A A Again, make a guess at the solution: xO = [-l 1]; Override the default termination criteria: clear options options (2) = le-8; Termination tolerance on X options (3) = le-8; Termination tolerance on F [x, options] = fminu(fun, xO, options); The optimizer has found a solution at: x The function value at the solution is: Options (8) The total number of function evaluations was: Options (10) Note: warning messages may be displayed because of problems in the calculation of finite difference gradients at the solution point. They are an indication that tolerances are overly stringent, however, the optimizer always continues to make steps towards the solution. If we want a tabular display of each iteration we can set options (1) = 1 as follows: options = 1; Set display parameter to on, the others to default. [x, options] = fminu(fun, xO, options); The optimizer has found a solution at: x -86- The function value at the solution is: Options (8) The total number of function evaluations was: Options (10) At each major iteration the table displayed consists of: - number of function values function value step length used in the line search gradient in the direction of search â€¢End- -87- 11 Appendix- C Some of the Commands used in the Matship files global X Y Z defines X, Y, and Z as global in scope. fid = fopen ('file name', w) Opens a file or obtains information about open file; w command deletes the contents of an existing file or create a new file, and open it for reading and writing. count = fprintf (fid, exitflag, A,B,C,....) fid is an integer file identifier obtained from fopen. A value exitflag describes the exit condition: â€¢ > 0 indicates that the function converged to a solution x. â€¢ 0 indicates that the iteration count was exceeded. Increasing the tolerance (TolX parameter in options) may lead to a solution. â€¢ < 0 indicates that the function did not converge to a solution. A,B,C,.. are matrix elements to be printed. m = size(X,dim) returns the size of the dimension of X specified by scalar dim. oldopts = optimset('optimfun') creates an options structure options with all parameter names and default values relevant to the optimization function optimfun (fmincon in our study). options = optimset(oldopts,'paramr,value 1,.) v l b [ a b c . n] MaxFunEvals [ positive integer ]: Maximum number of function evaluations allowed. Maxlter [ positive integer ]: Maximum number of iterations allowed. TolFun [ positive scalar ]: Termination tolerance on the function value. TolX [ positive scalar ]: Termination tolerance on x. defines lower bound for a solution vub [a b c .. n] defines upper bound for a solution -88- [x,fval,attainfactor,exitflag] fgoalattain(...) run fgoalattain solves the goal attainment problem, which is one formulation for minimizing a multi-objective optimization problem, returns a value exitflag that describes the exit condition of fgoalattain. The function to be minimized, fun takes a vector x and returns a vector F of the objective functions evaluated at x Alternatively, fun can be a string containing the name of a function (an M-file, a built-in function, or a MEXfile). If fun-myfun' then the M-file function myfun.m would have the form function F = myfun(x) F = ... nonlcon % Compute function values at x The function that computes the nonlinear inequality constraints c(x) <=0 and nonlinear equality constraints ceq(x)=0. nonlcon is a string containing the name of a function (an M file, a built-in, or a MEX-file). nonlcon takes a vector x and returns two arguments, a vector c of the nonlinear inequalities evaluated at x and a vector ceq of the nonlinear equalities evaluated at x. For example, if nonlcon = 'mycon' then the M-file mycon.m would have the form function [c,ceq] = mycon(x) c = ... % Compute nonlinear inequalities at x ceq = ... % Compute the nonlinear equalities at x goal weight Vector of values that the objectives attempt to attain. The vector is the same length as the number of objectives F returned by fun. fgoalattain attempts to minimize the values in the vector F to attain the goal values given by goal. A weighting vector to control the relative under-attainment or over-attainment of the objectives in fgoalattain. When the values of goal are all nonzero, to ensure the same percentage of under- or over-attainment of the active objectives, set the weighting function to abs(goal). (The active objectives are the set of -89- objectives that are barriers to further improvement of the goals at the solution.) disp(X) disp(X) displays an array, without printing the array name. If X contains a text string, the string is displayed. fclose(fid) closes the specified file, if it is open. roots(p) gives roots of a polynomial function k = isreal(A) returns logical true (1) if all elements of A are real numbers, and logical false (0) if either A is not a numeric array, or if any element of A has a nonzero imaginary component. Since strings are a subclass of numeric arrays, isreal always returns 1 for a string input. sminteg a file created for integration by Simpson's method. fun(funriame, x l , x2,varargin) varargin pass variable numbers of arguments; accepts a variable number of arguments into function fun.m. [yl,y2..] = feval (functional,..,xn) If function is a string containing the name of a function (usually defined by an M-file), then feval(/wÂ«c//oH,xl,...,xn) evaluates that function at the given arguments. yi = interpl(x,Y,xi,method) interpolates using alternative methods: â€¢ 'nearest for nearest neighbor interpolation â€¢ 'linear' for linear interpolation â€¢ 'spline' for cubic spline interpolation â€¢ 'cubic' for cubic interpolation t = strcat(sl,s2,s3,...) horizontally concatenates corresponding rows of the character arrays s l , s2, s3, etc. [A,count] fscanf(fid,format,size) reads the amount of data specified by size, converts it according to the specified format string, and returns it along with a count of elements successfully read, size is an argument that determines how much data is read. -90- legend('stringl','string2',..) displays a legend in the current axes using the specified strings to label each set of data. xlabel('string') labels the x-axis of the current axes. ylabel('string') labels the y-axis of the current axes. titleCstring') outputs the string at the top and in the center of the current axes. h = gca returns the handle to the current axes for the current figure. If no axes exist, MATLAB creates one and returns its handle. The current axis is the target for graphics output when one creates axes children. -91 - 12 Appendix- D Some of the files used in Matship F i l e 1: designopt.m % Name: designopt.m % Description: The file designoptl.m is the main file in the design process, which is used for optimization purpose to get the values of different design variables based on the objective function ('myfun') and the constraint file ('mycon') containing the set of constraint functions. format short g % Global parameters and variables: global densityjm densityft gms g_ft global material geartype Cm Cw coefffreeboard ws ehp global hi3_5 % density of sea water [LT/m 3] density_m= 1.025/1.016; % density of sea water [LT/ft 3] density_ft = (l.025/1.016)*(0.3048) 3; A A A % garvitational acc. ft/s g_ft = 32.2; % garvitational acc. m/s g_ms =9.807; % Cm = mid ship sectional area coefficient Cm = 0.878; % Waterplane area coefficient Cw = 0.95; % Sea state information... hl3_ref = [0.30 0.88 1.40 2.45 3.65]; t_ref=[2.4 3.9 4.6 5.7 6.8]; tmax_ref = [3.4 5.4 6.5 8.1 9.7]; lambda_ref = [6.1 15.9 21.6 34.0 49.0]; % h 135: significant wave height for sea state 5 hl3_5 = 3.65; % [m] % heading : ship's heading [deg] heading_angle = 180; for head seas % sea keeping design algorithms are only valid % Input parameters ... -92- seastates = [5]; % sea states %sea_states = [3,5]; hold_capacity = [10 25 50 75 100 125 150 175 200 250 300]; % hold capacity range [LT] %hold_capacity = [200]; designspeeds = [10]; % design speeds [kn] material = 'aluminum'; % or 'steel' rangenm = 500; % range [nautical miles] coeff freeboard = 0.115;% ratio of freeboard/draft filename = 'c:\users\ayhan\mizan\ship\runrmsmo.out'; fid = fopen(filename,'w'); count = fprintf(fid,' exitflag designseastate hold vkn Lwl B T Cb displacement totalweight requiredpower stabloaded stablight cost rmshv rms_pt peakhv peak_pt tmO 1 tm02 tm03 rmsHVacc rmsPTacc amphvrms ampptrms \n '); lb = 3.06; bt = 2.49; % L/B ratio for UBC Series main hull % B/T ratio for UBC Series main hull % Initial points... x00(l,:) =[39 18 6.75 0.615 ]; x00(2,:) =[45 19.3 7.1 0.615 ]; x00(3,:) = [52 20.5 7.5 0.615 ]; x00(4,:) =[57 21 6.4 0.615 ]; x00(5,:) =[62 22.3 6.8 0.615 ]; x00(6,:) =[72 25 9 0.615 ]; x00(7,:) =[72 24 8.5 0.615 ]; x00(8,:) =[74 24 8.7 0.615 ]; x00(9,:) =[75 24 9 0.615 ]; x00(10,:) = [ 82 25.5 11 0.615]; x00(ll,:) = [85 25.5 10 0.615 ]; for i s s = 1 :size(sea_states,2) designss = sea_states(i_ss); h 13_ms = h 13_ref(designss); % significant wave height for design sea state lambdass = lambda_ref(designss); % average wave length for the design sea state wnmax = 2*pi/tmax_ref(designss); % wave frequency that maximizes sea state's energy spectrum fori_holdl = 1 :size(hold_capacity,2) ihold = size(hold_capacity,2) + 1 - i h o l d l ; hold = hold_capacity(i_hold); for i v = 1 :size(design_speeds,2) v k n = designspeeds(iv); heading = (pi/180)*heading_angle; v_ms = 0.5144*v_kn; wave_amp = 1.0; % waterline length estimation based on the hold capacity LJiold = 3.3*(28.5*hold) 0.3669; % This restriction is applicable for westcoast LJicence = (v_kn 2)/l .4; A A % ship vector x consist of [ Lwl B T Cb] and is in feets % for optimization models L0 = Lhold; B0 = L0 / (0.017742*L_hold+1.690323); if strcmp(material,'aluminum') == 1 TO = B0 / ((1 +coeff_freeboard)*2.4); -93 - % for aluminum elseif strcmp(material,'steer) == 1 TO = BO / ((1+coeff freeboard)*2.2); else disp('Error! Unknown material type!!!'); TO = 0.0; end CbO = 0.5;% 0.615; %x0 = [LO BO TO CbO] xO = x00(i_hold,:) % for steel % unknown material! Not implemented! % starting point % Parameter ranges... %Max: L/B=4.99; B/T=5.83; L/T=18.5 %Min: L/B=1.44; B/T=1.80; L/T=4.05 %DispO = density_ft*prod(xO); %total_weight = tweight(xO, v_kn, range_nm, hold, heading, vms, wave_amp, hl3_ms, lambdass, wnmax); %power = pwerfish(xO, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); %stab_loaded = stab(x0, v k n , range_nm, hold, heading, v_ms, wave_amp, hl3_ms, lambdass, wnmax); %stab_lite = stablite(x0, v k n , rangenm, hold, heading, vms, wave_amp, hl3_ms, lambdass, wnmax); %rms_hv(x0, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) %rms_pch(x0, v k n , rangenm, hold, heading, vms, wave_amp, hl3_ms, lambda_ss, wnmax) %peak_hv(x0, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) %peak_pch(xO, v k n , range_nm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) %tm01(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) %tm02(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) %tm03(x, v k n , range_nm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) %acchvrms(x, v_kn, rangenm, hold, heading, vms, wave_amp, hl3_ms, lambda, wnmax) %accptrms(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) %amphvrms(x, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) %amphvrms(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) disp('optimization started...') oldopts = optimset('fmincon'); options = optimset(oldopts,'LineSearchType','quadpoly','MaxFunEvals',1000000,'MaxIter',200,... 'TolCon', 1 .e-002, 'TolFun', 1 .Oe-001 ,'TolX', 1.0e-2); % bounds on the variables %vlb = [10 1 0.25 0.5]; % lower bounds for x vector %vub = [L0*1.3 x(l)/2.6 x(l)/2.6/2 0.65]; vlb =[35.39 1 0.1 0.5]; vub = [200 75 40 0.7]; % upper bounds for x vector %vub = [ 120 80 40 0.7]; % upper bounds for x vector %a(l:4) = [1 0 0 0]; %b(l:4) = [LJicence 0 0 0]; fun - 'cost'; % objective function definition -94- % inequality and equality constraints defined in the nonlcon = 'mycon'; function "mycon.m" [x fval exitflag] = fmincon(fun, nonlcon, options, wnmax) xO, [ ],[ ], [ ],[ ], vlb, vub,... v_kn, range_nm, hold, heading, vms, wave_amp, hl3_ms, lambdass, res(i_ss, ihold, i v , 1:4) = x; [hold v kn x] res(i__ss, i hold, i_v, 5) res(i _ss, i hold, i v,6) res(i__ss, i hold, i_v, 7) res(i__ss, i hold, i v, 8) res(i__ss, i hold, i v, 9) res(i__ss, i hold, i v,10) res(i__ss, i hold, i v,ll) res(i _ss, i hold, i v,12) res(i _ss, i hold, i v,13) res(i__ss, i hold, i v,14) res(i _ss, i hold, i v,15) res(i _ss, i hold, i v,16) res(i _ss, i hold, i v,17) res(i _ss, i hold, i v,18) res(i _ss, i_hold, i_v,19) density_ft*prod(x); tweight(x, v_kn, range_nm, hold, heading, v_ms, waveamp, hl3_ms, lambda_ss, wnmax); pwerfish(x, vkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); stab(x, vkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax); stablite(x, vkn, rangenm, hold, heading, vms, wave_amp, hl3_ms, lambdass, wnmax); = cost(x, vkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); = rms_hv(x, v_kn, range_nm, hold, heading, v_ms, waveamp, hl3_ms, lambdass, wnmax); = rms_pch(x, vkn, rangenm, hold, heading, v_ms, wave_amp, hl3_ms, lambdass, wnmax); = peak_hv(x, vkn, range_nm, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax); = peak_pch(x, vkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax); = tm01(x, vkn, rangenm, hold, heading, v_ms, wave_amp, hl3_ms, lambdass, wnmax); = tm02(x, v_kn, rangenm, hold, heading, v_ms, wave_amp, h 13_ms, lambdass, wnmax); = tm03(x, vkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax); = acchvrms(x, vkn, rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambda_ss, wnmax); = accptrms(x, v_kn, rangenm, hold, heading, vms, waveamp, h 13_ms, lambda_ss, wnmax)*(180/pi); res(i _ss, i hold, i v,20) = amphvrms(x, vkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); res(i__ss, ijiold, i_v,21) = ampptrms(x, v_kn, range_nm, hold, heading, v_ms, wave_amp, hl3_ms, lambdass, wnmax); : : : : : count = fprintf(fid,' %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g %g%g\n',... exitflag, designss, hold, v_kn, x,... res(i_ss, ihold, i v , 5), res(i_ss, ihold, i_v, 6),res(i_ss, ihold, i v , 7),res(i_ss, ihold, i v , 8),... res(i_ss, ihold, i_v, 9), res(i_ss, ihold, i_v,10),res(i_ss, ihold, i v , 1 l),res(i_ss, ihold, i_v,12),... res(i_ss, ihold, i_v,13), res(i_ss, ihold, i_v,14),res(i_ss, ihold, i_v,15),res(i_ss, ihold, i_v,16),... res(i_ss, ihold, i v , 17), res(i_ss, ihold, i v , 18),res(i_ss, i_hold, i_v,19),res(i_ss, ihold, i_v,20),... res(i_ss, ihold, i_v,21)); disp(' iss, ihold, i_v '); [ iss, i_hold, i v ] end, end, end fclose(fid); -95- File 2: we2w.m % Name: we2w.m % Description: This file (we2w.m) returns w, wave frequency for a given encountered frequency, we. function wetow = we2w(heading, v_ms, we) % heading : ship's heading with respect to the waves [rad] % v_ms : ship speed [m/s] % we : encounter wave frequency [rad/s] %w : wave frequency [rad/s] % g_ms : gravity [m/s 2] A global gms if (vms == 0); w = we; else a = vms * cos(heading) / g_ms; p = [ 1 -1/a we/a]; r = roots(p); if(isreal(r(l))&r(l)>= 0); w = r(l); elseif (isreal(r(2)) & r(2) >= 0); w = r(2); else display(' No real roots or no positive roots!!! '); w = NaN; end end wetow = w; -96- File 3: sspec.m % Name: sspec.m This file (sspec.m) reproduces the standard ITTC sea-spectrum for given seastate. If an algorithm for a particular seastate of a specific route is available, it will be better to use the same for more reliable results. % Description: % ITTC standard Wave Spectrum function sea_spectrum = sspec(hl3_ms, w) global g_ms % hl3_ms : significant wave height [m] % w : wave frequency [rad/s] % g m s : gravity [m/s 2] A A = 8.10e-3 *g_ms 2; B = 3.11 /hl3_ms 2; A A sea_spectrum = (A/w 5) * exp(-B/w 4); A File A 4: myfun.m % Name: myfun.m This file is used to define the objective function. F(l) and F(2) are the subfunctions of this objective functions, which are to be minimized by the optimization procedure. The function myfun, F(l) and F(2) are all functions of the variables listed within the bracket. % Description: function F = myfun(x, v k n , rangenm, hold, heading, v m s , waveamp, hl3_ms, lambdass, wnmax) % For single goal optimization... % Minimize cost F = cost(x, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax)/1000000; % For multi-goal optimization... % Minimize Peak Heave and Peak Pitch ratios and Cost %F(1) = 1.0/peak_hv(x, v k n , rangejim, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax); -97- %F(2) = 1.0/peak_pch(x, v k n , rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambda_ss, wnmax); %F(3) = cost(x, v k n , rangenm, hold, heading, vms, wave_amp, hl3_ms, lambdass, wnmax)/! 000000; F i l e 5: mycon.m % Name: mycon.m The file mycon.m contains a list of constraints that the Matlab Optimization ToolBox, uses to produce the results. There can be a group of equality and inequality constraints for the optimization procedure. The constraints listed as functions c(l), c(2) ceq etc.(except c(7)) are different files created separately to define the constraints. These constraints, usually defines the lower and upper bounds, the range within which a result is targeted. Constraint c(7) is a constraint based on licensed length. % Description: function [c, ceq] = mycon(x, v k n , rangenm, hold, heading, vms, waveamp, h 13_ms, lambda_ss, wnmax) % inequality constraints: c(l) = cons_lbl(x, v k n , range_nm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); c(2) = cons_lb2(x, v_kn, rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambda_ss, wnmax); c(3) = cons_btl(x, v_kn, rangenm, hold, heading, vms, wave_amp, hl3_ms, lambda_ss, wnmax); c(4) = cons_bt2(x, v k n , rangenm, hold, heading, vms, wave_amp, hl3_ms, lambda_ss, wnmax); c(5) = cons_disp(x, v k n , rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambdass, wnmax) - 0.01; %c(6) = x(l) - (v_kn 2)/1.4; % license length constraint c(6) = stab(x, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax); c(7) = stablite(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); %c(8) = rms_hv(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax)- 0.7; %c(9) = rms_pch(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax) - 5; %c(8) = acchvrms(x, v k n , rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambdass, wnmax)/9.81 - 0.3; %c(9) = accptrms(x, v k n , rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambdass, wnmax)* 180/pi - 3; %c(8) = amphvrms(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) - 0.7; %c(8) = ampptrms(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) - 5.0; %c(9) = rmsveraccaft(x, v k n , range_nm, hold, heading, vms, waveamp, hl3_ms, lambda_ss, wnmax) 0.18*9.81; %c(8) = 3.0 - peak_hv(x, v_kn, rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambdass, wnmax); %c(9) = 3.0 - peak_pch(x, v k n , range_nm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); %c(6) = tm01(x, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax) - 0.22; A % equality constraints: ceq = [ ] ; %ceq(l) = cons_lbl(x, v_kn, rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambdass, wnmax); %ceq(2) = cons_btl(x, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); %ceq = cons_disp(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambdass, wnmax); -98- F i l e 6: cons_btl.ni % Name: consbtl.m % Description: The file consbtl.m defines the upper bound of the beam-draft ratio as a constraint in optimization. function constraintvalue = cons_btl(x, speedkn, rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambda, wnmax) constraintvalue = x(2)/x(3) - 4.0; F i l e 7: cons_bt2.m % Name: cons_bt2.m % Description: The file cons_bt2.m defines the lower bound of the beam-draft ratio as a constraint in optimization. function constraintvalue = cons_bt2(x, speed_kn, range_nm, hold, heading, v_ms, waveamp, hl3_ms, lambda, wnmax) constraintvalue = 1.99 - x(2)/x(3); F i l e 8: conslbl.m % Name: conslbl.m % Description: The file conslbl.m defines the upper bound of the length-beam ratio as a constraint in optimization. function constraintvalue = cons_lbl(x, speedkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) constraintvalue = x(l)/x(2) - 4.5; F i l e 9: cons_lb2.m % Name: cons_lb2.m % Description: The file cons_lb2.m defines the lower bound of the length-beam ratio as a constraint in optimization. function constraint_value = cons_lb2(x, speedkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) constraintvalue = 1.99 - x(l)/x(2); -99- File 1 0 : cons disp.m % Name: cons_disp.m % Description: The file consdisp.m defines the condition of equality, of the displacement and total weight of the vessel as an equality constraint in optimization. function constraint_value = cons_disp(x, speedkn, range_nm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) global densityft constraintvalue = tweight(x, speed_kn, rangenm, hold, heading, v_ms, wave_amp, hl3_ms, lambda, wnmax) - densityft* prod(x); File 11: cost.m % Name: cost.m % Description: This file (cost.m) computes the total cost of a vessel based on the algorithm produced by Akinturk for the UBC series fishing vessels and may be applied for both steel and aluminum vessels. function totalcost = cost(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax); global ws ehp material tweight(x, v k n , range_nm, hold, heading, v_ms, wave_amp, hl3_ms, lambda, wnmax); pwerfish(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax); length = x(l); v m s = 0.5144*v_kn; if strcmp(material,'aluminum') == 1 coeff= 11064; % for aluminum elseif strcmp(material, 'steel') = 1 coeff=4155; % for steel else disp(' Error! Unknown material!'); coeff = -100000.0; % unknown material! Not implemented! end hullweight hullcost outfitcost shp gal_hr fuelcost = ws; = coeff * hullweight; %11064(Akinturk's Thesis); % for Aluminum; 4155 for steel, = 120.0*length 2; = ehp/(0.97*0.58); =shp*(0.4/8.1); = (7500/v_kn)*gal_hr*2.5; A - 100- mach_cost = 250*shp; gear_cost = 200000; capitalcost = (hull_cost + outfitcost + machcost + gearcost)* 1.3221; depreciationcost = capital_cost*0.045; ifcapital_cost< 500000 insurancecost = capital_cost*0.02; elseif capitalcost >=500000 & capitalcost <=2000000 insurancecost = capital_cost*0.015; else insurancecost = capital_cost*.01;% this case for capital_cost> 2x10^; end total_cost= capital_cost + depreciationcost + insurancecost; F i l e 12: displace, m % Name: displace.m % Description: This file (displace.m) computes the total displacement of a vessel. function displacement = displace(x) global densityft % length = x(l); beam = x(2); draft = x(3); Cb = x(4); displacement = density_ft*x(l)*x(2)*x(3)*x(4); %displacement in long tons - 101 - F i l e 13: tweight.m % Name: tweight.m This file (tweight.m) computes the total weight of a vessel based on the algorithm produced by Akinturk for the UBC series fishing vessels and may be applied for both steel and aluminum vessels and different types of fishing gears e.g. seiners, trawlers etc. % Description: % Thisfile(tweight.m)computes the total weight of a vessel function total_weight= tweight(x, speed_kn, rangenm, holdcap, heading, vms, waveamp, hl3_ms, lambda, wnmax) % x : [ Waterlinelength beam draft blockcoefficient] [ft] % v_kn : maximum speed [kn] % range : cruising range [nautical miles] global g_ft material geartype coefffreeboard global ws wm payload wo wp wg length = x(l); beam = x(2); draft =x(3); cb = x(4); % pm : required horse power [kw] pm = pwerfish(x, speedkn); % sfcm : specific fuel consumption sfcm = 250 - 50.0*pm/l810; % [gallons/(kw hr)] %sfcm = 4.5609 * sfcm; % [LT/(kw hr)]; 1 gal U.K.=4.5609 litres % assume "depth = draft + freeboard" freeboard = coefffreeboard * draft; depth = draft + freeboard; % depth, draft and freeboard in feet. o/ ********************* ******************** ********************** 0 % WEIGHT GROUPS: cn = length*beam*depth/100; %cn is called 'cubic number'. % Structural weight, ws [LT]: This includes the weight of hull, deck and % deckhouse in long tons for both steel and aluminium construction. if strcmp(material,'aluminum') == 1 k = 0.55; % for aluminum elseif strcmp(material,'steel') == 1 k=1.0; % for steel else k = 0.0; % unknown material! Not implemented! end c=100.0*(length*(beam+draft)/3000.0) (4.0/3.0); A - 102- ws = k*0.00002813*(c 3-173.52*c 2+41880*c-0.0000158); A A % Machinery weight, wm [LT]: wm = cn*(cn/27300.0 + 0.0537); % Outfit weight: wo = 0.25*x(l)*x(2); % Stores weight (water + fuel + provision): if x(l) < 39.03/3.618 wp = 0; else wp = 3.618*x(l) - 39.03; % From Ayhan's thesis, end % Gear weight, wg: For seiner vessel the gear weight includes the net % and the skiff. % wg = 7.23;% for seiners % wg = 3.05 for trawlers, which includes the net and wire rope, if strcmp(geartype,'seiner') == 1 wg = 7.23; elseif strcmp(geartype,'trawler') == 1 wg = 3.05; else wg = 0.0; % for Transglobal ferry, end % payload is holdcap capacity and any other weight might be included in payload = holdcap; % Total weight, wt [LT] wt = ws + wp + hold_cap + wg + wm + wo; o/ ************************************************************************* 0 % objective function: totalweight = wt; - 103- F i l e 14: hvamp.m % Name: hv_amp.m % Description: This file (hvamp.m) computes heave amplitude (non-dimensional) for a given encounter frequency based on D. Howard's algorithm for UBC series fishing vessels. function nondhv = hv_amp(Lwl,B, T, Cb.vms, waveamp, we) % g_ms : gravity in [m/s 2] % we : encounter frequency [rad/s] % wen : nondimensional encounter frequency % waveamp : wave amplitude = 1 [m] or [ft] % Lwl : waterline length [ft] % Lbp : length between perpendiculars [ft] %B : beam [ft] %T : draft [ft] % Cb : block coefficient % v m s : ship speed [m/s] A global gms Lbp = Lwl*.94; Lbp_m = 0.3048* Lbp; % Lbp in [m] % Froude's number Fn = v m s / sqrt(Lbp_m*g_ms); wen = we * sqrt(Lbp_rn/g_ms); A h v = 0.8591 *Fn*Lbp*T/B 2 + 1.5804*Fn*T/(Cb*B); alphahv =1.816 + 31.42*Cb*T/Lbp; deltajiv = 16.48*T/Lbp - .7485*T/(Cb*B); betajw = 6.436*Cb*Lbp*T/B 2 + 163.1*Cb*Fn*T/B; gammahv = 2.870*Cb*Lbp*TYB 2 + 40.36*Cb*Fn*T/B; A A A % non dimensional heave amplitude by Howard's algorithm nondjiv = 1 + A_hv / exp((alpha_hv-delta_hv*wen) 2)... - 1/(1+ exp (beta_hv-gamma_hv*wen)) ; % dimensional heave amplitude %d_hv = nond_hv * wave_amp; A - 104- F i l e 15: ptamp.m % Name: ptamp.m % Description: This file(ptamp.m) computes pitch amplitude (non-dimensional) for a given encounter frequency based on D. Howard's algorithm for UBC series fishing vessels. function nond_pt = pt_amp(Lwl, B, T, Cb, vms, wave_amp, we) % g_ms : gravity in [m/s 2] % we : encounter frequency [rad/s] % wen : non-dimensional encounter frequency % wave_amp : wave amplitude = 1 [m] or [ft] % Lwl : waterline length [ft] % Lbp : length between perpendiculars [ft] %B : beam [ft] %T : draft [ft] % Cb : block coefficient % v m s : ship speed [m/s] A global g_ms Lbp = Lwl*0.94; L b p m = 0.3048* Lbp; % Lbp in [m] % Froude's number Fn = v m s / sqrt(Lbp_m*g_ms); wen = we * sqrt(Lbp_m/g_ms); A_pch = 1.1313*Fn*Lbp*T/B 2 + 0.9264*Fn*T/(Cb*B); alpha_pch = 0.7904 + 45.47*Cb*T/Lbp; delta_pch = 16.82*T/Lbp - 0.8621 *T/(Cb*B); beta_pch = 18.34*Cb*Lbp*T/B 2 + 37.35*Cb*Fn*T/B; gamma_pch = 7.21 l*Cb*Lbp*T/B 2 + 3.039*Cb*Fn*T/B; A A A % non dimensional pitch amplitude by Howard's algorithm nondpt = 1 + A_pch / exp( (alpha_pch - delta_pch*wen) 2 ) - 1 / (1 + exp(beta_pch-gamma_pch*wen) ); % dimensional pitch amplitude %d_pt = nond_pt * (we 2*wave_amp/g_ms); A A - 105 - F i l e 16: peakhv.m % Name: peak_hv.m % Description: This file (peakhv.m) computes peak heave ratio, dimensional and nondimensional peak heave values for UBC series fishing vessels. This is ratio between the frequency at which the wave spectrum reaches its peak, to that of the same of the ship's response spectrum for its heave motion. function ratiohv = peak_hv(x, v k n , rangenm, hold, heading, v_ms, waveamp, hl3_ms, lambda, wnmax) global g m s L=x(l)*0.3048; B=x(2)*0.3048; T=x(3)*0.3048; Cb=x(4); lb = L / B ; bt = B / T; fh = v_kn*0.5144 / sqrt(g_ms*L); (y ********************************* ****************************** fl =(38.8668 - 11.5286*Cb-5.2002*lb- 1.1912*bt) 2; f2 = (0.8652 -0.2816*fh) 2; G = (49.6354 - 20.432l*Cb - 6.8076*lb + 0.6441 *bt) 2; 0 A A A <y *************************************************************** % objective function: Q wn_hv = sqrt(fl / (f2*G)); % Non dimensional w h v = sqrt(g_ms/T) * wnhv; % Dimensional [rad/s] % for head seas : cos(heading angle)= -1; The following is derivedfromwe=w-w 2*VCosx/g, Cosl80 being -1 making we=w+w 2V/g; ratio=w_hv/we; A A ratio_hv = w h v / (wnmax+wnmax 2*(0.5144*v_kn)/g_ms); A - 106- F i l e 17: peak_pch.m % Name: peak_pch.m % Description: This file(peak_pch.m) computes peak pitch ratio, dimensional and nondimentional peak pitch values. function ratio_pch = peak_pch(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) global g_ms L=x(l)*0.3048; B=x(2)*0.3048; T=x(3)*0.3048; Cb=x(4); lb = L/B; bt = B/T; fh = 0.5144*v_kn / sqrt(g_ms*L); o^*************************************************************** fl = (2.4541 - 0.7280*Cb - 0.3283*lb - 0.0752*bt) 2; f2 = (0.9481 - 0.3086*fn) 2; f3 = (2.8599 - 1.1773*Cb - 0.3992*lb + 0.037 l*bt) 2; A A A 0/ * * * * * * * * * * Q * * * * * * * * * * * * * * * * * * * * * * % objective function: wn_pch = sqrt(fl / (f2*f3)); % Non dimensional w_pch = sqrt(g_ms/T) * wn_pch; % Dimensional [rad/s] % for head seas : cos(heading angle)= -1; The following is derived from we=w-w 2*VCosx/g, Cos 180 being -1 making we=w+w 2V/g;ratio=w_pch/we; A A ratio_pch = w_pch / (wnmax+wnmax 2*(0.5144*v_kn)/g_ms); A - 107- F i l e 18: rms hv.m % Name: rms_hv.m % Description: This file (tms_hv.m) computes rms heave response for a given sea state the UBC series fishing vessels. function heave = heave (x, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) global hl3_5 g_ms L=x(l)*0.3048; B=x(2)*0.3048; T=x(3)*0.3048; Cb=x(4); bl=B/L; tl=T/L; ll=lambda/L; Fn=0.5144*v_kn / sqrt(g_ms*L); %Fn is Froude Number h5=hl3_5; nh=hl3_ms/h5; %nhl/3=Non-dimensional significant wave height. fl =0.17244257-0.10902408*bl-.062345772*bl 2; f2=0.92116235+9.26182543 *tl-17.01219503 *tl 2; f3=l .25445302+0.015068303*Cb; f4=0.37459542+0.33475563*Fn+0.69543449*Fn 2-0.62937284*Fn 3; f5=0.51156287+1.67664716*11-0.60058403*11^2+0.065781060*11 3; f6= 1.27331482-1.02535654*nh+0.56388486*nh 2; A A A A A A f=fl*f2*0*f4*f5*f6; heave=hl3_ms*(f+0.74616424*f 2-0.46955309*f 3); % rms heave in meters A A - 108- F i l e 19: rms_pch.m % Name: rms_pch.m % Description: Thisfile(rms_pch.m)computes rms pitch response for a given sea state the UBC series fishing vessels. function pitch=pitch(x, v_kn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) global hi 3 5 g_ms L=x(l)*0.3048; B=x(2)*0.3048; T=x(3)*0.3048; Cb=x(4); bl=B/L; tl=T/L; ll=lambda/L; disp_vol=L*B*T*Cb; dl=(disp_vol (l/3))/L; A Fn=0.5144*v_kn / sqrt(g_ms*L); %Fn is Froude Number h5=hl3_5; nh=hl3_ms/h5; %nhl/3=Non-dimensional significant wave height. fl=0.465143-2.343704*dl+3.482758*dl 2; f2=1.323205+13.947877*bl-26.389156*bl 2; G=0.346817-24.620275*tl+37.557687*tl 2; f4=0.044729+1.003151 *Cb; f5=-0.182212-0.296472*Fn+0.059477*Fn 2-0.245965*Fn 3; f6=-0.181446+4.924184*11-0.834965*11^2+0.074877*11^3; f7=2.16213525-2.78020823*nh+1.54756589*nh 2; A A A A A A f=fl*f2*D*f4*f5*f6*f7; pitch=h 13_ms*((wnmax) 2)/9.807*(f-0.46697339*f 2+0.56576473*f 3)* 180/pi; A A - 109- A F i l e 20: s acc hl.m % Name: s a c c h l . m % Description: This file (sacchl.m) computes the compound horizontal acceleration at aft deck given an encounter frequency based on the formulation given in Akinturk's thesis for the UBC series fishing vessels. function sjiorizontalaccaft = s_acc_hl (x, heading, vms, wave_amp, hl3_ms, Lwl, B, T, Cb) %B : beam of the ship [ft] % Cb : block coefficient %D : depth of the ship [ft] % heading : ship's heading [rad] (head seas is 180 degrees) % g_ms : gravity [m/s 2] % Loa : length over all [ft] % Lwl : waterline length [ft] %T : draft of the ship [ft] % v m s : ship speed [m/s] %w : wavefrequency[rad/s] % wave_amp: wave amplitude = 1 ([m] or [ft]) %x : encounter frequency vector [rad/s] A global g_ms Loa= 1.05*Lwl*0.3048; D= 1.30*T; for i = 1 : size(x,2); w = we2w (heading, vms, x(i)); pitchamp = (w 2/g_ms)*pt_amp(Lwl, B, T, Cb, vms, waveamp, x(i))... *sqrt(sspec(h 13_ms,w)/( 1 -4*x(i)* v_ms*cos(heading)/g_ms) .5); A A waveamplitude = sqrt(sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5); A horizontal_acc_aft_term = hv_amp(Lwl, B, T, Cb, V_ms, waveamp, x(i))*sin(pitch_amp)... -(Loa/2)*(w 4*waveamplitude/g_ms 2)*(pt_amp(Lwl, B, T, Cb, v_ms, wave_amp, x(i))) 2; A A A s_horizontal_acc_aft(i) = x(i) 5 * horizontal_acc_aft_term 2 ... * sspec(h 13_ms,w)/( 1 -4 *x(i)*v_ms*cos(heading)/g_ms) .5; A A A end % end for "for i = ..." - 110- F i l e 2 1 : 5 accvl.m % Name: s_accvl.m % Description: This file (s_accvl.m) computes the compound vertical acceleration at aft deck given an encounter frequency based on the formulation given in Akinturk's thesis for the UBC series fishing vessels. function s_vertical_acc_aft = s_accvl(x, heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb) %B : beam of the ship [ft] % Cb : block coefficient %D : depth of the ship [ft] % heading : ship's heading [rad] (head seas is 180 degrees) % g_ms : gravity [m/s 2] % Loa : length over all [ft] % Lwl : waterline length [ft] %T : draft of the ship [ft] % v m s : ship speed [m/s] %w : wave frequency [rad/s] % wave_amp: wave amplitude = 1 ([m] or [ft]) %x : encounter frequency vector [rad/s] A global g_ms Loa= 1.05*Lwl * 0.3048; D= 1.30*T; for i = 1 : size(x,2); w = we2w (heading, v_ms, x(i)); pitchamp = (w 2*wave_amp/g_ms)*pt_amp(Lwl, B, T, Cb, vms, waveamp, x(i))... *sqrt(sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5); A A verticalaccaftterm = hv_amp(Lwl, B, T, Cb, vms, waveamp, x(i))*cos(pitch_amp)... - (Loa/2)*(w 2/g_ms)*pt_amp(Lwl, B, T, Cb, v_ms, wave_amp, x(i)); A s_vertical_acc_aft(i) = x(i) 5* vertical_acc_aft_term 2 ... *sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5; A A A end % end for "for i = ..." - Ill - File 22: s_acc_h2.m % Name: s_acc_h2.m % Description: This file (s_acc_h2.m) computes the compound horizontal acceleration at midship deck given an encounter frequency based on the formulation given in Akinturk's thesis for the UBC series fishing vessels. function s_horizontal_acc_mid = s_acc_h2(x, heading, v_ms, waveamp, h 13_ms, Lwl, B, T, Cb) %B : beam of the ship [ft] % Cb : block coefficient %D : depth of the ship [ft] % heading : ship's heading [rad] (head seas is 180 degrees) % gms : gravity [m/s 2] % Loa : length over all [ft] % Lwl : waterline length [ft] %T : draft of the ship [ft] % v m s : ship speed [m/s] %w : wave frequency [rad/s] % waveamp: wave amplitude = 1 ([m] or [ft]) %x : encounter frequency vector [rad/s] A global g_ms Loa= 1.05*Lwl*0.3048; D= 1.30*T; for i = 1 : size(x,2); w = we2w (heading, vms, x(i)); pitchamp = (w 2/g_ms)*pt_amp(Lwl, B, T, Cb, v_ms, waveamp, x(i))... *sqrt(sspec(h 13_ms,w)/( 1 -4*x(i)* v_ms*cos(heading)/g_ms) .5); A A horizontalaccmidterm = hv_amp(Lwl, B, T, Cb, v_ms, waveamp, x(i))*sin(pitch_amp); s_horizontal_acc_mid(i) = x(i) 5 * horizontal_acc_mid_term 2 ... *sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5; A A A end % end for "for i = ..." -112- F i l e 23: s_acc_y2.m % Name: s_acc_v2.m This file (s_accv2.m) computes the compound vertical acceleration at midship deck, given an encounter frequency based on the formulation given in Akinturk's thesis for the UBC series fishing vessels. % Description: function s_vertical_acc_mid = s_accv2(x, heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb) %B : beam of the ship [ft] % Cb : block coefficient %D : depth of the ship [ft] % heading : ship's heading [rad] (head seas is 180 degrees) % g_ms : gravity [m/s 2] % Loa : length over all [ft] % Lwl : waterline length [ft] %T : draft of the ship [ft] % v m s : ship speed [m/s] %w : wave frequency [rad/s] % waveamp: wave amplitude = 1 ([m] or [ft]) %x : encounter frequency vector [rad/s] A global g_ms Loa= 1.05*Lwl * 0.3048; D= 1.30*T; for i = 1 : size(x,2); w = we2w (heading, vms, x(i)); pitchamp = (w 2*wave_amp/g_ms)*pt_amp(Lwl, B, T, Cb, vms, waveamp, x(i))... *sqrt(sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5); A A vertical_acc_mid = hv_amp(Lwl, B, T, Cb, vms, waveamp, x(i))*cos(pitch_amp); svertica l_acc_mid(i) = x(i) 5 * vertical_acc_mid 2 ... *sspec(h 13_ms, w)/( 1 -4 * x(i)* vms * cos(heading)/g_ms) . 5; A A A end % end for "for i = ..." - 113 - F i l e 24: saccJiS. m % Name: s_acc_h3.m % Description: This file (s_acc_h3.m) computes the compound horizontal acceleration at fore deck given an encounter frequency based on the formulation given in Akinturk's thesis for the UBC series fishing vessels. function shorizontal a c c b o w = s_acc_h3(x, heading, vms, waveamp, h 13_ms, Lwl, B, T, Cb) %B : beam of the ship [ft] % Cb : block coefficient %D : depth of the ship [ft] % heading : ship's heading [rad] (head seas is 180 degrees) % g_ms : gravity [m/s 2] % Loa : length over all [ft] % Lwl : waterline length [ft] %T : draft of the ship [ft] % v_ms : ship speed [m/s] %w : wave frequency [rad/s] % waveamp: wave amplitude = 1 ([m] or [ft]) %x : encounterfrequencyvector [rad/s] A global g_ms Loa= 1.05*Lwl*0.3048; D=1.30*T; for i = 1 : size(x,2); w = we2w (heading, vms, x(i)); pitch_amp = (w 2/g_ms)*pt_amp(Lwl, B, T, Cb, v_ms, waveamp, x(i))... *sqrt(sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5); A A waveamplitude = sqrt(sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5); A horizontalaccbow = hv_amp(Lwl, B, T, Cb, vms, waveamp, x(i))*sin(pitch_amp)... +(Loa/2)*(w 4*waveamplitude/g_ms 2)*(pt_amp(Lwl, B, T, Cb, vms, waveamp, x(i))) 2; A A A shorizontalaccbow(i) = x(i) 5 * horizontal_acc_bow 2 ... * sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5; A A A end % end for "for i = ..." -114- F i l e 25: sjiccv3.m % Name: s_accv3.m % Description: This file (s_accv3.m) computes the compound vertical acceleration at fore deck, given an encounter frequency, based on the formulation given in Akinturk's thesis for the UBC series fishing vessels. function sverticalaccbow = s_accv3(x, heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb) %B : beam of the ship [ft] % Cb : block coefficient %D : depth of the ship [ft] % heading : ship's heading [rad] (head seas is 180 degrees) % g_ms : gravity [m/s 2] % Loa : length over all [ft] % Lwl : waterline length [ft] %T : draft of the ship [ft] % v m s : ship speed [m/s] %w : wave frequency [rad/s] % wave_amp: wave amplitude = 1 ([m] or [ft]) %x : encounter frequency vector [rad/s] A global g m s Loa= 1.05*Lwl * 0.3048; D= 1.30*T; for i = 1 : size(x,2); w = we2w (heading, vms, x(i)); pitch_amp = (w 2/g_ms)*pt_amp(Lwl, B, T, Cb, vms, waveamp, x(i))... * sqrt(sspec(hl3_ms,w)/(l -4*x(i)*v_ms*cos(heading)/g_ms) .5); A A vertical_acc_fore = hv_amp(Lwl, B, T, Cb, vms, wave_amp, x(i))*cos(pitch_amp)... + (Loa/2)*(w 2/g_ms)*pt_amp(Lwl, B, T, Cb, v m s , wave_amp, x(i)); A s_vertical_acc_bow(i) = x(i) 5 * vertical_acc_fore 2 ... *sspec(hl3_ms,w)/(l-4*x(i)*v_ms*cos(heading)/g_ms) .5; A A A end % end for "for i = ..." - 115- F i l e 26: rmsveraccaft.m % Name: rmsveraccaft % Description: This file computes the RMS vertical acceleration at the aft deck, given an encounter frequency, based on the formulation given in Akinturk's thesis for the UBC series fishing vessels. function veraccaft = rmsveraccaftfx, v k n , range_nm, hold, heading, vms, wave_amp, hi 3_ms, lambda, wnmax) % threshold value at aft % g_ms : gravity [m/s 2] % heading : ship's heading [rad] % v m s : ship speed [m/s] % w_l : lower bound of wave frequency for integration [rad/s] % w_u : upper bound of wave frequency for integration [rad/s] % w e l : lower bound of encounter wave frequency for integration [rad/s] % we_u : upper bound of encounter wave frequency for integration [rad/s] A global g_ms Lwl = x(l); B =x(2); T =x(3); Cb =x(4); w_l = 0.01; w_u = 5.01; w e l = w2we(heading, v_ms, w_l); w e u = w2we(heading, v_ms, w_u); %s = quad8('s_accvl.m',we_l,we_u, [],[],heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); % By Simpson's method ... s = sminteg('s_accvl',we_l,we_u,heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); veraccaft = sqrt(s); -116- F i l e 27: stab.m % Name: stab.m % Description: This file (stab.m) computes the transverse metacentric height of a loaded vessel. function stability = stab(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) % % % % x = [ Waterlinelength beam draft blockcoefficient ] [ft] v k n = design speed [kn] Cm = mid ship sectional area coefficient Cp = prismatic coefficient global densitym g_ft coefffreeboard Cw global ws wm payload wo wp wg L = x(l); B = x(2); T = x(3); Cb= x(4); depth = (1 + coefffreeboard) * x(3); tweight(x, v k n , range_nm, hold, heading, vms, wave_amp, hl3_ms, lambda, wnmax); density = densitym * 0.3048 3 /1.016; Cn = L*B*depth/100; A 0 / 0 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * % 0 / 0 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * CENTER OF GRAVITIES * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * % KG for hull weight: kghull = depth * (Cn/14630.0 + 0.821); % KG for outfit weight: kgoutfit = depth * (Cn/8820.0 + 1.19); % KG for machinery weight: This weight is included in the payload % in the case of Transglobal Expedition Ferry. kgmachinery = depth * ((Cn-400) 2/130900.0 + 0.494); A % KG for provision stores weight(wp): kgstores = depth * 0.75; % KG for gear weight: kggear = depth * 1.66; % KG for payload or cargo: kg_payload = depth * 0.60; kgship = (ws*kg_hull + wm*kg_machinery + payload*kg_payload +wo*kg_outfit... + wp*kg_stores + wg*kg_gear)/(ws + wm + wo + payload + wp + wg); KGJoaded = kgship; % in feet Objective function: stability = KGloaded/depth - 0.243*B/depth - 0.2831; % stability should be less than zero -117- F i l e 28: stablite.m % Name: stablite.m % Description: This file (stablite.m) computes the transverse metacentric height of a light vessel. function stability = stablite(x, v k n , range_nm, hold, heading, vms, wave_amp, hl3_ms, lambda, wnmax) % IMPORTANT!!!! units are in feet, LongTons !!!!! global density_m densityft g ft coefffreeboard Cw global ws wm wo wp wg L = x(l); B = x(2); T = x(3); Cb= x(4); depth = coefffreeboard * x(3); tweight(x, v k n , rangejim, hold, heading, v_ms, waveamp, hl3_ms, lambda, wnmax); density = density_ft; Cn = L*B*depth/100; 0,/*************************************************************** % CENTER OF GRAVITIES 0^*************************************************************** % KG for hull weight: kgjiull = depth * (Cn/14630.0 + 0.821); % KG for outfit weight: kg_outfit = depth * (Cn/8820.0 + 1.19); % KG for machinery weight: This weight is included in the payload % in the case of Transglobal Expedition Ferry. kgmachinery = depth * ((Cn-400) 2/130900.0 + 0.494); A % KG for provision stores weight(wp): kg_stores = depth * 0.75; % KG for gear weight: kggear = depth * 1.66; % K G for payload or cargo: kg_payload = depth * 0.60; kgship = (ws*kg_hull + wm*kg_machinery +wo*kg_outfit)/(ws + wm + wo); KGJight = kgship; % in feet Objective Function: -118- * stability = KGlight/depth - 0.466*B/depth + 0.046; % stability should be less than zero F i l e 29: tmOl.m % Name: tmOl.m % Description: This file (tmOl.m) computes Kimura's threshold value at the aft deck of the vessel from the first moment of power spectrum of the acceleration in longitudinal (x) and vertical (z) directions. function tmaft = tm01(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) threshold value at aft % g_ms : gravity [m/s 2] % heading : ship's heading [rad] % v_ms : ship speed [m/s] % wj : lower bound of wave frequency for integration [rad/s] % w_u : upper bound of wave frequency for integration [rad/s] % w e j : lower bound of encounter wave frequency for integration [rad/s] % we_u : upper bound of encounter wave frequency for integration [rad/s] A global g_ms Lwl = x(l); B =x(2); T =x(3); Cb = x(4); w_l = 0.01; w_u = 5.01; w e l = w2we(heading, v_ms, w_l); we_u = w2we(heading, vms, w_u); %sl = quad8('s_acc_hl.m',we_l,we_u,[],[],heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); %s2 = quad8('s_accvl.m',we_l,we_u,[],[],heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); % By Simpson's method: sl = sminteg('s_acc_hr,we_l,we_u,heading, vms, wave_amp, hl3_ms, Lwl, B, T, Cb); s2 = sminteg('s_accv 1 ',we_l,we_u,heading, vms, waveamp, h 13_ms, Lwl, B, T, Cb); tmaft = sl +0.1133*s2; -119- % F i l e 30: tm02.m % Name: tm02.m % Description: This file (tm02.m) computes Kimura's threshold value at the midship deck of the vessel from the first moment of power spectrum of the acceleration in x and z directions. function tmmid = tm02(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) % threshold value at aft % g_ms : gravity [m/s 2] % heading : ship's heading [rad] % v_ms : ship speed [m/s] % wj : lower bound of wave frequency for integration [rad/s] % w_u : upper bound of wave frequency for integration [rad/s] % w e l : lower bound of encounter wave frequency for integration [rad/s] % w e u : upper bound of encounter wave frequency for integration [rad/s] A global g_ms Lwl = x(l); B =x(2); T = x(3); Cb =x(4); w_l = 0.01; w_u= 5.01; w e l = w2we(heading, v_ms, w_l); w e u = w2we(heading, vms, w_u); %s3 = quad8('s_acc_h2.m',we_l,we_u,[],[],heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); %s4 = quad8('s_accv2.m',we_l,we_u,[],[],heading, v_ms, waveamp, hl3_ms, Lwl, B, T, Cb); % By Simpson's method: s3 = sminteg('s_acc_h2',we_l,we_u,heading, v_ms, waveamp, h!3_ms, Lwl, B, T, Cb); s4 = sminteg('s_accv2',we_l,we_u,heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); tmmid = s3 +0.1133 *s4; - 120- F i l e 31: tm03.m % Name: tm03.m % Description: This file(tm03.m) computes Kimura's threshold value at the fore deck of the vessel from the first moment of power spectrum of the acceleration in x and z directions. function tmbow = tm03(x, v k n , rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) % threshold value at aft % % % % % % % g m s : gravity [m/s 2] heading : ship's heading [rad] v_ms : ship speed [m/s] w_l : lower bound of wave frequency for integration [rad/s] w_u : upper bound of wave frequency for integration [rad/s] w e l : lower bound of encounter wave frequency for integration [rad/s] w e u : upper bound of encounter wave frequency for integration [rad/s] A global g_ms Lwl = x(l); B =x(2); T =x(3); Cb =x(4); w_l = 0.01; w_u = 5.01; we_l = w2we(heading, vms, w_l); w e u = w2we(heading, vms, w_u); %s5 = quad8('s_acc_h3.m',wej,we_u,[],[],heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); %s6 = quad8('s_accv3.m',we_l,we_u,[],[],heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); % By Simpson's method : s5 = sminteg('s_acc_h3',we_l,we_u,heading, vms, waveamp, hl3_ms, Lwl, B, T, Cb); s6 = sminteg('s_accv3',we_l,we_u,heading, v_ms, wave_amp, hl3_ms, Lwl, B, T, Cb); tmbow = s5 +0.1133 *s6; - 121 - File 32:pwerfish.m % Name: pwerfish.m % Description: This file (pwerfish.m) computes resistance and power requirement for a UBC Series fishing vessel. This algorithm was produced by Akinturk. %Resistance and Powering Calculation: function pwr = pwerfish(x, speedkn, rangenm, hold, heading, vms, waveamp, hl3_ms, lambda, wnmax) % x = [ Waterlinelength beam draft blockcoefficient] [ft] % v k n = design speed [kn] % Cm = mid ship sectional area coefficient global g_ft Cm ehp L = x(l); B = x(2); T = x(3); Cb= x(4); % Cp = prismatic coefficient Cp = Cb/Cm; V = 1.69*speed_kn; % 1 [ft/s] = 1.69 * [kn] %Fn is Froude Number Fn=V/sqrt(g_ft*L); %Rn=Reynold's Number Rn=V*L/.929E-5; %S, wetted surface area [ft 2] S = L*(2*T+B)*sqrt(Cm)*(0.453+0.4425*Cb-0.2862*Cm-0.003467*B/T+0.3696*0.8274); A % Residual resistance estimation coefficients dlO= 0.816643*Cb- 0.427581; d l l = 0.022352*Cb-0.011868; dl2 = -0.008464*Cb + 0.004504; dl3 =-0.593119*Cb +0.313188; dl4= 0.114583*Cb-0.060598; cl = dlO + dl 1*L/B + dl2*(L/B) 2 + dl3*(B/T) + dl4*(B/T) 2; A A d20 =-1.060036*Cb + 0.72888; d21 = 0.010643*Cb-0.006468; d22 = 0.06869*Cb - 0.042227; d23 = -0.054369*Cb + 0.02819; d24= 0.03881*Cb -0.023296; c2 = d20+d21*(L/B) + d22*(L/B) 2 + d23*(B/T) + d24*(B/T) 2; A A d30 = 0.796988*Cb - 0.49031; d31 = -0.004176*Cb + 0.002643; d32 = -0.024798*Cb + 0.016158; d33 = -0.017131*Cb +0.009399; d34 = -0.025976*Cb + 0.015314; - 122- c3 = d30 + d31 *(L/B) + d32*(L/B) 2 + d33*(B/T) + d34*(B/T) 2; A A d40= 0.348833*Cb-0.233175; d41 = -0.003756*Cb + 0.00232; d42 = -0.025905*Cb + 0.01605; d43 =-0.024893*Cb + 0.013365; d44 = -0.000131*Cb + 0.00125; c4 = d40+d41 *(L/B) + d42*(L/B) 2 + d43*(B/T) + d44*(B/T) 2; A m = 0.14347*Cp (-2.1976); A % +Fn 2;"+ Fn 2" isfromThomas Boower's thesis. A A A % Cr, Wave Resistance coefficient Cr = cl*exp(-m/(9*Fn 2)) + c2*exp(-m/(Fn 2)) + c3*exp(-m/(Fn 2))*sin(Fn 2)... + c4*exp(-m/(Fn 2))*cos(Fn 2); % Cf, coefficient of fricton Cf = 0.075/((loglO(Rn)-2) 2); % Ct, total resistance coefficients Ct=Cr+Cf+.0004; A A A A A A % R, total resistance R = 0.5*Ct*1.9905*S*V 2; A % ehp, effective horse power ehp=R*V/550; % pwr, required horse power pwr=2.0*ehp; - 123- A File 33: Sminteg.m % Name: Sminteg.m % Description: This file (Sminteg.m) defines the mathematics of integration by Simpson's method. function simpson_integration = sminteg(funname, x l , x2, varargin) N = 2001; sm(l)= 1; deltaX = ( x 2 - x l ) / N ; x(l) = x l ; fori = 2:2:N-l sm(i) = 4; sm(i+l) = 2; x(i) = xl + deltaX*i; x(i+l) = xl + deltaX*(i+l); end; sm(N)= 1; x(N) = x2; y = feval(funname,x, varargin{:}); simpson_integration = deltaX *sum(sm.*y) / 3.0; File 34: tmintp.m % Name: tmintp.m % Description: This file (tmintp.m) is used in the optimization to find the minimum threshold value. tmintp.m function f = tmintp(x) global xOcrit yOcrit f = interpl(xOcrit,yOcrit,x, 'linear'); File 35: tmmax.m % Name: tmmax.m % Description: This file (tmmax.m) is used in the optimization to find the maximum threshold value. tmmax.m - 124- function f = tmmax(x) global xOcrit yOcrit f = -interpl(xOcrit,yOcrit,x, 'spline'); F i l e 36: vcrit.m % Name: vcrit.m % Description: This file (vcrit.m) produces the maximum attainable velocity at any location (fore, midship or aft) at which Kimura's threshold value will just be .22. This is useful in deciding the location of the workspace onboard the vessel for maximum comfort and safety of the crews. vcrit.m function f = vcrit(x) global xOcrit yOcrit y = interpl(xOcrit,yOcrit,x,'linear'); %y = spline(xOcrit,yOcrit,x); f=(y-0.22) 2; A - 125- F i l e 37: okul.m % Name: okul .m % Description: This function reads in the values of Kimura's threshold value (tm) calculated previously and produces plots of tm versus speed for each sea state. This also calculates maximum attainable speeds for a given operational sea state and produces plots of it. v_kn=[0 1 2 3 4 5 6 7 8 9 10]; swh = [0.30 0.88 1.40 2.45 3.65]; ss = [ 1 2 3 4 5 ]; ships = [36.679 42.403 49.806 55.895 65.73 65.453 % ship speeds [kn] % significant wave heights [m] % sea states 69.204 75.503 79.139 84.256 90.438]; % design number lenss = size(swh,2); len_speed = size(v_kn,2); len_ships = size(ships,2); for ii = 1 -.lenspeed; tmcri(ii) = 0.22;% Kimura's limiting value end; % i i fid = fopen('mizan.out','r'); tmaft(l,l:len_speed,l.ien_ships) tmaft(2,l:len_speed,l:len_ships) tmaft(3,l:len_speed,l:len_ships) tmaft(4,l:len_speed,l:len_ships) tmaft(5,l:len_speed,l:len_ships) = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', [len_speed [lenspeed [len_speed [lenspeed [lenspeed lenships]); lenships]); lenships]); lenships]); lenships]); tmmid(l,l:len_speed,l:len_ships) tmmid(2,l:len_speed,l:len_ships) tmmid(3,l:len_speed,l:len_ships) tmmid(4,l:len_speed,l:len_ships) tmmid(5,l :len_speed,l :len_ships) = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', [lenspeed [lenspeed [len_speed [lenspeed [lenspeed len_ships]); lenships]); len_ships]); lenships]); len_ships]); tmbow(l,l:len_speed,l:len_ships) tmbow(2,l:len_speed,l:len_ships) tmbow(3,l:len_speed,l:len_ships) tmbow(4,l:len_speed,l:len_ships) tmbow(5,l:len_speed,l:len_ships) = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', = fscanf(fid,'%10g', [lenspeed [len_speed [lenspeed [lenspeed [len_speed len_ships]); lenships]); lenships]); len_ships]); len_ships]); st = fclose(fid); for i = 1 :len_ships; lenships =11; % number of ships -126- figure; titlel = strcat('ship no:',num2str(i),' (aft ship)'); %subplot( 1,1,1), plot(v_kn, tmcri,'k', v_kn,tmaft(l,l:len_speed,i),'k-o', v_kxi,tmaft(2,l:len_speed,i),'b:*',... v_kn,tmaft(3,l :len_speed,i),'g-+', v_kn,tmaft(4,l :len_speed,i),'r:x',... v_kn,tmaft(5,1 :len_speed,i),'k-d'); v = axis; v(3) = -0.225; v(4) = 0.225; axis(v); xlabel('Ship speed [kn]');ylabel('tm value');title(titlel); legend(' tm limit ','sea state: 1',' 2 ',' 3 ',... 47 5 ',0); figure; title2 = strcat('ship no:',num2str(i),' (mid ship)'); %subplot(2,l,2), plot(v_kn, tmcri,'k', v_kn,tmmid(l,l:len_speed,i),'k-o', v_kn,tmmid(2,l:len_speed,i),'b:*',... v_kn,tmmid(3,l :len_speed,i),'g-+', v_kn,tmmid(4,1 :len_speed,i),'r:x',... v_kn,tmmid(5,1 :len_speed,i),'k-d'); v = axis; v(3) = -0.225; v(4) = 0.225; axis(v); axis(v); xlabel('Ship speed [kn]');ylabel('tm value');title(title2); legend(' tm limit ','sea state: 1 ',' 2 ',' 3 ',... 47 5 ',0); figure; title3 = strcat('ship no:',num2str(i),' (fore ship)'); %subplot(l,l,3), plot(v_kn, tmcri,'k', v_kn,tmbow(l,l:len_speed,i),'k-o', v_kn,tmbow(2,l:len_speed,i),'b:*',... v_kn,tmbow(3,l :len_speed,i),'g-+', v_kn,tmbow(4,l :len_speed,i),'r:x',... v_kn,tmbow(5,1 :len_speed,i),'k-d'); v = axis; v(3) = -0.225; v(4) = 0.225; axis(v); axis(v); xlabel('Ship speed [kn]');ylabel('tm value');title(title3); legend(' tm limit ','sea state: 1 ',' 2 ',' 3 ',... 47 5 ',0); end; for i = 1 :len_ss; % sea states for j = l:len_ships; % ships lenships =11;% defines for which ship is the result being sought. - 127- global xOcrit yOcrit xOcrit = v_kn(l :len_speed); yOcrit(l .lenspeed) = tmaft(i,l :len_speed,j); vmin(ij) = fmin('tmintp',v_kn(l), v_kn(len_speed)); % tm value is min for the speed vmin % in the range [v_kn(l).. v_kn(7)] vmax(ij) = fmin('tirimax',v_kn(l), vkn(lenspeed)); % tm value is max for the speed vmax % in the range [v_kn(l).. v_kn(7)] vcl(ij) = fmin('vcrit', v_kn(l), vmin(ij)); vc2(ij) = fmin(Vcrit',vmin(i,j), v_kn(len_speed)); if inteipl(xOcrit,yOcrit,vmax(i,j), 'spline') < 0.22 vc3(i,j) = v_kn(len_speed); elseif vcl(ij) > vc2(i,j) vc3(i,j) = vcl(i,j); else vc3(i,j) = vc2(i j); end; % if clear xOcrit yOcrit end; % j end; % i figure; plot(ss,vcl(l.ien_ss,ll),'g', ss,vc2(l:len_ss,l l),'k*',... ss,vc3(l :len_ss,l l),'b-',ss,vmin(l :len_ss,l l),'c:o'); legend(' Maximum attainable (Region 1)',' Maximum attainable (Region 2)',... ' Maximum attainable (Overall)','Correspoding to min tm value', 1); xlabel('Sea state');ylabel('Ship speed [kn]');title('aft'); h = gca; set(h,'xtick',[l 2 3 4 5]); for i = 1 :len_ss; % sea states for j = hlenships; % ships lenships =11; global xOcrit yOcrit xOcrit = v_kn(l .-lenspeed); y0crit(l :len_speed) = tmmid(i,l :len_speed,j); vmin(ij) = fmin('tmintp',v_kn(l), v_kn(len_speed)); % tm value is min for the speed vmin % in the range [v_kn(l).. v_kn(7)] -128- vmax(ij) = fmin('tmmax',v_kn(l), v_kn(len_speed)); % tm value is max for the speed vmax % in the range [v_kn(l).. v_kn(7)] vcl(i,j) = fmin('vcrit', v_kn(l), vmin(ij)); vc2(i,j) = fmin('vcrif ,vmin(i,j), vkn(lenspeed)); if interpl(xOcrit,yOcrit,vmax(i,j), 'spline') < 0.22 vc3(i,j) = v_kn(len_speed); elseif vcl(ij) > vc2(i,j) vc3(i,j) = vcl(i,j); else vc3(i,j) = vc2(i,j); end; % if clear xOcrit yOcrit end; % j end; % i figure; plot(ss,vcl(l:len_ss,ll),'g', ss,vc2(l:len_ss,l l),'k*',... ss,vc3( 1 :len_ss, 11 ),'b-',ss,vmin( 1 :len_ss, 11 ),'c:o'); legend(' Maximum attainable (Region 1)'/ Maximum attainable (Region 2)',... ' Maximum attainable (Overall)VCorrespoding to min tm value', 1); xlabel('Sea state');ylabel('Ship speed [kn]');title('mid'); h = gca; set(h,'xtick',[l 2 3 4 5]); for i = 1 .lenss; % sea states for j = hlenships; % ships lenships =11; global xOcrit yOcrit xOcrit = v_kn( 1: len_speed); y0crit( 1: lenspeed) = tmbo w(i, 1: lenspeedj); vmin(ij) = fmin('tmintp',v_kn(l), v_kn(len_speed)); % tm value is min for the speed vmin % in the range [v_kn(l) .. v_kn(7)] vmax(ij) = fmin('tmmax',v_kn(l), vkn(lenspeed)); % tm value is max for the speed vmax % in the range [v_kn(l).. v_kn(7)] vcl(i,j) = fmin('vcrit', v_kn(l), vmin(ij)); vc2(i,j) = fmin('vcrit',vmin(ij), v_kn(len_speed)); -129- if interpl(xOcrit,yOcrit,vmax(ij), 'spline') < 0.22 vc3(i j) = vkn(lenspeed); elseif vcl(i,j) > vc2(ij) vc3(ij) = vcl(ij); else vc3(i j) = vc2(i,j); end; % if clear xOcrit yOcrit end; % j end; % i figure; plot(ss,vcl(l:len_ss,ll),'g', ss,vc2(l:len_ss,l l),'k*',... ss,vc3(l:len_ss,ll),'b-',ss,vmin(l:len_ss,ll),'c:o'); legend(' Maximum attainable (Region 1)',' Maximum attainable (Region ' Maximum attainable (Overall)','Correspoding to min tm value', 1); xlabel('Sea state') ;ylabel('Ship speed [kn]');title('bow'); h = gca; set(h,'xtick',[l 2 3 4 5]); -130- F i l e 38: maintrgb.m maintrgb.m % D e s c r i p t i o n : The file maintrgb.m is the main file in the design process for Transglobal Expedition, which is used for optimization purpose to get the values of different design variables based on the objective function and the constraint function. % Name: format short g fid = fopen('r_pk40_3.out','a+');% W deletes contents in existing file or create a new file, and open it for writing; 'a+' create and open new file for reading and writing, appending to the end of the file. The prefix 1-5 denotes seastate. fprintf(fid,' seasthold vel Peakhv Peak_pt stab % end L B stablite'); T Cb Disp % Global parameters and variables: global density gravity gms g_fts global freeboard depth length beam draft global Cm Cp Cw Cb global hi3 hl3_5 lambda wnmax global speedmax rangemax global powermax ehp global payload ws wo wp wm wg wf % density of sea water [LT/ft 3] density_ft= 1/(35.3147/1.016); % density of sea water [LT/m 3] densityjm = 1.025/1.016; A A gfts = 32.2; gms = 9.807; % garvitational acc. ft/s % garvitational acc. m/s density = density_ft; gravity = gfts; seastate = 3; % seastate varies from 1 to 5 hl3_ref= [0.30 0.88 1.40 2.45 3.65]; tjref = [2.4 3.9 4.6 5.7 6.8]; tmaxref = [3.4 5.4 6.5 8.1 9.7]; lambdajref = [6.1 15.9 21.6 34.0 49.0]; h 13 = h 13_ref(seastate); hl3_5 =3.65; %hl3 =3.65; lambda = lambda_ref(seastate); wnmax = 2*pi/tmax_ref(seastate); speedmax = 10.0; rangemax = 200.0; powermax = 150.0; % [m] % [m]; for seastate 5. % [m] % [rad/s] % [kn] % [km] %[HP] - 131 - HP Cost RMS_hv RMS_pt hold = [10 25 50 75 100 125 150 175 200 250 300]; % Addition by Ayhan % begin results = zeros(size(hold,2), 16); results(:,l) = seastate; %end for igen = 1 :size(hold,2); %for igen = 5,9; % for element # 5th and 9th. payload = hold(igen); % [LT] % Addition by Ayhan % begin results(igen, 2) = payload; results(igen, 3) = speedmax; % end %freeboard = 2.50; %Cm = 0.878; %Cp = 0.7; cargoweight = payload; % [ft] Lhold = 3.3*(28.5*cargoweight) 0.3669; LJicence = (speedmax 2)/1.4; %this restriction is applicable for westcoast A A %L0 = LJiold; L0 = l_est(hold(igen)); xO =[L0 (L0/3) (L0/4/3) 0.6 0.87 0.7];% in feet x = xO; vlb = [L0*.95 x(l)/4.0 x(2)/4 0.5 .85 .65 ]; vub = [L0*1.3 L0/(0.0177*L0 + 1.690323)* 1.1 x(2)/2.6 0.65 .90 .75 ]; %x0 = vlb +(vub-vlb)/2; %x = xO; length beam draft Cb Cm Cp x(l); = x(2); x(3); x(4); x(5); x(6); : % in feet % in feet % in feet % in feet % in feet % block coefficient % midship coefficient % prismatic coefficient pwerfish(xO); stab(xO); rmshv(xO); tweight(xO); rms_pch(x0);peak_hv(x0);peak_pch(x0); stablite(xO); % displacement = density*cb*length*beam*draft % displacement = density*x(l)*x(2)*x(3)*x(4); funf = 'f = [cost(x)];';%[pwerfish(x)];';% cost(x)% tweight(x)];';pwer(x); ((l/peak_hv(x))+(l/peak_pch(x))) - 132- 0^*************************************************************************^ *** %Max: L/B=4.99; B/T=5.83; L/T=18.5 %Min: L/B=1.44; B/T=1.80; L/T=4.05 0y^************ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *** %fung = 'g = [(1.025/1.016)*x(l)*x(2)*x(3)*x(4)/tweight(x)-1.0;(1.025/1.016)*x(l)*x(2)*x(3)*x(4)/tw^ 1.015;-x(l)/x(2)+1.99;x(l)/x(2)-4;-x(2)/x(3)+1.99;x(2)/x(3)-6.5];'; %fung = 'g = [(1.025/1.016)*x(l)*x(2)*x(3)*x(4)-tweight(x);x(l)/x(3)-25;-x(l)/x(2)+1.99;x(l)/x(2)-2.5;x(2)/x(3)+1.99;x(2)/x(3)-6.5];'; %(rms_hv(x)/0.3048)-2.0;rrns_pch(x)-3.0;-peak_hv(x)/l .3659+1.4];';%;-peak__pch(x)/l.3659+2];'; %fung = 'g = [x(l)*x(2)*x(3)*x(4)/(35.0045867nweig^ peak_hv(x);3.0-peakj3ch(x)];';%x(2)/x(3)-4.0;-x(3)+(x(2)/2.4-2.5);x(l)/x(2)-4.0;-x(l)/x(2)+1.99];^ fung = 'g = [x(l)*x(2)*x(3)*x(4)/(35.0045867*tweight(x))-1.0;4.0-peak_hv(x);4.0-peak_pch(x)];'; %fung = 'g = [x(l)*x(2)*x(3)*x(4)/(35.0045867*tweight(x))-1.0;rms_hv(x)-3.2808;rmsjch(x)-5.0 %fung = 'g = [x(l)*x(2)*x(3)*x(4)/(35.0045867*tweight(x))-1.0];'; %x(2)*x(4)/x(3)-2.3;-x(2)*x(4)/x(3)+1.5;-x(l)/x(2)+1.44;x(l)/x(2)-4.99;x(2)/x(3)-5.83;-x(2)/x(3)+1.8;^ 18.5;-x(l)/x(3)+4.05];'; %fung = 'g = [((1.025/1.016)*x(l)*x(2)*x(3)*x(4)-tweigh^ 3.5 ;peak_pch(x)-5 ];'; %fung = 'g = [x(2)*x(4)/x(3)-l .7];'; % % % % % % % % % % % SOME EXAMPLES OF CONSTRAINTS: -x(4)+.6; Cb constraint Cb>.6 x(l)/x(2)-4.99; -x(l)/x(2)+1.44; L/B constraint 1.44<L/B<4.99 x(2)/x(3)-5.83; -x(2)/x(3)+1.80; B/T constraint 1.80<B/T<5.83 x(l)/x(3)-18.5; -x(l)/x(3)+4.05; L/T constraint 4.05<L/T<18.5 x(2)*x(4)/x(3)-1.7; wetted surface minimization pwer(x)-150.0; Power constraint < 150 hp rms_hv(x)/0.3048-2.0; RMS Heave constraint rms_pch(x)-3.0; RMS Pitch constraint peak_hv(x)/0.3048-2.5; peak heave constraint peak_pch(x)-4; peak pitch constraint fun = [funf rung] disp('optimization started...') options(l) = 1; options(2) = 1.0e5; options(3) = 1.0e6; options(13)= 1; options( 14)= 1000000; % Termination tolerance for x(default le-4). % Termination tolerance for F(default 1 e-4). % Number of equality constraints. % Maximum number of iterations. [x options] = constrffun, xO, options, vlb, vub); xfeet =x x_meter = [x(l)*0.3048 x(2)*0.3048 x(3)*0.3048 x(4) x(5) x(6)] payload - 133- speedmax disp('displacement');displace(x) disp('Total weight');tweight(x) disp('Power');pwerfish(x) disp(Total Cost');cost(x) disp('RJVIS Heave');rms_hv(x) disp('RMS Pitch');rms_pch(x) disp('Peak_Heave Ratio');peak_hv(x) disp('Peak_Pitch Ratio');peak_pch(x) disp('Transverse_GMt_loaded');stab(x) disp('Transverse_GMt_light');stablite(x) % Addition by Ayhan % begin results(igen,4) = x(l); results(igen,5) = x(2); results(igen,6) = x(3); results(igen,7) = x(4); results(igen,8) = displace(x); results(igen,9) = pwerfish(x); results(igen,10) = cost(x); results(igen,l 1) = rms_hv(x); results(igen,12) = rms_pch(x); results(igen,13) = peakhv(x); results(igen,14) = peak_pch(x); results(igen, 15) = stab(x); results(igen, 16) = stablite(x); fprintf(fid> /o3.0f /o6.1f /o6.1f%8.3f%8.3f %8.3f %8.3f %8.3f%8.3f %8.3f %8.3f %8.3f %8.3f % 1 0 . 3 f o o o %10.3f % 1 2 . 3 f %12.3f,results(igen,:)); end % end of main for loop, counter is "igen" - 134-
- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- Direct inclusion of seakeeping ergonomic criteria in...
Open Collections
UBC Theses and Dissertations
Featured Collection
UBC Theses and Dissertations
Direct inclusion of seakeeping ergonomic criteria in the computerized design of small crafts. Majumder, Mizanur R. 2000
pdf
Page Metadata
Item Metadata
Title | Direct inclusion of seakeeping ergonomic criteria in the computerized design of small crafts. |
Creator |
Majumder, Mizanur R. |
Date Issued | 2000 |
Description | Dr. Akinturk showed that the design process of a small craft can be computerized, and new design nodes, such as crew safety or acceleration levels can be included in the preliminary design. This study goes one step further by directly including ergonomic criteria in the preliminary ship design process. In addition, the design platform selected, is an easily available one. It is shown that an integrated technical computing environment such as Matlab, can do the' preliminary small craft design with the inclusion of ergonomic criteria. This demonstrates also that the methodology developed in this study can be implemented and extended easily by others. The design process used in this study will be referred as "Matship". The ergonomic criteria, implemented in Matship, include constraints on RMS motion amplitudes and accelerations, peak motion responses and ergonomic criteria that relate maintaining one's balance onboard of a ship to ship motions. In the last one, an empirical relation, developed by Kimura, is used between the first moments of the spectra of vertical and longitudinal accelerations on the deck and human balance. The study shows the effect of human factors on the principle dimensions of the boats and their operational speed. The preliminary results reported in this thesis show that seakeeping ergonomic criteria can be implemented explicitly into the preliminary design of a small craft, for crew safety and passenger comfort. This thesis presents a methodology to include seakeeping ergonomic criteria in the preliminary design process and discusses its effects on the design parameters such as principal dimensions, power requirement, cost etc. The effects of these criteria on the final design can be quantified in terms of principal dimensions or monetary terms. Matship presents a methodology to include ergonomic criteria in the preliminary design and discusses their effects on the ship parameters. This study suggests that length restriction imposed on fishing vessels in Canada and elsewhere may cause unnecessary risk to crew of smaller vessels and should be further studied. The Matlab files used in this study are available at University of British Columbia's (UBC) Mechanical Engineering web site, http://www.mech.ubc.ca/. |
Extent | 5678386 bytes |
Genre |
Thesis/Dissertation |
Type |
Text |
File Format | application/pdf |
Language | eng |
Date Available | 2009-07-06 |
Provider | Vancouver : University of British Columbia Library |
Rights | For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use. |
DOI | 10.14288/1.0080970 |
URI | http://hdl.handle.net/2429/10295 |
Degree |
Master of Applied Science - MASc |
Program |
Mechanical Engineering |
Affiliation |
Applied Science, Faculty of Mechanical Engineering, Department of |
Degree Grantor | University of British Columbia |
Graduation Date | 2000-05 |
Campus |
UBCV |
Scholarly Level | Graduate |
Aggregated Source Repository | DSpace |
Download
- Media
- 831-ubc_2000-0113.pdf [ 5.42MB ]
- Metadata
- JSON: 831-1.0080970.json
- JSON-LD: 831-1.0080970-ld.json
- RDF/XML (Pretty): 831-1.0080970-rdf.xml
- RDF/JSON: 831-1.0080970-rdf.json
- Turtle: 831-1.0080970-turtle.txt
- N-Triples: 831-1.0080970-rdf-ntriples.txt
- Original Record: 831-1.0080970-source.json
- Full Text
- 831-1.0080970-fulltext.txt
- Citation
- 831-1.0080970.ris
Full Text
Cite
Citation Scheme:
Usage Statistics
Share
Embed
Customize your widget with the following options, then copy and paste the code below into the HTML
of your page to embed this item in your website.
<div id="ubcOpenCollectionsWidgetDisplay">
<script id="ubcOpenCollectionsWidget"
src="{[{embed.src}]}"
data-item="{[{embed.item}]}"
data-collection="{[{embed.collection}]}"
data-metadata="{[{embed.showMetadata}]}"
data-width="{[{embed.width}]}"
async >
</script>
</div>
Our image viewer uses the IIIF 2.0 standard.
To load this item in other compatible viewers, use this url:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0080970/manifest